手机
当前位置:查字典教程网 >脚本专栏 >vbs >VBS中通过调用CAPICOM对象实现SHA1&MD5加密
VBS中通过调用CAPICOM对象实现SHA1&MD5加密
摘要:本来打算自己写的,但是看到复杂的算法描述就知难而退了。算了吧,有现成的COM对象调用,又何必去关心算法呢,直接拿来使用就行了。如果下面的例子...

本来打算自己写的,但是看到复杂的算法描述就知难而退了。算了吧,有现成的COM对象调用,又何必去关心算法呢,直接拿来使用就行了。如果下面的例子代码提示无法创建对象,需要下载CAPICOM组件并注册。

复制代码 代码如下:

Const CAPICOM_HASH_ALGORITHM_MD2 = 1

Const CAPICOM_HASH_ALGORITHM_MD4 = 2

Const CAPICOM_HASH_ALGORITHM_MD5 = 3

Const CAPICOM_HASH_ALGORITHM_SHA1 = 0

Const CAPICOM_HASH_ALGORITHM_SHA_256 = 4

Const CAPICOM_HASH_ALGORITHM_SHA_384 = 5

Const CAPICOM_HASH_ALGORITHM_SHA_512 = 6

Dim HashedData

Set HashedData = CreateObject("CAPICOM.HashedData")

HashedData.Algorithm = CAPICOM_HASH_ALGORITHM_SHA1

HashedData.Hash "Demon"

WScript.Echo HashedData.Value

需要指出的是VBS的字符串是Unicode编码的,例如上面的字符串"Demon"在内存中的十六进制是4400 6500 6D00 6F00 6E00,这些Hash算法只关心数据的二进制值,不同编码的同一字符串的二进制值是不一样的,这就是算出来的值和PHP中(PHP默认的编码是UTF-8)的sha1("Demon")的值不一样的原因。更多CAPICOM的用法请自行查阅MSDN参考文档。

下面是我写的一个用VBS校验文件SHA1和MD5值的程序,将文件拖动到VBS上即可,缺点是不能处理太大的文件。

文中软件与vbs打包下载 http://xiazai.jb51.net/201101/tools/capicom_dc_sdk_jb51.rar

原文:http://demon.tw/programming/vbs-sha1-md5.html

【VBS中通过调用CAPICOM对象实现SHA1&MD5加密】相关文章:

关于脚本调用外部对像和类型库

VBS通过WMI获取CPU使用率的代码

VBS调用WMI实现搜索硬盘mp3文件

使用脚本调用系统的关机对话框实现代码

VBS 十六进制异或加密实现代码

VBS编程教程 (第6篇)

用VBS实现PHP的md5_file函数代码

管理网卡vbs脚本

VBScript 输出中的对齐实现方法

VBS字符串的内部实现

精品推荐
分类导航