找回密码
 欢迎注册
楼主: mathe

[建议] 在灌水版建立一个博弈版块如何?

[复制链接]
发表于 2008-5-6 08:24:35 | 显示全部楼层
在二次筛破解中 大概一天内能分解掉
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2008-5-6 08:26:42 | 显示全部楼层
那看来难度大了一些。主要被加密的数据我直接用ASCII码表示,大小稍微有点长。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2008-5-6 08:33:37 | 显示全部楼层
这个前面就是通过HugeCalc产生的,代码如下:
  1. integer p,q;
  2. p.GeneratePrime(150);
  3. q.GeneratePrime(148);
  4. integer n(p*q);
  5. integer m((p-1)*(q-1));
  6. integer d;
  7. d.Random(10);
  8. integer c;
  9. while(c.Gcd(m,d)!=1){
  10. d++;
  11. }
  12. integer x(strbuf);
  13. integer y;
  14. y.PowMod(x,d,n);
  15. printf("x^%s=%s(mod %s)\n",d.GetStrRadix(10,NULL,FS_NORMAL), y.GetStrRadix(10,NULL,FS_NORMAL),n.GetStrRadix(10,NULL,FS_NORMAL));
复制代码
不过破解使用HugeCalc应该还是不够的(上面integer定义为CHugeIntX)
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2008-5-6 08:42:21 | 显示全部楼层
HugeCalc 为加解密字符串直接提供了一组函数:
将待加密字串以内码方式复制为超大整数: CHugeIntX& CHugeIntX::SetText( CONST LPCTSTR lpszText ); 将超大整数以内码方式转换为解密字串: CONST LPCTSTR CHugeIntX::GetText( VOID ) CONST;
  • 该组函数为数论和加解密研究提供了极大便利;它的一般调用流程是:SetText() --> 加密 --> 解密 --> GetText()
  • 在MBCS系统中,内码以单字节切分;在UNICODE系统中,内码以双字节切分
  • 顺序:从字串尾部由右至左对应于超大整数的低位到高位
更详细的内容,参见帮助文档 HugeCalc.chm 相关页面。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2008-5-6 08:43:25 | 显示全部楼层
这么大的数 ECM肯定不行 NFS不如QS 所以铁定是用二次筛 刚算了,差不多正好是24小时 ======================= 我服务器设了三天重新启动一次 只要别超过三天就好
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2008-5-6 08:44:42 | 显示全部楼层
呀,我还专门写了个转化的代码,是否和你的一致?
  1. void prepare_input()
  2. {
  3. int i;
  4. strbuf[0]='0';
  5. strbuf[1]='x';
  6. for(i=0;i<strlen(SRC_STR);i++){
  7. char c=SRC_STR[i];
  8. char low=c&0xf;
  9. char high=(c>>4)&0xf;
  10. if(low<10){
  11. low=low+'0';
  12. }else{
  13. low=low-10+'a';
  14. }
  15. if(high<10){
  16. high=high+'0';
  17. }else{
  18. high=high-10+'a';
  19. }
  20. strbuf[2*i+2]=low;
  21. strbuf[2*i+3]=high;
  22. }
  23. strbuf[2*i+2]='\0';
  24. }
复制代码
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2008-5-6 08:50:33 | 显示全部楼层
如果下面这个难度如何? signature^677=6480574336854794003779793438625525766955881755024507239921 (mod 23062496730092690709353215131843843057725682565268421456019) [ 本帖最后由 mathe 于 2008-5-6 08:59 编辑 ]
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2008-5-6 08:52:58 | 显示全部楼层
原帖由 mathe 于 2008-5-6 08:44 发表 呀,我还专门写了个转化的代码,是否和你的一致?
似乎 low、high 存储顺序与我的颠倒了。 RSA 源代码可以参考安装包中的 \HugeCalc\testDLL\src\RSATool\
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2008-5-6 08:56:28 | 显示全部楼层
的确弄倒了,我颠倒一下,不过这里的签名就不修改了
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2008-5-6 09:25:04 | 显示全部楼层
游客,本帖隐藏的内容需要积分高于 3000 才可浏览,您当前积分为 0
[ 本帖最后由 mathe 于 2008-5-6 09:44 编辑 ]
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
您需要登录后才可以回帖 登录 | 欢迎注册

本版积分规则

小黑屋|手机版|数学研发网 ( 苏ICP备07505100号 )

GMT+8, 2024-12-4 01:48 , Processed in 0.026964 second(s), 14 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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