网站首页 > 博客文章 正文
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.可鉴别性:能够在公正的仲裁者面前通过验证签名来确认其真伪。
签名者利用私钥对需签名的数据进行加密,验证方利用签名者的公钥对签名数据做解密运算。签名与加密的不同之处在于目的不同,签名是为了保证不可抵赖性和完整性,加密是为了保证机密性。
猜你喜欢
- 2025-04-07 加密数据有妙招,两款安全存储产品体验分享
- 2025-04-07 双卡冗余备份 + 国密加密!AX3000 路由如何守护企业数据安全?
- 2025-04-07 ColorOS 7.1的这些小功能很实用 Find X2系统体验
- 2025-04-07 省联网公司组织开展全省高速公路全面发行国产密码算法ETC车载装置跨省联测工作
- 2025-04-07 盘点几个安卓逆向之常用加密算法(逆向app加密算法)
- 2025-04-07 CTF&爬虫:掌握这些特征,一秒识别密文加密方式
- 2025-04-07 国密SM算法有哪些?(国密算法标准公布)
你 发表评论:
欢迎- 374℃手把手教程「JavaWeb」优雅的SpringMvc+Mybatis整合之路
- 369℃用AI Agent治理微服务的复杂性问题|QCon
- 360℃初次使用IntelliJ IDEA新建Maven项目
- 353℃Maven技术方案最全手册(mavena)
- 351℃安利Touch Bar 专属应用,让闲置的Touch Bar活跃起来!
- 348℃InfoQ 2024 年趋势报告:架构篇(infoq+2024+年趋势报告:架构篇分析)
- 346℃IntelliJ IDEA 2018版本和2022版本创建 Maven 项目对比
- 344℃从头搭建 IntelliJ IDEA 环境(intellij idea建包)
- 最近发表
- 标签列表
-
- powershellfor (55)
- messagesource (56)
- aspose.pdf破解版 (56)
- promise.race (63)
- 2019cad序列号和密钥激活码 (62)
- window.performance (66)
- qt删除文件夹 (72)
- mysqlcaching_sha2_password (64)
- ubuntu升级gcc (58)
- nacos启动失败 (64)
- ssh-add (70)
- jwt漏洞 (58)
- macos14下载 (58)
- yarnnode (62)
- abstractqueuedsynchronizer (64)
- source~/.bashrc没有那个文件或目录 (65)
- springboot整合activiti工作流 (70)
- jmeter插件下载 (61)
- 抓包分析 (60)
- idea创建mavenweb项目 (65)
- vue回到顶部 (57)
- qcombobox样式表 (68)
- vue数组concat (56)
- tomcatundertow (58)
- pastemac (61)
本文暂时没有评论,来添加一个吧(●'◡'●)