在这个问答内容中,您提到了两种编程语言:.NET和Javascript。您想要了解如何在这两种编程语言中进行简单的字符串加密。
在.NET中,您可以使用System.Security.Cryptography命名空间中的类来进行加密和解密操作。例如,您可以使用AES算法来加密字符串。以下是一个简单的示例代码:
using System;
using System.IO;
using System.Security.Cryptography;
using System.Text;
public class AESHelper
{
private static readonly byte[] Key = Encoding.UTF8.GetBytes("0123456789ABCDEF");
private static readonly byte[] IV = Encoding.UTF8.GetBytes("ABCDEF987654321");
public static string Encrypt(string plainText)
{
using (var aes = Aes.Create())
using (var encryptor = aes.CreateEncryptor(Key, IV))
using (var ms = new MemoryStream())
using (var cs = new CryptoStream(ms, encryptor, CryptoStreamMode.Write))
using (var sw = new StreamWriter(cs))
{
sw.Write(plainText);
sw.Flush();
cs.FlushFinalBlock();
return Convert.ToBase64String(ms.ToArray());
}
}
public static string Decrypt(string cipherText)
{
var cipher = Convert.FromBase64String(cipherText);
using (var aes = Aes.Create())
using (var decryptor = aes.CreateDecryptor(Key, IV))
using (var ms = new MemoryStream(cipher))
using (var cs = new CryptoStream(ms, decryptor, CryptoStreamMode.Read))
using (var sr = new StreamReader(cs))
{
return sr.ReadToEnd();
}
}
}
在这个示例中,我们使用了AES算法来加密和解密字符串。您可以使用这个类来加密和解密字符串,例如:
var plainText = "Hello, world!";
var cipherText = AESHelper.Encrypt(plainText);
var decryptedText = AESHelper.Decrypt(cipherText);
在Javascript中,您可以使用crypto-js库来进行加密和解密操作。以下是一个简单的示例代码:
const CryptoJS = require('crypto-js');
const key = '0123456789ABCDEF';
const iv = 'ABCDEF987654321';
function encrypt(plainText) {
const cipherText = CryptoJS.AES.encrypt(plainText, CryptoJS.enc.Utf8.parse(key), { iv: CryptoJS.enc.Utf8.parse(iv) }).toString();
return cipherText;
}
function decrypt(cipherText) {
const decryptedText = CryptoJS.AES.decrypt(cipherText, CryptoJS.enc.Utf8.parse(key), { iv: CryptoJS.enc.Utf8.parse(iv) }).toString(CryptoJS.enc.Utf8);
return decryptedText;
}
const plainText = 'Hello, world!';
const cipherText = encrypt(plainText);
const decryptedText = decrypt(cipherText);
在这个示例中,我们使用了crypto-js库中的AES算法来加密和解密字符串。您可以使用这个代码来加密和解密字符串。
需要注意的是,这里的示例代码中使用的密钥和向量都是不安全的,您应该使用更强的密钥和向量来保证安全性。
领取专属 10元无门槛券
手把手带您无忧上云