PBE 算法

PBE( Password Based Encryption, 基于口密加密)。PBE是一种基于口令的加密算法, 采用随机数杂凑(盐)多重加密方法保证数据安全性。
PBE算法并没有真正构建新的算法, 而是对现有对称加密算法(比如DES)进行了包装。

因为密钥很长,一般 由算法产生, 比如DES密钥长度56; 口令一般比较短, 可以容易记住, 也就是我们平时所说的密码。口令很容易通过穷举攻击被破译, 所以就引入了“盐”。
盐本身是一个随机信息, 相同的随机信息不可能使用两次, 将盐加载口令上, 通过消息摘要算法迭代计算构建密钥, 破译就比较难了。

Java 对PBE算法的实现

JDK本身提供了对PBE算法的实现,不需要导入其他的第三方库。 Java中的PBE算法是对各种消息摘要算法(比如MD5,SHA)和对称加密算法(比如DES,RC2)的组合。 比如 PBEWithMD5AndDES算法。
PBEWithMD5AndDES的密钥长度是56 , 是组合了MD5和DES算法。

示例代码

本篇示例环境:

  • JDK1.8
  • Eclipse IDE

因为示例需要使用Base64对字节数组和字符串进行转换,所以需要导入Base64的包,这个包在本地JRE的lib 目录下, 导入方式如下图:

Java使用PBE算法进行对称加解密最简入门和示例相关推荐

  1. [crypto]-02-非对称加解密RSA原理概念详解

    说明:本文使用的数据来自网络,重复的太多了,也不知道哪篇是原创. 算法原理介绍 step 说明 描述 备注 1 找出质数 P .Q - 2 计算公共模数 N = P * Q - 3 欧拉函数 φ(N) ...

  2. rsa java代码_java加解密RSA使用方法代码示例

    最近为了分析一段请求流,不得不去研究一下RSA加密. 首先,强调一点:密钥的"钥"读"yue",不是"yao",额... 网上关于RSA的原 ...

  3. java aes ebc_Delphi XE2+标准AES加解密算法(AES/EBC,CBC/PKCS5Padding-base64)

    [实例简介] 实现了AES/ECB/PKCS5Padding.AES/CBC/PKCS5Padding 密钥长度128/192/256bit,密钥0填充.是标准的AES算法,支持在线AES加解密网站互 ...

  4. java C# objective-c AES对称加解密

    1 /** 2 * AES加解密 3 */ 4 public class AESHelper { 5 final static String AES_KEY = "43hr8fhu34b58 ...

  5. android byte转string_高性能AES256对称加解密,兼容Java、IOS、Android

    最近在设计一个给IOS和Android提供接口的项目框架,在接口安全上准备使用常规的加密技术,确保在非法访问接口的情况下拿到的数据一时半会也没用. 查了相关的资料,用的最多的几种加密算法,DES.AE ...

  6. 某付宝APP之某加油小程序对称加解密算法解析

    前言 前几天发了一个某付宝小程序的sign参数md5加密拿到明文参数的帖子- 又发现一个别的小程序,好像是用的对称加密,耐不住好奇心,就试了试-结果成功实现了加解密的操作.遂发帖记录一下. 工具 fi ...

  7. JAVA建行银企直连报文加解密

    接上一篇密钥交换之后获得银行提供的:银行RSA签名公钥RSA.bank.public.key,接受报文验签使用:银行DES加密私钥DES.bank.private.key,加密报文使用.还有之前自己生 ...

  8. java生成sm4算法的对称密钥_技术分享丨这是一篇简单的小科普——什么是对称加密算法?(下)...

    原标题:技术分享丨这是一篇简单的小科普--什么是对称加密算法?(下) 大家好~我是贾正经,又到了干货满满的技术分享趴啦~ 上期我们讲解了对称加密算法的小知识,并介绍了国密算法中SM4算法的原理. 本期 ...

  9. java aes ctr_AES CBC和CTR加解密实例

    http://www.metsky.com/archives/585.html 2012 AES(Advanced Encryption Standard,高级加密标准) 又叫Rijndael加密法, ...

最新文章

  1. 跨域post请求实现方案小结--转
  2. 推荐5款学Java开发的必备工具
  3. 推荐 10 本好书,并送上 110 本!
  4. span里面插入文字
  5. spring和spring_Spring WebApplicationInitializer和ApplicationContextInitializer的混淆
  6. 移动Web开发基础概念
  7. 项目功能大全,让你的项目一天搞定
  8. disable_irq/enable_irq使用不匹配
  9. ASUS AURA无法启动问题
  10. JS实现轮播图(一看就懂逻辑清晰)
  11. cvc 降噪_此降噪非彼降噪,你要的是哪种降噪?
  12. pyqgis iface AttributeError: ‘NoneType‘ object has no attribute ‘mapCanvas‘
  13. iOS手机自带浏览器Safari无法长按保存图片
  14. alter table新增字段操作究竟有何影响?(上篇)
  15. Spring大白话(●—●)
  16. 计算机论文致谢词范文500字,论文致谢词范文500字(精选5篇)
  17. matplotlib设置坐标轴颜色及画布背景色
  18. android url inputstream,Android HttpUrlConnection getInputStream引发NullPoint...
  19. 蓝牙BQB证后还会被查的3种情况,蓝牙组织审查
  20. 天龙八部网单服务器修改物品,如何用金山游侠V修改单机版天龙八部里面的物品啊?...

热门文章

  1. 手机号、密码正则校验
  2. chatGPT成功之道-数据
  3. 青岛最新公交线路一览(216-232)
  4. JS 手机号、姓名、身份证号脱敏处理
  5. Vue中的scoped
  6. Java实现拼图小游戏(5)—— 美化界面(含源码阅读)
  7. 【模拟】阿里郎(jzoj 2012)
  8. Android推送机制的实现原理
  9. .NET企业级应用架构设计(2nd).pdf
  10. SAP Marketing Cloud Restful API SDK 使用案例分享