博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
RijndaelManaged 加密
阅读量:5049 次
发布时间:2019-06-12

本文共 2211 字,大约阅读时间需要 7 分钟。

public  string Encrypt(string str)        {            string result = null;            if (str == null)            {                return result;            }            try            {                byte[] array0 = Encoding.ASCII.GetBytes(str);                MemoryStream stream = new MemoryStream(array0);                RijndaelManaged rijndaelManaged = new RijndaelManaged();                byte[] key = new byte[32] { 5, 1, 3, 28, 27, 3, 2, 16, 12, 19, 39, 200, 10, 18, 181, 79, 103, 61, 145, 215, 125, 212, 131, 241, 229, 254, 250, 205, 11, 29, 83, 125 };                byte[] vi = new byte[16] { 204, 19, 18, 10, 147, 108, 20, 177, 26, 171, 19, 143, 38, 112, 19, 12 };                ICryptoTransform transform = rijndaelManaged.CreateEncryptor(key, vi);                CryptoStream cryptoStream = new CryptoStream(stream, transform, CryptoStreamMode.Write);                result = cryptoStream.ToString();                cryptoStream.FlushFinalBlock();                return result;            }            catch            {                return null;            }        }        public  string Decode(string str)        {            string result = null;            if (str == null)            {                return result;            }            try            {                byte[] array0 = Encoding.ASCII.GetBytes(str);                MemoryStream stream = new MemoryStream(array0);                RijndaelManaged rijndaelManaged = new RijndaelManaged();                byte[] key = new byte[32] { 5, 1, 3, 28, 27, 3, 2, 16, 12, 19, 39, 200, 10, 18, 181, 79, 103, 61, 145, 215, 125, 212, 131, 241, 229, 254, 250, 205, 11, 29, 83, 125 };                byte[] vi = new byte[16] { 204, 19, 18, 10, 147, 108, 20, 177, 26, 171, 19, 143, 38, 112, 19, 12 };                ICryptoTransform transform = rijndaelManaged.CreateEncryptor(key, vi);                CryptoStream inStream = new CryptoStream(stream, transform, CryptoStreamMode.Read);                return inStream.ToString();            }            catch            {                return null;            }        }

1.代码中key和vi分别对应加密器对象和初始化向量 ()

2.Key和VI只有完全匹配得上加密数据才可以被解密

转载于:https://www.cnblogs.com/Khan-Sadas/p/11058233.html

你可能感兴趣的文章
二叉索引树 树状数组
查看>>
日志框架--(一)基础篇
查看>>
Java设计模式之原型模式
查看>>
Spring学习(四)-----Spring Bean引用同xml和不同xml bean的例子
查看>>
哲理故事与管理之道(20)-用危机激励下属
查看>>
关于源程序到可运行程序的过程
查看>>
wepy的使用
查看>>
转载:mysql数据库密码忘记找回方法
查看>>
scratch少儿编程第一季——06、人在江湖混,没有背景怎么行。
查看>>
面向对象1
查看>>
在ns2.35中添加myevalvid框架
查看>>
【贪心+DFS】D. Field expansion
查看>>
为什么要使用href=”javascript:void(0);”
查看>>
二进制文件的查看和编辑
查看>>
C# Async与Await的使用
查看>>
Mysql性能调优
查看>>
iOS基础-UIKit框架-多控制器管理-实例:qq界面框架
查看>>
javascript学习---BOM
查看>>
IOS-每个程序员的编程之路上都应该看这11本书
查看>>
自定义tabbar(纯代码)
查看>>