7.java 加解密技术系列之 AES
java 加解密技术系列之 AES
- 序
- 概念
- 原理
- 应用
- 代码实现
- 结束语
序
概念
全称为“Advanced Encryption Standard”,中文名“高级加密标准”,在密码学中又称 Rijndael
加密法,是美国联邦政府采用的一种区块加密标准。AES 加密算法作为新一代的数据加密标准汇聚了强安全性、高性能、高效率、易用和灵活等优点。AES
设计有三个密钥长度:128,192,256 位。相对而言,AES 的 128 密钥比
DES 的 56 密钥强了 1021 倍。
原理
加密算法主要包括三个方面:轮变化、圈数和密钥扩展。AES 是分组密钥,算法输入 128 位数据,密钥长度也是 128 位。用 Nr
表示对一个数据分组加密的轮数。每一轮都需要一个与输入分组具有相同长度的扩展密钥 Expandedkey(i) 的参与。由于外部输入的加密密钥 K
长度有限,所以在算法中要用一个密钥扩展程序 (Keyexpansion)
把外部密钥 K 扩展成更长的比特串,以生成各轮的加密和解密密钥。
- AES 算法利用外部输入密钥 K (密钥串的字数为Nk),通过密钥的扩展程序得到共计 4(Nr+1) 字的扩展密钥。它涉及如下三个模块:
应用
代码实现
结束语
到对称加密,在开发中是经常用到的加密算法,主要是涉及到的一些敏感数据,比如,个人信息、家庭住址、手机号码、密保问题、密保答案等等。至于密码什么
的,一般都不怎么用对称加密算法(当然也有用的),密码这一类的信息,可以考虑用单向加密算法,比如,MD5、或者 SHA
等,考虑到安全性,可以外加一点 salt,当然,这些在开发的时候就是需要考虑的事了,这里就不细说了。
7.java 加解密技术系列之 AES的更多相关文章
- Java 加解密技术系列文章
Java 加解密技术系列之 总结 Java 加解密技术系列之 DH Java 加解密技术系列之 RSA Java 加解密技术系列之 PBE Java 加解密技术系列之 AES Java 加解密技术系列 ...
- 8.Java 加解密技术系列之 PBE
Java 加解密技术系列之 PBE 序 概念 原理 代码实现 结束语 序 前 边的几篇文章,已经讲了几个对称加密的算法了,今天这篇文章再介绍最后一种对称加密算法 — — PBE,这种加密算法,对我的认 ...
- 6. Java 加解密技术系列之 3DES
Java 加解密技术系列之 3DES 序 背景 概念 原理 代码实现 结束语 序 上一篇文章讲的是对称加密算法 — — DES,这篇文章打算在 DES 的基础上,继续多讲一点,也就是 3 重 DES ...
- 5.Java 加解密技术系列之 DES
Java 加解密技术系列之 DES 序 背景 概念 基本原理 主要流程 分组模式 代码实现 结束语 序 前 几篇文章讲的都是单向加密算法,其中涉及到了 BASE64.MD5.SHA.HMAC 等几个比 ...
- 11.Java 加解密技术系列之 总结
Java 加解密技术系列之 总结 序 背景 分类 常用算法 原理 关于代码 结束语 序 上一篇文章中简单的介绍了第二种非对称加密算法 — — DH,这种算法也经常被叫做密钥交换协议,它主要是针对密钥的 ...
- 10.Java 加解密技术系列之 DH
Java 加解密技术系列之 DH 序 概念 原理 代码实现 结果 结束语 序 上一篇文章中简单的介绍了一种非对称加密算法 — — RSA,今天这篇文章,继续介绍另一种非对称加密算法 — — DH.当然 ...
- 9.Java 加解密技术系列之 RSA
Java 加解密技术系列之 RSA 序 概念 工作流程 RSA 代码实现 加解密结果 结束语 序 距 离上一次写博客感觉已经很长时间了,先吐槽一下,这个月以来,公司一直在加班,又是发版.上线,又是新项 ...
- 4.Java 加解密技术系列之 HMAC
Java 加解密技术系列之 HMAC 序 背景 正文 代码 结束语 序 上一篇文章中简单的介绍了第二种单向加密算法 — —SHA,同时也给出了 SHA-1 的 Java 代码.有这方面需求的童鞋可以去 ...
- 3.Java 加解密技术系列之 SHA
Java 加解密技术系列之 SHA 序 背景 正文 SHA-1 与 MD5 的比较 代码实现 结束语 序 上一篇文章中介绍了基本的单向加密算法 — — MD5,也大致的说了说它实现的原理.这篇文章继续 ...
随机推荐
- ruby错误
ActiveRecord::StatementInvalid in WelcomeController#index ActiveRecord::StatementInvalid in WelcomeC ...
- Web API 之SelfHost与OwinSelfHots加载外部程序
下面就一些web api的一些基础内容进行阐述,然后就web api宿主承载中的实际业务问题进行解决 HttpController HttpController的激活是由处于消息处理管 ...
- System.map详解
system.map内容格式为:线性地址类型符号 具体内容如下: 00100000 A phys_startup_32 c0100000 T startup_32 c0100000 A _text ...
- poj2566尺取变形
Signals of most probably extra-terrestrial origin have been received and digitalized by The Aeronaut ...
- HTML5的article和section的区别
内容区块是指将HTML页面按逻辑分割后的单位.对于页面网站来说,导航菜单.文章正文.文章的评论等每一个部分都可称为内容区块. article元素 article元素代表文档.页面或 ...
- Java的CLASSPATH
在JDK安装好后,要设置两个变量Path和Classpath,Path是操作系统要求的,这里不谈了,而classpath是Java虚拟机要求的这里做一个详细的解释. 一.classpath的作用 == ...
- PRML读书笔记——机器学习导论
什么是模式识别(Pattern Recognition)? 按照Bishop的定义,模式识别就是用机器学习的算法从数据中挖掘出有用的pattern. 人们很早就开始学习如何从大量的数据中发现隐藏在背后 ...
- 通过js来设置cookie和读取cookie,实现登陆时记住密码的功能
function setCookie(){ //设置cookie var loginCode = $("#login_code").val(); //获取用户名信息 var pwd ...
- chkconfig命令(管理开机自启)
提供了一个简单的命令行工具来维护/etc/rc[0-6].d目录层次结构通过减轻系统管理员的直接操作任务,在这些目录中的许多符号链接.仅是简单的改变了符号链接,而非立即启动或禁止一个服务. 语法: c ...
- vue视频学习笔记01
video 1 vue:读音: v-u-eview vue到底是什么?一个mvvm框架(库).和angular类似比较容易上手.小巧mvc:mvpmvvmmv*mvx官网:http://cn.vuej ...