Java代码实现

import java.security.SecureRandom;

import javax.crypto.Cipher;

import javax.crypto.KeyGenerator;

import javax.crypto.SecretKey;

public class AesEntriptor {

private Cipher encryptCipher; // 负责加密工作

private Cipher decryptCipher; // 负责解密工作

public AesEntriptor(String rules) throws Exception {

// 1.实例化AES算法密钥生成器

KeyGenerator keygen = KeyGenerator.getInstance("AES");

// 2.根据传入的字节数组,生成一个128位的随机源

keygen.init(128, new SecureRandom(rules.getBytes()));

// 3.生成密钥

SecretKey secretKey = keygen.generateKey();

// 4.生成Cipher对象,指定其支持AES算法

encryptCipher = Cipher.getInstance("AES");

decryptCipher = Cipher.getInstance("AES");

// 5.初始化加密对象及解密对象

encryptCipher.init(Cipher.ENCRYPT_MODE, secretKey);

decryptCipher.init(Cipher.DECRYPT_MODE, secretKey);

}

public byte[] encrypt(byte[] source) throws Exception {

return encryptCipher.doFinal(source);

}

public byte[] decrypt(byte[] source) throws Exception {

return decryptCipher.doFinal(source);

}

public static void main(String[] args) throws Exception {

AesEntriptor aesEntriptor = new AesEntriptor("123456");

byte[] encrypt = aesEntriptor.encrypt("Napolean".getBytes());

byte[] decrypt = aesEntriptor.decrypt(encrypt);

System.out.println(new String(decrypt));

}

}

java aes对称加密算法_Java实现AES对称加密算法相关推荐

  1. java 可逆的加密算法_java实现AES可逆加密算法

    package com.hdu.encode; import javax.crypto.Cipher; import javax.crypto.spec.IvParameterSpec; import ...

  2. java 生成对称密钥_Java中创建对称密钥的代码

    1 加密 public static byte[] jiami() throws Exception { //密钥生成器 KeyGenerator key=KeyGenerator.getInstan ...

  3. java的rsa加密_java实现的RSA加密算法详解

    本文实例讲述了java实现的RSA加密算法.分享给大家供大家参考,具体如下: 一.什么是非对称加密 1.加密的密钥与加密的密钥不相同,这样的加密算法称之为非对称加密 2.密钥分为:公钥,私钥 公钥:可 ...

  4. java md5加密长度_java中使用MD5加密算法进行加密

    java中使用MD5加密算法进行加密以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在各种应用系统的开发中 经常需要存储 ...

  5. Java 加密解密 对称加密算法 非对称加密算法 MD5 BASE64 AES RSA

    [最简单的加密] 1.简单的概念 明文:加密前的信息 密文:机密后的信息 算法:加密或解密的算法 密钥:算法使用的钥匙(读作miyao,正确应该是miyue,但是大家都读miyao) 2.简单的例子 ...

  6. Java实现密码学工具,集成了对称加密算法DES,AES,IDEA,公开加密算法RSA,ECC,散列算法MD5,SHA1,CRC32,以及RSA,DSA,ECDSA数字签名验证示例。

    密码学综合工具 前言 git网址 项目结构 项目预览 String与byte[]互转 通过`String`类转换 通过`Base64`互转[jdk-8] 前言 我们网络信息安全的实验...要我们找各种 ...

  7. Java加密算法—对称加密(DES、AES)

    目录 1.概述 2.加密模式 2.1 ECB 2.2 CBC 3.填充模式 4.对称加密.解密实现 1.概述 对称加密就是采用单钥密码系统的加密方法,同一个密钥可以同时用作信息的加密和解密,也称为单密 ...

  8. java对称加密(DES/DESESE/AES)的简单使用

    主类: /*** Created by cuboo on 2016/10/14.*/ public class Main {public static void main(String agrs[]) ...

  9. JS 与 JAVA 跨语言实现 RSA 和 AES加密算法

    简介: 开发中为了数据的安全性使用加密算法对数据进行加密是一种很常见的情况,但就一种语言来说,直接使用提供的相应的库进行少许封装是一件很容易的事.但是在一些情况下我们可能需要跨语言来实现,比如前后端分 ...

最新文章

  1. Spring 集成dubbo 找不到dubbo.xsd 文件的问题的想法概述
  2. android第一天
  3. 推荐一个非常火爆的电商开源项目!
  4. 关于CheckBoxList和RadioButtonList的几个问题
  5. ResNext(2017)解读
  6. activemq部署安装
  7. RabbitMq(十五)消息的追踪查看配置及查看方法
  8. Ubuntu 开发者工具中心 Ubuntu Make
  9. JAVA 1.7并发之LinkedTransferQueue原理理解
  10. 【代码规范】Google C++开源风格指南
  11. 中国省份数据字典表---自用
  12. stagefright概述
  13. Java课程设计- 记事本代码
  14. 西门子G120变频器常用参数(自己总结的)
  15. 农夫山泉赴港上市,迷之操作暗藏“算计”
  16. 读取assets目录下的文件详细介绍
  17. 【读书笔记】你离考研成功就差这本书
  18. 【踩坑记录】priority_queue 第三个模板参数和sort 的第三个形参的区别;仿函数、自定义排序函数、lambda 函数分别传入;传入类型和对象的区别;
  19. 前端开发规范——Vue
  20. 任正非:宁赔10亿,也要辞退7000员工!华为卸磨杀驴?却获网友点赞!

热门文章

  1. 我们的空间是圆的么——基于Poicare的宇宙模型浅谈
  2. 技术文摘5 发展 礼品
  3. Linux CFS调度器:原理和实现
  4. python交易策略源码_经典的股票量化交易策略(含源码)
  5. 骨牌铺方格java_[ACM_HDU_2046]骨牌铺方格 | 学步园
  6. 少马爷改编《大保镖》的一点体会【ZZ】
  7. Js实现轮盘抽奖功能,一招帮你解决选择困难症
  8. sql%rowcount
  9. Failed to execute goal org.apache.maven.plugins:maven-resources-plugin:3.1.0:resources (default-reso
  10. 六度分离 ( floyd )