簡體   English   中英

如何在.Net智能卡中管理/存儲加密密鑰?

[英]How to manage/store encryption key in .Net smart card?

我一直在這里搜索,並閱讀了很多有關該密鑰的問題,但是不幸的是,沒有人問過智能卡或任何便攜式設備。

這是我的問題:

我有存儲敏感醫療信息的智能卡 ,我需要使用卡內的任何對稱算法來加密此信息。 但是我對這個秘密密鑰真的很困惑。

  • 我應該在哪里存放它?
  • 我每次存儲新信息都必須生成嗎?
  • 我是否應該選擇一個強力鑰匙並將其存儲在某個位置而不進行更改?

您的問題在方面方面尚不清楚,您正在嘗試使用加密保護什么,以及針對哪些內容(業余程序員,密碼專家,秘密服務)。 由於智能卡及其操作系統能夠充分保護自己,因此不太可能希望防止未經授權就取出智能卡。 合法主機應用程序也不太可能以加密形式進行處理。 因此,很可能需要保護讀取過程本身,這對於非接觸式/ NFC來說是顯而易見的,但對於基於接觸的通信也是個好主意。

這里的重要術語是安全消息傳遞 您有一個很強的靜態密鑰,很少需要根據使用強度進行更改,或者更常見的是,您協商一個會話密鑰,這也可能取決於(可能是固定的)秘密。 兩者都可以與序列計數器結合使用,因此即使在會話中讀取相同的數據也將提供不同的密碼。 無論選擇哪種方式,密鑰都必須在兩側存儲/計算。 部分機密本身需要安全存儲,具體取決於攻擊潛力,該存儲可能位於磁盤上的加密文件(具有完全不同的密鑰)中,或者在極端情況下,位於特殊的智能卡(如稱為安全模塊)的設備中,可能具有硬件防篡改功能。 (如果不能阻止攻擊,則至少要表現出操縱性,例如通過損壞的安全封條)。

暫無
暫無

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

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