AES SHA-1 SM3 MD5
输入:128bit 的消息分组
输出:128bit 的密文分组
密钥长度及圈数
128 10
192 12
256 14
消息 与 密钥
addroundkey//加入轮密钥 每一个字节与轮密钥的相应字节进行异或运算
subbytes// 字替代 经过s盒,即对每一个字节进行替换。非线性部件。16个字节採用同样的s-盒
shiftrow// 行变换 每一行按字节循环以为。第一行移动0位,第二行<<<1,.....第四行《《3
mixcolumn// 列混合
addroundkey
!!!!!!!!!!上面为循环进行!!!!!!!!!!!!!!
subbutes
shiftrow
addroundkey
AES加密数据块分组长度必须为128比特。密钥长度能够是128比特、192比特、256比特中的随意一个(假设数据块及密钥长度不足时,会补齐)。
AES加密有非常多轮的反复和变换。大致步骤如
下:1、密钥扩展(KeyExpansion),2、初始轮(Initial Round),3、反复轮(Rounds)。每一轮又包含:SubBytes、ShiftRows、MixColumns、AddRoundKey,4、终于轮(Final Round)
。终于轮没有MixColumns。
MD5算法
MD5以512位分组来处理输入的信息。且每一分组又被划分为16个32位子分组,经过了一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组级联后将生成一个128位散列值。
SHA-1
SHA (Secure Hash Algorithm。译作安全散列算法) 是美国国家安全局 (NSA) 设计。美国国家标准与技术研究院(NIST) 公布的一系列password散列函数。
SHA-0 和 SHA-1 会从一个最大 2^64 位元的讯息中产生一串 160 位元的摘要
SM3算法:
国家password管理局编制的商用算法,用于password应用中的数字签名和验证、消息认证码的生成与验证以及随机数的生成。可满足多种password应用的安全需求。对长度为l(l< 264) 比特的消息m,SM3
杂凑算法经过填充和迭代压缩,生成杂凑值。杂凑值长度为256比特。
AES SHA-1 SM3 MD5的更多相关文章
- DES,AeS加解密,MD5,SHA加密
1.DES一共就有4个参数参与运作:明文.密文.密钥.向量.其中这4者的关系可以理解为: 密文=明文+密钥+向量: 明文=密文-密钥-向量: 为什么要向量这个参数呢?因为如果有一篇文章,有几个词重复, ...
- Java Base64、AES、SHA1、MD5加密算法
package com.example.decript; import java.io.UnsupportedEncodingException; import java.security.Inval ...
- Java Base64、AES、SHA1、MD5加密算法(转载)
package com.example.decript; import java.io.UnsupportedEncodingException; import java.security.Inval ...
- [转] AES,SHA1,DES,RSA,MD5区别
AES:更快,兼容设备,安全级别高: SHA1:公钥后处理回传 DES:本地数据,安全级别低 RSA:非对称加密,有公钥和私钥 MD5:防篡改 相关: 公开密钥加密(英语:public-key cry ...
- AES,SHA1,DES,RSA,MD5区别
AES:更快,兼容设备,安全级别高: SHA1:公钥后处理回传 DES:本地数据,安全级别低 RSA:非对称加密,有公钥和私钥 MD5:防篡改 相关: 公开密钥加密(英语:public-key cry ...
- Java计算文件的SHA码和MD5码
可参考:http://blog.csdn.net/hudashi/article/details/8394158 /** * 计算文件的MD5码 * @param file * @return */ ...
- c# aes,des,md5加密等解密算法
一:可逆加密,即是能加密也能解密 对称可逆加密:加密后能解密回原文,加密key和解密key是一个 加密算法都是公开的,密钥是保密的, 即使拿到密文 你是推算不了密钥 也推算不了原文 加密解密的速度快, ...
- 浅析DES、AES、RSA、MD5加密算法及其应用场景
对称加密算法DES 算法:一种典型的块加密方法,将固定长度的明文通过一系列复杂的操作变成同样长度的密文,块的长度为64位.同时,DES 使用的密钥来自定义变换过程,因此算法认为只有持有加密所用的密钥的 ...
- 常用加密解密算法【RSA、AES、DES、MD5】介绍和使用
内容不转载了,加上链接https://blog.csdn.net/u013565368/article/details/53081195?_t=t
随机推荐
- 在Tableau中自定义版块地图 (Polygon)
在Tableau的地图报表中有一个‘Filed Map’的类型,可以根据版块来显示数据. 但实际应用中Tableau固有的版块划分可能不是我们想要的,下面介绍如何自定义版块并且用作数据分析. 自定义版 ...
- floyed算法
Floyed算法(实际是动态规划问题) 问题:权值矩阵matrix[i][j]表示i到j的距离,如果没有路径则为无穷 求出权值矩阵中任意两点间的最短距离 分析:对于每一对定点u,v看是否存在一个点w使 ...
- ThinkPHP第十一天(关联模型使用,独立分组配置,MySQL concat用法)
1.关联模型的使用 定义方式:新建一个类文件UserRelationModel.class.php Class UserRelationModel extends RelationModel{ pro ...
- 微信开放平台 获取 component_verify_ticket
<?php /** * @author zhaozhuobin * @date:2016-06=07 * */ namespace common\components;use DOMDocume ...
- Linux下Tomcat catalina.out自动归档,以及logrotate 配置详解
Linux下Tomcat catalina.out自动归档 如果 catalina.out 日志达到 2GB 大小的时候,Tomcat 因为缓存问题,便没有办法继续输出日志了. 为了避免这种情况,你 ...
- [LeetCode]题解(python):024-Swap Nodes in Pairs
题目来源: https://leetcode.com/problems/swap-nodes-in-pairs/ 题意分析: 给定一个链表,每两个相邻节点就行交换.比如1->2->3-&g ...
- (Problem 22)Names scores
Using names.txt (right click and 'Save Link/Target As...'), a 46K text file containing over five-tho ...
- session 共享
目前大多数大型网站的服务器都采用了分布式的部署方式,但是session是在服务器端保存的,如果用户跳转到其他服务器的话,session就会丢失,于是就有了分布式系统的session共享问题. sess ...
- java大作业 KShinglingAlgorithm
wiki上关于KShingling Algorithm(w-shingling)的说明: http://en.wikipedia.org/wiki/W-shingling 摘要: In natural ...
- 用 PS 调整服务器时间
用 PS 调整服务器时间 Powershell 有一个命令用来调整计算机的时间, Set-Date -Adjust,但是,只能调整本地时间,不能调整远程的计算机时间. function AdjustD ...