实验一 java安全机制和数字证书的管理
一、实验名称
java安全机制和数字证书的管理
二、实验目的
2.1、了解java的安全机制的架构和相关的知识;
2.2、利用java环境掌握数字证书的管理
三、相关基础知识
3.1 java安全机制(JVM,沙袋,安全验证码)。
3.2 java的安全机制的架构
1.java加密体系结构(JCA,Java Cryptography Architecture)
2.Java加密扩展(JCE,Java Cryptography Extension)
3.Java安全套接扩展(JSSE,Java Secure Socket1 Extension)JSSE提供了实现SSL通信的标准Java API。
3.3、数字证书的生成和管理
1、了解公钥加密体制(非对称密码体制的基本原理)。
2、理解数字证书的基本概念及其在安全体制中的应用。
3、理解密钥的生成和管理。
4、掌握利用keytool工具实现数字证书的管理
3.4、相关工具和命令
1、keytool -genkey -alias myca -keyalg RSA -keysize 1024 -keystore mystore -validity 4000 (密钥的生成和存储)
2、keytool -list -v -keystore mystore
3、keytool -export -alias myca -keystore mystore -file my.crt
四、实验结果
4.1、证书的创建
1、采用交互式创建一个证书,指定证书库为 mystore,创建别名为 myCertification的一条证书,它指定用 RSA 算法生成,且指定密钥长度为 1024,证书有效期为 1年:
keytool -genkey -alias TestCertification -keyalg RSA -keysize 1024 -keystore BocsoftKeyLib -validity 365
4.2、证书的操作
1、证书的显示
1)显示 mystore 证书库的的所有证书列表:
keytool –list –keystore mystore
keytool –list –v –keystore mystore将显示证书的详细信息
2)将证书导出到证书文件
使用命令:keytool -export -alias myCertification -file SRX.cer -keystore mystore将把证书库 mystore中的别名为 myCertification的证书导出到 SRX.cer证书文件中,它包含证书主体的信息及证书的公钥,不包括私钥,可以公开。
3)证书条目的删除
keytool的命令行参数 -delete可以删除密钥库中的条目,如: keytool -delete -alias
certification2 -keystore mystore,这条命令将 mystore库中的 certification2这一条证书删除了。
4)证书条目口令的修改
使用-keypasswd参数,如:keytool –keypasswd –alias TestCertification –keystore BocsoftKeyLib,可以以交互的方式修改 BocsoftKeyLib证书库中的条目为 TestCertification 的证书。
五、心得与体会
数字证书在我们日常生活中很常见,经常用到的支付宝业务中就包含了数字证书,如果证书不正确,经无法进行正常的购物行为。
通过课本和本次实验的学习,自己学会了在dos下生成和操作数字证书,自己也在网上找了一些资料,补充了对数字证书的学习。通过这次实验,也发现了一些问题,如怎样是自己颁发的证书具有可信任性,怎样实现数字证书的界面操作等,这些将在后期的学习中去解决。