VeraCrypt 源代码存档:基于 TrueCrypt 修改,多系统构建及使用许可说明 内容1.Windows2.Linux 和 Mac OS X3.FreeBSD 和 OpenBSD4.第三方开发者贡献者5.法律信息6.更多信息一、Windows构建适用于 Windows 的 VeraCrypt 的要求关于在 Windows 上构建 VeraCrypt 的详细指南可在仓库文档中找到也能在线获取或从镜像站点获取。需注意Windows Vista 及更高版本的 64 位版本以及某些情况下如播放 HD DVD 内容的 32 位版本若无合适数字签名将不允许 VeraCrypt 驱动运行。所以官方 VeraCrypt 二进制包中的所有 .sys 文件都用 GlobalSign 认证机构颁发的 IDRIX 数字证书进行了数字签名。每个官方 .exe 和 .sys 文件末尾都嵌入了数字签名和所有相关证书即相关证书链中的所有证书像认证机构证书、CA - MS 交叉证书和 IDRIX 证书。若编译 VeraCrypt 并将自己的二进制文件与官方二进制文件比较要记住这点。若二进制文件没签名官方二进制文件大小通常比自己的大约 10 KiB若使用不同版本的编译器或为 Visual Studio 安装不同或不安装服务包或安装不同的热修复程序或使用不同版本的所需 SDK可能会有更多差异。为 Windows 签名和打包 VeraCrypt 的说明首先创建一个名为 WSDK81 的环境变量指向 Windows 8.1 的 Windows SDK 安装目录。“Signing” 文件夹中有个批处理文件 (sign.bat)它会用证书存储中的代码签名证书对所有 VeraCrypt 组件签名并构建最终的安装程序和 MSI 包。该批处理文件假定代码签名证书由 GlobalSign 颁发IDRIX 的证书就是这种情况。若证书由其他 CA 颁发应把其中间证书放在 “Signing” 文件夹中并相应修改 sign.bat。要生成 MSI 包必须安装 WiX Toolset v3.11。VeraCrypt EFI 引导加载程序VeraCrypt 源代码在 src\Boot\EFI 下包含预构建的 EFI 二进制文件。VeraCrypt EFI 引导加载程序的源代码遵循 LGPL 许可可在 https://github.com/veracrypt/VeraCrypt - DCS 找到。有关构建说明可参考文件 src\Boot\EFI\Readme.txt。二、Linux 和 Mac OS X构建适用于 Linux 的 VeraCrypt 的详细指南可在仓库文档中找到也能在线获取或从镜像站点获取。构建适用于 Linux 和 Mac OS X 的 VeraCrypt 的要求- GNU Make- GNU C 编译器 4.0 或兼容版本- Apple Xcode 或 Xcode 命令行工具仅适用于 Mac OS X- YASM 1.3.0 或更高版本仅适用于 Linuxx86/x64 架构- pkg - config- 已安装 wxWidgets 3.0 共享库和头文件或 wxWidgets 3.0 库源代码可在 https://www.wxwidgets.org 获取- FUSE 库和头文件可在 https://github.com/libfuse/libfuse 和 https://macfuse.github.io/ 获取- PCSC - lite 库和头文件可在 https://github.com/LudovicRousseau/PCSC 获取为 Linux 和 Mac OS X 构建 VeraCrypt 的说明把当前目录更改为 VeraCrypt 源代码的根目录。若没安装 wxWidgets 共享库运行以下命令来配置 VeraCrypt 的 wxWidgets 静态库并进行构建$ make WXSTATIC1 WX_ROOT/usr/src/wxWidgets wxbuild变量 WX_ROOT 必须指向 wxWidgets 库源代码的位置。输出文件将放在 ./wxrelease/ 目录中。要构建 VeraCrypt运行以下命令$ make或者若没安装 wxWidgets 共享库$ make WXSTATIC1若构建成功VeraCrypt 可执行文件应位于 Main 目录中。可重现构建说明当未设置 SOURCE_DATE_EPOCH 时从 git 检出的构建使用 HEAD 提交时间戳从发布压缩包的构建使用 src/Common/Tcdefs.h 中 UTC 时间 00:00 的发布日期。要从 git 检出重现官方发布工件需显式设置 SOURCE_DATE_EPOCH 或从发布压缩包进行构建。在另一个 git 检出中跟踪的 VeraCrypt 源文件也以同样方式处理并使用该检出的 HEAD 时间戳。生成的 .deb 和 .rpm 包都是可重现的包括在缺少 SOURCE_DATE_EPOCH/_buildhost 构建宏的旧版 rpm如 CentOS/RHEL 7上。默认情况下会构建一个同时支持图形用户界面和文本用户界面通过 --text 开关的通用可执行文件。在 Linux 上可用 NOGUI 参数构建一个仅控制台的可执行文件该文件不需要 GUI 库$ make NOGUI1 WXSTATIC1 WX_ROOT/usr/src/wxWidgets wxbuild$ make NOGUI1 WXSTATIC1Arch Linux 包构建Arch Linux 用户可用 makepkg 从当前检出构建并安装包$ cd src/Build/Packaging/arch$ makepkg -siMac OS X 相关在 Mac OS X 上不支持构建仅控制台的可执行文件。在 Mac OS X 下默认使用最新安装的 SDK。若在使用 make 构建时要使用不同版本的 SDK可导出环境变量 VC_OSX_SDK$ export VC_OSX_SDK13.0对于开发依赖管理可使用 homebrew$ brew install pkg-config yasm wxwidgets还需要系统依赖$ brew install --cask macfuse packages通过 brew 安装依赖后可进行本地开发构建$ ./src/Build/build_veracrypt_macosx.sh -b若想构建包必须将 -p 传递给上述构建脚本。构建的可执行文件将位于 .src/Main 目录中。若更喜欢从源代码构建或者不使用 homebrew则必须安装 pkg - config 和相关包。从 https://pkgconfig.freedesktop.org/releases/pkg - config - 0.29.2.tar.gz 获取 pkg - config 并使用以下命令进行编译$ CFLAGS-Wno-int-conversion CXXFLAGS-Wno-int-conversion ./configure --with-internal-glib$ make$ sudo make install确保 pkg - config 可用后从 https://macfuse.github.io/ 下载并安装 macFUSE。build_veracrypt_macosx.sh 脚本会对 VeraCrypt 进行完整构建包括创建安装程序 pkg。它期望在放置 VeraCrypt 源代码的同一级别找到 wxWidgets 3.2.5 源代码即如果 src 路径是 /Users/joe/Projects/VeraCrypt/src那么 wxWidgets 应该位于 /Users/joe/Projects/wxWidgets - 3.2.5。make 构建过程使用代码签名证书其 ID 在 src/Main/Main.make 中指定查找包含 Developer ID Application 和 Developer ID Installer 的行。若没有代码签名证书需要修改这些行以使用自己的代码签名证书 ID或者将其注释掉。由于与 macFUSE 存在兼容性问题使用 SDK 10.9 生成的 VeraCrypt 二进制文件在与 macFUSE 内核扩展通信时会出现问题。因此建议使用不同的 macOS SDK 版本来构建 VeraCrypt。用于 VeraCrypt 官方构建的 Packages 安装程序已由 IDRIX 进行公证可在 https://github.com/idrassi/packages/releases 获取。三、FreeBSD 和 OpenBSD从 14 版本开始支持 FreeBSD从 7.8 版本开始支持 OpenBSD。构建要求和说明与 Linux 相同只是应使用 gmake 而不是 make。四、第三方开发者贡献者若打算实现某个功能要先与我们联系以确保- 该功能尚未实现我们可能已经实现但尚未发布代码。- 该功能是可接受的。- 我们是否需要第三方开发者协助实现该功能。有关如何联系我们的信息请访问https://veracrypt.jp 或 https://veracrypt.io镜像站点五、法律信息版权信息- 本软件整体版权所有 (c) 2026 AM Crypto保留所有权利。- 本软件部分版权所有 (c) 2026 AM Crypto保留所有权利。- 版权所有 (c) 2013 - 2025 IDRIX保留所有权利。- 版权所有 (c) 2003 - 2012 TrueCrypt 开发者协会保留所有权利。- 版权所有 (c) 1998 - 2000 Paul Le Roux保留所有权利。- 版权所有 (c) 1998 - 2008 Brian Gladman英国伍斯特保留所有权利。- 版权所有 (c) 1995 - 2023 Jean - loup Gailly 和 Mark Adler。- 版权所有 (c) 2016 用于 EFI 的磁盘加密服务 (DCS)Alex Kolotnikov。- 版权所有 (c) 1999 - 2023 Dieter Baron 和 Thomas Klausner。- 版权所有 (c) 2013Alexey Degtyarev保留所有权利。- 版权所有 (c) 1999 - 2016 Jack Lloyd保留所有权利。- 版权所有 (c) 2013 - 2019 Stephan Mueller smuellerchronox.de。- 版权所有 (c) 1999 - 2023 Igor Pavlov。更多信息请参阅源代码部分附带的法律声明。商标信息源代码、二进制文件和/或文档中包含的任何商标均为其各自所有者的唯一财产。六、更多信息- https://veracrypt.jp- https://veracrypt.io镜像站点