Tag: 私钥

SharpSSH无效私钥

我使用SharpSSH连接到stfp服务器。 这对于我需要添加这样的privatekey文件: sftp.AddIdentityFile(KeyFilePath); 但这引发了一个例外: invaid privatekey: C:\KeyFile\privatekey_2.ppk 该文件是使用puttygen创建的,并与filezilla一起使用。 privatekey-type无关紧要(SSH-1 RSA,SSH-2 RSA,SSH-2 DSA)。 每次都有相同的结果。 你知道如何处理这个问题吗?

从BouncyCastle X509证书获取私钥? C#

通常,当我从密钥库中获取X509Certificate2时,我可以调用.PrivateKey来检索证书的私钥作为AsymmetricAlgorithm 。 但是我决定使用Bouncy Castle,它的X509Certificate实例只有一个getPublicKey(); 我看不到从私有密钥中获取私钥的方法。 有任何想法吗? 我从我的Windows-MY密钥库中获取了X509Certificate2,然后使用: //mycert is an X509Certificate2 retrieved from Windows-MY Keystore X509CertificateParser certParser = new X509CertificateParser(); X509Certificate privateCertBouncy = certParser.ReadCertificate(mycert.GetRawCertData()); AsymmetricKeyParameter pubKey = privateCertBouncy.GetPublicKey(); //how do i now get the private key to make a keypair? 无论如何将AsymmetricAlgorithm (C#私钥)转换为AsymmetricKeyParameter (bouncycastle私钥)?

计算VS_KEY容器名称

如何计算VS_KEY容器名称? 它们通常是这样的:VS_KEY_71E582524B5DDE29。 我假设它基于计算机名称但是如果我们运行的云服务每次实例重新启动时随机更改计算机名称会怎么样? 我们需要在实例启动时拥有容器名称,以便我们知道将私钥存储到哪个容器中,因此构建工具和所有工作都应该如此。 我们需要自动设置容器名称。 所以基本上我们需要找到一种方法来在每次计算机重新启动时生成正确的容器名称。 任何提示或帮助?

Windows中公钥和私钥的容器位置?

我试图使用以下代码将我的公钥和私钥存储在容器中: CspParameters cp = new CspParameters(); cp.KeyContainerName = “Test”; RSACryptoServiceProvider rsa = new RSACryptoServiceProvider(cp); 我想知道的是容器的位置。 容器在文件系统中的位置是什么?

使用ASP.Net中的客户端证书进行数字签名

我正在尝试使用私钥对信息进行数字签名。 我知道如何在.Net的桌面客户端应用程序中执行此操作,但我不确定如何在ASP.Net中执行此操作。 它将在使用IE8的Intranet上使用。 如果是通过ASP.Net完成的,我猜测当用户在访问站点时键入其证书passowrd(https,双向SSL)时,私钥不会发送到服务器,但我不确定。 如果无法访问服务器上的客户端私钥,那么如何在浏览器中签名呢? 我可以使用javascript吗? 编辑:我想首先要知道的是,如果可以在服务器上完成,还是必须在客户端上完成?

使用PrivateKey X.509证书解密

我有一个问题是解密消息usgin X.509证书。 我使用以下选项生成带有makecert的证书: makecert -r -pe -n “CN=MyCertificate” -ss CA -sr CurrentUser -a sha1 -sky signature -cy authority -sv CA.pvk CA.cer PrivateKey是“mypassword”。 我的问题是当我想解密用c#中的先前证书加密的消息时。 我发现这个类http://blog.shutupandcode.net/?p=660 ,但是在X509Decrypt方法中,PrivateKey一直是null。 public static byte [] X509Decrypt(byte [] data,string certificateFile,string password) { //加载证书并解密指定的数据 使用(var ss = new System.Security.SecureString()) { foreach(密码中的var keyChar.ToCharArray()) ss.AppendChar(keyChar); //加载受密码保护的证书文件 X509Certificate2 cert = new X509Certificate2(certificateFile,ss); 使用(RSACryptoServiceProvider rsa =(RSACryptoServiceProvider)cert.PrivateKey) { […]

证书存储区中证书的私钥不可读

我想我和这个人一样有同样的问题,但我没有他/她那么幸运,因为提供的解决方案对我不起作用。 提供的解决方案在C:\ProgramData\Microsoft\Crypto\RSA\MachineKeys ( 不在子目录中)和C:\Users\[Username]\AppData\Roaming\Microsoft\Crypto\RSA (和子目录)中查找文件但是因为我希望安装程序将应用程序安装到所有用户,所以自定义操作在SYSTEM -User下运行,这导致实际在C:\ProgramData\Application Data\Microsoft\Crypto\RSA\S-1-5-18 。 当以管理员(右键单击 – >运行为管理员)运行“普通”应用程序执行完全相同的代码时,将在C:\Users\[Username]\AppData\Roaming\Microsoft\Crypto\RSA\S-1-5-21-1154405193-2177794320-4133247715-1000创建一个文件C:\Users\[Username]\AppData\Roaming\Microsoft\Crypto\RSA\S-1-5-21-1154405193-2177794320-4133247715-1000 。 使用WIX自定义操作生成的证书似乎没有私钥(“ 密钥集不存在 ”),而“正常”应用程序生成的证书具有。 在查看文件的权限时,它们似乎没问题,即使它们不同(工作者确实包括SYSTEM用户),即使将SYSTEM 1添加到(“非工作”)文件后我也无法在这里读取私钥,同样的错误。 然后我使用FindPrivateKey工具找到相应的文件,但我得到的是”Unable to obtain private key file name” 。 好的,这里有什么? Windows在哪里存储SYSTEM用户存储的证书的私钥? 也许没有创建任何私钥文件? 为什么?

c#RSA从私钥中提取公钥

有没有办法从c#中的私钥中提取公钥? 如果我做了ToXMLString()那么我可以设置是否需要使用私钥保存的公钥信息。 所以现在我认为有一种方法可以从私有中提取公钥吗?

加密BouncyCastle RSA密钥对并存储在SQL2008数据库中

我有一个生成BouncyCastle RSA密钥对的函数。 我需要加密私钥,然后将加密的私钥和公钥存储到单独的SQL2008数据库字段中。 我使用以下内容获取密钥对: private static AsymmetricCipherKeyPair createASymRandomCipher() { RsaKeyPairGenerator r = new RsaKeyPairGenerator(); r.Init(new KeyGenerationParameters(new SecureRandom(), 1024)); AsymmetricCipherKeyPair keys = r.GenerateKeyPair(); return keys; } 这是正确的返回键,但我不知道如何加密私钥然后将其存储在数据库中。 这是我目前使用的加密数据(错误?): public static byte[] encBytes2(AsymmetricKeyParameter keyParam, byte[] Key, byte[] IV) { MemoryStream ms = new MemoryStream(); Rijndael rjdAlg = Rijndael.Create(); rjdAlg.Key = Key; rjdAlg.IV = IV; CryptoStream cs = […]