【3.A.S.T】网络安全爱好者's Archiver

黑客学习

柔肠寸断 发表于 2009-4-19 21:52

关于国内某知名大学网站加密算法的研究

原创作者:柔肠寸断 [3.A.S.T]  [url]http://www.3ast.com.cm[/url]l2h:Onn j b?0F
原始出处:[url]http://www.3ast.com.cm[/url]r6O"H|4X A+f0Z
5F[oae6q!r"_
看不懂的直接绕过
u Ui$yE+eR 加密前为:hwy123456
9[[!SpMC 加密后为0F9C1C7A2EE76EBB5C1F4D7526CC4F883F4E
BL!|J4@*y,k m
5E*g@W.\2Gj[ ============================================
g.\Sq4[0sQ 上面是当时自己校内的心情。现在已经解破出来了,分享给大家1B~$s*A9Ye||
也就不隐瞒大家什么了,这个是国内某知名大学的后台加密算法}5P2\DB}3at}
以下是RSA算法文件
`+Zm6]j/l
*cD~)BJTA 文件名RSA.ASP#bIQY3W'd D
===============================================
F Y9b/O2[W,e w[ <%
'Cf4I WHh WD Class clsRSA
Zob%T;a Public PrivateKey BG:`[#{B2^1BIB
Public PublicKey F+{I/B$cAH
Public Modulus Dd%KZi1Zs
Public Function Crypt(pLngMessage, pLngKey) R'\6CW,d?bj$o[
On Error Resume Next
*r1V!}e?n Dim lLngMod D#Zv'w/S{(w*y
Dim lLngResult c6}jW7go{q
Dim lLngIndex Ff9O#ipJ+d
If pLngKey Mod 2 = 0 Then
D6`/W Ia#q[a lLngResult = 1
e;mP{ Rw,s'o$a x For lLngIndex = 1 To pLngKey / 2
I`#KM` lLngMod = (pLngMessage ^ 2) Mod Modulus
(lT7B)l` EDy-H ' Mod may error on key generation 8p7@$tME ~[
lLngResult = (lLngMod * lLngResult) Mod Modulus
3\T,x$~lX*jB^0R If Err Then Exit Function
~C3PjB9uO Next [ J9~ S%c+n x.IK
Else
#DDv`$_6T4i lLngResult = pLngMessage
l;bUFL3w] For lLngIndex = 1 To pLngKey / 2
)La"w5i ]$w_7U lLngMod = (pLngMessage ^ 2) Mod Modulus !Oc0`o Tf
On Error Resume Next "R"lw,[)v r-@
' Mod may error on key generation
#pFGz%c bq lLngResult = (lLngMod * lLngResult) Mod Modulus
^FN;`2i!b5pZ-L,[ If Err Then Exit Function t$L2Z9]*m%d|Eu.T;uB
Next E+O6Rq!H$[0P"X2@}
End If Y;P d&O#S;c^buK
Crypt = lLngResult L.hd6@"h0I |9ua}
End Function
,@ Wh5cx4vW N 'e1r.S uV L-U {8L
Public Function Encode(ByVal pStrMessage)
ne f*Klr5R#U Dim lLngIndex Y:Ua ?P8Pg
Dim lLngMaxIndex !U6~U0v5r&}
Dim lBytAscii teeS OB l
Dim lLngEncrypted v@m6Ow
lLngMaxIndex = Len(pStrMessage) v)C(Z+A3y5|#d$Y!z
If lLngMaxIndex = 0 Then Exit Function 0h/e2@M^#E _/v
For lLngIndex = 1 To lLngMaxIndex $@+d/O/@.Ra+\t,^
lBytAscii = Asc(Mid(pStrMessage, lLngIndex, 1))
-Yk6ic(g A lLngEncrypted = Crypt(lBytAscii, PublicKey)
5N$bU9] _;@a Encode = Encode & NumberToHex(lLngEncrypted, 4)
%b m ?A I1L$Q Next
K ?v7W$v1s*r5U.O End Function
F)j$X1s VA\w Public Function Decode(ByVal pStrMessage)
2T#p9~7{sI Dim lBytAscii d4@;GM%^h@j
Dim lLngIndex
uWNph\ Dim lLngMaxIndex (o*\.c7dQb
Dim lLngEncryptedData )Q{j'J2O
Decode = ""
_m4M;M3O ` o| lLngMaxIndex = Len(pStrMessage)
^#r&j:m~K;d For lLngIndex = 1 To lLngMaxIndex Step 4 c!P#y/c0{R
lLngEncryptedData = HexToNumber(Mid(pStrMessage, lLngIndex, 4))
iL[-S8b|po:h lBytAscii = Crypt(lLngEncryptedData, PrivateKey) +}5c[7`)y%U av
Decode = Decode & Chr(lBytAscii)
E_e r7Bsx Next
\ R3~-Z9a End Function
ubH{fRX_F Private Function NumberToHex(ByRef pLngNumber, ByRef pLngLength)
R`-E4R)f'E5[B%C NumberToHex = Right(String(pLngLength, "0") & Hex(pLngNumber), pLngLength)
)U w? w3@Ldu End Function ~CE8[-cg
Private Function HexToNumber(ByRef pStrHex) "V-]aLnX n$FsB
HexToNumber = CLng("&h" & pStrHex)
;E1N3i1A#Xb4qP#VC!T End Function
(R2E Ya-]7~t.[I End Class
[-s!TJ'Ks|/g function Encryptstr(Message)
/o,u(|1HDwIq6~AK Dim LngKeyE
]8\UHo`3n Dim LngKeyD 'X Mj:_C1t
Dim LngKeyN EhRegb4h9^ ?
Dim StrMessage
b d'iD+~$CMp Dim ObjRSA
^JU%Lqzt*i LngKeyE = "32823"
@)wtf2Pg LngKeyD = "20643" T9X&K FEj-V&l }
LngKeyN = "29893" 3_4l/NEf(np
StrMessage = Message S2MX3VXI
Set ObjRSA = New clsRSA
{,Bix6t{#f ObjRSA.PublicKey = LngKeyE
,H-W,`0q?P ObjRSA.Modulus = LngKeyN
l|0h|,`q!X q0D Encryptstr = ObjRSA.Encode(StrMessage) t&\`4z!\;]
Set ObjRSA = Nothing
o w@2fE end function~}uo'O7G!s%m
Function Decryptstr(Message)
;S8b:}uhtD Dim LngKeyE ,B w@1e? JuC,O
Dim LngKeyD
d3_egV Dim LngKeyN &Ji5[:n6i&j
Dim StrMessage
o0c5_pF^'Z Dim ObjRSA ~:Na/z;~
LngKeyE = "32823"
2AD)`Uw-n*J's LngKeyD = "20643"
y#b/?9jz LngKeyN = "29893"
N.cl6F%q;BL.ql$q` StrMessage = Message
8J)znx2o(lO0j Set ObjRSA = New clsRSA d R&EA k%y;s h
ObjRSA.PrivateKey =LngKeyD
EeGZ?F6{-Rt t ObjRSA.Modulus=LngKeyN
%J-S3E7o-c)Z decryptstr=ObjRSA.Decode(StrMessage)
)J;f)C5SUZ^ Set ObjRSA = Nothing Z&MS&n,Nu^
end function WVJ7M(N#Y
%>
7j"Wck'd Gc_ ===============================================
^QO#F+B{@.U%H)_
Tu vll p_${3D;a 还有一个用于测试这段代码的test.asp
D"Pb,rS;`hij"qqN 有兴趣的自己搭建个IIS测试下O z#zu[ \)B*b0j-O2U
<!--#INCLUDE FILE="RSA.asp"--> )VcQM R`&J
<%
i cZ#h;HU function Encryptstr(Message) 1G5V9w;{{c
Dim LngKeyE
oh t B0`Fm iOf&\f5J Dim LngKeyD
[!x @.rtX$~6X Dim LngKeyN ^rH c4wV
Dim StrMessage
DRay5a4P Dim ObjRSA
{2@z"{2u9Qk.b$W LngKeyE = "32823" k/p3r BU5p9Z1[RZ7E
LngKeyD = "20643" z-E"}v|,g/pGsH
LngKeyN = "29893" 2r7[qY3m1W6}q*]/] s
StrMessage = Message
PbFL*Cy5M&x Set ObjRSA = New clsRSA ok0R!C0@-@d T
ObjRSA.PublicKey = LngKeyE
Y v7};ax9ia&L x6I*J0E ObjRSA.Modulus = LngKeyN vV^yJ&z#r1es"sJ
Encryptstr = ObjRSA.Encode(StrMessage) a2cv9a ^
Set ObjRSA = Nothing @"c LTO1S,J,L ^
end function
&~:_ qlNn function decryptstr(Message) {.[8h)^'th;q+w ]d
Dim LngKeyE
lq"_9X6|"DQ Dim LngKeyD $PG KKul:?
Dim LngKeyN
!}B?_8L+Psl!e Dim StrMessage 'X]-xA@
Dim ObjRSA !^P7Xi5g N%p
LngKeyE = "32823"
-^n)c&@w]!V LngKeyD = "20643" @7wa Q.a/L}
LngKeyN = "29893"
)V*J([6nJ4XNax StrMessage = Message 0~ W(~ Ap.toN
Set ObjRSA = New clsRSA
+F!N#LSo LTZ h ObjRSA.PrivateKey =LngKeyD
(U"M_+m @[5kB ObjRSA.Modulus=LngKeyN
k*L,I1Uh{V$^s decryptstr=ObjRSA.Decode(StrMessage) p G P&]b0o9{E9i#[T
Set ObjRSA = Nothing
[,Pos;Fh:L NQY end function ;j]:P^r
dim last,first I|V%H"PX#m:M
first="!@#$%^&*()"
RQvo6e7@,HP Response.Write "加密前为:"&first nI.q4OL1e
last=Encryptstr(first) ].piOB?3i7Ax
Response.Write "加密后为"&last #e1ZgvY
Response.Write "解密后为" &decryptstr(last)
1h%ti2i(P %> ==============================================+Gh V3Ee6aY`
剩下的就是字符的对照表了 xJ BO1p(Lt0|
===================字符集================*@V|0Ot v)Om
1_____6EBB/\W#y H7j
2_____5C1F%W#U G}{4A
3_____4D75
9D-DOG E 4_____26CC(hF9a4v g/`%NX k/B
5_____4F88
AoZ!n'k 6_____3F4E
w.X7E1wQii 7_____0A9DO_?0P8C3jo(j
8_____1A1C
!P}'kz#xo(J+jC0p 9_____6D20wh4Bh{B*u
0_____1089
2D6vJ` ll6jS a_____0F3E1q,d zN.E;h ZAp
b_____3159
Z"}l/M!c U~ c_____3517
6AN B|pl d_____419C
"qzt dgmb \ |u e_____615C3Z'A1a0pp*P)Ae4u0d0B(U2N
f_____556F#\aRh\ o
g_____2B7FT"W9D']"g:Yf q3eCj
h_____0F9C
[F%Gj E&h-u] i_____00FAgh\U@A(~
j_____5A50
%ii4tE&K$P,V { k_____2850%g t4CF7dcY3u
l_____3E7B
]k7Q-\z j*a)e m_____71C5(doM w#l
n_____1FC88_7kI7\P;PpJ4I
o_____74C1I+k"bC%Q`7| y`
p_____5FB8alb!\4Z;C9_e
q_____6085
eg/r~$?G W$Xx*t~ r_____3AC4!L_?M1|6_
s_____2F50W c*vW ^\2g
t_____36F8
#H}3p4t&g1A5t/z,y u_____7010
C2YtKX]C8]E*` v_____0B42
s&c-y(Nf%Zf w_____1C7A S0S6jf4?
x_____16F8;M)t8Rtz W'@
y_____2EE73ioZkYJ wx
z_____5CF3tk5~"~L9kJ
!_____6233B V'p,]e b5t
@_____3A45J [B:d|zZ?8e y
#_____2291vyf%n3i8N {
$_____5D5C
oW)\4p"ou %_____09B9
^)h*]&R4qY ^_____43EA/? g|E3{rz
&_____62B9^_aM%|-tD
*_____6301:xWwl H)YS9yT
(_____4659
.?;q6eR:Jk )_____5C82

鱼儿无心 发表于 2011-12-4 17:17

收藏了。。。。。。。。

页: [1]

Powered by Discuz! Archiver 7.2  © 2001-2009 Comsenz Inc.