登录 注册
效率与办公工具网络与基础设施教育与学习
527
Stars
86
Forks
28
Watchers
523
Open Issues
BSD-3-Clause
许可证
Haskell
语言
2015-04-16
创建时间
2026-11-12
最近更新

项目能做什么

saw-script 是基于 Haskell 开发的软件分析工作台(SAW)。它主要解决多语言程序的形式化验证问题,支持对 C、Java、Rust 及 Cryptol 编写的代码进行形式化语义建模与推理。开发者可通过其专用的 SAWScript 脚本语言作为操作接口,结合 Z3 等 SMT 求解器完成代码的形式化验证。
来源:AI 基于仓库事实生成 · 内容以仓库实际 README 为准

使用说明 查看原始 README 原仓库文档

中文使用说明暂未生成。下面保留原仓库 README 摘录,命令与配置均以原文为准。
原始 README 摘录(英文原文,节选前 3000 字符)
[![Build Status](https://github.com/GaloisInc/saw-script/workflows/SAWScript/badge.svg)](https://github.com/GaloisInc/saw-script/actions?query=event%3Aschedule)

# SAW

This repository contains the code for SAW, the Software
Analysis Workbench.
SAW provides the ability to reason about
formal models describing the denotation of programs written in
languages such as C, Java, Rust, and Cryptol.

SAWScript is the scripting language that serves as the primary
user interface to SAW.
The repository is named after it for historical reasons.

## Documentation

There are two SAW tutorials that give an introduction to using the
SAWScript interpreter:

* [This tutorial](https://github.com/GaloisInc/saw-script/blob/master/doc/pdfs/llvm-java-verification-with-saw.pdf) gives an
  introduction to verifying C code (using LLVM) and Java code (using JVM).
* [This tutorial](https://github.com/GaloisInc/saw-script/blob/master/doc/pdfs/rust-verification-with-saw.pdf)
  gives an introduction to verifying Rust code (using MIR).

There is also a longer
[manual](https://github.com/GaloisInc/saw-script/blob/master/doc/pdfs/saw-user-manual.pdf)
that describes the breadth of SAW's features.

## Precompiled Binaries

Precompiled SAW binaries for a variety of platforms are available
on the [releases
page](https://github.com/GaloisInc/saw-script/releases).

## Docker Images

Alternatively, there is a Docker image available from the [packages
page](https://github.com/orgs/GaloisInc/packages/container/package/saw).

## Getting Z3

SAW can use many theorem provers, but because of its use of Cryptol it
always needs to have Microsoft Research's [Z3 SMT
solver](https://github.com/Z3Prover/z3) installed.  You can download Z3
binaries for a variety of platforms from their [releases
page](https://github.com/Z3Prover/z3/releases).
You can also download binaries for Z3 and other solvers from our
[what4-solvers](https://github.com/GaloisInc/what4-solvers/releases)
package.

We currently recommend Z3 4.8.10. If you plan to use path satisfiability
checking, you'll also need Yices version 2.6.1 or newer.

After installation, make sure that `z3` (or `z3.exe` on Windows)
is on your PATH.

## Cloning the Repository

After cloning the saw-script repository, you need to also clone
submodules.
Run `git submodule update --init`.
The commonly used `--recursive` option is not required, and also not
recommended as it results in cloning a considerable number of
additional unused subtrees.

## Downloading Release Sources

Starting with SAW 1.4, to download the sources for a release from the
[releases page](https://github.com/GaloisInc/saw-script/releases),
be sure to get the file `saw-<release>-sources.tar.gz` and not the
default GitHub-generated file `v<release>.tar.gz`.
The latter does not include SAW's submodules and is, alas, therefore
unbuildable.
(This is
[a GitHub problem](https://github.com/orgs/community/discussions/6003)
and there's no sign of it being likely to get fixed.)

For releases prior 
阅读完整原文

项目深度分析 AI 生成

密码学算法与底层Rust库的形式化验证咨询与审计服务

产品构想利用SAW工具链为Web3、加密通信或安全硬件厂商提供C/Rust核心算法实现(如AES、Kyber、ZK证明核心)与数学规范等价性的验证服务并出具报告。
核心功能Cryptol规范编写、SAWScript证明脚本构建、SMT验证执行、证明报告与CI自动化回归验证交付。
目标用户区块链基础设施公司、加密芯片设计商、企业级安全通讯软件开发商。
难度/周期高(需要深厚的Haskell源码理解、密码学知识及SMT形式化验证专家能力) · 2 - 6 个月 · 成本:人力成本为主(高薪专业形式化验证专家),以及高性能证明计算服务器
收费模式按审计项目制收费(单项目数万至数十万美元,推测),或企业定制形式化规范咨询费
竞争风险获客周期极长;形式化验证面临状态空间爆炸或超时风险导致项目交付延期。
依据 已验证事实

云端持续形式化验证CI/CD平台(CI-SAW)

产品构想将复杂的SAW、Z3、Yices环境云端SaaS化,为注重安全的企业提供与GitHub/GitLab集成的自动化形式化证明Runner服务。
核心功能预配置多求解器云执行环境、PR触发自动验证、SMT超时排查与求解策略优化看板、证明状态徽章与覆盖度报告。
目标用户关键基础设施软件开发团队、系统级开源维护者。
难度/周期中等(依赖于云原生调度、自动化部署及对SAW命令行包装) · 3 - 5 个月 · 成本:云算力服务器(多核大内存,满足SMT高负载计算)与网络带宽
收费模式基于计算资源与时长的月费/年费订阅模式(SaaS席位费 + 求解算力计费)
竞争风险目标市场相对小众;大部分有能力使用SAW的高端客户倾向于自建受控离线计算环境。
依据 数据支持的判断

SAW高阶企业培训与规范模板库

产品构想针对企业从0到1引入SAW困难的痛点,提供结构化的Rust/C验证培训课程及常见数据结构与算法的标准SAW验证模板库。
核心功能全套实战教学案例(覆盖内存安全、加密规范匹配等)、现成的SAWScript验证脚手架、企业内部答疑支持服务。
目标用户汽车电子软件团队、防务与高可靠软件研发部门的工程经理和技术人员。
难度/周期中等(需要将学术性强的文档降维为工程落地教材) · 1 - 3 个月 · 成本:教材编写与案例工程搭建的人力时间
收费模式企业培训课程交付、订阅制私有模板库访问权限
竞争风险市场接受度高度依赖企业对形式化验证技术普及意愿,客群规模小。
依据 AI推测
AI 基于仓库公开数据分析生成,含推测成分,不构成收益承诺。
报告会保存到 个人中心

竞品与相似项目 GitHub Search 真实检索

相似项目数据正在完善中,暂不展示(避免误导)

项目优势与风险

技术成熟度创建于 2015-04-16,近 30 天仍在推送,发布过 18 个 Release
社区活跃Star 527 / Fork 86 / Issue 523(数据支持,可自行核实)
许可证BSD-3-Clause
主要风险上游项目方向可能变化;同赛道竞争者较多(见竞品表);热度与需求不完全等价

安装与使用

此项目未提供 Docker 镜像,安装步骤以原仓库 README 为准(涉及依赖安装与环境配置,对新手门槛较高)。