文件加密&字符加密的代码
来源:互联网 发布:windows闭源 编辑:程序博客网 时间:2024/05/01 07:19
///<summary>文件加密类 使用DES加密文件流</summary>
///<param>desKey: DES的密钥;desIV: DES向量</param>
class encrypfile{
public byte[] desKey;
public byte[] desIV;
public encrypfile(byte[] inputKey,byte[] inputIV){
desKey=inputKey;
desIV=inputIV;
}
///<summary>加密主方法</summary>
///<param>inName:被加密文件名;outName: 加密后文件名</param>
public void begintoencry(string inName,string outName){
FileStream fin = new FileStream(inName, FileMode.Open, FileAccess.Read);
FileStream fout = new FileStream(outName, FileMode.OpenOrCreate, FileAccess.Write);
fout.SetLength(0);
byte[] bin = new byte[100]; //This is intermediate storage for the encryption.
long rdlen = 0; //This is the total number of bytes written.
long totlen = fin.Length; //This is the total length of the input file.
int len; //This is the number of bytes to be written at a time.
DES des = new DESCryptoServiceProvider();
CryptoStream encStream = new CryptoStream(fout, des.CreateEncryptor(desKey, desIV), CryptoStreamMode.Write);
while(rdlen < totlen)
{
len = fin.Read(bin, 0, 100);
encStream.Write(bin, 0, len);
rdlen = rdlen + len;
}
encStream.Close();
fout.Close();
fin.Close();
}
}
加密字符流
//pToEncrypt为需要加密字符串,sKey为密钥
public string Encrypt(string pToEncrypt, string sKey)
{
DESCryptoServiceProvider des = new DESCryptoServiceProvider();
//把字符串放到byte数组中
byte[] inputByteArray = Encoding.Default.GetBytes(pToEncrypt);
//建立加密对象的密钥和向量
des.Key = ASCIIEncoding.ASCII.GetBytes(sKey);
des.IV = ASCIIEncoding.ASCII.GetBytes(sKey);
MemoryStream ms = new MemoryStream();
CryptoStream cs = new CryptoStream(ms, des.CreateEncryptor(),CryptoStreamMode.Write);
cs.Write(inputByteArray, 0, inputByteArray.Length);
cs.FlushFinalBlock();
StringBuilder ret = new StringBuilder();
foreach(byte b in ms.ToArray())
{
ret.AppendFormat("{0:X2}", b);
}
return ret.ToString();
}
- 文件加密&字符加密的代码
- 文件加密&字符加密的代码
- 文件加密&字符加密的代码
- RSA加密的类文件代码
- openssl 加密文件的完整实现代码
- OpenSSL 加密文件的完整实现代码
- openssl 加密文件的完整实现代码
- 字符加密
- 字符加密
- 字符加密
- 字符加密
- 字符加密
- 字符加密
- 字符加密
- 字符加密
- 字符加密
- 字符加密
- 字符加密
- 随机产生文件名的代码
- 星期总结25-29
- 旭字何解?
- 继承System.Web.UI.Page的页面基类
- 关于asp.net无法访问UNC路径文件的解决
- 文件加密&字符加密的代码
- 在win32系列中修改mysql的连接数量
- 易字何解
- C++/CLI中栈对象的设计问题
- ADSL接入模式浅析
- DLL中调用约定和名称修饰
- 改变或关闭Oracle XDB的ftp和http端口
- 要上10台服务器 500M独享带宽 大家有没有便宜点的资源
- 今日计划