RSA密码:RSA算法是一种非对称加密算法,分组加密算法,分组大小可以根据密钥的大小而改变一般至少取1024位,最好取2048位,今天小编就来聊一聊关于软考信息安全工程师下午真题?接下来我们就一起去研究一下吧!

软考信息安全工程师下午真题(软考-信息安全工程师学习笔记-第3章密码学基本理论)

软考信息安全工程师下午真题

RSA密码:

RSA算法是一种非对称加密算法,分组加密算法,分组大小可以根据密钥的大小而改变。一般至少取1024位,最好取2048位。

特点:加密算法是可逆的,加密和解密运算可交换,可同时确保数据的秘密性和数据的真实性。

互质关系:若是两个正整数,除了 1 之外,没有其余公因子,就称这两个数是互质关系。15 和 32 没有公因子,因此它们是互质关系。这说明,不是质数也能够构成互质关系。

欧拉函数:对于一个正整数n,小于n且与n互质的正整数的个数,记为P(n)。

对于一个素数n,可能P(n)=p-1

对于两个素数p和q,他们的乘积满足n=p*q,则可知p(n)=(p-1)*(q-1)。

欧几里得算法:gcd(a,b)表示a和b的最大公因数,如gcb(a,b)=1,则表示a,b的最大公因数为1,说明a和b互素。

同余:两个整数a,b,若他们除以整数m所得的余数相等,则称a与b对于模m同余,或a同余b模m,记作a≡b(mod m),表示a与b对模m同余。例如:26≡2(mod 12)。

RSA 的加密和解密:

参数定义和密钥生成

选两个大素数 p 和 q;(保密)

计算 n=p×q,φ(n)=(p-1)×(q-1);(n 公开,φ(n)保密)

选一整数 e,满足 1<e<φ(n),且 gcd(φ(n),e)=1;(e 公开)

计算 d,满足 d×e≡1 modφ(n)(保密)

加密算法:c ≡ me mod n

解密算法:m ≡ cd mod n

国产密码算法:

SM1:对称加密,分组和密钥都是128位。

SM2:非对称加密,用于公钥加密、密钥交换协议、数字签名算法,256位椭圆曲线。

SM3:杂凑算法,杂凑值长度为256位。

SM4:对称加密,分组和密钥都是128位。

SM9:标识密码算法。

Hash函数:

又称为杂凑函数、散列函数,将任意长度的报文转换成固定长度的哈希值,又称数字摘要或信息摘要,任意不同的消息或文件所生成的哈希值是不一样的。

常见Hash算法:

MD5算法:以512位数据块为单位来处理输入,产生128位的信息摘要。

SHA算法:以512位数据块为单位来处理输入,产生160位的信息摘要,比MD5更安全。

SM3国产算法:分组长度为512位,输出256位的信息摘要。

数字签名:

签名者使用私钥对签名数据的杂凑做密码运算,该结果只能用签名者的公钥进行验证。

完善的签名应满足三个条件:

1.非否认:签名者不能抵赖自己的签名。

2.真实性:接收者能验证签名,而任何其他人不能伪造签名。

3.可鉴别性:能够在公正的仲裁者面前通过验证签名来确认其真伪。

签名者利用私钥对需签名的数据进行加密,验证方利用签名者的公钥对签名数据做解密运算。签名与加密的不同之处在于目的不同,签名是为了保证不可抵赖性和完整性,加密是为了保证机密性。

,