将DataProtection与特定Key一起使用

时间:2016-06-19 02:46:19

标签: encryption asp.net-core .net-core

我试图弄清楚如何使用.NET Core的新DataProtection功能,以便我可以指定自己的加密/解密密钥。这将允许我加密netcoreapp之外的数据,然后在我的netcoreapp中解密该数据(反之亦然)。

背景:

我的数据库包含散列密码和加密的社会保险号。有一个应用程序位于这个用.NET 2.0编写的数据库之上。

我们正在ASP.NET Core中创建一个新的UI,它将与.NET 2.O UI同时存在。用户可以在旧UI下登录进行操作,然后转身并在新UI下登录并执行其他操作。

到目前为止我已尝试过:

  1. ASP.NET Core Documentation网站上的文档未涵盖此方案。

  2. 我找到了使用Encrypt_KnownKey()的测试ManagedAuthenticatedEncryptor。我相信它正在使用它自己的密钥,但不幸的是它是internal

  3. 我们已经将我们的.NET 2.0加密代码转换为.NET Core,但它是一堆可怕的,我希望有一个开箱即用的解决方案。

  4. 更新:

    1. 我当前的进程使用Windows DPAPI存储密钥,因此我通过使用现有系统中的Windows DPAPI加密密钥替换生成的Windows DPAPI加密密钥来更新key-{guid}.xml。毫不奇怪,这不起作用。
    2. 想要指定特定密钥似乎不合理,所以我希望找到解决方案时遇到问题的原因是我对加密的所有内容缺乏了解。

0 个答案:

没有答案