请大家帮忙解一个方程,小弟百思不得其解,真是笨死了??帮忙啊!
下面是主程式Function P_DES(Source, Key)
Dim i, iKey, iKeyLen
Dim SSA, SSB, SSS
Dim XOR_STR_A
XOR_STR_A = ""
iKeyLen = Len(Key)
iKey = 1
XOR_STR_A = ""
Source = Replace(Source, "1", "*")
Source = Replace(Source, "9", "1")
Source = Replace(Source, "*", "9")
Source = Replace(Source, "8", "#")
Source = Replace(Source, "2", "8")
Source = Replace(Source, "#", "2")
Source = Replace(Source, "4", "#")
Source = Replace(Source, "7", "4")
Source = Replace(Source, "#", "7")
Source = Replace(Source, "3", "#")
Source = Replace(Source, "6", "3")
Source = Replace(Source, "#", "6")
Source = Replace(Source, "D", "#")
Source = Replace(Source, "F", "D")
Source = Replace(Source, "#", "F")
Source = Replace(Source, "A", "#")
Source = Replace(Source, "B", "A")
Source = Replace(Source, "#", "B")
For i = 1 To Len(Source) Step 2
SSA = CInt("&H" & (Mid(Source, i, 2)))
SSB = (Asc(Mid(Key, iKey, 1)))
iKey = iKey + 1
If iKey > iKeyLen Then
iKey = 1
End If
SSS = SSA Xor SSB
XOR_STR_A = XOR_STR_A & ChrB(SSS)
Next
' XOR_DES = StrConv(XOR_STR_A, vbUnicode)
' XOR_DES = replace(XOR_STR_A,vbcrlf,"",lenB(XOR_STR_A)-4)
xor_des=trim(XOR_STR_A)
xor_des=cstr(xor_des)
End Function
rkey=p_DES(ValidWord, mainkey)
sValue = p_DES(Value, rKey)
现在知道已知的value值3个,和svalue3个,以及三个校验值,求mainkey的值!我的头都晕了!值在<>内
怎么解啊,急啊,求解!Value svalue
1、〈656D679292673B783F7D〉 正确
2、〈86657A674C7B0F85407E〉 正确
3、〈7DB7F1C0368F3B6D078A〉 错误
3个validw的值分别是:
<866336824D868037337B9C6E0857633787343B870270393181767C3565688D377C4131679E67456300876E45446449853C70725E348245723E4789317F853886>
<6563318200860C37087B386E3557593761343A87477036316776863586686A378A410F67446745633B873D450C6490854E708E5E48820C7237477B316D859A86>
<8663038296860A379F7B056E08577A377F340E8735700C315176683555687F37634149679367396346870C453D64378534707D5E998201729447803160859886>
下面是主程式Function P_DES(Source, Key)
Dim i, iKey, iKeyLen
Dim SSA, SSB, SSS
Dim XOR_STR_A
XOR_STR_A = ""
iKeyLen = Len(Key)
iKey = 1
XOR_STR_A = ""
Source = Replace(Source, "1", "*")
Source = Replace(Source, "9", "1")
Source = Replace(Source, "*", "9")
Source = Replace(Source, "8", "#")
Source = Replace(Source, "2", "8")
Source = Replace(Source, "#", "2")
Source = Replace(Source, "4", "#")
Source = Replace(Source, "7", "4")
Source = Replace(Source, "#", "7")
Source = Replace(Source, "3", "#")
Source = Replace(Source, "6", "3")
Source = Replace(Source, "#", "6")
Source = Replace(Source, "D", "#")
Source = Replace(Source, "F", "D")
Source = Replace(Source, "#", "F")
Source = Replace(Source, "A", "#")
Source = Replace(Source, "B", "A")
Source = Replace(Source, "#", "B")
For i = 1 To Len(Source) Step 2
SSA = CInt("&H" & (Mid(Source, i, 2)))
SSB = (Asc(Mid(Key, iKey, 1)))
iKey = iKey + 1
If iKey > iKeyLen Then
iKey = 1
End If
SSS = SSA Xor SSB
XOR_STR_A = XOR_STR_A & ChrB(SSS)
Next
' XOR_DES = StrConv(XOR_STR_A, vbUnicode)
' XOR_DES = replace(XOR_STR_A,vbcrlf,"",lenB(XOR_STR_A)-4)
xor_des=trim(XOR_STR_A)
xor_des=cstr(xor_des)
End Function
rkey=p_DES(ValidWord, mainkey)
sValue = p_DES(Value, rKey)
现在知道已知的value值3个,和svalue3个,以及三个校验值,求mainkey的值!我的头都晕了!值在<>内
怎么解啊,急啊,求解!Value svalue
1、〈656D679292673B783F7D〉 正确
2、〈86657A674C7B0F85407E〉 正确
3、〈7DB7F1C0368F3B6D078A〉 错误
3个validw的值分别是:
<866336824D868037337B9C6E0857633787343B870270393181767C3565688D377C4131679E67456300876E45446449853C70725E348245723E4789317F853886>
<6563318200860C37087B386E3557593761343A87477036316776863586686A378A410F67446745633B873D450C6490854E708E5E48820C7237477B316D859A86>
<8663038296860A379F7B056E08577A377F340E8735700C315176683555687F37634149679367396346870C453D64378534707D5E998201729447803160859886>
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货