有几年没怎么看过Cryptopp的代码了,现在已经到了5.6.1。最近晚上没什么事,于是就再看一下。
我主要关注Linux平台下Cryptopp的使用。之前很多开发者(Cryptopp邮件列表和QQ群里都有)都问过怎么编译Cryptopp的共享库(或者叫动态库,Linux下的名称是Share Object,Windows下叫动态链接库)。
现在5.6.1的Makefile中添加了共享库的编译目标:
GNUmakefile (我们在Linux下一般使用“Makefile”或者“makefile”做为文件名,但是标准的GNUmake默认是调用“GUNmakefile”和“Makefile”的,不信你在Solaris下写一个“makefile”试试)
153 libcryptopp.so: $(LIBOBJS)
154 $(CXX) -shared -o $@ $(LIBOBJS)
如果需要共享库,只需要在make时指定目标:
~#make libcryptopp.so
便可生成共享库(我用虚拟机,文件可真多,编译它用了那么多时间。。。)
用过Cryptopp,但到目前为止都不知道Cryptopp中都包含哪些加密算法,今天列一下吧(来自5.6.1的Readme.txt,本人本科没有学习过密码学,对一些术语完全靠单词翻译、Google、百度,如有错误之处,希望您能指出,十分感谢!):
认证/加密方案: GCM, CCM,