如何将数据存储到android中的Secure Element中

时间:2012-06-19 13:54:59

标签: android nfc nexus-s secure-element

我想在Android中创建一个像应用程序一样的谷歌钱包。据说“所有支付凭证都存储在手机中包含的名为安全元素的芯片中”。如何访问此安全元素并将我的卡凭据存储到其中。 我的目的是在收银台而不是我的卡上使用我的手机(Nexus)。

所以我想要的是将一些数据存储到安全元件芯片并在我点击NFC读卡器时访问数据。

提前致谢。

2 个答案:

答案 0 :(得分:7)

如果您查看Google Wallet FAQ,可以找到以下内容:

  •   

    您的付款凭据存储在手机中包含的名为Secure Element的芯片中。安全元件与手机的主操作系统和硬件隔离。只有Google电子钱包等授权程序才能访问安全元素以启动交易。

  •   

    即使Google电子钱包本身对安全元素的访问权限非常有限,也无法从其内存中读取或写入数据。存储在安全元件上的数据有多种级别的保护,并且在硬件级别受到保护,不受窥探或篡改。

基本上......你无法访问这个SecureElement。也许与手机制造商交谈,让您访问/​​访问SecureElement的方式将使您能够这样做......但我认为这将超出您的范围。

修改: 另一种解决方案是将数据存储在SQLite数据库中,并在该数据库上使用encryption,例如AES ...或您喜欢的任何内容。你仍然需要注意如何保持/分配encryption/decryption keys

如果您担心某人丢失手机并且“创始人”试图窃取数据时,您可以在Application上实施密码保护,如果密码输入错误则连续3次次,删除存储数据的SQLite数据库。

答案 1 :(得分:0)

您无法在安全加密芯片中存储任何内容,因为它是由设计硬件与操作系统分开存储的。