在VB.NET中存在着这样两种函数,一个是解密函数,另一个则是加密函数。这两种函数的应用则可以帮助开发人员实现DEC加密程序。下面我们可以通过两段代码来对VB.NET编写DEC加密程序的相关方法进行一个解读。
网站建设哪家好,找创新互联!专注于网页设计、网站建设、微信开发、成都小程序开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了黄冈免费建站欢迎大家使用!
VB.NET编写DEC加密程序之加密函数:
- Public Shared Function Encrypt(ByVal
pToEncrypt As String, ByVal sKey
As String) As String- Dim des As New DESCryptoServiceProvider()
- Dim inputByteArray() As Byte
- inputByteArray = Encoding.Default.
GetBytes(pToEncrypt)- ''建立加密对象的密钥和偏移量
- ''原文使用ASCIIEncoding.ASCII方法的GetBytes方法
- ''使得输入密码必须输入英文文本
- des.Key = ASCIIEncoding.ASCII.GetBytes(sKey)
- des.IV = ASCIIEncoding.ASCII.GetBytes(sKey)
- ''写二进制数组到加密流
- ''(把内存流中的内容全部写入)
- Dim ms As New System.IO.MemoryStream()
- Dim cs As New CryptoStream(ms,
des.CreateEncryptor,
CryptoStreamMode.Write)- ''写二进制数组到加密流
- ''(把内存流中的内容全部写入)
- cs.Write(inputByteArray, 0,
inputByteArray.Length)- cs.FlushFinalBlock()
- ''建立输出字符串
- Dim ret As New StringBuilder()
- Dim b As Byte
- For Each b In ms.ToArray()
- ret.AppendFormat("{0:X2}", b)
- Next
- Return ret.ToString()
- End Function
VB.NET编写DEC加密程序之解密函数:
- Public Shared Function Decrypt
(ByVal pToDecrypt As String,
ByVal sKey As String) As String- Dim des As New DESCryptoService
Provider()- ''把字符串放入byte数组
- Dim len As Integer
- len = pToDecrypt.Length / 2 - 1
- Dim inputByteArray(len) As Byte
- Dim x, i As Integer
- For x = 0 To len
- i = Convert.ToInt32(pToDecrypt.
Substring(x * 2, 2), 16)- inputByteArray(x) = CType(i, Byte)
- Next
- ''建立加密对象的密钥和偏移量,此值重要,不能修改
- des.Key = ASCIIEncoding.ASCII.GetBytes(sKey)
- des.IV = ASCIIEncoding.ASCII.GetBytes(sKey)
- Dim ms As New System.IO.MemoryStream()
- Dim cs As New CryptoStream(ms,
des.CreateDecryptor, CryptoStreamMode.Write)- cs.Write(inputByteArray, 0,
inputByteArray.Length)- cs.FlushFinalBlock()
- Return Encoding.Default.GetString(ms.ToArray)
- End Function
两个函数中第一个参数是待加密或解密的字符串,sKey是使用的密钥,必须是8位,使用的时候要注意哦,不然会出错的。
以上就是我们为大家介绍的VB.NET编写DEC加密程序操作技巧。
【编辑推荐】
网站名称:VB.NET编写DEC加密程序实际操作技巧分享
路径分享:http://www.csdahua.cn/qtweb/news27/395327.html
网站建设、网络推广公司-快上网,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 快上网