C#加密解密字符串

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介: using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Security.Cryptography;using System.Web;using System.IO;namespace XXKey{ public class N

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Security.Cryptography;
using System.Web;
using System.IO;

namespace XXKey
{
    public class NewEncrypt
    {
        static byte[] deKey = Encoding.Default.GetBytes("asdfghjkasdfghjkasdfghjkasdfghjk");
        static byte[] deIV = Encoding.Default.GetBytes("asdfghjkasdfghjk");

        public static string Encrypt(string PlainText)
        {
            return Encrypt(PlainText, deKey, deIV);
        }

        private static string Encrypt(string PlainText, byte[] deKey, byte[] deIV)
        {
            MemoryStream ms = new MemoryStream();
            //DESCryptoServiceProvider key = new DESCryptoServiceProvider();
            SymmetricAlgorithm key = SymmetricAlgorithm.Create();

            CryptoStream encStream = new CryptoStream(ms, key.CreateEncryptor(deKey, deIV), CryptoStreamMode.Write);
            StreamWriter sw = new StreamWriter(encStream);

            sw.WriteLine(PlainText);
            sw.Close();
            encStream.Close();

            byte[] buffer = ms.ToArray();
            ms.Close();

            return Encoding.Default.GetString(buffer);
        }

        public static string Decrypt(string CypherText)
        {
            return Decrypt(CypherText, deKey, deIV);
        }

        private static string Decrypt(string CypherText, byte[] deKey, byte[] deIV)
        {
            MemoryStream ms = new MemoryStream(Encoding.Default.GetBytes(CypherText));
            //DESCryptoServiceProvider key = new DESCryptoServiceProvider();
            SymmetricAlgorithm key = SymmetricAlgorithm.Create();

            CryptoStream encStream = new CryptoStream(ms, key.CreateDecryptor(deKey, deIV), CryptoStreamMode.Read);
            StreamReader sr = new StreamReader(encStream);

            string val = sr.ReadLine();

            sr.Close();
            encStream.Close();
            ms.Close();

            return val;
        }
    }
}



目录
相关文章
|
5月前
|
数据安全/隐私保护
常用的字符串加密解密工具类
常用的字符串加密解密工具类
|
5天前
|
人工智能 小程序 数据安全/隐私保护
维吉尼亚密文解密小程序
维吉尼亚密文解密小程序
12 0
|
4月前
|
算法 vr&ar 数据安全/隐私保护
$文本串加密和解密程序
$文本串加密和解密程序
27 0
|
算法 Java Maven
DES加解密算法:含DES密钥生成、参数名ASCII码从小到大排序
DES加解密算法:含DES密钥生成、参数名ASCII码从小到大排序
376 0
DES加解密算法:含DES密钥生成、参数名ASCII码从小到大排序
|
数据安全/隐私保护 C语言
【C 语言】文件操作 ( 文件加密解密 | 加密解密原理 | 对称加密原理 | 非密钥整数倍长度的数据加密处理 )
【C 语言】文件操作 ( 文件加密解密 | 加密解密原理 | 对称加密原理 | 非密钥整数倍长度的数据加密处理 )
151 0
【C 语言】文件操作 ( 文件加密解密 | 加密解密原理 | 对称加密原理 | 非密钥整数倍长度的数据加密处理 )
|
数据安全/隐私保护 索引
|
数据安全/隐私保护
|
Java 数据安全/隐私保护
|
数据安全/隐私保护 Go
|
Go 数据安全/隐私保护