主类:

/*** Created by cuboo on 2016/10/14.*/
public class Main {public static void main(String agrs[]) throws Exception {//String keyType = "DES"; DES的使用//int keysize = 56;//DESede加密的使用// String keyType = "DESede";//int keysize = 168;//112/168//AES的加密String keyType = "AES";int keysize = 128;//192/256byte[] data = "abcdefg".getBytes();byte[] key = DEScode.InitKey(keyType,keysize);byte[] encryptDate = DEScode.encrypt(key,keyType,data);byte[] decryptData = DEScode.decrypt(key,keyType,encryptDate);System.out.println(bytesToHexString(key));System.out.println(bytesToHexString(encryptDate));System.out.println(new String(decryptData));}public static String bytesToHexString(byte[] data){StringBuilder strb = new StringBuilder();for (int i = 0; i < data.length; i++) {int s = data[i] & 0xff;String str = Integer.toHexString(s);if (str.length() < 2){strb.append(0);}else {strb.append(str);}}return strb.toString();}}

方法类:

import javax.crypto.*;
import javax.crypto.spec.SecretKeySpec;
import java.security.InvalidKeyException;
import java.security.NoSuchAlgorithmException;/*** Created by cuboo on 2016/10/14.*/
public class DEScode {/**生成秘钥*/public static byte[] InitKey(String keyType,int keysize) throws NoSuchAlgorithmException {KeyGenerator keyGenerator = KeyGenerator.getInstance(keyType);keyGenerator.init(keysize);SecretKey secretKey = keyGenerator.generateKey();return  secretKey.getEncoded();}/**加密*/public static byte[] encrypt(byte[] key,String keyType,byte[] data)throws NoSuchPaddingException, NoSuchAlgorithmException,InvalidKeyException, BadPaddingException, IllegalBlockSizeException {SecretKey secretKey = new SecretKeySpec(key,keyType);Cipher cipher = Cipher.getInstance(keyType);cipher.init(Cipher.ENCRYPT_MODE,secretKey);return cipher.doFinal(data);}/**解密*/public static byte[] decrypt(byte[] key,String keyType,byte[] data)throws NoSuchPaddingException, NoSuchAlgorithmException,InvalidKeyException, BadPaddingException, IllegalBlockSizeException {SecretKey secretKey = new SecretKeySpec(key,keyType);Cipher cipher = Cipher.getInstance(keyType);cipher.init(Cipher.DECRYPT_MODE,secretKey);return cipher.doFinal(data);}
}

java对称加密(DES/DESESE/AES)的简单使用相关推荐

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

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

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

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

  3. 【加密】对称加密DES和非对称加密AES、数字签名|非对称加密--公钥和私钥的区别

    目录 对称加密DES和非对称加密AES.数字签名 对称加密 1.1 定义 1.2 优缺点 1.3 常用对称加密算法 非对称加密( Asymmetric Cryptography ) 非对称加密(现代加 ...

  4. java对称加密与非对称加密

    java对称加密与非对称加密 加密方式大致分为两种,对称加密和非对称加密.对称加密是最快速.最简单的一种加密方式,加密(encryption)与解密(decryption)用的是同样的密钥(secre ...

  5. java 对称加密 教程_Java 对称加密算法DES 的使用教程

    前面一篇我写了对称加密算法IDEA的使用教程<Java 对称加密算法IDEA 的使用教程>.今天我们来学习另外一个对称加密算法DES.DES算法使用相对广泛一些,一些老的项目中可能会遇到. ...

  6. 对称加密DES、3DES、AES的计算过程

    目录 一.流密码与分组密码 二.DES计算过程 密钥操作 明文操作 1)明文编排 2)16轮迭代 三.3DES 四.AES(也叫RIJNDAEL算法) State 密钥编排 循环4​​​​​​​轮  ...

  7. java对称加密AES加入偏移量

    直接上demo package com.bee.ms.market.utils;import lombok.extern.slf4j.Slf4j;import javax.crypto.Cipher; ...

  8. java对称加密,java异或加密,Java高性能对称加密

    学过网络安全的可能知道加密可分为对称加密与非对称加密,比如大名鼎鼎的ssh.非对称加密有RSA,sm9等,对称加密有DES,sm4算法等,但是计算机基础比较扎实的可能知道一个值a与值b异或操作2次后可 ...

  9. php rc4对称加密函数,PHP实现的简单对称加密与解密方法实例小结

    本文实例讲述了PHP实现的简单对称加密与解密方法.分享给大家供大家参考,具体如下: 方法一:YII自带的加密方法 /** * 加密 * @var string [要加密的值] */ $secretKe ...

最新文章

  1. 漫画讲述人工智能简史
  2. 《黑马程序员》认识OC的第一个程序(Objective-c)
  3. Java学习笔记2021.1.9
  4. (转)KMP算法原理讲解及模板C实现
  5. pytorch1.7教程实验——使用 TensorBoard 可视化模型,数据和训练
  6. 马赛克 php,php实现图片局部打马赛克的方法
  7. JAVA之列表集合ArrayList
  8. JavaEye,想说爱你不容易!
  9. jquery ajax 回调函数里面再执行ajax函数,jQuery AJAX 和其回调函数
  10. shine 插件_《SHINE》正式上线|GBZ将你带入重重的紫色迷雾中
  11. matlab 计算一元函数解,遗传算法简单一元函数优化实例
  12. GameCenter
  13. 第一集 斗罗世界 第五章
  14. 微信小程序标题栏放logo 搜索框
  15. ctrl+alt+t 函数注释快捷键失效KoroFileHeader
  16. html代码向左居右对齐
  17. php 判断字符串乱码,php如何检测乱码字符
  18. 备份一体机的制作原理以及工艺
  19. vue项目搭建和配置
  20. 新品爆款打造流程与操作步骤--电商人必看

热门文章

  1. GitHub生成TOC目录
  2. IM软件的全流程加密过程
  3. 02_两小时了解自动驾驶
  4. 《工厂订单出入库信息管理系统》- 用户操作手册
  5. [C4AI_2022]基于飞桨的无人机智能工地安全监管系统
  6. 原文翻译 - 设计MongoDB架构的6条经验法则 - 6 Rules of Thumb for MongoDB Schema Design: Part 1
  7. speech contest
  8. 莱宝真空泵品牌中国华东区一级授权
  9. 优秀!博士毕业两年后任副教授,34岁就成为中国最年轻女博导之一!
  10. NPU架构与算力分析