Android:以编程方式确定设备的TLS支持
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Android:以编程方式确定设备的TLS支持,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1310字,纯文字阅读大概需要2分钟。
内容图文
所以我使用的主机最近禁用了TLS 1.0,所以对于任何不支持TLS 1.0的设备,我都需要使用http而不是https(无论如何都不会发送任何敏感信息……我只想在可能的情况下使用SSL) .
看起来自API 16以来一直支持TLS 1.1 / 1.2,但是在API 20或21周围默认情况下不启用.有关确切何时切换默认值的报告存在冲突.参见例如here(来自API 20的建议)和here(来自API 21的建议).而且似乎有些设备甚至在API 20之前都启用了TLS 1.1 / 1.2支持,可能是因为制造商调整了一些事情来实现这一点.
我知道可以在支持它的设备上启用TLS 1.1 / 1.2(参见例如here),甚至可以通过播放服务来实现,如here所述.
但我宁愿没有实现这些类型的黑客(以及处理来自用户的任何问题)的麻烦,并且只是接受运行我的应用程序但尚未支持TLS 1.1 / 1.2的任何设备应该使用http而不是https.正如我所说,无论如何都不会被归类为“敏感”.随着时间的推移,不支持TLS 1.1 / 1.2的设备数量将减少.
那么,话虽如此,有没有一种方法可以通过编程方式确定设备支持哪些TLS版本?
目前我只是使用API??版本进行此检查(“从API 21开始使用https”),但最好更明确地检查TLS支持,因为一些旧设备也支持TLS 1.1 / 1.2.
解决方法:
So, with that said, is there a way of programmatically determining what TLS versions are supported by the device?
试试这个:
SSLParameters sslParameters;
try {
sslParameters = SSLContext.getDefault()
.getDefaultSSLParameters();
} catch (NoSuchAlgorithmException e) {
// ...
}
// SSLv3, TLSv1, TLSv1.1, TLSv1.2 etc.
sslParameters.getProtocols();
内容总结
以上是互联网集市为您收集整理的Android:以编程方式确定设备的TLS支持全部内容,希望文章能够帮你解决Android:以编程方式确定设备的TLS支持所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。