public static RSAParameters GetPrivateKeyRSAParameters(string privateKeyString) { using (var rsa = RsaPEMHelper.PrivateKeyFromPem(privateKeyString)) { return(rsa.ExportParameters(true)); } }
public static RSAParameters GetPublicKeyRSAParameters(string publicKeyString) { using (var rsa = RsaPEMHelper.PublicKeyFromPem(publicKeyString)) { return(rsa.ExportParameters(false)); } }
public static bool VerifySignature(string publicKeyString, byte[] hashOfDataToSign, byte[] signature) { using (var rsa = RsaPEMHelper.PublicKeyFromPem(publicKeyString)) { var rsaDeformatter = new RSAPKCS1SignatureDeformatter(rsa); rsaDeformatter.SetHashAlgorithm("SHA256"); return(rsaDeformatter.VerifySignature(hashOfDataToSign, signature)); } }
public static byte[] CreateDigitalSignature(string privateKeyString, byte[] hashOfDataToSign) { using (var rsa = RsaPEMHelper.PrivateKeyFromPem(privateKeyString)) { var rsaFormatter = new RSAPKCS1SignatureFormatter(rsa); rsaFormatter.SetHashAlgorithm("SHA256"); return(rsaFormatter.CreateSignature(hashOfDataToSign)); } }
public static byte[] DecryptData(string privateKeyString, byte[] dataToEncrypt) { byte[] plain; using (var rsa = RsaPEMHelper.PrivateKeyFromPem(privateKeyString)) { plain = rsa.Decrypt(dataToEncrypt, false); } return(plain); }
public static byte[] EncryptData(string publicKeyString, byte[] dataToEncrypt) { byte[] cipherbytes; using (var rsa = RsaPEMHelper.PublicKeyFromPem(publicKeyString)) { cipherbytes = rsa.Encrypt(dataToEncrypt, false); } return(cipherbytes); }
public static (string publicKey, string privateKey) AssignNewKey() { return(RsaPEMHelper.GenerateRsaKeyPair()); }
public static void AssignNewKey(string publicKeyPath, string privateKeyPath) { RsaPEMHelper.GenerateRsaKeyPairFiles(publicKeyPath, privateKeyPath); }