crypto++ 是 C++ 库。
openssl 据说许可证跟 GPL 有冲突,貌似这个是用的最广泛的加密解密函数库,
一般是系统标配。
openssl用的最多,也最可靠,通常不会有太离谱的错误。
支持的算法和协议最广泛也最多,也包括各类证书处理的功能。
性能上感觉也是最好的,特别支持硬件加速的架构。
可移植性也不错。
所以没有特别的需要,没有什么理由不用openssl。
crypto++功能上也不错,但是主要是密码学算法方面的,证书相关的这类辅助功能如果没记错的话是没有的。
性能上应该也没问题,虽然是C++写的。但是因为是C++写的,某些场合移植比较有问题。
可靠上面,不了解。
libgcrypt是GnuPG衍生出来的,功能上最简单。如果够用的话也没问题。
其实还有一个最重要的库给漏了,GNU TLS
除了不支持ECC,它基本上和openssl差不多。本身它出现的目的就是为了取代openssl的。
不过因为比较新,可靠性还需要观察。
如果在维护一个老的GPL项目,想新增或者替换这方面的功能,GNU TLS是首选。
不过如果自己从头开发GPL程序,在license上面openssl没有特别大的问题,似乎只要
给openssl一个例外就好了。