CnPack 密码算法库
概述CnPack 密码算法库(CnPack Crypto Library)源于 CnPack 开发组的开源项目 CnVcl 组件包(CnVcl Component Package),是一套以纯 Object Pascal 语言编写的开源加解密源码库,支持 Delphi 5 至最新版本的 RAD Studio 及 Lazarus/FPC,并支持 32 位与 64 位的 Windows、MacOS、Linux 等操作系统。 CnPack 密码算法库致力于提供强大的加解密算法支持与数据安全保障。它覆盖了国内外常见的加解密算法及中国国家商用密码算法,包括对称加密、非对称加密、杂凑(或名散列、摘要、哈希)等大类及众多其他基础与辅助功能。 许可协议CnPack 开发包以开放源码(Open Source)的形式发布,遵守 CnPack 的许可协议,受 CnPack 许可协议的保护。License 文件中有该协议的详细描述,具体内容可参考协议文件。 主要内容
国密支持CnPack 密码算法库对中国国家商用密码算法标准有着完整而强大的支持:
另外也包括 OTP:《GB/T 38556-2020 信息安全技术动态口令密码应用技术规范》。 安装与使用获取源码有两种途径可获取最新版的 CnPack 密码算法库。第一种途径是 CnPack 网站上下载或 gitee 上直接拉取。第二种途径是 CnPack 网站上下载或 github 上拉取下载最新的 CnVcl 源码包,在 Windows 系统中解压后运行 cnvclGenCrypto.bat,即可在 cnvcl 的同级目录下生成 cncrypto 目录,内有 CnPack 密码算法库所有源码。日常 CnPack 密码算法库也是自 CnVcl 中维护再同步的。 编译引入CnPack 密码算法库不涉及 VCL/FMX 界面组件,仅是基础库的形式提供,因而可直接将 cncryptoSource 目录加入 Delphi 的工程搜索路径,便可直接在工程中 uses 相应单元并调用。 另外 CnPack 密码算法库也提供了运行期包的形式,在任一版本 Delphi 中打开 cncrypto\Package\CnCrypto.dpk,即可编译成 BPL 使用。 注:如果在 Delphi 5 下编译 BPL,需手工将 requires 语句中的 vcl 改为 vcl50。 测试用例cncryptoTest 目录下有一完整的命令行测试用例 CryptoTest.dpr,使用任一版本 Delphi 打开运行即可覆盖验证 CnPack 密码算法库的绝大多数功能,或用 Lazarus 打开 Crypto.lpi 同样可以运行。尾部两个用例耗时较长以小时计,跑时需有耐心。 关于我们CnPack 开发组由互联网上热爱 Delphi/C++Builder 程序开发的一群中国程序员自愿者自发组成,其目标是开发中国人自己的真正优秀的第三方免费开源产品。 网站:https://www.cnpack.org |
|
|