找回密码
 加入
搜索
查看: 4846|回复: 4

[原创] 专用链解密器

[复制链接]
发表于 2010-4-26 15:40:51 | 显示全部楼层 |阅读模式
看了迅雷、快车和旋风的地址编码原理后,自己编了个专用链解密器。
不过现在有个bug,就是普通链接中含有中文字符(包括中文和中文符号)时,生成的迅雷和快车链接无法被迅雷和快车识别。代码如下,献丑了。
#NoTrayIcon
#Region ;**** 参数创建于 ACNWrapper_GUI ****
#AutoIt3Wrapper_icon=G:\素材大全\图标资源\系统图标\09(1).ico
#AutoIt3Wrapper_Res_Comment=专用链解密器
#AutoIt3Wrapper_Res_Description=专用链解密器
#AutoIt3Wrapper_Res_Fileversion=1.0
#AutoIt3Wrapper_Res_LegalCopyright=阿福所有 侵权不究
#EndRegion ;**** 参数创建于 ACNWrapper_GUI ****
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <ACN_HASH.au3>
#include <GuiEdit.au3>
Dim $t
#Region ### START Koda GUI section ### Form=E:\Downloads\Koda\专用链解密器.kxf
$Form1 = GUICreate("迅雷 快车 旋风 专用链解密器", 474, 212, -1, -1)
GUISetIcon("G:\素材大全\图标资源\系统图标\09(1).ico", -1)
$Group1 = GUICtrlCreateGroup("", 8, 8, 457, 185)
$Radio1 = GUICtrlCreateRadio("普通链接", 16, 32, 65, 17)
$Radio2 = GUICtrlCreateRadio("迅雷链接", 16, 63, 65, 17)
GUICtrlSetState(-1, $GUI_CHECKED)
$Radio3 = GUICtrlCreateRadio("快车链接", 16, 93, 65, 17)
$Input1 = GUICtrlCreateInput("", 88, 28, 361, 21)
$Input2 = GUICtrlCreateInput("", 88, 59, 361, 21)
$Input3 = GUICtrlCreateInput("", 88, 89, 361, 21)
$Button1 = GUICtrlCreateButton("解密", 152, 152, 75, 25)
$Button2 = GUICtrlCreateButton("取消", 248, 152, 75, 25)
$Radio4 = GUICtrlCreateRadio("旋风链接", 15, 125, 65, 17)
$Input4 = GUICtrlCreateInput("", 87, 121, 361, 21)
GUICtrlCreateGroup("", -99, -99, 1, 1)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
        $nMsg = GUIGetMsg()
        Switch $nMsg
                Case $GUI_EVENT_CLOSE
                        Exit
        Case $Button2
            Exit
        Case $Radio1
                        _GUICtrlEdit_SetText($Input2,"")
                        _GUICtrlEdit_SetText($Input3,"")
                        _GUICtrlEdit_SetText($Input4,"")
                        GUICtrlSetData($Button1,"加密")
                Case $Radio2
                  _GUICtrlEdit_SetText($Input1,"")
                        _GUICtrlEdit_SetText($Input3,"")
                        _GUICtrlEdit_SetText($Input4,"")
                        GUICtrlSetData($Button1,"解密")
                Case $Radio3
                  _GUICtrlEdit_SetText($Input1,"")
                        _GUICtrlEdit_SetText($Input2,"")
                        _GUICtrlEdit_SetText($Input4,"")
                        GUICtrlSetData($Button1,"解密")
        Case $Radio4
                  _GUICtrlEdit_SetText($Input1,"")
                        _GUICtrlEdit_SetText($Input2,"")
                        _GUICtrlEdit_SetText($Input3,"")
            GUICtrlSetData($Button1,"解密")                        
                Case $Button1
            If  GUICtrlRead($Radio1)=1 Then;普通地址加密
                                $t=_GUICtrlEdit_GetText($Input1)
                                If $t<>"" Then
                                        $t="thunder://"&_base64encode("AA"&$t&"ZZ")
                                        $t=StringStripWS($t,8)
                                    _GUICtrlEdit_SetText($Input2,$t);加密成迅雷地址
                                        $t=_GUICtrlEdit_GetText($Input1)
                                    $t="[FLASHGET]"&$t&"[FLASHGET]"
                                    $t="Flashget://"&_base64encode($t)&"&Hello"
                                        $t=StringStripWS($t,8)
                                    _GUICtrlEdit_SetText($Input3,$t);加密成快车地址
                                    $t=_GUICtrlEdit_GetText($Input1)
                                    $t="qqdl://"&_base64encode($t)
                                        $t=StringStripWS($t,8)
                                    _GUICtrlEdit_SetText($Input4,$t);加密成旋风地址
                                Else    
                                        MsgBox(16,"错误","地址不能为空!")                                
                                EndIf
                        EndIf        
            If GUICtrlRead($Radio2)=1 Then;迅雷地址解密
                       $t=_GUICtrlEdit_GetText($Input2)
                                If $t<>"" Then
                                        $t=_base64decode(StringTrimLeft($t,10))
                    $t=BinaryToString($t)
                        $t=StringTrimLeft(StringTrimRight($t,2),2)
                                        _GUICtrlEdit_SetText($Input1,$t)
                                Else
                                        MsgBox(16,"错误","地址不能为空!")                                
                                EndIf                                        
            EndIf
                        If GUICtrlRead($Radio3)=1 Then ;快车地址解密
                                $t=_GUICtrlEdit_GetText($Input3)
                                If $t<>"" Then
                                        Do
                                                $t=StringSplit($t,"&")
                                        $t=StringTrimLeft($t[1],11)
                                        $t=_base64decode($t)
                                        $t=BinaryToString($t)
                                                $t=StringTrimLeft(StringTrimRight($t,10),10)
                                        Until StringInStr($t,"flashget",0)=0                                                 
                                        _GUICtrlEdit_SetText($Input1,$t)
                                Else
                                        MsgBox(16,"错误","地址不能为空!")                                
                                EndIf        
                        EndIf
            If GUICtrlRead($Radio4)=1 Then;旋风地址解密
                $t=_GUICtrlEdit_GetText($Input4)
                                If $t<>"" Then
                    $t=StringTrimLeft($t,7)
                                        $t=_base64decode($t)
                                    $t=BinaryToString($t)
                                        _GUICtrlEdit_SetText($Input1,$t)
                                Else
                          MsgBox(16,"错误","地址不能为空!")
                EndIf                                        
            EndIf                                   
        EndSwitch
WEnd
;已知bug:含有中文字符(包括文字和中文符号)的地址加密后不能被迅雷和快车识别。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×

评分

参与人数 1金钱 +48 贡献 +5 收起 理由
lynfr8 + 48 + 5 希望再完善下中文字符解密问题

查看全部评分

发表于 2010-5-4 15:01:33 | 显示全部楼层
终于抢到沙发了!谢谢楼主!
发表于 2010-5-12 23:34:19 | 显示全部楼层
这个好.我正在找呢..
发表于 2010-5-14 19:05:18 | 显示全部楼层
谢谢楼主谢谢楼主
发表于 2016-12-15 12:16:43 | 显示全部楼层
好东西,支持楼主
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-22 15:51 , Processed in 0.077210 second(s), 25 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表