文章目录

  • 三种算法的概念解释
  • 三种算法各自的优略
  • 三种加密算法的对比
  • 三种算法的应用场景

三种算法的概念解释

  • AES: 最为常见的一种对称加密算法,对称式加密就是加密和解密使用同一个密钥。信息接收双方都需事先知道密匙和加解密算法且其密匙是相同的,之后便是对数据进行加解密了。对称加密算法用来对敏感数据等信息进行加密。

  • RSA: 是最常见的一种非对称加密算法,非对称式加密就是加密和解密所使用的不是同一个密钥,通常有两个密钥,称为"公钥"和"私钥",它们两个必需配对使用,否则不能打开加密文件。

  • IBE: 基于身份标识的密码系统,是一种非对称的公钥密码体系。

    对于传统的公钥密码体系,由于公钥是一串没有意义的随机数,所以为了确定公钥的拥有者,防止恶意用户欺骗加密者的行为,引入了一个可信第三方(有点类似于证书里面的CA)。第三方维护一个大的表格,表格中存放各个用户的身份,以及其所对应的公钥信息。这种方法虽然很好的解决了公钥区分的问题,但是当用户数量过多,这个表格的维护就变得很困难。

    那么,有没有一种可能,可以让公钥就是用户的身份呢?在这个思考下,基于身份的密码体系就应运而生。

三种算法各自的优略

  • AES

    • 优点:
    1. 运算速度快,在有反馈模式、无反馈模式的软硬件中,都表现出非常好的性能。
    2. 对内存的需求非常低,适合于受限环境。
    3. AES 是一个分组迭代密码, 分组长度和密钥长度设计灵活。
    4. AES 标准支持可变分组长度,分组长度可设定为32 比特的任意倍数,最小值为128 比特,最大值为256 比特。
    • 缺点:
    1. 需要进行密钥的协商和传输,存在密钥泄漏的问题
  • RSA

    • 优点:
    1. 非对称加密算法使用公钥加密,私钥解密,私钥签名,公钥验签。安全性比对称加密高。
    2. 非对称加密使用两个密匙,服务端和客户端密匙不一样,私钥放在服务端,不用进行密钥交换,泄漏可能性较低,安全性高。
    • 缺点:
    1. 需要大数的乘幂求模等算法,运行速度慢。只适合对少量数据进行加密。
  • IBE
    作为非对称加密算法,IBE具有上述非对称加密的优缺点,此外,它还具有以下优点。

    1. 更高效的公钥更新。
    2. 更高效的公钥完整性/认证性保护。

三种加密算法的对比

AES加密速度快,但密钥协商和传输过程使安全性降低。RSA安全性高,但是运行较AES更慢,证书和签名认证有瑕疵。IBE在RSA的基础上,对其签名,认证进行了优化,减少了其认证方压力。

三种算法的应用场景

大量数据加密建议采用对称加密算法,提高加解密速度;小量的机密数据,可以采用非对称加密算法。在实际的操作过程中,我们通常采用的方式是:采用非对称加密算法管理对称算法的密钥,然后用对称加密算法加密数据,这样我们就集成了两类加密算法的优点,既实现了加密速度快的优点,又实现了安全方便管理密钥的优点。

参考文章:
基于身份的密码体制是什么?
RSA与AES的区别

AES,RSA,IBE三种算法的比较相关推荐

  1. 爱因斯坦谜题解答(三种算法比较)

    爱因斯坦谜题:     在一条街上有颜色互不相同的五栋房子,不同国籍的人分别住在这五栋房子力,每人抽不同品牌的香烟,喝不同的饮料,养不同的宠物.已知如下情况: 1.  英国人住红色房子里. 2.  瑞 ...

  2. EL之DTRFGBT:基于三种算法(DT、RF、GBT)对泰坦尼克号乘客数据集进行二分类(是否获救)预测并对比各自性能

    EL之DT&RF&GBT:基于三种算法(DT.RF.GBT)对泰坦尼克号乘客数据集进行二分类(是否获救)预测并对比各自性能 目录 输出结果 ​设计思路 核心代码 输出结果 设计思路 核 ...

  3. java 求最大公因数_求最大公约数的三种算法(java实现)

    三种算法: //欧几里得算法(辗转相除): public static int gcd(int m,int n) { if(m int k=m; m=n; n=k; } //if(m%n!=0) { ...

  4. SQL Server 索引基础知识(10)----Join 时的三种算法简介

    我们书写查询语句的时候,Join 参数之前可以是下面三个 { LOOP | MERGE | HASH } JOIN  . 如果不使用,则系统自己分析那种方式快,使用那种方式. 这其实是SQL Serv ...

  5. c语言求最小公倍数和最大公约数三种算法

    C语言求最小公倍数和最大公约数三种算法(经典) 求最小公倍数算法: 最小公倍数=两整数的乘积÷最大公约数 求最大公约数算法: (1)辗转相除法 有两整数a和b: ① a%b得余数c ② 若c=0,则b ...

  6. 三种算法求两个正整数的最大公约数和最小公倍数;求三个数的最大公约数和最小公倍数

    第二次作业 题目:求两个正整数的最大公约数和最小公倍数. 基本要求:1.程序风格良好(使用自定义注释模板),两种以上算法解决最大公约数问题,提供友好的输入输出. 提高要求:1.三种以上算法解决两个正整 ...

  7. C语言求最小公倍数和最大公约数三种算法(经典)

    C语言求最小公倍数和最大公约数三种算法(经典) 最小公倍数:数论中的一种概念,两个整数公有的倍数成为他们的公倍数,其中一个最小的公倍数是他们的最小公倍数,同样地,若干个整数公有的倍数中最小的正整数称为 ...

  8. 【老生谈算法】matlab实现EKF UKF PF三种算法对比源码——EKF UKF PF算法

    EKF UKF PF三种算法对比 matlab程序 1.文档下载: 本算法已经整理成文档如下,有需要的朋友可以点击进行下载 序号 文档(点击下载) 本项目文档 [老生谈算法]EKF-UKF-PF三种算 ...

  9. 冒泡排序,插入排序,选择排序三种算法的优劣

    https://www.jianshu.com/p/9f724c880124 最近听了王争老师的数据结构与算法之美,大有获益,特写此博客与大家分享. 排序算法太多了,但大体可以归结于三类,冒泡排序,插 ...

最新文章

  1. (转)I 帧和 IDR 帧的区别
  2. linux下基本命令
  3. python语言及其应用-python语言及其应用
  4. Laravel 事件侦听的几个方法 [Trait, Model boot(), Observer Class]
  5. OpenCV使用VideoCapture和VideoWriter的实例(附完整代码)
  6. []==![]为true
  7. linux动态路由rip配置,配置 动态路由协议OSPF和RIPv2实现全网互通^
  8. UNIX环境编程学习笔记(19)——进程管理之fork 函数的深入学习
  9. Android WebView和JavaScript交互
  10. android /system,android:fitSystemWindows详解
  11. thrift的lua实现
  12. Linux命令解释之grep
  13. 看朋友日志发现的一个ios下block相关的内存管理问题,非常奇怪,请大家帮忙一起来回答!...
  14. 监控-Kafka Manager
  15. ffmpeg系列之两种视频解码方式
  16. Fastjson源码阅读:缺陷静态检查(上)
  17. 99%的人都能看懂的MQ补偿机制
  18. 将RDL报表转换成RDLC报表的函数
  19. Wifi流程机制分析:WiFi的启动
  20. 动态照片怎么制作?这三款软件推荐给你

热门文章

  1. 【linux-command】Chrome安装linux-command插件
  2. S32K系列--J-Link解锁
  3. Jsp+Servlet+JavaBean实现最基本的注册登陆功能
  4. 应用计算机专业硕士,计算机应用技术专业(学术型硕士研究生招生专业)
  5. 《叶问》第1期--知数堂技术小贴士
  6. 1小时完成别人5小时才能完成的事--信息爆炸时代提高效能
  7. 中国HPGe探测器市场深度研究分析报告
  8. 安卓版炉石修改服务器,炉石传说安卓/iOS开启流畅60帧的方法 60帧模式修改教程...
  9. matlab绘制3维椭球,matlab拟合三维椭球
  10. php程序员自介绍,PHP程序员面试的自我介绍范文