码迷,mamicode.com
首页 > 编程语言 > 详细

【Java安全技术探索之路系列:Java可扩展安全架构】之五:JCE(一):JCE架构介绍

时间:2015-06-15 18:46:47      阅读:689      评论:0      收藏:0      [点我收藏+]

标签:jce   架构   

作者:郭嘉
邮箱:allenwells@163.com
博客:http://blog.csdn.net/allenwells
github:https://github.com/AllenWell

JCE最初是作为JCA的扩展包开发的,旨在提供受美国出口控制条例管制的加密服务API和实现。JCE提供一个提供者实现和一组相关的API和包,以支持加密和解密,密钥的生成和协商以及消息验证算法,其中对加密和解密的支持包括对称加密、非对称加密、块加密和流加密。JCE还支持安全流和封装流对象。

JCE的架构模型如下图所示:

技术分享

一 JCE加密服务提供者

JCE是基于JCA的架构原则设计的,因此它同样允许继承加密服务提供者,支持可插入的框架架构,允许插入合格的JCE提供者。

JCE架构提供了一个SunJCE的默认提供者实现,该实现提供以下加密服务和算法:

  • DES(FIPS PUB 46-1),3DES和Blowfish等加密算法的实现。
  • 支持以下模式:
    • 电子密码本(Electronic Code Book, ECB)
    • 密码块链接(Cipher Block Chaining,CBC)
    • 密码反馈(Cipher Feedback, CFB)
    • 输出反馈(Output Feedback, OFB)
    • 扩散密码块链接(Propagating Cipher Block Chaining, PCBC)
  • 可以实现MAC算法,如HMAC-MD5和HMAC-SHAT算法。
  • 用于算法DES, 3DES, Blowfish, HMAC-MD5和HMAC-SHA」的密钥生成器
  • 实现MD5-DESCBC基于密码加密(Password-Based Encryption, PBE)的算法
  • 实现基于Dffie-Helhnan的密钥协商协议
  • 按照PKCS#5实现填充规则(Padding Scheme)
  • Diffie-Hellman、DES, 3DES, Blowfish和PBE的算法参数管理器
  • 支持高级加密标准(AES)
  • 实现名为JCEKS的密钥库
  • 引人下列服务和算法作为J2SE 5.0安全增强:
    • 支持PKCS # 11标准
    • 支持ECC算法
    • 支持XML加密RSA-OAEP算法
    • 集成了Solaris加密框架(Solaris Cryptographic Framework)
    • 支持加密算法“PBEWithSHAIAndDESede”和“PBEWithSHAIAndRC2_40”
    • 支持RC2ParameterSpec
    • 增加了提供者SuuJCE对RSA加密的支持
    • 增加了提供者SunJCE对RC2和ARCFDUR加密的支持
    • 支持Hn13CSHA256, HmacSHA384和HmacSHA512

二 JCE加密服务引擎

三 JCE加密服务算法

【Java安全技术探索之路系列:Java可扩展安全架构】之五:JCE(一):JCE架构介绍

标签:jce   架构   

原文地址:http://blog.csdn.net/allenwells/article/details/46505849

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!