首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

.NET和Javascript中的简单字符串加密

在这个问答内容中,您提到了两种编程语言:.NET和Javascript。您想要了解如何在这两种编程语言中进行简单的字符串加密。

在.NET中,您可以使用System.Security.Cryptography命名空间中的类来进行加密和解密操作。例如,您可以使用AES算法来加密字符串。以下是一个简单的示例代码:

代码语言:csharp
复制
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算法来加密和解密字符串。您可以使用这个类来加密和解密字符串,例如:

代码语言:csharp
复制
var plainText = "Hello, world!";
var cipherText = AESHelper.Encrypt(plainText);
var decryptedText = AESHelper.Decrypt(cipherText);

在Javascript中,您可以使用crypto-js库来进行加密和解密操作。以下是一个简单的示例代码:

代码语言:javascript
复制
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算法来加密和解密字符串。您可以使用这个代码来加密和解密字符串。

需要注意的是,这里的示例代码中使用的密钥和向量都是不安全的,您应该使用更强的密钥和向量来保证安全性。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券