写入/格式化受保护的USB闪存盘或USB令牌

本文关键字:USB 闪存盘 令牌 格式化 受保护 写入 | 更新日期: 2023-09-27 18:27:38

我正在开发C#.NET应用程序,该应用程序将使用证书对要用私钥发送的数据进行签名,并在接收方用公钥验证签名。我正在U盘中向用户发送*.p12(PKCS#12格式)文件,但希望防止用户格式化或写入。有什么方法可以做到这一点吗?

有些人建议我使用USB令牌,但我没有任何经验。是否可以将*.p12文件存储在USB令牌中,或者它们只包含一些证书类型?

如果以上都不适合,请给我一些更好的方法。

写入/格式化受保护的USB闪存盘或USB令牌

闪存盘的问题不在于用户可以向其写入,而在于可以从中复制机密信息(私钥)。相反的USB加密令牌允许您使用密钥,但不能复制。

USB加密令牌不存储"文件"(尽管其中一些可以存储不同大小的"应用程序数据")。它们存储证书、公钥、私钥和对称(秘密)密钥。PKCS#12文件是证书和相关私钥的集合,因此您可以使用USB令牌在USB令牌中存储PKCS#12文件的内容

如果你想让用户出于任何原因复制和分发密钥(例如,将带有密钥的证书安装到Windows证书存储中),那么USB加密令牌将无法很好地执行你的任务(虽然可以将其用作闪存盘,但这太过分了)。

至于写保护U盘-是的,在控制器级别上,这些设备可以设置为只读,但我不确定这在C#中是否可行。