我正在制定一种加密策略,该策略将加密通过 BTLE 在 iOS 和 Android 设备之间共享的数据。我们想使用基本的椭圆曲线密码学。
我们目前正在实施我们的 iOS 应用程序,我们的 Android 应用程序将在下个月左右开始开发。所以,我的问题如下:
我知道在 iOS 上我可以使用证书、密钥和信任服务来生成 kSecAttrKeyTypeECDSA 类型的密钥对。这很酷。
我看到适用于 Android 的加密库BouncyCastle也支持 ECDSA。
所以,我的问题是.. 我可以指望在任一平台上生成的密钥对在 iOS 和 Android 上的加密和解密方面运行相同吗?
IE
iOS 用户 A
- 使用 iOS ECDSA 生成他们的公钥/私钥对
- 持有对用户 B 的公钥的引用
安卓用户 B
- 使用 BouncyCastle ECDSA 生成他们的公钥/私钥对
- 持有对用户 A 的公钥的引用
用户 B 可以使用用户 A 的公钥对消息进行编码.. 将编码数据发送给用户 A 并期望用户 A 能够解码吗?