DES标准加密、解密算法For ASP
-----------------------------------------
功能:用vbscript实现DES标准加密算法
模式:ECB/CBC 默认:ECB
填充:PKCS5/NONE/ZERO 默认:PKCS5
编码:GK2312/UTF-8
调用示例:(cbc/pkcs5/gb2312)
<%
Dim str
str = "我还是爱你的"
Dim des
Set des = new DesClass
With des
.Key = "12345678"
.IV = "12345678" 'cbc mode only
.Mode = "cbc"
.Padding = "pkcs5"
.Encoding = "gb2312"
Response.Write .Encode(str) & "<br>"
Response.Write .Decode(.Encode(str))
End With
%>
AES标准加密、解密算法For ASP
---------------------------------------
功能:用vbscript实现AES标准加密算法
模式:ECB/CBC 默认:ECB
填充:PKCS5/NONE/ZERO 默认:PKCS5
编码:GK2312/UTF-8
调用示例:(cbc/pkcs5//gb2312)
<%
Dim str
str = "我还是爱你的"
Dim aes
Set aes = new AesClass
With aes
.Key = "1234567812345678"
.IV = "1234567812345678" 'cbc mode only
.Mode = "cbc"
.Padding = "pkcs5"
.Encoding = "gb2312"
Response.Write .Encode(str) & "<br>"
Response.Write .Decode(.Encode(str))
End With
%>
PS:
在绝大多数的ASP应用中,很少涉及到这两个算法。很可惜,我在先后经历的两家公司的产品(项目)中,都碰上了。
第一个是天津联通短信网关的一个简单集成,要用到3DES;
第二个是公司产品和杭州小灵通项目上的合作,也是接口部分用到了AES;
因为两个项目和产品本身都是ASP的,但当时几经周折都没有办法实现。
网上倒是找到了几个,但都不是标准的算法,加密以后对方解不开。
后来不得不妥协采用一个变通的方法,就是DES和AES部分用.net来做,再用xmlhttp去取结果。
这样做的结果以后会带来很多麻烦,比如曾多次遇到,客户一在新机器上部署,但忘了安装.net framework,导致接口出错。
后来,一个偶然的机会,在一国外网站上发现了这两个算法的JS版,一经对比测试,发现竟然是标准的算法,但是没有设置
“填充模式”的功能。于是,花一些时间,改成了VBS版,并完善了填充模式,以便于实际应用的需要。
上家公司是做视频会议的,除了公网有运营平台外,公司也会把系统打包卖给有需要的客户,在离职前,把那个.net版的AES换成了vbs版,
避免了不必要的麻烦,也算是自己最后给公司做一顶点儿贡献吧。
最后补充一点,UTF-8模式下,除了encoding,还需要把ASP类文件也保存为UTF-8。
如果在使用中有什么问题,可以随时交流:
lwlwei@126.com
qq: 114003201
- 1
- 2
- 3
- 4
- 5
- 6
前往页