`

Java KeyStore的类型

    博客分类:
  • java
阅读更多

JKS和JCEKS是Java密钥库(KeyStore)的两种比较常见类型(我所知道的共有5种,JKS, JCEKS, PKCS12, BKS,UBER)。


JKS的Provider是SUN,在每个版本的JDK中都有,JCEKS的Provider是SUNJCE,1.4后我们都能够直接使用它。


JCEKS在安全级别上要比JKS强,使用的Provider是JCEKS(推荐),尤其在保护KeyStore中的私钥上(使用TripleDes)。


PKCS#12是公钥加密标准,它规定了可包含所有私钥、公钥和证书。其以二进制格式存储,也称为 PFX 文件,在windows中可以直接导入到密钥区,注意,PKCS#12的密钥库保护密码同时也用于保护Key。


BKS来自BouncyCastle Provider,它使用的也是TripleDES来保护密钥库中的Key,它能够防止证书库被不小心修改(Keystore的keyentry改掉1个bit都会产生错误),BKS能够跟JKS互操作,读者可以用Keytool去TryTry。


UBER比较特别,当密码是通过命令行提供的时候,它只能跟keytool交互。整个keystore是通过PBE/SHA1/Twofish加密,因此keystore能够防止被误改、察看以及校验。以前,Sun JDK(提供者为SUN)允许你在不提供密码的情况下直接加载一个Keystore,类似cacerts,UBER不允许这种情况。

分享到:
评论

相关推荐

    keystore-explorer:KeyStore Explorer是Java命令行实用程序keytool和jarsigner的免费GUI替代品

    在各种KeyStore类型之间创建,加载,保存和转换:JKS,JCEKS,PKCS#12,BKS(V1和V2)和UBER 更改密钥库和密钥库条目密码 删除或重命名KeyStore条目 剪切/复制/粘贴KeyStore条目 将证书附加到密钥对证书链 生成...

    Java 2平台安全技术-结构,API设计和实现

    7.3.9 java.security.KeyStore 130 7.4 随机性和种子产生器 131 7.5 代码实例 132 7.5.1 实例1:计算消息摘要 132 7.5.2 实例2:产生公钥/私钥对 133 7.5.3 实例3:产生并且验证签名 134 7.5.4 实例4:读取包含证书的...

    JAVA 2平台安全技术-结构,API设计和实现

    7.3.9 java.security.KeyStore 130 7.4 随机性和种子产生器 131 7.5 代码实例 132 7.5.1 实例1:计算消息摘要 132 7.5.2 实例2:产生公钥/私钥对 133 7.5.3 实例3:产生并且验证签名 134 7.5.4 实例4:读取包含证书的...

    ssl证书(nginx+tomcat+java代码适用)

    ssl自制全套证书(包含服务器端、客户端、ca端的证书,格式有.crt,.key,.truststore,.keystore,.p12,.cer,.pem等类型),当时要配置webservice接口、tomca、nginx通过ssl访问的证书,弄了好久才生成了一套能使用的。...

    jdk1.8.0_181(64位).7z

    KeyStore增强功能,包括新的Domain KeyStore类型java.security.DomainLoadStoreParameter,以及-importpasswordkeytool实用程序的新命令选项 SHA-224消息摘要 增强了对NSA Suite B密码学的支持 更好地支持高熵...

    java 面试题 总结

    Java 提供两种不同的类型:引用类型和原始类型(或内置类型)。Int是java的原始数据类型,Integer是java为int提供的封装类。Java为每个原始类型提供了封装类。 原始类型封装类 booleanBoolean charCharacter byte...

    lib-flex-pkikeys:Java - 允许访问不同类型 KeyStore 的库,在访问密钥之前,可以建立一个白名单来过滤 KeyStore 并启用针对所述列表的 KeyStore 验证

    lib-flex-pkikeys 允许访问不同类型的密钥库的库,在访问密钥之前,它允许建立一个白名单,在受信任的列表中过滤密钥库。依赖关系lib-flex-helpers v020 commons-net-3.3 ( ) javax.mail ( )版权所有 (C) 2010 - Ing...

    Android 打包签名 从生成keystore到完成签名.zip

    我们还使用了Java作为主要的编程语言,它是安卓应用开发的主流语言,具有丰富的库和框架,使得开发人员可以轻松实现各种功能和特性。 此外,我们的安卓项目源码还注重用户体验和界面设计。我们提供了一系列的界面...

    超级有影响力霸气的Java面试题大全文档

     Java 提供两种不同的类型:引用类型和原始类型(或内置类型)。Int是java的原始数据类型,Integer是java为int提供的封装类。Java为每个原始类型提供了封装类。 原始类型 封装类 boolean Boolean char Character ...

    jks转为bks

    JKS和JCEKS是Java密钥库(KeyStore)的两种比较常见类型,JKS的Provider是SUN,在每个版本的JDK中都有,JCEKS的Provider是SUNJCE,1.4后我们都能够直接使用它。 JCEKS在安全级别上要比JKS强,使用的Provider是JCEKS...

    aes-256-java-bks

    (JAVA) AES-256 加密/解密,使用 Bouncy Castle Keystore (BKS) 进行密钥存储管理 概述: 这个简单的代码允许您使用 AES-256 标准加密/解密任何类型的文件。 它使用 Bouncy Castle Keystore 进行密钥管理。 除了...

    ionic混合开发APP

    Hybrid App按网页语言与程序语言的混合,通常分为三种类型:多View混合型,单View混合型,Web主体型。 2 技术 2.1 技术选型 Ionic 2.1.1 Ionic介绍 Ionic是一款基于Angular、Cordova的强大的HTML5移动应用...

    betfairapi:BetFair API游乐场

    F2:可以列出市场 F3:选择并集成日志记录API:log4j 2或logback F4:介绍Java实体 F5:引入依赖项注入:Spring或Guice F6:可以自动生成枚举 F7:可以自动生成数据类型 F8:可以自动生成投注API接口 F9:使用Rest...

    netty-ssl-routing-proxy

    主要用例是仅使用一个前端SSL服务器(主机:端口)来提供各种协议的多种连接类型。 大多数公司防火墙仅将SSL连接限制为443端口。 建造 mvn clean package docker:build -Pdocker 该命令将构建docker image netty-...

    AndroidGradleBuildExample

    该项目是使用多重构建类型的示例。 相关帖子 生成密钥库 使用 keytool 创建一个keystore 。 $ keytool -genkey -v -keystore test.keystore -alias nova -keyalg RSA -keysize 2048 -validity 10000 签名配置 将...

    CacheManage::fire:android缓存管理器,分为内存缓存和文件缓存两种 先取内存数据,没有再从文件缓存中取

    android缓存管理器,分为两级缓存:内存缓存和文件缓存;先取内存数据,没有再从文件缓存中...每个客户端都是唯一的,互不相同默认密钥存储在KeyStore中,防逆向工程获取密钥支持基本数据类型、String、JSONObject、J

    网狐荣耀版开发使用常见问题解答

    十、网狐荣耀版手机端分享时出现“由于不支持的分享类型,无法分享到微信“的解决办法 去腾讯开放平台申请账号,审核通过后,在开放平台添加相应信息,就可以正常分享了。 十一、网狐荣耀版vs生成解决方案时出现...

    !!!!ap6212a0_a33_sc3817r_验证通过_修正wifi的配置文件为nvram_ap6212.txt

    调通sina33下的AP6212A0(WIFI+BT) 大文实验室/大文哥 壹捌陆捌零陆捌捌陆捌贰 ...完成时间:2017/6/28 12:13 版本:V1.3 本文参照: 《A33 wifi移植说明书.pdf》 还有就是全志R16平台的parrotv1.1的官方SDK...

Global site tag (gtag.js) - Google Analytics