System.Net.Security.SslStream with HSM



如何将.NET 4.8 System.NET.Security.SlStream与保持RSA私钥安全的外部设备(HSM(一起使用,因为SslStream.AuthenticateAsServer需要同时具有公钥/私钥的X509Certificate。如何将X509Certificate私钥与HSM关联,并将SslStream验证传递到远程安全设备?

微软ssl抽象是否可能,或者我应该依赖一些自定义ssl实现(开源库(?

我真的不了解你的架构,所以我遇到了一些问题,给出了一个很好的答案。他是一些指点迷津的人1( 无论何时加密,都需要解密(或验证(。所以你总是有两份私钥。一个用于加密,另一个用于解密(或验证(

2( 当密钥在文件系统上时,您可以始终使用凭据来保护文件。但是你不能阻止别人删除硬盘并在另一个系统上读取。因此,HSM对驱动器提供物理保护,因此有人无法通过删除驱动器来读取您的私钥。3( 您的系统有一个红/黑边界,其中红色区域是数据未加密的区域,黑色区域是数据加密的区域。你会有一个防火墙,它是红色和黑色区域之间的划分。在这种情况下,您有三个安全区域,其中第三个是一个紫色区域(HSM设备(,其中私钥受到保护。

您遇到的问题是设置系统的红/黑/紫边界。您有需要使用HSM上的证书加密的红色数据。我认为你有一个内部的红色网络(或数据库(,其中的数据在作为加密的黑色数据发送之前需要用证书加密。因此,我建议在HSM上提供一个加密服务。因此,你的红网要获得加密数据,就要发送到加密服务。然后在加密后,数据可以作为黑数据发送到防火墙。

最新更新