回 帖 发 新 帖 刷新版面

主题:求大数模幂乘运算 c语言代码

我想搞一个密码,但要求a的b次方再对n求余的算法~~~~~
请高手帮忙~~~
感激不尽~~~~
或者把一下代码给我翻译成c语言代码:
c<-0;d<-1
for i<-k downto 0
   do c<-2*c
      d<-(d*d)mod n
      if  bi=1
          then c<-c+1
               d<-(d*a)mod n
   return d

回复列表 (共6个回复)

沙发

你的代码实在是看不懂什么意思

“求a的b次方再对n求余的算法”很简单
x = 1; // 0次方
x = (x*a)%n; // 1次方
x = (x*a)%n; // 2次方
x = (x*a)%n; // 3次方
………………

板凳


谢谢啦  
我其实是想做那个RSA密码;里面有一个求很大指数的求余
如:80d12次方对125求余

3 楼

RSA用软件实现的话算法要经过设计,而且不经过大量优化的话,1024位的密钥你的代码效率就比较让人难以忍受了,如果不是特别需要的话,建议还是选择简单一些的算法吧
至于那段伪代码,除了<-需要翻译成赋值号之外,没什么难理解的地方了, 自己可以试试看

4 楼

c函数库有求 a的b次方的算法啊

double pow(double x,double y)

5 楼

其实就是一个作业   加密一个数字就行咯

6 楼

那段伪代码你为什么不自己翻译呢,汗

我来回复

您尚未登录,请登录后再回复。点此登录或注册