1

我正在尝试使用套接字实现安全的网络/客户端通信。我很难找到有关如何执行此操作的信息。似乎唯一存在的就是 OpenSSL,但该库似乎使用起来非常复杂。

是否有更容易使用且安全的库?如果不是,那么什么是开始安全编程的好文档。

4

2 回答 2

2

对于加密,存在多个库。如果您没有说 OpenSSL 很复杂,那么我强烈建议您使用 OpenSSL。但是现在,在您的情况下,我建议您尝试

CryptoPP
,它的 API 风格和编程范式需要一点时间来适应但你最终会喜欢它。它提供了广泛的对称和非对称算法,具有很大的灵活性。您可以找到高级概述和示例代码。它是一个易于集成到项目中的库。它可以跨多个平台移植。

LibTomCrypt
TomCrypt 是轻量级和简单的。至于质量,TomCrypt 被广泛接受为顶级加密。此外,它的许可证是公共领域的,这避免了 BSD 许可证在编写商业软件时给您带来的文档归属麻烦。

Crypto++
也是一个非常有名的库

看看这些库以及 谷歌的 KeyCZarbotanCapicom
我希望这个答案会对你有所帮助:)

于 2012-11-23T04:37:18.420 回答
1

Boost.Asio抽象了一些 OpenSSL 底层函数:examples

请记住,您必须小心,并且很容易认为您拥有一个安全的系统,而实际上您并没有。仅使用 OpenSSL 并不能保证安全性。它需要正确使用。

世界上最危险的代码:在非浏览器软件中验证 SSL 证书

于 2012-11-23T07:21:18.513 回答