簡體   English   中英

如何在Android KeyStore中生成KeyPair,受自定義密碼保護

[英]How to generate KeyPair in android KeyStore, protected by custom password

我有app使用指紋和4位數針(可以由用戶在應用程序設置中設置,這不是系統管腳/模式/密碼)授權。

使用指紋一切都很好,我的針有問題。

我想要做的是:

  1. 讓用戶從應用程序設置中設置引腳
  2. 在密鑰庫中為輸入引腳保護的某些別名生成密鑰對(以便在沒有此引腳的情況下無法訪問私鑰)
  3. 將公鑰發送到服務器以供將來簽名驗證
  4. 從服務器獲取用戶令牌並將其存儲在本地存儲中

然后在授權期間:

  1. 請求用戶輸入引腳
  2. 通過輸入的引腳檢索私鑰
  3. 從本地存儲中檢索令牌
  4. 使用步驟6中的私鑰對令牌進行簽名
  5. 使用簽名數據將其發送到服務器
  6. 驗證服務器上的簽名,如果有效,則打開用戶的會話。

我的問題是: 如何生成由用戶輸入的pin保護的KeyPair

PS對於指紋,此邏輯由以下方式處理:

KeyGenParameterSpec.Builder(KEY_NAME, KeyProperties.PURPOSE_SIGN).setUserAuthenticationRequired(true)

我建議嘗試使用此帖子使用Android KeyStore安全地存儲任意字符串

這篇文章已經涵蓋了這一點

  1. 在設備上生成,安全存儲和檢索加密密鑰。

  2. 加密任意數據並將其保存在設備上。

  3. 訪問和解密數據以供后續使用。

我希望它會有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM