Function getD(ByVal e As Long, ByVal PHI As Long) As Long
Dim u(3) As Long
Dim v(3) As Long
Dim q, temp1, temp2, temp3 As Long
u(0) = 1
u(1) = 0
u(2) = PHI
v(0) = 0
v(1) = 1
v(2) = e '好像是创建一个矩阵来运算
While (v(2) <> 0)
q = Int(u(2) / v(2))
temp1 = u(0) - q * v(0) '这里矩阵的运算是要将v(2)置0
temp2 = u(1) - q * v(1) '我想问置0后的矩阵意思是?
temp3 = u(2) - q * v(2)
u(0) = v(0)
u(1) = v(1)
u(2) = v(2)
v(0) = temp1
v(1) = temp2
v(2) = temp3
Wend
If (u(1) < 0) Then '这样就得到密钥是u(1)?? 根据是 ??
getD = (u(1) + PHI)
Else
getD = u(1)
End If
End Function 刚学VB不久... 求求求助 .. 在线等
Dim u(3) As Long
Dim v(3) As Long
Dim q, temp1, temp2, temp3 As Long
u(0) = 1
u(1) = 0
u(2) = PHI
v(0) = 0
v(1) = 1
v(2) = e '好像是创建一个矩阵来运算
While (v(2) <> 0)
q = Int(u(2) / v(2))
temp1 = u(0) - q * v(0) '这里矩阵的运算是要将v(2)置0
temp2 = u(1) - q * v(1) '我想问置0后的矩阵意思是?
temp3 = u(2) - q * v(2)
u(0) = v(0)
u(1) = v(1)
u(2) = v(2)
v(0) = temp1
v(1) = temp2
v(2) = temp3
Wend
If (u(1) < 0) Then '这样就得到密钥是u(1)?? 根据是 ??
getD = (u(1) + PHI)
Else
getD = u(1)
End If
End Function 刚学VB不久... 求求求助 .. 在线等
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货