万象幻境网管专家普及版密码算法 (3千字)
日期:2007年7月12日 作者: 查看:[大字体 中字体 小字体]-
本文可以随意转载,但请保留本文的完整性
题目:万象幻境网管专家普及版密码算法
作者:zmworm
算法描述语言:VC
适应读者:编程人员
万象幻境网管专家普及版密码算法
万象幻境网管专家普及版密码破解器v0.1发布到现在已经近一年了,许多人问我万象幻境的密码算法是什么,但我一直没有公布.随着万象幻境R12的发行(其算法已经改变),面对许多国产软件的密码保护力度还不够强的现状.我决定将万象幻境的密码算法公开.
这次公布的解密算法.加密算法时此算法的逆,所以没有写.
希望本文能对大家编写软件有所帮助,对国产软件有所帮助.
希望和大家共同探讨有关算法的问题我的邮箱zmworm@sohu.com
注1:本文只是讨论算法,而不是针对某个软件进行解密.所以对seed1,seed2,seed3进行了处理
注2:本文不讨论R12的密码算法,事实上R12的算法不比此算法强,而且令人气愤的是,R12算法的密钥竟是GODPIG!!!
原理说明:
万象加密时,得到的密文不同(密文在注册表“HKEY_LOCAL_MACHINE\Software\万象幻境\专家系列网管软件\”)。
玄机何在?其实很简单,在每次加密时“万象”都要随机的选取一个16位初始向量IV和两个16位参数m1、
m2,并将它们加密后放在密文之前供解密时使用,然后再利用这三个参数对明文进行加密。
解密时,需先对这三个值解密,再对密文解密。
无论IV、m1、m2还是明文M都有了同一算法(IV、m1、m2加密过程中的初使向量和两个参数都是固定的)。
这种算法属于较为复杂的CBC模式.
解密函数解密
void uncode(char * szString,CString& sVal)
//szString 为密文;sVal为返回的明文;函数uncode的作用是解密
{
UINT seed1=0x1111,seed2=0x2222,seed3=0x3333;//关键!知道这几个值不同加解密的结果也不同
UINT IV=0,m1=0,m2=0;
//还原出参数IV
int i;
char key1[3]="";
UINT edx=seed1;//密钥1
for(i=0;i<=2;i++)
{
char inte[3]="";
inte[0]=szString[3*i];
inte[1]=szString[3*i+1];
inte[2]=szString[3*i+2];//取三位
key1[i]=CharToInt(inte);//将此三位数串转成数
int mk=(edx&0x0000ff00)>>8;//取密钥1的3 4位准备做异或
UINT temp=key1[i];
temp&=0x000000ff;
edx=(temp+edx)*seed2+seed3;//改变密钥1的值
key1[i]^=mk;//还原参数1的第i位
};
IV=(key1[0]-'0')*100+(key1[1]-'0')*10+(key1[2]-'0');
//还原出参数m1
char key2[5]="";
edx=0xseed1;
for(i=0;i<=4;i++)
{
char inte[3]="";
inte[0]=szString[3*(i+3)];
inte[1]=szString[3*(i+3)+1];
inte[2]=szString[3*(i+3)+2];
key2[i]=CharToInt(inte);
int mk=(edx&0x0000ff00)>>8;
UINT temp=key2[i];
temp&=0x000000ff;
edx=(temp+edx)*seed2+seed3;
key2[i]^=mk;
};
m1=(key2[0]-'0')*10000+(key2[1]-'0')*1000+(key2[2]-'0')*100+(key2[3]-'0')*10+(key2[4]-'0'); - [1] [2] 下一页
-
- 万象幻境网管专家普及版密码算法 (3千字) 相关文章:
- ·万象幻境网管专家普及版密码算法 (3千字)
- 万象幻境网管专家普及版密码算法 (3千字) 相关软件
- 特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作
- 者.文章版权归文章原始作者所有.对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转
- 载的文章有版权问题请联系编辑人员,我们尽快予以更正. 转载请注明来源:http://www.hackhome.com
上一篇:win2000下手动破解Elib2.01 算法分析 上
下一篇:搜易高速邮址搜寻家 V3.0 (EmailSearcher) 算法分析
精品推荐
热点TOP10
- ·加密算法之BLOWFISH算法
- ·对称加密算法技术概述
- ·网络游戏封包基础
- ·破解 最新 SWF scanner V2.6.2
- ·深思3的狗加密的软件
- ·迷你日历 V2.2 算法分析
- ·身份证号编码规则
- ·John the Ripper使用说明
- ·PGP加密原理
- ·即时语音提示 & 校对软件InsTalk注册码及注册机 下
- ·The Bat!使用PGP程序之图形教程(1)
- ·简单算法——WinRCAD 2000公路设计软件
- ·暴破-AQUA 3D Screen Saver v1.5-水族馆屏保程序
- ·smbpasswd - samba加密口令文件
- ·拱猪大战 1.8破解手记--算法分析
- ·简单算法——邮件精灵 V2.0
- ·openssl的man中文文档
- ·屏幕撷取程序Ashampoo SnapYa! v1.53 算法分析
- ·文件密使pj心得
- ·飘雪动画秀3.02注册算法分析
