Java实现加解密(三)之对称加密

一、对称加密算法DES

      1.对称加密算法:加密密钥=解密密钥,属于初等加密算法,常见有DES、3DES、AES、PBE、IDEA

      2.DES对称加密算法:DES(Data Encryption Standard) 数据加密标准  IBM提供的加密方案,98年后不断被破解,在使用过程中不安全,一般开发中不使用DES,DES更多出现在介绍或者案例,或者比较老的案例中。

      3.DES实现方式区别如图:

     

      4.应用场景

     

      5.代码实现,可参考本人码云项目:https://gitee.com/kevinshaw/Security 的MyDES类

二、对称加密算法——3重DES

      1.出现原因:

  • 违反柯克霍夫原则
  • 安全问题

      2.好处:

  • 密钥长度增强
  • 迭代次数提高

      3.实现方式区别如图:

     

      4.代码实现,可参考本人码云项目:https://gitee.com/kevinshaw/Security 的My3DES类

三、对称加密算法——AES

      1.产生原因

  • DES算法出现一些漏洞
  • 3DES算法效率低,处理速度慢

      2.特点及优势

  • AES是目前使用最多的对称加密算法
  • AES的优势之一是至今尚未被破解
  • AES通常用于移动通信系统加密以及基于SSH协议的软件(比如 SSH Client、SecureCRT)

      3.AES实现方式区别如图:

     

      4.代码实现,可参考本人码云项目:https://gitee.com/kevinshaw/Security 的MyAES类

      5.使用场景方式,如图:

     

四、对称加密算法——PBE

      1.简单介绍

  • PBE算法结合了消息摘要算法和对称加密算法的优点
  • PBE(Password Based Encryption) 基于口令加密
  • PBE并没有产生新的计算方式,而是对已有算法(比如DES,AES)的包装
  • JDK,Bouncy Castle提供实现
  • 盐(即加密的随机数、或者随机的字符串)加上口令
  • 常用PBEWithMD5AndDES(使用MD5和DES来构建的PBE)

      2.不同实现方式区别如图:

     

     

     

      3.代码实现,可参考本人码云项目:https://gitee.com/kevinshaw/Security 的MyPBE类

      4.PBE使用场景,消息通信方式如图:

     

 

本文为原创文章,如果对你有一点点的帮助,别忘了点赞哦!比心!如需转载,请注明出处,谢谢!

 

转载于:https://my.oschina.net/aibinxiao/blog/1550406

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值