日期:2014-05-16  浏览次数:20730 次

Apache Shiro 加密管理

加密是隐藏或混淆需要被保护的数据以防止被非法偷窥的过程。Shiro集中于安全领域两个核心的元素:加密和哈希(也称为消息摘要)。

Shiro的加密管理主要目标是提高一套强大的加密功能同时简化操作便于使用。

Shiro中加密管理的特点:

基于POJO的接口驱动 — 所有的ShiroAPI都以POJO实现。这使得你可以轻松地配置加密与JavaBean兼容的格式,如JSONYAMLSpringXML和其他的组件。您也可以重写或自定义加密功能利用Shiro提供的API,以节省您的时间和精力。

简化包装了JCE —除非你是一个密码专家,不然使用Java密码扩展(JCE)是复杂和困难的。 Shiro的加密API更容易理解和使用,极大地简化了JCE的概念。现在即使是个新手也能只需要几分钟就会使用,而不是数小时或数天。如果你需要更复杂的JCE您仍然可以访问。

“面向对象”的密码学概念 — JDK/ JCE的加密和消息摘要(HASH)类是抽象类相当混乱,如果你要使用的话,要求使用带有不安全类型的字符串参数的钝工厂方法获得。Shiro的面向对象的密码和散列,在一个干净的对象层次结构的基础上,允许您可以通过简单的实例来使用它们。

运行时的例外 — 所有的加密的例外都是继承RuntimeExceptions。根据您的需要,您可以决定是否要捕捉异常。