我在嵌入式设备上使用libsodium。我想与移动设备进行交互,以获得密钥/加密/解密。
是否有必要在参与加密通信的所有设备上使用libsodium?
换句话说:libsodium包装NaCl,那么是否可以使用libsodium包含的本机加密功能或在远程平台(Android或iOS)上包含在NaCl中而不包含libsodium库,或者这是只是在惹麻烦?
我也在嵌入式设备上使用了TLS。是否有基本的通用加密方法可以推荐用于device <--> Android
和device <--> iOS
之间的加密通信?
谢谢!
答案 0 :(得分:1)
Lib-sodium是通信加密的良好库。 最后你要调用NaCl方法。
如果您对c或c ++这样的原生呼叫感到满意,可以使用。
我在Android应用程序中使用了lib钠库来进行服务器和设备之间的通信。
<强> #UPDATE 强> Android库git链接Libsodium Android
Gradle插件implementation 'com.github.joshjdevl.libsodiumjni:libsodium-jni-aar:1.0.8'
答案 1 :(得分:1)
Libsodium是一个独立的图书馆。它没有包装任何其他库。
它是cross-platforms,因此您可以使用它在嵌入式设备和iOS / Android之间进行通信。它在一个系统上支持的所有内容在另一个系统上的工作方式相同。
如果您正在寻找占用内存较小的内容,则可能需要使用libhydrogen。