网站首页 > 技术文章 正文
今天小编要和大家一起学习RSA加密算法,有很多朋友问小编RSA算法咋搞,小编也很无奈,因为小编也正要去学习,刚好昨天老师讲到了RSA加密算法,今天小编就分享出来,咱们一起去学习学习。
首先我们先去看一下目录
目录
1.RSA算法简介
2.RSA算法的原理
3.在eclipse中分析RSA算法的代码
RAS算法简介
它是又罗纳德.李维斯特、阿迪.萨莫尔和伦纳德.阿德曼在1977年提出,当时他们三人在麻省理工学院工作,RSA就是他们三大姓开头字母拼在一起组成的。
RSA是最流行的非对称加密算法之一,也被称之为公钥加密。
特点
最流行的非对称加密算法之一(也就是说用来加密的密钥和用来解密的密钥不是同一个),和DES一样的,RSA也是分组加密算法,不同的是分组大小可以根据密钥的大小可以根据密钥的大小而改变,如果加密的数据不是分组大小的整数倍,那么根据具体的应用方式增加额外的填充位。
RSA作为一种非对称的加密算法,其中很重要的一个特点就是,当数据在网络中传输时,用来加密数据的密钥并不需要和数据一起传送,因此这就减少了密钥泄露的可能性。
RSA在不允许加密的时候也是非常有用的。
加密的一方使用一个密钥,称为公钥,解密的一方使用另一个密钥,称为私钥,私钥需要保持其私有性。
RSA被认为是非常安全的,不过其计算速度要比DES慢的多,同DES一样其安全性也从未被证明过。
(要想攻破RSA算法涉及的大数的因子分解是一个极其困难的问题,由于缺乏解决大数因子分解的有效方法,因此可以推断出,目前没有有效的办法可以破解RSA)
RSA算法原理
从基本上来说加密和解密数据都是围绕着模幂运算,这是取模计算中的一种,取模计算是整数计算中的一种常见形式。
如:
40mod 13=1因为40/13=3,而余数为1 模幂运算就是计算ab mod n的过程
在eclipse中分析RSA算法的代码
我们在eclipse中已经准备好这个工程,我们直接在mainactivity分析这几个重要的方法。
第一个是一个私钥加密,然后是一个公钥解密,然后是应该公钥加密,又是一个私钥解密。
我们去RSA中去分析一下这几种方法,我们从上往下看。
首先是密钥长度的定义
然后是一个初始化密钥,我们去看一下这个逻辑,首先我们实例化密钥生成,然后初始化密钥生成器,紧接着生成密钥对,分别是公钥,私钥然后将密钥对存储在map中。
接下来我们取的私钥
然后取的公钥
然后对私钥进行加密
这里我们首先要取的私钥,对私钥进行一个处理,紧接着对数据进行一个加密,在网下是一个公钥加密。
跟上面一样我们首先取的公钥,然后对公钥进行一个处理,生成一个公钥对象,然后进行一个操作。
在往下是一个公钥加密。
一个私钥解密。
这个逻辑其实方法里面都差不多,我们最主要重点关注的是下面这几个方法。
分析RSA类
generateKeyPair:生成密钥对
getPublic:获取公钥
getPrivate:获取私钥
PKCS8EncodedKeySpec:根据定制的编码密钥创建一个新的PKCS8EncodedKeySpec
KeyFactory:密钥工厂用于将密钥(Key类型的不透明加密密钥)
转换成密钥规范(底层密钥材料的透明表示)
generarePublic:根据提供的密钥规范(密钥材料)生成公钥对象
以上呢就是小编昨天学习到的RSA加密算法,分享给大家,希望对大家有所帮助。
- 上一篇: RSA加密/解密 rsa加密解密教程
- 下一篇: 数据中台实践之数据安全,轻松实现API加密(1)
猜你喜欢
- 2025-07-01 Java 如何加载带密码的 PCKS8 PEM 私钥
- 2025-07-01 犯罪啊 2.8万台路由器居然共用一把RSA密钥
- 2025-07-01 HTTPS全站加密时代 网宿推证书优选方案
- 2025-07-01 如何在 Windows 11 或 10 上使用 Winget 安装 OpenSSH
- 2025-07-01 网络篇:朋友面试之https认证加密过程
- 2025-07-01 如何安全管理SSH密钥以防止服务器被入侵
- 2025-07-01 在 Windows 10 上实现免密码 SSH 登录
- 2025-07-01 HTTPS的加密过程是怎样的?(https加密和解密的过程)
- 2025-07-01 Linux系统实现SSH安全免密登录的设置与管理
- 2025-07-01 Burpsuit插件开发之RSA加解密(burpsuite安装插件)
你 发表评论:
欢迎- 592℃几个Oracle空值处理函数 oracle处理null值的函数
- 585℃Oracle分析函数之Lag和Lead()使用
- 573℃0497-如何将Kerberos的CDH6.1从Oracle JDK 1.8迁移至OpenJDK 1.8
- 570℃Oracle数据库的单、多行函数 oracle执行多个sql语句
- 566℃Oracle 12c PDB迁移(一) oracle迁移到oceanbase
- 558℃【数据统计分析】详解Oracle分组函数之CUBE
- 543℃最佳实践 | 提效 47 倍,制造业生产 Oracle 迁移替换
- 539℃Oracle有哪些常见的函数? oracle中常用的函数
- 最近发表
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端react (48)
- 前端aes加密 (58)
- 前端脚手架 (56)
- 前端md5加密 (54)
- 前端路由 (61)
- 前端数组 (73)
- 前端js面试题 (50)
- 前端定时器 (59)
- 前端懒加载 (49)
- Oracle RAC (73)
- oracle恢复 (76)
- oracle 删除表 (48)
- oracle 用户名 (74)
- oracle 工具 (55)
- oracle 内存 (50)
- oracle 导出表 (57)
- oracle 中文 (51)
- oracle的函数 (57)
- 前端调试 (52)
- 前端登录页面 (48)
本文暂时没有评论,来添加一个吧(●'◡'●)