📄 keygen_fhcf_03.cpp
字号:
// KeyGen_FHCF_03.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
extern "C"
{
#include "include\miracl.h"
}
int main(int argc, char* argv[])
{
printf("KeyGen For PdriLl's Keygenme #3\n");
printf("Cracked By ryOsUkE 2006.06.10\n");
miracl* mir=mirsys(0x64,0x0);
mir->IOBASE=0x10;
int i;
big p=mirvar(0);
big g=mirvar(0);
big y=mirvar(0);
big x=mirvar(0);
big n=mirvar(0);
big k=mirvar(0);
big temp=mirvar(0);
cinstr(p,"B54F430648C6B2A10FFB");
cinstr(g,"2E0C2DB4FEC8C6299A0C");
cinstr(y,"4E0F2ACAD51C4CCDFB51");
cinstr(x,"3F6536A02CD18F3B67D3");
cinstr(n,"AC2DB4FEC8C62992DB4F");
while(egcd(p,k,temp)!=1)
bigrand(p,k);
char name[30];
printf("Name:");
scanf("%s",name);
int len=strlen(name);
for(i=len;i<30;i++)
name[i]='*';
big m=mirvar(0);
bytes_to_big(30,(char*)name,m);
power(m,2,n,m);
big r=mirvar(0);
big s=mirvar(0);
powmod(g,k,p,r); //r=g^k mod p
decr(p,1,p);
xgcd(k,p,k,k,k); //计算k^-1 mod p-1
multiply(r,x,s);
subtract(m,s,s); //计算m-r*x
multiply(s,k,s);
power(s,1,p,s);
add(s,p,s);
//计算k^-1*(m-x*r) mod p-1
mir->IOBASE=60;
char serial1[50];
char serial2[50];
cotstr(r,serial1);
cotstr(s,serial2);
printf("Serail1:%s\n",serial1);
printf("Serail2:%s\n",serial2);
mirkill(p);
mirkill(g);
mirkill(y);
mirkill(x);
mirkill(n);
mirkill(k);
mirkill(temp);
mirkill(r);
mirkill(s);
mirexit();
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -