仿射密码算法.docVIP

  • 11
  • 0
  • 约小于1千字
  • 约 1页
  • 2021-01-27 发布于河北
  • 举报
① 申请三个字符数组Z,C,M。 Z明文 C密文 M保存分析所得的明文。 ② 密文是通过ek(m)=am+b?modα?得到的,为了解密我们使用dk(c)=a-1(c-b)modα?。这里有一个函数要先实现: int?gcd(int?n,int?m) { int?r,temp; if(nm) ??{temp=n; ??n=m; ??m=temp; } while(m!=0) ??{r=n%m; ??n=m; ??m=r; ??} return?n; } ③ 程序的主要部分,一个多重循环: for(a=2;aα;a++) ??if?(gcd(a,α)==1)?? {/*求a的乘法逆元p?*/ for(b=2;bα;b++) ????if?((a*b)%α==1){p=b;break;}; /*?用dk(c)=p(c-b)?mod?α*/ for(b=0;bα;b++) ??{对数组C进行处理,输出k=(a,b)和M,M有意义程序结束,分析完成。} }; ??????else?continue;

文档评论(0)

1亿VIP精品文档

相关文档