首页
社区
课程
招聘
[求助]利用BigInt Calc1.2 计算器 DSA算法中私钥X是怎么算出来的
发表于: 2011-2-18 10:36 8445

[求助]利用BigInt Calc1.2 计算器 DSA算法中私钥X是怎么算出来的

2011-2-18 10:36
8445
这个是看雪论坛上一篇文章
标 题:DSA算法的理论,实现,以及在破解中的应用(一) (4千字)
发信人:娃娃[CCG]  [发短消息]
时 间:2003-08-12 12:27:21
详细信息:

DSA算法的理论,实现,以及在破解中的应用
原文不做全部引用了,只将这其中的关键部分列出:

// 至此 我们得到了DSA的四个公匙:
P = AE2CCC8E5956DE7898143649944108EEFCA2C7EF909012BB
G = 8DFC33DF82EDEFF56ABD1AE161BE17FBC1F403D5DF133106
Y = AA0D6424AD93D695435A3A09FAAFD5358620D37223EEAF39
Q = A7DD75045151

接下来轮到 BigInt Calc1.2 出场了,它可以很方便的使用表达式辅助计算,方便速度快
最重要的是CCG成员编写的 当然要大力推荐一下咯,具体用法参考说明文件,我就不多说了

根据 Y = G^X mod P 得到:X =  40A6C8A2464A891E99DDBFCFC967BAFD4BAFA67B3ECEDC43

本人求助,这个 X是怎么使用BigInt Calc1.2计算出来的,望明白的朋友告诉详细步骤?

[招生]科锐逆向工程师培训(2025年3月11日实地,远程教学同时开班, 第52期)!

收藏
免费 0
支持
分享
最新回复 (7)
雪    币: 433
活跃值: (45)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
2
试试PARI代码吧,也可用MATHEMATICS

H(x,g, s) = s=g; for(n=1,znorder(g),if(x==s, return(n), s=s*g)); 0;
? H(18,Mod(5,23))
%6 = 12
? H(20,Mod(5,23))
%7 = 5

把对应数换上就OK,不过可能要算一年半载!?!我算了它文里CRACKERME#4的79位的368624370336150382836561都等不急,减到50位也不行。。。。

下了感到BIGint不友好,象夏普计算器。。。。文档就最后那一个例子,可我们21世纪的人要新工具
上传的附件:
2011-2-22 20:21
0
雪    币: 433
活跃值: (45)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
3
觉的BigInt Calc1得花数年。。。

把BigInt Calc1和ECCTOOLS再传上来,不知为何,主页上没有了。别的站有
上传的附件:
2011-2-22 20:27
0
雪    币: 62
活跃值: (27)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
4
这就是离散对数问题。不过,P-1的素数分解直接影响求解难度,P-1若能分解成较多(较小)素数的幂积的话,会比较容易求解,具体方法比较复杂,如果有有限交换群分解的知识,会容易理解点。
2011-2-25 18:48
0
雪    币: 433
活跃值: (45)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
5
在MAPLE上看看

> index(41696704918290981501768282072847\
> 76989010151046910451822393,34814661529\
> 89800111201974224682033569110641383479\
> 283233030,4270758482012793668746242066981501955116983159626304328379);
memory used=53.8MB, alloc=43.9MB, time=1.23
memory used=92.0MB, alloc=43.9MB, time=2.11
memory used=130.1MB, alloc=43.9MB, time=2.97

memory used=4838.3MB, alloc=69.7MB, time=114.66
memory used=4876.4MB, alloc=69.7MB, time=115.55

memory used=9302.0MB, alloc=69.7MB, time=217.05

memory used=14795.2MB, alloc=69.7MB, time=360.97

memory used=22233.9MB, alloc=69.7MB, time=557.84

memory used=33214.1MB, alloc=101.7MB, time=851.64

memory used=46336.7MB, alloc=101.7MB, time=1213.91

memory used=72086.0MB, alloc=101.7MB, time=1934.06
memory used=72124.1MB, alloc=101.7MB, time=1935.09
。。。。。。。。。。。。。。。。。

明天不知行不行。。。。
娃娃[CCG引用的a65K9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8X3c8G2j5%4y4Q4x3X3g2%4k6h3u0E0P5q4)9J5k6h3k6J5i4K6u0r3f1$3g2U0N6i4u0A6N6r3g2Q4x3U0f1J5x3s2u0W2M7$3g2S2N6i4S2Q4x3U0f1J5x3r3g2@1i4K6t1#2x3U0m8o6M7X3q4U0K9$3W2F1k6#2)9J5c8Y4y4Z5L8h3g2A6N6r3y4G2M7Y4m8Q4x3V1j5$3i4K6u0r3b7%4u0S2j5$3E0Q4x3U0f1J5x3q4S2h3d9f1W2u0i4K6u0r3M7p5c8J5K9h3I4D9x3#2)9J5c8Y4y4G2L8s2g2U0k6h3E0Y4L8h3g2V1M7X3W2D9L8o6y4Q4x3X3g2Z5N6r3#2D9i4@1f1%4i4K6W2m8i4K6R3@1i4@1f1#2i4@1t1H3i4K6S2r3i4@1f1%4i4K6R3J5i4@1t1&6i4@1f1%4i4K6W2m8i4K6R3@1i4@1f1$3i4K6V1#2i4@1t1H3i4@1g2r3i4@1u0o6i4K6W2m8

  index(368624370336150382836561,217453\
512678253980654092,856210455808897477316603);

memory used=46801.7MB, alloc=64.6MB, time=1348.09
memory used=46839.8MB, alloc=64.6MB, time=1349.12
                           299376145767585197811667(D)

那法国的还真对。。。。

=3F6536A02CD18F3B67D3(H)
2011-2-28 19:45
0
雪    币: 433
活跃值: (45)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
6
无意中发现P = AE2CCC8E5956DE7898143649944108EEFCA2C7EF909012BB =4270758482012793668746242066981501955116983159626304328379

是NIST 推荐的ECC中的P-192。。。。明年也没戏啊。。。。

Factorization(2^192-2^64-1);
Factorization(2^192-2^64-2);

[ <6277101735386680763835789423207666416083908700390324961279, 1> ]
[ <2, 1>, <59, 1>, <149309, 1>, <11393611, 1>, <108341181769254293, 1>,
<288626509448065367648032903, 1> ]

memory used=102024.8MB, alloc=128.4MB, time=2732.08
memory used=102062.9MB, alloc=128.4MB, time=2733.06
memory used=102101.1MB, alloc=128.4MB, time=2734.08
memory used=102139.2MB, alloc=128.4MB, time=2735.08
memory used=102177.4MB, alloc=128.4MB, time=2736.09
memory used=102215.5MB, alloc=128.4MB, time=2737.11
memory used=102253.6MB, alloc=128.4MB, time=2738.13
。。。。。。。。。。。。。。。

还没OVERFLOW。。。
2011-2-28 20:11
0
雪    币: 433
活跃值: (45)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
7
X=1585250141131541931598626946823341394255706600825785605187;

Modexp(3481466152989800111201974224682033569110641383479283233030, 1585250141131541931598626946823341394255706600825785605187, 4270758482012793668746242066981501955116983159626304328379);

4169670491829098150176828207284776989010151046910451822393

那个X是对的

那个计算器验证都不行,更别提反求对数了,作者可能是用别的工具算的,就象POWERMOD,Modexp之类的,找到P192,先算出X,反把Y,G贴前面,给人感觉P192类的DSA强素数都能被那个计算器求对数解

高次幂模是多项式时间问题,别说57位,57000位也用MAPLE之类能算,

反求对数57位模的在个人PC上用INDEX我试了15小时也没出来
DSA强素数反求对数全世界素数专家蹂躪多年了,

作者是个爱面子的人,不过他没想想那法国人用的数小多了

贴张图
上传的附件:
2011-3-1 20:33
0
雪    币: 433
活跃值: (45)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
8
modp(3481466152989800111201974224682033569110641383479283233030^1585250141131541931598626946823341394255706600825785605187, 4270758482012793668746242066981501955116983159626304328379);

Error, numeric exception: overflow

mlog(4169670491829098150176828207284776989010151046910451822393,348146615298\
98001112019742246820335691106413834792\
83233030,4270758482012793668746242066981501955116983159626304328379);

===================

========================

p:=4270758482012793668746201955116983159626304328379;
Factorisation (p);

K := GF(p);
K;
b :=K!3481466152924682033569110641383479283233030 ;
b;
a:=K!416967049128207284776989010151046910451822393;
a;

m := K!Log (b, a);
m;
m1:=0x40A6C8A2464A891E99DDBFCFC967BAFD4BAFA67B3ECEDC43 ;
m1;
2011-3-2 16:13
0
游客
登录 | 注册 方可回帖
返回