簡體   English   中英

將RSA公鑰添加到Xamarin Forms中的Android KeyStore

[英]Add RSA public key to Android KeyStore in Xamarin Forms

我的應用程序使用 RSA 公鑰在傳遞到服務器之前加密數據。 如果我將公鑰嵌入我的解決方案並使用它,一切都會正常。

但是我的客戶有時想更改此公鑰,因此我無法將 PublicKey.key 文件作為嵌入式資源添加到解決方案中。 我的第一個想法是我應該將此公鑰安裝到密鑰庫,就像我在設置下安裝 X509Cetificate -> 安全 -> 在手機上安裝用戶證書方法一樣。 此方法失敗,因為我的文件僅包含公鑰,而不是證書。

如何將此公鑰存儲在密鑰庫中? 我的目標是安裝它,然后我想用我的 Xamarin Forms 應用程序讀取它,以便在我發布到服務器之前加密數據。

所以我的目標不是用代碼將這個公鑰設置到密鑰庫,它必須在那里。

您可以嘗試將公鑰作為字符串保存到安全存儲中。

要在安全存儲中保存給定密鑰的值:

try
{
  await SecureStorage.SetAsync("oauth_token", "secret-oauth-token-value");
}
catch (Exception ex)
{
  // Possible that device doesn't support secure storage on device.
}

要從安全存儲中檢索值:

try
{
  var oauthToken = await SecureStorage.GetAsync("oauth_token");
}
catch (Exception ex)
{
  // Possible that device doesn't support secure storage on device.
}

更多詳情參考Xamarin.Essentials: Secure Storage: https://learn.microsoft.com/en-us/xamarin/essentials/secure-storage?context=xamarin%2Fandroid&tabs=ios

暫無
暫無

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

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