操作系统 程序设计 图形图像 媒体动画 机械电子 WEB开发 数据库 办公软件 路由技术 网络原理 网络架设 网络管理 认证培训
您的位置:计算机资讯网 >> 程序设计 >> Java 语言 >> 实例分析 -> 使用的DES对称加密
使用的DES对称加密
2004-10-13 09:55:24

在网站使用Cookie或者存放数据到数据库中的时候时常会用到加密解密,MD5非常好用,但是有的时候需要进行逆运算。那么此时DES对称加密就比较好用了。设定一个密钥,然后对所有的数据进行加密。代码介绍如下,事先声明仅为小弟个人理解,请各位多多指教
Imports System
Imports System.IO
Imports System.Text
Imports System.Diagnostics
Imports System.Security.Cryptography
Imports System.Text.RegularExpressions

'使用标准DES对称加密
Public Function EncryptDes(ByVal SourceStr As String) As String

'get encodekey string from web.config
Dim skey As String
skey = ConfigurationSettings.AppSettings("EnCodeKey")

'put the input string into the byte array
Dim des As DESCryptoServiceProvider = New DESCryptoServiceProvider()
Dim inputByteArray As Byte()
inputByteArray = Encoding.Default.GetBytes(SourceStr)

'set encrypt object and skey
des.Key = ASCIIEncoding.ASCII.GetBytes(skey)
des.IV = ASCIIEncoding.ASCII.GetBytes(skey)
Dim ms As MemoryStream = New MemoryStream()
Dim cs As CryptoStream = New CryptoStream(ms, des.CreateEncryptor(), CryptoStreamMode.Write)
Dim sw As StreamWriter = New StreamWriter(cs)
sw.Write(SourceStr)
sw.Flush()
cs.FlushFinalBlock()
ms.Flush()
Return Convert.ToBase64String(ms.GetBuffer(), 0, ms.Length)

End Function

'使用标准DES对称解密
Public Function DecryptDes(ByVal SourceStr As String) As String

'get encodekey string from web.config
Dim sKey As String
sKey = ConfigurationSettings.AppSettings("EnCodeKey")

'put the input string into the byte array
Dim des As DESCryptoServiceProvider = New DESCryptoServiceProvider()

des.Key = ASCIIEncoding.ASCII.GetBytes(sKey)
des.IV = ASCIIEncoding.ASCII.GetBytes(sKey)

Dim buffer As Byte() = Convert.FromBase64String(SourceStr)

Dim ms As MemoryStream = New MemoryStream(buffer)
Dim cs As CryptoStream = New CryptoStream(ms, des.CreateDecryptor(), CryptoStreamMode.Read)
Dim sr As StreamReader = New StreamReader(cs)
Return sr.ReadToEnd()

End Function

转自:不详 作者:未知 关闭
加入收藏 推荐给好友 打印本文
内容为网上收集,并不代表本站同意或者赞同其观点,如果有任何版权,内容问题,请联系本站,我们将在第一时间处理.
查询
关键字
搜索范围
热点专题
服务
计算机资讯网 | 联系方式 | 广告服务 | 意见留言 | 友情链接 | 网站地图 | 设为首页