c# - 在 Xamarin 中使用来自 AndroidKeyStore 的密钥解包封装的 CMS 数据
问题描述
我需要解包/解密包含封装数据的 cms 文件。
我可以执行以下操作,并且效果很好
X509Certificate2 cert = new X509Certificate2();
cert.Import("/sdcard/decryption-key.p12", <password>, X509KeyStorageFlags.DefaultKeySet);
X509Certificate2Collection certCollection = new X509Certificate2Collection(cert);
EnvelopedCms cms = new EnvelopedCms();
cms.Decode(<content info>);
cms.Decrypt(certCollection);
这会从文件系统上的 p12 文件创建 X509Certificate2。但是,我希望将该密钥/证书安全地存储在 AndroidKeyStore 中。
我找到了一些允许我将 p12 加载到密钥库中的代码(将.p12-file 导入 AndroidKeyStore)
如何从密钥库中加载数据以创建X509Certificate2
上述内容,或者如何cms.Decrypt
使用密钥库中的密钥进行调用?
谢谢
解决方案
推荐阅读
- c - 在 C 中找到两个没有的 LCM
- javascript - 试图让元素在点击后出现一次,但出现不止一次
- javascript - 类型“{}”不可分配给类型“池”。类型“{}”中缺少属性“配置”
- php - 使用 PHP 从 FFMPEG 读取实时输出
- vue.js - 如何订阅 Vue 中状态的属性?
- hadoop - 磁盘块大小和 hadoop 块大小
- php - 在php中用星号替换域名
- python - 我们可以访问和替换 xlsx 中的图像吗
- haskell - Fibonacci secuence 无法将预期类型 'a0 -> t' 与实际类型 '[Integer]' 匹配
- android - 屏幕按下(在移动设备上)未在预期元素 Unity 3d 上注册