Как хранить данные в Secure Element в Android
Я хочу создать приложение, похожее на кошелек Google, в Android. Говорят, что "все учетные данные хранятся в чипе, называемом" защищенный элемент ", который содержится в телефоне". Как я могу получить доступ к этому защищенному элементу и сохранить в нем учетные данные моей карты. Моя цель - использовать мой телефон (Nexus) на кассе вместо моей карты.
Поэтому я хочу сохранить некоторые данные на чипе Secure Element и получить доступ к ним, когда я нажму на считыватель NFC.
Заранее спасибо.
2 ответа
Если вы посмотрите FAQ по Google Кошельку, вы найдете следующее:
Ваши платежные учетные данные хранятся в чипе, называемом "Безопасный элемент", который содержится в вашем телефоне. Защитный элемент изолирован от основной операционной системы и аппаратного обеспечения вашего телефона. Только авторизованные программы, такие как Google Wallet, могут получить доступ к защищенному элементу для инициирования транзакции.
Даже сам Google Wallet имеет очень ограниченный доступ к защищенному элементу и не может читать или записывать данные из своей памяти. Существует несколько уровней защиты данных, хранящихся на защищенном элементе, и он защищен на аппаратном уровне от отслеживания или взлома.
Так что в основном... у вас нет доступа к этому SecureElement
, Может быть, поговорить с производителями телефонов, чтобы дать вам доступ / способы доступа к SecureElement
позволит вам сделать это... но я думаю, что это будет за пределами вашей компетенции.
РЕДАКТИРОВАТЬ: альтернативное решение может хранить ваши данные в SQLite
базы данных, а также использовать encryption
в этой базе данных, такой как AES
... или что угодно. Вам все равно придется обратить внимание на то, как вы храните encryption/decryption keys
,
Если вас беспокоит случай, когда кто-то потеряет свой телефон, а "основатель" попытается украсть данные, вы также можете установить защиту паролем на свой телефон. Application
и если пароль введен неверно 3 раза подряд, сбросьте SQLite
база данных, где хранятся данные.
Вы не можете ничего хранить в микросхеме шифрования безопасности, так как это аппаратное обеспечение, разработанное отдельно от операционной системы.