第一范文网 - 专业文章范例文档资料分享平台

c语言RSA算法实验报告

来源:用户分享 时间:2025/5/29 5:07:54 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

实验报告(RSA)

13151052 管杰

1. 题目和问题陈述

请编写程序实现RSA算法的下述过程 (1) 输入两个素数p=3, q=11;

(2) 计算 n=p x q, fn=(p-1) x (q-1);

(3) 输入e=3 , e是不大于fn且与fn互素的数, e用于对数据进行加密, 得到密文;

(4) 计算d=?, 使(e x d) mod fn = 1 , d用于对密文进行解密,还原出明文, 也就是得公钥(e,n), 私钥(d,n); (5) 分别输入明文11,05,25, 得到相应的密文输出:11,26,16;

(6) 分别输入密文11,26,16, 得到相应的明文输出:11,05,25。

2. 问题分析,要点及主要数据的设置

程序变量主要有:两个素数p和q, p和q的乘积n,以及f,另外还与f互质的数e.其中p, q, e都是输入的,n, f是简单计算出来的.明文代码用m1,m2,m3来表示,密文代码用c1,c2,c3 来表示.另外求密文求明文和求出d的过程分别使用三个外部函数.分别用find _c和find _m和find _d来表示.

3系统设计,流程图

开始

输入m1 m2 m3 输入c1 c2 c3 n=p*q f=(p-1)(q-1) 输入p q e

结束 输出c1 c2 c3 输出m1 m2 m3 C1=find _c(m1) C2=find _c(m2) C3=find _c(m3) d=find _d(e ,f) M1=find _m(c1) M2=find _m(c2) M3=find _(c3) 4.C代码

5. 测试结果,拷屏输出

6.总结

(1)首先在理解RSA算法时,仅看老师上课留下来的文档时,没有看懂,还好查点资料,对涉及的数学知识了解了下,大概能了解了起算法.

(2)在算法上只有d的算法较难,其他的还好,但是似乎本题

输入的条件过多了,导致本题难度减少很多.还行. (3)程序在语法上基本没有问题了,算法也在积累中,这次也多次使用调试找出了若干问题,很好.

搜索更多关于: c语言RSA算法实验报告 的文档
c语言RSA算法实验报告.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c9a4b52nsdl6et871e29j_1.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top