首页 > 编程语言 >DES、3DES、AES、RSA、MD5、sha1 加密算法总结

DES、3DES、AES、RSA、MD5、sha1 加密算法总结

时间:2022-10-28 14:33:33浏览次数:61  
标签:3DES AES 加密 DES 密钥 散列 加密算法 MD5


DES、3DES、AES、RSA、MD5、sha1 加密算法总结
一、简介
DES:全称为Data Encryption Standard,即数据加密标准,是一种使用密钥加密的块算法;
3DES:(即Triple DES)是DES向AES过渡的加密算法,它使用3条56位的密钥对数据进行三次加密。3DES更为安全。
AES:高级加密标准(英语:Advanced Encryption Standard,缩写:AES),在密码学中又称Rijndael加密法,这个标准用来替代原先的DES;
RSA:公钥加密算法是1977年由罗纳德·李维斯特(Ron Rivest)、阿迪·萨莫尔(Adi Shamir)和伦纳德·阿德曼(Leonard Adleman)一起提出的。
MD5:Message Digest Algorithm MD5(消息摘要算法第五版)为计算机安全领域广泛使用的一种散列函数,用以提供消息的完整性保护。
SHA1:即安全哈希算法(Secure Hash Algorithm),主要适用于数字签名标准,SHA1会产生一个160位的消息摘要;




二、可解密
1.对称加密:DES、3DES、AES
采用单钥密码系统的加密方法,同一个密钥可以同时用作信息的加密和解密,这种加密方法称为对称加密,也称为单密钥加密。
美国数据加密标准(DES)是对称密码算法,就是加密密钥能够从解密密钥中推算出来,反过来也成立。密钥较短,加密处理简单,加解密速度快,适用于加密大量数据的场合。
RSA是非对称算法,加密密钥和解密密钥是不一样的,或者说不能由其中一个密钥推导出另一个密钥。密钥尺寸大,加解密速度慢,一般用来加密少量数据,比如DES的密钥。


2.非对称加密:RSA
非对称加密为数据的加密与解密提供了一个非常安全的方法,它使用了一对密钥,公钥(public key)和私钥(private key)。私钥只能由一方安全保管,不能外泄,而公钥则可以发给任何请求它的人。非对称加密使用这对密钥中的一个进行加密,而解密则需要另一个密钥。


三、不可解密
1.不可逆加密算法:MD5、SHA1
SHA1 和 MD5 是搜索散列算法,将任意大小的数据映射到一个较小的、固定长度的唯一值。加密性强的散列一定是不可逆的,这就意味着通过散列结果,无法推出任何部分的原始信息。任何输入信息的变化,哪怕仅一位,都将导致散列结果的明显变化,这称之为雪崩效应。散列还应该是防冲突的,即找不出具有相同散列结果的两条信息。具有这些特性的散列结果就可以用于验证信息是否被修改。MD5 比 SHA1 大约快 33%。

标签:3DES,AES,加密,DES,密钥,散列,加密算法,MD5
From: https://blog.51cto.com/u_4518216/5804862

相关文章

  • 找回消失的密钥 --- DFA分析白盒AES算法
    一、目标李老板:什么叫白盒AES算法?奋飞:将密钥进行白盒化处理,融入到整个加密过程中,使密钥无法跟踪还原,保障密钥安全。简单的说,就是你可以明明白白的调试整个算法过程,怎么看都......
  • openssl 全面支持国密SM2/SM3/SM4加密算法
    sm4展示代码/**文件名:https://github.com/liuqun/openssl-sm4-demo/blob/cmake/src/main.c*/#include<stddef.h>#include<stdio.h>#include<stdlib.h>#inclu......
  • 接口测试加密算法理解【多测师】
    问题:1.接口中有数据要进行加密,如何处理?答:(1)写个函数或者方法,把要加密的参数使用这个函数过滤一遍,等于就是说把数据丢进去,加密了之后,再通过这个加密好的数据传输过去就可以......
  • AES 加解密
    依赖<dependency><groupId>commons-codec</groupId><artifactId>commons-codec</artifactId></dependency>代码importorg.apa......
  • MD5 哈希加密算法 - C++ 实现
    MD5加密算法-C++实现写在前头:还在学习中!整个文档写的很匆忙,肯定还有很多不周到的地方.欢迎在评论中提出你的宝贵意见!!算法背景BackgroundMD5消息摘要算法......
  • 对称加密算法和非对称加密算法说明
    加密算法和协议对称加密:非对称加密单向加密:哈希(hash)加密认证协议1.对称加密:加密和解密:加密和解密使用的是同一个密钥加密方式:是通过将原始数据分割......
  • HTTPS涉及的加密算法讲解
    前言从2015年左右开始,Google、Baidu、Facebook等互联网巨头,不谋而合地开始大力推行HTTPS,国内外的大型互联网公司很多也都已经启用了全站HTTPS为鼓励全球网站的HTTPS......
  • vue+java AES 加密 解密
    后端:导入aes依赖<!--aes加密工具--><dependency><groupId>commons-codec</groupId><artifactId>commons-codec</artifactId><version>1.15</versi......
  • 加密算法总结
    1.加密算法的分类根本不考虑解密问题;私用密钥加密技术:对称式加密(SymmetricKeyEncryption):对称式加密方式对加密和解密使用相同的密钥。通常,这种加密方式在应用中难以实施,......
  • Jmeter使用beanshell加密,调用AES代码,生成jar包
    工作中需要对接口进行AES加密,找开发要来了加密的代码(如下),记录下具体的使用方法:新建一个AESUtil包,在里面新建一个类(建议类的名字也为AESUtil)。把下面的代码复制进去,注意,......