< 返回新闻公告列表

什么是JAVA密码学?及JCA、JCE简介

发布时间:2020-04-09 10:59:42    来源: 知鸟云

Java密码学简介

为了保护Java,Java变得越来越流行并在所有地方使用。有几种机制被用来确保java是安全的语言,被称为java密码术。此Java密码学由两个主要内容JCA(Java密码学体系结构)和JCE(Java密码学扩展)组成。JCA是一组为Java程序提供加密功能的类,并且是Java应用程序开发环境中的默认类。JCE是需要特殊许可的附加软件。

 

Java密码学服务

以下是提供的两种加密服务:

1、JCA

2、JCE


1. JCA

JCA代表Java密码体系结构。它是一组为Java程序提供加密功能的类。它是Java应用程序开发环境(即JDK(Java Development Kit))的默认部分。JCA是在JDK 1.1版中引入的。JCA为使用Java的程序员提供了基本的密码功能。密码功能涉及访问控制,消息摘要,密钥对,权限和数字证书。JCA 在Java包中提供了一组抽象类,称为安全性。Java密码体系结构还以提供程序体系结构而闻名,因为它提供了安全性。设计此体系结构的主要目标是将加密概念与实际实现分开。为了实现这种编程语言独立性,它使用接口概念。接口是一组函数,这些函数指定接口的行为,即接口可以做什么。它没有显示该接口的实际实现。让我们看一个例子来更好地理解这个概念。当我们购买一台新计算机时,我们不必担心手机或PC的内部细节,例如所使用的电子组件,芯片,电流或电压等。我们只是在使用手机或计算机的情况下才知道它在内部如何工作。这组内部操作称为实现。我们对RAM,内存,电池等只有一个想法。以同样的方式,该接口可在JCA中使用。JCA的主要目的是提供可插拔体系结构的JCA。这意味着它允许用户在不知道路由器接口的情况下更改内部细节。JCA提供了概念上的密码功能,并允许它们以各种方式实现。这允许不同的供应商提供其加密工具的实现。为了实现此Java,密码体系结构由几个分类的引擎类组成。引擎类是密码功能的逻辑实现。此体系结构中只有一个Java安全签名类,它代表数字签名算法类的所有可能变体。另一个称为provider的类负责此算法的实际实现。

密钥管理

Java版本2提供了一个密钥工具,该工具用于分别存储公用密钥和专用密钥。密钥工具使用密码保护两个密钥。密钥工具使用数据库来存储密钥,该数据库称为密钥库。

以下是关键工具提供的服务列表:

出口证书。导入其他人的证书以进行签名验证。创建密钥对。创建自签名证书。发出CSR(证书签名请求),需要将其发送到CA(证书颁发机构)以请求证书。

2. JCE

JCE代表Java密码学扩展。数据加密的密码功能属于Java密码扩展。Java密码学扩展的体系结构遵循与Java密码学体系结构相同的模式。它也基于我们在JCA中讨论的提供程序类和引擎类的概念。该实现是Sun Microsystems提供的默认设置。由于该体系结构类似于Java密码体系结构,因此我们将不再讨论相同的内容。

 

总结

Java密码体系结构和Java密码扩展都是强大的密码体系结构。他们经过精心计划和设计,以允许进一步扩展以及与供应商无关。这里最大的问题是在需要面对许可问题的地方使用Java密码术。由于其出口法律,Java密码学扩展不包含在核心Java开发工具包中。现在,限制已解除,应用程序开发人员可以轻松地自由使用Java密码学扩展。


相关推荐