我试图了解如何使用 nettle 的 curve25519 函数实现密钥交换。我正在编写一个使用基于公钥的身份验证建立加密 TCP 连接的软件。客户端和服务器程序共享相同的代码库。
这是一个学习网络和加密编程的爱好项目。:-)
我有使用 nettle 的 rsa_encrypt 函数的玩具应用程序,但从我所看到的来看,没有与 curve25519 等效的东西。如何使用 nettle 的 curve25519 函数进行密钥交换?
需要明确的是,我知道我可以并且可能应该简单地使用任何生产质量的 TLS 库,如 openssl,但我想学习如何从头开始进行加密的 TCP 连接。使用 TLS 库会破坏该目的。我比较了许多加密库,发现荨麻是最容易接近的,因为它是低级的。