Crypt++中文使用手册.pdfVIP

  • 92
  • 0
  • 约4.65万字
  • 约 30页
  • 2021-12-11 发布于河北
  • 举报
Crypto++ 入门 - 安装 Crypto++ 是一个 C++ 编写的密码学类库。 读过 《过河卒》的朋友还记得作者的那个不愿意去 微软工作的儿子吗,就是 Crypto++ 的作者 Wei Dai 。 Crypto++ 是一个非常强大的密码学库,在密码学界很受欢迎,最初还是 Rivest(RSA 的 R) 门 下的一个博士姐姐把这个库介绍给我的。虽然网络上可以找到很多密码学相关的代码和库, 但是 Crypto++ 有其明显的优点。主要是功能全,统一性好。例如椭圆曲线加密算法和 AES 在 OpenSSL 的 crypto 库中就还没最终完成,而在 Crypto++ 中就支持的比较好。基本上密码 学中需要的主要功能都可以在里面找得到。 Crypto++ 是由标准的 C++ 写成的, 学习 C++ 、密 码学、网络安全都可以通过阅读 Crypto++ 的源代码得到启发和提高。 Crypto++ 的安装 首先到 上下载最新版本的源代码, 如果是 windows 版的,会得到一个 VC 的项目, 直接用 VC 打开就可以编译了。 这里建议大家使用最新版的 C++ 编译器, 因为诸如 VC6 的编译器是不支持 C++ 的标准的,很多符合 C++ 标准的代码不能编译通过。编译的时 间比较长,完成后会生成 cryptlib.lib 这个库文件。可以将 Crypto++ 源文件的目录命名为 cryptopp ,拷贝到编译器的 include 目录(例如: C:\VS.NET\VC7\include ),将 cryptlib.lib 文 件拷贝到编译器的 lib 目录。这样我们只需要说明链接 cryptlib.lib 即可。 例如在 VC7 中在项 目- 属性 -链接器 -命令行 - 附加选项中添加“ cryptlib.lib ”。 Hello World 现在写一个 hello world 程序看看能不能编译通过。 #include iostream using namespace std; #include cryptopp/aes.h using namespace CryptoPP; int main() { cout hello crypto++ endl; cout Aes block size is AES::BLOCKSIZE endl; return 0; } 编译运行,一切 OK ,哈哈: D ,可以用了。 lib 和 dll 文件的区别和联系 .dll 是在你的程序运行的时候才连接的文件, 因此它是一种比较小的可执行文件格式, .dll 还有其他的文件格式如 .ocx 等,所有的 .dll 文件都是可执行。 .lib 是在你的程序编译连接的时候就连接的文件,因此你必须告知编译器连接的 lib 文件 在那里。一般来说,与动态连接文件相对比, lib 文件也被称为是静态连接库。当你把代码 编译成这几种格式的文件时,在以后他们就不可能再被更改。如果你想使用 lib 文件,就必 须: 1 包含一个对应的头文件告知编译器 lib 文件里面的具体内容 2 设置 lib 文件允许编译器去查找已经编译好的二进制代码 如果你想从你的代码分离一个 dll 文件出来代替静态连接库,仍然需要一个 lib 文件。这 个 lib 文件将被连接到程序告诉操作

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档