public string Encrypt(string plainTextMessage, IPublicKeyProvider publicKeyProvider) { var publicKey = AsymetricKeyParameterExtensions .GetPublicKeyFromString(publicKeyProvider .GetPublicKeyString(folderProvider.GetFolderName())); var csp = new RSACryptoServiceProvider(2048); csp.ImportParameters(publicKey); var bytesPlainText = Encoding.Unicode.GetBytes(plainTextMessage); var bytesCipherText = csp.Encrypt(bytesPlainText, false); return(Convert.ToBase64String(bytesCipherText)); }