想用DES和3DES加密的函数
找到了以下几个方案1.网上下载的DES.CLS(DES/3DES 加解密类模块 V1.0)的类模块
在调用SetKey函数时报长度错,不知道大家有用过或调用成功的吗?
Dim binKey(1 To 40) As Byte
Dim RESmm As DES
String2HEX TransKey, 16, binKey
Set RESmm = New DES
RESmm.SetKey binKey()‘报长度错2.调用VC的dll实现VC类型:
void WINAPI Triple_Encrypt(unsigned char *m , unsigned char * k, unsigned char * e,int n,int * rn);我在VB的模块中声明如下:Public Declare Function Triple_Encrypt Lib "PC.dll" (ByVal Ptrsource As Long, ByVal Key As Long, ByRef brevDATA As Long, DATLen As Long, RecvdataLen As Long) As Long调用如下:Dim szDataOut(100) As Byte
Dim mypicckey(0 To 7) As Byte '密码
Dim KEY1(0 To 7) As Byte '卡序列号mypicckey(0) = &HFF
mypicckey(1) = &HFF
mypicckey(2) = &HFF
mypicckey(3) = &HFF
mypicckey(4) = &HFF
mypicckey(5) = &HFF
mypicckey(6) = &HFF
mypicckey(7) = &HFFKEY1(0) = &HFF
KEY1(1) = &HFF
KEY1(2) = &HFF
KEY1(3) = &HFF
KEY1(4) = &HFF
KEY1(5) = &HFF
KEY1(6) = &HFF
KEY1(7) = &HFFRES = DES_Triple_Encrypt(VarPtr(mypicckey(0)), VarPtr(Key(0)), VarPtr(szDataOut(0)), 8, 8)‘失败,没有提示VB直接退出
以上两个方案望大虾能够给解释一下,因为没用过VB,想用DES加密技术(DES加解密数据和结果都是16进制的),或有其他方案也行,我用的是VB6,谢谢
找到了以下几个方案1.网上下载的DES.CLS(DES/3DES 加解密类模块 V1.0)的类模块
在调用SetKey函数时报长度错,不知道大家有用过或调用成功的吗?
Dim binKey(1 To 40) As Byte
Dim RESmm As DES
String2HEX TransKey, 16, binKey
Set RESmm = New DES
RESmm.SetKey binKey()‘报长度错2.调用VC的dll实现VC类型:
void WINAPI Triple_Encrypt(unsigned char *m , unsigned char * k, unsigned char * e,int n,int * rn);我在VB的模块中声明如下:Public Declare Function Triple_Encrypt Lib "PC.dll" (ByVal Ptrsource As Long, ByVal Key As Long, ByRef brevDATA As Long, DATLen As Long, RecvdataLen As Long) As Long调用如下:Dim szDataOut(100) As Byte
Dim mypicckey(0 To 7) As Byte '密码
Dim KEY1(0 To 7) As Byte '卡序列号mypicckey(0) = &HFF
mypicckey(1) = &HFF
mypicckey(2) = &HFF
mypicckey(3) = &HFF
mypicckey(4) = &HFF
mypicckey(5) = &HFF
mypicckey(6) = &HFF
mypicckey(7) = &HFFKEY1(0) = &HFF
KEY1(1) = &HFF
KEY1(2) = &HFF
KEY1(3) = &HFF
KEY1(4) = &HFF
KEY1(5) = &HFF
KEY1(6) = &HFF
KEY1(7) = &HFFRES = DES_Triple_Encrypt(VarPtr(mypicckey(0)), VarPtr(Key(0)), VarPtr(szDataOut(0)), 8, 8)‘失败,没有提示VB直接退出
以上两个方案望大虾能够给解释一下,因为没用过VB,想用DES加密技术(DES加解密数据和结果都是16进制的),或有其他方案也行,我用的是VB6,谢谢
解决方案 »
- 如何用POST或XMLHTTP方式操作这个按钮?
- 关于ActiveReport横向循环的问题,请高手指教!!
- 求助
- 怎么在MSHFlexGrid判断空值???
- 很菜有人来帮我改进一下好吗?让文本框只能输入数字,但是是指定的格式如:100,000,000.00(在输入过程中即时反应)
- 有关模块中函数使用的问题
- 如何在菜单中添加图片或者图标(在线等待,马上给分)
- 请问各位高手谁有类似于outlook或者hotmail中地址簿的源代码?(要能运行)在线等
- 如何根据文件名查找它的绝对路径?30分
- 关于VB中DataEnvironment注册问题
- 100分悬赏简单问题!
- 关于 vb mdi 关闭子窗体的问题
Public Declare Function Triple_Encrypt Lib "PC.dll" (ByRef Ptrsource() As Byte, ByRef Key() As Byte, ByRef brevDATA() As Byte, ByVal DATLen As Long, ByRef RecvdataLen As Long)
谢谢各位回复