下沙论坛

 找回密码
 注册论坛(EC通行证)

QQ登录

QQ登录

下沙大学生网QQ群8(千人群)
群号:6490324 ,验证:下沙大学生网。
用手机发布本地信息严禁群发,各种宣传贴请发表在下沙信息版块有问必答,欢迎提问 提升会员等级,助你宣传
新会员必读 大学生的论坛下沙新生必读下沙币获得方法及使用
查看: 6460|回复: 5
打印 上一主题 下一主题

网通拨号软件Onewave Clinet注册表密码解密算法

[复制链接]
游泳章鱼 该用户已被删除
跳转到指定楼层
1
发表于 2003-6-10 00:47:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
首先我们来了解一下网通的拨号软件的密码在注册表中的位置.打开注册表到HKEY_USERS\S-1-5-21-1606980848-920026266-854245398-100\Software\OneWave的项,其中S-1-5-21-1606980848-920026266-854245398-1003为SID(安全表示符,也就是用户名在电脑里的编号,每个电脑,每个用户都是不一样的,你只要打开你自己的)2 t& @ q; F' i/ I, C: G3 b 在……OneWave\NetClient为2.0版本,……\OneWave\NetClient\Setting为1.2版本,如果你保存密码就会在相应的里面创建密码和用户名,如下图 % S) j. y9 s+ ~! Z5 E: s r8 u' f0 @# @3 Q( k3 N! }2 e2 O7 v2 _# Q% ~ 1.2版本密码位置% q: r! u& R, x8 b " x# ]' W; j+ H: K2 K/ c1 | 2.0版本的用户名和密码都经过加密,生成16进制的字符串,如下图。/ n) ^8 h. y/ K6 w; ?/ P/ } . j& O! c0 b/ {) \, D 1.2版本的用户名是明文保存的,密码则经过加密,但是在加密后,有些密文字符是显示不出来的,只有通过修改二进制数据才能看到,然而在win2000和98的注册表中鼠标右键没有“修改二进制数据”,而XP就有,如下图。: r8 E+ X' W! J5 ]+ O1 E , w7 _5 j- m6 H m) ] 至于在2000和98下怎么100%翻译密文很麻烦有些密文字符是显示不出来的,不如XP好,XP可以100%翻译。 6 |! U( R) S! ]9 m; e. b6 G 7 b: z# u# m9 [ a- i6 h" I- R, |2 _2 _! S1 q, e现在说算法,是我用C语言写的,你可以把它用VB改一下。 ; B) ?0 J! n1 X0 @7 }# ~+ R/ ]7 F1.2版本(需知道密文的二进制数据,也就是在XP下)# y4 G7 \4 ^& B* R; r printf("Please enter password:"); /*输入一个2位的16进制数据d*/ 6 f# A9 k6 V) @. `, y9 j! n' K3 escanf("%x",&d);- E& D( F$ J6 `( n3 ~1 ^* D if((d>=0&&d<=32)||(d>=64&&d<=95)) /*计算机将d转换为10进制来计算,如果0<=d<=32或64<=d<=95*/' i; t9 C2 U2 c& X# z7 u: \ {b=d%4; /*b=d/4的余数*// L4 E. I: q9 m7 D& v" i if(b==0||b==1) /*如果b=0或b=1*/! I! J6 v+ j7 P$ T! u9 ^$ m0 J c=93-d; /*c=93-d*/5 K3 @0 s; s" W6 g2 `' o r- Q) { else if(b==2||b==3) /*如果b=2或b=3*/; T, z/ @% v' N3 T- N% z1 l1 p, w& h c=97-d; /*c=97-d*/2 ^3 b4 G$ l( v! _+ M5 W4 [) j6 J } 1 i2 E2 u0 L4 D5 x/ Xif((d>=32&&d<=63)||(d>=96&&d<=126)) /*如果0<=d<=32或64<=d<=95*/ " g: [6 _9 w) P3 O. ] {b=d%4; /*类似以上方法*/ # g# w1 J; {4 Y, K; oif (b==0||b==1) / x' \# V9 L, k' O0 N4 Q3 b$ Lc=157-d;3 g6 x$ P$ h2 \0 B3 c7 S else if (b==2||b==3) ( ]* ~4 Y. ~' v) `" c- j& ]( @c=161-d;6 j5 o. g& s$ Q0 _! ? }( W# M _) Q9 Y% p printf(" THE WORD IS:%c\n\n",c); /*将10进制c对应的ASCⅡ的明文输出*/! u/ T- u% l o" G0 I" ~5 P 3 Z7 G( c: o& O! U' \8 V7 ?) ^ 2.0版本很简单只要用每一排16进制的字符串如上图中的例子349F9DA19D以9F-34,9D-34,A1-34,9D-34得到的结果转换为10进制,在对应ASCⅡ就是明文了。 ! B5 `/ w% N4 s/ Z9 s ^/ Y, N$ } , ?% b0 m0 w9 Z9 \3 ? " S4 |- ]- ?/ u 我用C写了个翻译软件,自己用着,你们用VB写,或加上其他功能的话,别忘了给发我一个,章鱼谢过了^_^
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 顶 踩

该用户从未签到

2
发表于 2003-6-10 00:53:00 | 只看该作者
丧心病狂 该用户已被删除
3
发表于 2003-6-10 08:49:00 | 只看该作者
能钻研是强,但楼主能不能在公布程序的时候注意其严整性?
游泳章鱼 该用户已被删除
4
 楼主| 发表于 2003-6-10 10:08:00 | 只看该作者
其实我也只是想说一下算法,至于用什么语言写,发挥的余地很大。表达可能不大好,大家也可以自己研究,我来抛砖。

该用户从未签到

5
发表于 2003-6-10 13:14:00 | 只看该作者
不错哦~!~
头像被屏蔽
  • TA的每日心情
    奋斗
    2018-4-25 09:36
  • 签到天数: 1 天

    [LV.1]初来乍到

    6
    发表于 2003-6-10 16:01:00 | 只看该作者
    UP

    本版积分规则

    关闭

    下沙大学生网推荐上一条 /1 下一条

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