0

我正在开发一个 Android 应用程序,它使用 TLS(TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256)通过蓝牙与我的设备(带有蓝牙模块的基于 ARM 的设备)进行通信。我认为:

  1. 来自 Android 的javax.net.ssl 。问题是临时(ECDH E)加密密钥从 API 20 开始,但我需要 API 11。我没有找到添加套件的方法。似乎这个库与 android 版本密切相关。API 版本和概述
  2. Bouncycastle(spongycastle)在不创建套接字的情况下,我没有找到使用它的方法。我需要像输入/输出流这样的东西,所以我可以不通过网络连接使用它。另外我根本没有找到 TLS/SSL。
  3. 自己实现一切。我可以从选定的套件中获取所有算法并自己实现协议,但我不知道我不知道什么,我害怕搞砸安全性。我不知道做这样的事情是否是一个好习惯(可能它的级别足够高,所以我自己实现它并不是很危险)

我的问题是:您可以为 TLS 推荐哪些库?自己实现协议(不是算法)是一种好方法吗?

4

0 回答 0