密码学课程实验——RSA实验报告+代码

时间:2023-07-04 12:28:27
【文件属性】:

文件名称:密码学课程实验——RSA实验报告+代码

文件大小:397KB

文件格式:ZIP

更新时间:2023-07-04 12:28:27

RSA 代码 密码学实验

实践要求: 1. 要求实现 RSA 的密钥生成、数据加密、数字签名。 2. 密钥生成包括生成两个大素数 p,q,计算 n=p×q 和(n)=(p-1)(q-1),然后选择与(n)互素且小于(n) 的整数 e,计算 d=e-1mod (n),最后得到公钥{e, n}和私钥{d, n}。要求 p,q 至少均大于 1010, 将生成的整 数 p、q、n、e、d 分别写入文件 p.txt、q.txt、n.txt、e.txt、d.txt 中。注意,所有整数都必须用 16 进制表 示。必须将整数转化成字符串后再写入文件,例如素数 p=6B1BCF(用 16 进制表示),则写入文件的应是 字符串"6B1BCF"而非整数 6B1BCF。 3. 数据加密是指用公钥{e, n}对指定的明文进行加密。数字签名是指用私钥{d, n}对指定的明文进行加 密。数据加密和数字签名都有一组对应的测试数据,以便检查程序的正确性。要求以命令行的形式,指 定明文文件、密钥文件的位置和名称以及加密完成后密文文件的位置和名称。加密时先分别从指定的明 文文件、密钥文件中读取有关信息,然后进行加密,最后将密文写入指定的密文文件。注意,密文(一个 整数)必须用 16 进制表示。必须将密文(一个整数)转化成字符串后再写入文件,例如密文 c=154A6B(用 16 进制表示),则写入文件的应是字符串"154A6B"而非整数 154A6B。


【文件预览】:
《应用密码学》课程实践报告04.docx
CypherRSA
----n.txt(512B)
----p.txt(256B)
----m.txt(24B)
----test.exe(24KB)
----gmpxx.h(126KB)
----q.txt(256B)
----RSA.exe(24KB)
----d.txt(512B)
----RSA.cpp(5KB)
----gmp.h(82KB)
----c.txt(511B)
----e.txt(6B)

网友评论