📄
字号:
<BR> buf(2) =
BigAdd(buf(2), c) <BR>
buf(3) = BigAdd(buf(3), d) <BR> Next loopouter
<BR><BR> ' Extract MD5Hash <BR>
hashthis = "" <BR> For loopit = 0 To 3
<BR> For loopinner = 3 To
0 Step -1
<BR>
hashthis = hashthis + Chr(Val("&H" + Mid$(buf(loopit), 1 + <BR>2
* loopinner, 2))) <BR>
Next loopinner <BR> Next loopit
<BR><BR> ' And return it <BR>
MD5_Calc = hashthis <BR>End Function <BR><BR>Function
BigMod32Add(ByVal value1 As String, ByVal value2 As String) A <BR>s
String <BR> BigMod32Add = Right$(BigAdd(value1,
value2), 8) <BR>End Function <BR><BR>Public Function BigAdd(ByVal
value1 As String, ByVal value2 As String) <BR>As String <BR>Dim
valueans As String <BR>Dim loopit As Integer, tempnum As Integer
<BR><BR> tempnum = Len(value1) - Len(value2)
<BR> If tempnum < 0 Then
<BR> value1 =
Space$(Abs(tempnum)) + value1 <BR> ElseIf tempnum
> 0 Then <BR> value2 =
Space$(Abs(tempnum)) + value2 <BR> End If
<BR><BR> tempnum = 0 <BR> For
loopit = Len(value1) To 1 Step -1
<BR> tempnum = tempnum +
Val("&H" + Mid$(value1, loopit, 1)) + Val( <BR>"&H" +
Mid$(value2, loopit, 1))
<BR> valueans =
Hex$(tempnum Mod 16) + valueans
<BR> tempnum = Int(tempnum
/ 16) <BR> Next loopit <BR><BR>
If tempnum <> 0 Then
<BR> valueans =
Hex$(tempnum) + valueans <BR> End If
<BR><BR> BigAdd = Right(valueans, 8) <BR>End
Function <BR><BR>Public Function RotLeft(ByVal value1 As String,
ByVal rots As Integer) <BR>As String <BR>Dim tempstr As String
<BR>Dim loopit As Integer, loopinner As Integer <BR>Dim tempnum As
Integer <BR><BR> rots = rots Mod 32
<BR> <BR> If rots = 0 Then
<BR> RotLeft = value1
<BR> Exit Function
<BR> End If <BR><BR> value1 =
Right$(value1, 8) <BR> tempstr = String$(8 -
Len(value1), "0") + value1 <BR> value1 = ""
<BR><BR> ' Convert to binary
<BR> For loopit = 1 To 8
<BR> tempnum =
Val("&H" + Mid$(tempstr, loopit, 1))
<BR> For loopinner = 3 To
0 Step -1
<BR>
If tempnum And 2 ^ loopinner Then
<BR>
value1 = value1 + "1"
<BR>
Else
<BR>
value1 = value1 + "0"
<BR>
End If <BR> Next loopinner
<BR> Next loopit <BR> tempstr =
Mid$(value1, rots + 1) + Left$(value1, rots)
<BR><BR> ' And convert back to hex
<BR> value1 = "" <BR> For loopit
= 0 To 7 <BR> tempnum = 0
<BR> For loopinner = 0 To
3
<BR>
If Val(Mid$(tempstr, 4 * loopit + loopinner + 1, 1)) Then
<BR><BR>
tempnum = tempnum + 2 ^ (3 - loopinner)
<BR>
End If <BR> Next loopinner
<BR> value1 = value1 +
Hex$(tempnum) <BR> Next loopit
<BR><BR> RotLeft = Right(value1, 8) <BR>End
Function <BR><BR>Function BigAND(ByVal value1 As String, ByVal
value2 As String) As Str <BR>ing <BR>Dim valueans As String <BR>Dim
loopit As Integer, tempnum As Integer <BR><BR>
tempnum = Len(value1) - Len(value2) <BR> If
tempnum < 0 Then <BR>
value2 = Mid$(value2, Abs(tempnum) + 1) <BR>
ElseIf tempnum > 0 Then
<BR> value1 = Mid$(value1,
tempnum + 1) <BR> End If
<BR><BR> For loopit = 1 To Len(value1)
<BR> valueans = valueans +
Hex$(Val("&H" + Mid$(value1, loopit, 1)) <BR>And Val("&H" +
Mid$(value2, loopit, 1))) <BR> Next loopit
<BR><BR> BigAND = valueans <BR>End Function
<BR><BR>Function BigNOT(ByVal value1 As String) As String <BR>Dim
valueans As String <BR>Dim loopit As Integer
<BR><BR> value1 = Right$(value1, 8)
<BR> value1 = String$(8 - Len(value1), "0") +
value1 <BR> For loopit = 1 To 8
<BR> valueans = valueans +
Hex$(15 Xor Val("&H" + Mid$(value1, loop <BR>it, 1)))
<BR> Next loopit <BR><BR> BigNOT
= valueans <BR>End Function <BR><BR>Function BigOR(ByVal value1 As
String, ByVal value2 As String) As Stri <BR>ng <BR>Dim valueans As
String <BR>Dim loopit As Integer, tempnum As Integer
<BR><BR> tempnum = Len(value1) - Len(value2)
<BR> If tempnum < 0 Then
<BR> valueans =
Left$(value2, Abs(tempnum))
<BR> value2 = Mid$(value2,
Abs(tempnum) + 1) <BR> ElseIf tempnum > 0 Then
<BR> valueans =
Left$(value1, Abs(tempnum))
<BR> value1 = Mid$(value1,
tempnum + 1) <BR> End If
<BR><BR> For loopit = 1 To Len(value1)
<BR> valueans = valueans +
Hex$(Val("&H" + Mid$(value1, loopit, 1)) <BR>Or Val("&H" +
Mid$(value2, loopit, 1))) <BR> Next loopit
<BR><BR> BigOR = valueans <BR>End Function
<BR><BR>Function BigXOR(ByVal value1 As String, ByVal value2 As
String) As Str <BR>ing <BR>Dim valueans As String <BR>Dim loopit As
Integer, tempnum As Integer <BR><BR> tempnum =
Len(value1) - Len(value2) <BR> If tempnum < 0
Then <BR> valueans =
Left$(value2, Abs(tempnum))
<BR> value2 = Mid$(value2,
Abs(tempnum) + 1) <BR> ElseIf tempnum > 0 Then
<BR> valueans =
Left$(value1, Abs(tempnum))
<BR> value1 = Mid$(value1,
tempnum + 1) <BR> End If
<BR><BR> For loopit = 1 To Len(value1)
<BR> valueans = valueans +
Hex$(Val("&H" + Mid$(value1, loopit, 1)) <BR>Xor Val("&H" +
Mid$(value2, loopit, 1))) <BR> Next loopit
<BR><BR> BigXOR = Right(valueans, 8) <BR>End
Function <BR>
<TABLE style="FONT-SIZE: 9pt" cellSpacing=0 borderColorDark=#ffffff
cellPadding=0 width="95%" align=center borderColorLight=#000000
border=0>
<TBODY>
<TR bgColor=#ececec height=20>
<TD width=425><SPAN style="FONT-SIZE: 9pt"><A
href="http://www.csdn.net/develop/read_article.asp?id=8355"
target=_blank>经典加密算法在VB中的实现(3)- RC4</A>
</SPAN></TD></TR></TBODY></TABLE>
<TABLE style="FONT-SIZE: 9pt" cellSpacing=0 borderColorDark=#ffffff
cellPadding=0 width="95%" align=center borderColorLight=#000000
border=0>
<TBODY>
<TR bgColor=#ffffff height=20>
<TD width=425><SPAN style="FONT-SIZE: 9pt"><A
href="http://www.csdn.net/develop/read_article.asp?id=8356"
target=_blank><FONT color=#0033cc>经典加密算法在VB中的实现(4)-
DES</FONT></A> </SPAN></TD></TR></TBODY></TABLE><SPAN
style="FONT-SIZE: 9pt"><A
href="http://www.csdn.net/develop/read_article.asp?id=8353"
target=_blank><FONT color=#0033cc>经典加密算法在VB中的实现(1)-
Base64</FONT></A> </SPAN><BR></TD></TR></TBODY></TABLE></TD></TR>
<TR>
<TD align=middle><A onclick=javascript:self.close()
href="http://www.chinaitpower.com/A/2001-11-03/3650.html#"><FONT
color=#000000><B>关闭本页</B></FONT></A></TD>
<TR>
<TD bgColor=#d6d6d6 height=1></TD></TR>
<TR>
<TD align=middle colSpan=9>
<SCRIPT language=JavaScript
src="经典加密算法在VB中的实现(2)-MD5_files/footad.js"></SCRIPT>
</TD></TR>
<TR>
<TD bgColor=#d6d6d6 height=1></TD></TR>
<TR>
<TD class=ButtonList align=middle colSpan=9> </FONT>
<SCRIPT language=JavaScript
src="经典加密算法在VB中的实现(2)-MD5_files/footad2.js"></SCRIPT>
</TD></TR>
<TR>
<TD bgColor=#d6d6d6 height=1></TD></TR>
<TR>
<TD align=middle bgColor=#ffffff height=25>
<SCRIPT language=JavaScript
src="经典加密算法在VB中的实现(2)-MD5_files/fav.js"></SCRIPT>
</TD></TR></TBODY></TABLE>
<TABLE class=border3 cellSpacing=0 cellPadding=0 width=760 align=center
bgColor=#ffffff border=0>
<TBODY>
<TR>
<TD colSpan=3 height=2></TD></TR></TBODY></TABLE>
<TABLE cellSpacing=0 cellPadding=0 width=760 align=center border=0>
<TBODY>
<TR height=10>
<TD></TD></TR>
<TR height=20>
<TD align=middle><A class=gray2
href="http://www.chinaitpower.com/index.html">首页</A> | <A class=gray2
href="http://www.chinaitpower.com/hezuo.html">投资与合作</A> | <A class=gray2
href="http://www.chinaitpower.com/fuwu.html">服务条款</A> | <A class=gray2
href="http://www.chinaitpower.com/yinsi.html" target=_blank>隐私政策</A> | <A
class=gray2
href="javascript:window.external.AddFavorite('http://www.chinaitpower.net/',%20'“中国IT动力,提供最新最全的电脑技术教程”"/www.chinaitpower.com')"
target=_self>收藏本站</A> | <A class=gray2
style="BEHAVIOR: url(#default#homepage)"
onclick="this.style.behavior='url(#default#homepage)';this.setHomePage('http://www.chinaitpower.net/');return(false);"
href="http://www.chinaitpower.net/#">设为首页</A> | <A class=gray2
href="http://bbs.chinaitpower.com/">新用户注册</A> | <A class=gray2
href="http://www.chinaitpower.com/shengming.html">免责声明</A> | <A
class=gray2 href="http://www.chinaitpower.com/help.html"
target=_blank>使用帮助</A></TD></TR>
<TR>
<TD bgColor=#666666 height=1></TD></TR>
<TR height=20>
<TD align=middle>Copyright ©2005-2008 chinaitpower.com All rights
reserved. www.chinaitpower.com 版权所有</TD></TR></TBODY></TABLE>
<SCRIPT language=JavaScript src="经典加密算法在VB中的实现(2)-MD5_files/stat.htm"
charset=gb2312></SCRIPT>
<SCRIPT language=javascript src="经典加密算法在VB中的实现(2)-MD5_files/click.htm"></SCRIPT>
</BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -