标题:各位老师好!求助编辑一个大整数的快速乘除法可调用程序
只看楼主
ysr2857
Rank: 6Rank: 6
等 级:贵宾
威 望:28
帖 子:767
专家分:65
注 册:2020-2-10
得分:0 
嗯嗯好,多介绍一下,没地方学,这个少,网上都是vc版程序。
2020-02-13 16:56
ysr2857
Rank: 6Rank: 6
等 级:贵宾
威 望:28
帖 子:767
专家分:65
注 册:2020-2-10
得分:0 
回复 40楼 wmf2014
您的程序速度很快了,还能提高吗?或者还能算出来更大的数据吗?
最后结果中的孪生素数对比实际多1对吧?把程序倒数第10
行的j=0,改为j=-1就行。
速度可以提高的,另外能不能改为可以从中间算起的程序?
如下数列:
7,13,19,……
5,11,17,……
包含了除了3和5一对的全部孪生素数对。
也包含了除了2和3以外的全部素数。
所以步长可以改为6,且从5开始算,或从6n+5开始算。这样就省掉了1/6,速度快了一点儿吧?
多谢指导,欢迎沟通!我不懂vc也弄不懂原理,欢迎直接给出个快速乘法除法程序vb版的,谢谢您!
2020-02-14 09:39
ysr2857
Rank: 6Rank: 6
等 级:贵宾
威 望:28
帖 子:767
专家分:65
注 册:2020-2-10
得分:0 
回复 36楼 wmf2014
您能算到100或170亿吗?请给出100亿内的孪生素数对总个数吧,不用打表,给出个总个数就行。我朋友要这个数据,谢谢您了!
2020-02-14 09:49
wmf2014
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:216
帖 子:2039
专家分:11273
注 册:2014-12-6
得分:0 
用vb的for空循环到100亿都要一分多钟,没什么动力让我那样做下去,给个别人做研究出的一个表你吧,应该可以给你朋友一个交代。

能编个毛线衣吗?
2020-02-14 12:50
ysr2857
Rank: 6Rank: 6
等 级:贵宾
威 望:28
帖 子:767
专家分:65
注 册:2020-2-10
得分:0 
回复 44楼 wmf2014
刚才看到,谢谢!有个网友需要这些数据的,非常感谢!
2020-02-14 23:06
ysr2857
Rank: 6Rank: 6
等 级:贵宾
威 望:28
帖 子:767
专家分:65
注 册:2020-2-10
得分:0 
回复 12楼 wmf2014
是的,RSA密码加解密程序只是快速乘法除法程序的一个应用,其它方面还会用到。这方面我做出了相关程序,是分开做的,大整数的分解程序(我的程序运行速度太慢只能分解几十位的整数的),蒙哥马利快速幂模程序(这个道运行很快,若有了快速乘法除法程序就更快了,原理简单的,就是:幂的模等于模的幂,再求模),求乘法的逆元的程序,求两数的最大公约的程序(也可以叫判断两数是否互质的程序,用到辗转相除法,也很快的),这几个结合就可以破解RSA密码了。
RSA密码的原理方法(费马-殴拉定理)的逆命题可以用于判断大整数是否是素数,我已经编程,几十位的迅速出结果,超过百位的时间就长了。所以这个程序很重要,很有用,对我是个难题,高手可能是容易的。
(网上有个网站有能分解200位内的整数的程序,现在找不到那个网站了,RSA密码的公开模数在2千位以上目前是安全的,可能不是绝对安全,不否认有高手能破解,不能绝对认定。RSA有多个变种,有多因子的,两个大因子各自多少次方,再乘起来,想想就太大了,可能常用的就是双因子的,有的说是两个关联素数的积,其实这样的容易分解不安全,非关联素数的积倒是更安全。秀尔算法可用于快速分解大整数的,据说秀尔算法其中一个步骤必须用到量子计算机,咱也不知道这种算法的原理,量子计算机是并行算法,等于多少个可能的待测因子一次性试除完成,很快就找到余数为0的一个,当然还得结合传统的串行计算机才能完成破解RSA密码的任务。量子计算机虽然还没有正式上场,但这方面的研究已有突破性进展,试验性的机器不断报到表现不俗,RSA肯定也是不能永久安全,也是要改进和发展,或者弄出新的密码体制,肯定也是面临淘汰更新,网络安全不能没有密码,人类道德还不能让网络进入裸奔时代,这方面研究应该还是有意义的。)
   谢谢朋友指导帮助!希望朋友给出个快速乘法除法程序的vb版的程序!
祝各位老师新春快乐,身体健康万事如意!
2020-02-15 00:05
ysr2857
Rank: 6Rank: 6
等 级:贵宾
威 望:28
帖 子:767
专家分:65
注 册:2020-2-10
得分:0 
RSA公钥密码体制的逆命题,可以用来判断大整数是否是素数,是确定性的,我的程序对于大于5位的整数都有效,若有了快速乘法除法程序运行就更快了,用到了快速幂模算法,多少位的指数也是很快就算完了。
    所以我要研究这个,希望老师帮助,给予指导!欢迎直接给出个快速乘法除法程序,或者解释一下原理!
谢谢您!
2020-02-15 00:16
wmf2014
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:216
帖 子:2039
专家分:11273
注 册:2014-12-6
得分:0 
实话实说,你说这么多,我一句都没听懂。不过最后的意思我还是明白了,你还是要“欢迎直接给出个快速乘法除法程序”。
这很奇怪的,你说“RSA密码的原理方法(费马-殴拉定理)的逆命题可以用于判断大整数是否是素数,我已经编程,几十位的迅速出结果”,如果你真的搞定了就应该知道rsa通过公匙是很难逆出组成他们的大素数PQ的,否则用这种方式加密就没有意义了。你居然能把几十位的迅速得出结果,我深表佩服。
你这篇帖子就只是我俩的讨论,我至少为帮你解决问题不辞辛劳地给出代码了,你是不是也把你那个“几十位的迅速得出结果”的代码提供出来,让我学习学习?
期待ing!

能编个毛线衣吗?
2020-02-15 10:36
ysr2857
Rank: 6Rank: 6
等 级:贵宾
威 望:28
帖 子:767
专家分:65
注 册:2020-2-10
得分:0 
回复 48楼 wmf2014
谢谢您的帮助,我只能发个主程序,因为代码太长,您知道原理那些可调用程序对你不成问题,就是些可调用的加减乘除程序。我电脑上正运行程序,还一边看电视剧,可以暂时停一下。先给你个判断素数的程序。分解因子效果不好,不发了,是不完全分解,只能分解成两个因子,至于是否是素因子就不管了,而且是部分类型的分解,不是全部合数都能分解。先说这么多,程序中缺少解释,希望您能理解,能看懂,不懂的话,我再补充注解。才看到,非常感谢您沟通!
2020-02-15 16:28
ysr2857
Rank: 6Rank: 6
等 级:贵宾
威 望:28
帖 子:767
专家分:65
注 册:2020-2-10
得分:0 
回复 48楼 wmf2014
在判断素数中的公开模数是待判定的整数,假设其为素数的话,就逆回去了,无需分解,此时肺(n)=n-1.不用找pQ,(肺,希腊字母,打不出来)。
2020-02-15 16:34



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-499181-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.056186 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved