【问题标题】:Store and retreive RSA private key in Windows在 Windows 中存储和检索 RSA 私钥
【发布时间】:2022-12-10 07:49:51
【问题描述】:

我有一个非常简单的场景/要求:

  1. 通过 OpenSSL 或任何在线 RSA 密钥对生成器生成 RSA 私钥/公钥对
  2. 将私钥保存到 Windows 内部存储区(这样它就不会只是作为文件存在于某处
  3. 创建一个 PowerShell 脚本,它会查看存储、找到密钥并使用它。 (基本上,我将有一个 PS 脚本,我向其发送一个已经加密密码的第三方工具,我希望 PS 脚本使用本地存储的私钥解密该密码并即时使用它)

    到目前为止,这是一个无法实现的目标,因为:

    • 我还没有找到方法,如何使用密钥导入 .pem 文件
    • .cer 文件显然不包含密钥
    • 导入密钥的唯一方法(到目前为止我所发现的)是转换为可以导入的 .pfx 文件,但是
    • .pfx 文件无法作为纯文本读取 - Powershell 似乎没有合理的方法来定位密钥并读取它以用于解密
    • 有一个 PSPKI 模块,但它似乎接受文件而不是存储/安装的证书/密钥。

    所以任何人都有任何想法,我如何将一个简单的私钥导入 Windows 以便以后从 PowerShell 中读出以供进一步使用?

    谢谢!

【问题讨论】:

    标签: windows powershell encryption certificate certificate-store


    【解决方案1】:

    看看这个类来加载 PFX:https://learn.microsoft.com/en-us/dotnet/api/system.security.cryptography.x509certificates.x509certificate2?view=net-7.0

    $cert = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2("c:my.pfx", "password");
    

    【讨论】:

      猜你喜欢
      • 2010-11-14
      • 2013-12-04
      • 2017-03-07
      • 2017-12-23
      • 2017-12-30
      • 1970-01-01
      • 2016-02-17
      • 1970-01-01
      • 2014-05-27
      相关资源
      最近更新 更多