seb*_*sen 8 security encryption android key
我如何在Android设备中存储一个秘密密钥,唯一可能使用密钥,而不是检索它.例如:我从应用程序向此"安全存储"导入私有/生成RSA密钥对或对称密钥.现在,NOBODY应该能够检索密钥,甚至是原始应用程序.(密钥的非秘密部分 - RSA密钥对的公钥 - 但不是对称密钥的一部分 - 仍然应该是可检索的,特别是如果密钥是在安全存储中生成的)
密钥库现在应该充当黑盒子,提供加密数据的输入和解密数据的输出,例如,我提供我想要解密的加密值,并获取解密的值.
如果这是在Android设备的硬件安全芯片中实现的话,这是一个很大的优点,就像智能卡芯片一样,它具有防篡改功能,即使设备被植根和克隆也可以保证密钥的安全.
Android手机的哪些想法,有这样的防篡改芯片?关于如何使用这种存储的任何想法?
发现了一个类似的问题:Android安全存储,但这不能回答我的问题.
小智 7
我会回答这个问题,但要保留。
https://developer.android.com/training/articles/keystore.html
“密钥材料可能会绑定到Android设备的安全硬件(例如,可信执行环境(TEE),安全元素(SE))。为密钥启用此功能后,其密钥材料永远不会暴露在安全硬件之外。”
因此,您可以启用密钥功能。然而,
“如果Android操作系统受到威胁或攻击者可以读取设备的内部存储,则攻击者可能能够在Android设备上使用任何应用程序的Android Keystore密钥,但不能从设备中提取密钥。”
这是由于Android允许在没有秘密的情况下使用密钥,而这本身是不安全的。因此,我的保留。
为了回答带有安全芯片的android设备,我会说搜索。似乎TEE SOC已经存在了一段时间。
秘密:[______________]
了解您需要做什么才能在 Android 上获得安全存储空间:
您需要购买一张符合 ASSD 规范(高级安全 SD)的 Secure MicroSD 卡。那是一张包含安全元件的 MicroSD 卡,通常是一种 PKI 解决方案,您可以在其中生成卡上的私钥,因此无法提取私钥,但可以提取公钥并使用它来加密只有MicroSD 卡可以解密。
两个示例是 CertGate MicroSD(可作为消费者版本使用,称为“SmartCard-HSM Android”),一个不再在消费者版本中可用,是 G&D 移动安全卡。
这使它成为一个安全的存储,不能被有根电话破解,也不能被复制,根据定义是不可能的。如果您正确点击,唯一的方法是使用公钥作为验证来暴力破解私钥。但是如果你使用 RSA-2048,这在技术上也是不可能的。
原因是手机制造商似乎将内置手机安全元件锁定到制造商认可的应用程序中,因此您不能随意使用它。唯一的方法实际上是以 MicroSD 卡的形式向手机添加安全元件。
(此答案仅适用于 5.0 之前的 Android 版本)
归档时间: |
|
查看次数: |
12237 次 |
最近记录: |