动易2006序列号破解算法公布

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls,MD5,BASE64,math,CLIPBRD, ExtCtrls,DateUtils;

type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Button1: TButton;
    Label1: TLabel;
    GroupBox1: TGroupBox;
    ComboBox1: TComboBox;
    Label4: TLabel;
    ComboBox2: TComboBox;
    Label3: TLabel;
    ComboBox3: TComboBox;
    Label5: TLabel;
    CheckBox1: TCheckBox;
    CheckBox2: TCheckBox;
    CheckBox3: TCheckBox;
    CheckBox4: TCheckBox;
    CheckBox5: TCheckBox;
    RadioGroup1: TRadioGroup;
    Image1: TImage;
    Edit2: TEdit;
    procedure Button1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
    Procedure GenPE2006Key();
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

const
    PublicKey=63169;
    Modulus=43679;
Function Crypt(const pLngMessage, pLngKey:integer):Integer;
var
  lLngMod,lLngResult,lLngIndex:integer;
begin
  If pLngKey Mod 2 = 0 Then
  begin

lLngResult := 1;
    For lLngIndex := 1 To pLngKey div 2 do
    begin
      lLngMod := round(Power(pLngMessage , 2)) Mod Modulus;
      // Mod may error on key generation
      lLngResult := (lLngMod * lLngResult) Mod Modulus
    end;
  end
  Else
  begin
    lLngResult := pLngMessage ;
    For lLngIndex := 1 To pLngKey div 2 do
    begin
      lLngMod := round(Power(pLngMessage , 2)) Mod Modulus ;

// Mod may error on key generation
      lLngResult := (lLngMod * lLngResult) Mod Modulus ;

end;
  End;
  Result := lLngResult ;
End;

Function Encode(const pStrMessage:String):String;
var
  lLngIndex,lLngMaxIndex:Integer;
  lBytAscii:Byte;
  lLngEncrypted:Integer;
begin
  Result := '';
  lLngMaxIndex := Length(pStrMessage);
  If lLngMaxIndex = 0 Then
    Exit;
  For lLngIndex := 1 To lLngMaxIndex do
  begin
    lBytAscii := Ord(pStrMessage[lLngIndex]);
    lLngEncrypted := Crypt(lBytAscii, PublicKey);
    Result := Result + IntToHex(lLngEncrypted, 4)
  end;
End;

Procedure Gen2006Key(var st1:String; Const sSiteName,sYear,sVersion:String;iStr:Integer);
var
  sSiteMD5,SA,sCRC:String;
  i,k:Integer;
begin
  SA:='';
  sSiteMD5:= cMD5.UpperMD5(cBase64.StrToBase64(sSiteName)+ cBase64.StrToBase64(sVersion));

sCRC:=Encode(Trim(Copy(sSiteMD5,1,5)));
  SA:=sSiteMD5+sSiteMD5+sYear+sCRC;

//填充散列
  k:=iStr;
  for i:=1 to Length(SA) do
  begin
    st1[k]:= SA[i];
    k:= k+(i mod 9) +1;
  end;

end;

procedure TForm1.GenPE2006Key;
const
  sBase='123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-=';
var
  sSiteName,sYear:String;
  SN:String;
  st1,st2:String;

i:integer;

F1: TextFile;

begin

sSiteName:=Trim(Edit1.Text);

DateSeparator := '-';
  ShortDateFormat := 'yyyy-mm-dd';

case RadioGroup1.ItemIndex of
    0:sYear:=DateToStr(IncDay(Date,3));
    1:sYear:=DateToStr(IncDay(Date,10));
    2:sYear:=DateToStr(IncDay(Date,365));
    3:sYear:=DateToStr(IncDay(Date,3650));
    4:sYear:=Trim(Edit2.Text);
  end;
  sYear:= Trim(cBase64.StrToBase64(sYear));

Setlength(SN,4096);

//生成随机数
  SetLength(st1,4064);
  Randomize;
  for i:=1 to Length(st1) do
    st1[i]:= sBase[Random(63)+1];

if ComboBox1.ItemIndex >0 then
    Gen2006Key(st1,sSiteName,sYear,'CMS'+intTostr(ComboBox1.ItemIndex),1);

if ComboBox2.ItemIndex >0 then
    Gen2006Key(st1,sSiteName,sYear,'eShop'+intTostr(ComboBox2.ItemIndex),501);

if ComboBox3.ItemIndex >0 then
    Gen2006Key(st1,sSiteName,sYear,'CRM'+intTostr(ComboBox3.ItemIndex),1001);

//供求
  if CheckBox1.Checked then
    Gen2006Key(st1,sSiteName,sYear,'SD',3001);

//房产
  if CheckBox2.Checked then
    Gen2006Key(st1,sSiteName,sYear,'House',3501);

//企业招聘
  if CheckBox3.Checked then
    Gen2006Key(st1,sSiteName,sYear,'HR',2501);

//室场登记
  if CheckBox4.Checked then
    Gen2006Key(st1,sSiteName,sYear,'Equipment',2001);

//学生学籍
  if CheckBox5.Checked then    
    Gen2006Key(st1,sSiteName,sYear,'SDMS',1501);

st2:= cMD5.UpperMD5(st1);

//填充序列号
  for i:=1 to 4000 do
    SN[i]:= st1[i];
  for i:=1 to Length(st2) do
    SN[4000+i]:= st2[i];
  for i:=1 to 64 do
    SN[4032+i]:= st1[4000+i];

Clipboard.Astext := SN ;

AssignFile(F1, '['+sSiteName+']SN.txt');
  Rewrite(F1);
  Write(F1,SN);
  CloseFile(F1);

end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  GenPE2006Key();
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  RadioGroup1.Color := RGB(78,111,214);
  GroupBox1.Color := RGB(78,111,214);
end;

end.

(0)

相关推荐

  • 动易2006序列号破解算法公布

    unit Unit1; interface uses   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,   Dialogs, StdCtrls,MD5,BASE64,math,CLIPBRD, ExtCtrls,DateUtils; type   TForm1 = class(TForm)     Edit1: TEdit;     Button1: TButton;     Label1: 

  • 2007 10.30动易网站管理系统vote.asp页面存在SQL注入漏洞

    测试系统:         动易(PowerEasy CMS SP6 071030以下版本) 安全综述:        动易网站管理系统是一个采用 ASP 和 MSSQL 等其他多种数据库构建的高效网站内容管理解决方案产品. 漏洞描述:     vote.asp调用了动易组件PE_Site.ShowVote,此组件VoteOption参数过滤不严,导致可以进行mssql注入     但是其语句里面过滤了-- ;等字符,又是一个UPDATE形的注入,有一定的限制.但是其过滤的顺序不对.有导致mss

  • 收藏大量的瑞星2006序列号!!!

    瑞星防火墙下载版  序列号:N0A81N-LQ2JPD-UEDRRG-2VD200  用户ID:F25CKRIR4XNQ "瑞星正版杀毒序列号" 1.瑞星2006序列号:LAR226-LAMGGH-LAWPSD-A05200 ID:4AYN5PER7A4H 2.瑞星2006序列号:B4NN4K-AQ5UQ5-2M1K6U-LJ4200 ID:RBSYQXHJ 3.瑞星序列号2006:080K3M-02050U-G0PVSC-AJE200 ID:6A94GZSK6F4R 4.瑞星2006

  • 最新版本的动易+动网+oBlog三站整合方法

    我用的是最新版本的动易PE_2006_SP5 +动网dvbbs7.1.0 + oBlog 4.0.  我的测试情况:1.可以同步注册.2.可以同步删除用户ID.3.不像帖子里说的可以同步登陆.(可能是我的COOKIES问题,有在用的测试一下哈)4.可以同步修改密码. 1.准备工作,下载并安装三个系统,并使各自均能独立运行. (1).打开动易压缩包 PowerEasy_CMS2006_SP4_Express.rar或PowerEasy_eShop2006_SP4_Express.rar,运行Pow

  • 关于oblog、动易、风讯等拥有源码编辑的程序漏洞浅析

    目前的oblog.动易.风讯等一系列著名的系统,都存在源码编辑漏洞. 具体操作是: 1,进入"源码"编辑 2,输入阶段公分四段: 第一段:<此处输入正文,做事需要手下留情嘛,来点实际内容> 第二段:<script>document.write('<div style="display:none">');</script> 第三段:<此处输入作弊链接,获取google的pr值,此处的内容将不会被浏览者看 到,且不会

  • 重置动易(SiteWeaver 6.5)的管理员密码的代码

    我不知道官方是否有解决方法,刚好我前几天自己手头的一个动易站密码忘了,由于数据库较大,原始的数据库都有14多M,更别说有填加过数据的数据库的大小了,下载下来改再上传也很化时间.于是根据数据结构自己简单的写了一个重置密码的小程序. 将程序发给朋友,他使用之后说很方便.想想应该也会有其它人需要吧,上传上来好了:) 复制代码 代码如下: <%@language=vbscript codepage=936%> <% '作用:重置管理员admin的密码为123456,适用于动易5以上的系统,包括S

  • 动易开源PowerEasy&reg; SiteWeaver&#8482; 6.5系列产品发布免费下载了 原创

    不可否认动易的产品的易用性是无可置疑的.这次开源相信给互联网很大的波动,会有更多的做站大军,加入到动易的产品中.这次商业用户也能感受到动易带给我们动易sql商业版的乐趣了,如果动易早一年开源,相信半壁江山都是你的了,可这已经是两年后了,dedecms(模板太好用了)我也在用,和帝国网站管理系统(不如dedecms模板自主性),phpcms(后台太乱了),他们php系统占领的很大一份量.而dedecms的易用性和作者的经常放鸽子.让人很是头痛,如果能有帝国作者一般的信誉相信更牛了,大家来拭目以待吧

  • 详解易语言的冒泡算法

    我们做一些游戏脚本软件时候,经常要用到这个算法,比如求解离自己身边最近的怪物优先攻击,就要用到这个算法,冒泡算法可以快速的把一组数据按照从大到小,或者从小到大的顺序进行快速排序. 冒泡算法的核心就是,从第一位开始把数据提取出来,跟余下的数据逐一进行比大或者小(看你是按照从大到小,还是从小到大顺序进行排),大或者小的数交换位置,第一位比较完毕后,再从二个位开始把数据提取出来,跟余下的数据进行比较,依次进行. 下面给出易语言源码 .版本 2 .支持库 spec .子程序 子程序_按照从小到大排序 .

  • Python迷宫生成和迷宫破解算法实例

    迷宫生成 1.随机PRIM 思路:先让迷宫中全都是墙,不断从列表(最初只含有一个启始单元格)中选取一个单元格标记为通路,将其周围(上下左右)未访问过的单元格放入列表并标记为已访问,再随机选取该单元格与周围通路单元格(若有的话)之间的一面墙打通.重复以上步骤直到列表为空,迷宫生成完毕.这种方式生成的迷宫难度高,岔口多. 效果: 代码: import random import numpy as np from matplotlib import pyplot as plt def build_tw

  • 易语言程序破解浅析

    易语言程序用PEID查壳显示的是 Visual C++ 6.0[overlay]   ,其中包含有ecode区段,这基本就是易语言程序是不会错了,应为易语言底层也是用的C++的编译系统所以也是Visual C++ 6.0, overlay(附加数据)是什么意思呢?这是易语言独有的特性:程序在库中运行,就像加了可一样所以说它带有附加数据. 如果你拿到一个易语言的程序载入 OD后就直接查找字符串之类的是无果的,就像前面所说的,易语言程序就像被加了壳一样,所以你必须在壳把程序完全解压释放出来你才能查看

随机推荐