下载此文档

实习4基于Diffle-Human的密钥交换.docx


文档分类:IT计算机 | 页数:约10页 举报非法文档有奖
1/10
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/10 下载此文档
文档列表 文档介绍
实****四基于Diffle-Human的密钥交换实****目的理解密钥管理相关内容,熟悉Diffle-Human的密钥交换协议;在java平台上实现基于Diffle-Human的密钥交换。实****要求实****前预****第7章的内容;.*中相关的类。实****内容1.[问题描述]Diffle-Human算法是建立在DH公钥和私钥基础上的秘钥分配算法,如A需要和B共享密钥时,A和B各自生成DH的公钥和私钥,公钥对外公布而私钥各自秘密保存。2.[基本要求]在java平台上实现基于Diffle-Human的密钥交换。3.[实现提示](1)利用公钥密码中的KeyGenerator类创建公钥密钥对,其参数指定为”DH”。另外在初始化时需要为DH指定的参数DHParameterSpecDHP=newDHParameterSpec(skip1024Modulus,skip1024Base);(2)skip1024Modulus指定模,skip1024Base指定基数。协议简单密钥管理标准中已经指定,在安装JSDK后,计算机的C盘中存在C:\jsdk-1_4_0-doc\docs\guide\security\jce\,其中包含密钥长度为1024的DH密钥中的模和基数的定义,可以直接复制下来,-Hellmanmodulus注释语句,将其下的skip1024ModulusBytes[]数组及BigInteger类型的skip1024Modulus和skip1024Base复制下来即可。(3)建立两个目录A和B,模拟需要秘密通信的A、B双方,DH算法需要A和B各自生成DH公钥和私钥。(4)java中KeyAgreement类实现了密钥协定,它使得init()方法传入自己的私钥,使用doPhase()方法传入对方的公钥,进而可以使用generateSecret()方法生成共享的信息。实****过程编程思路(1)生成DH参数DHParameterSpecDHP=newDHParameterSpec(skip1024Modulus,skip1024Base);分析:和RSA算法类似,DH算法涉及到一些指数和取模运算,DH参数指定A、B双方在创建DH密钥时所公用的基数和模(2)创建密钥对生成器KeyPairGeneratorkpg=("DH");分析:密钥对生成器即KeyPairGenerator类型的对象,通过其中预定义的一个静态方法getInstance()获取KeyPairGenerator类型的对象。getInstance()方法的参数指定为“DH”。(3)(DHP);分析:初始化时使用的参数即第1步中生成的参数。(4)生成密钥对,获取公钥和私钥KeyPairkp=();PublicKeypbk=();PrivateKeyprk=();分析:使用KeyPairGenerator类的genKeyPair()方法生成密钥对,进而使用密钥对的getPublic()和getPrivate()获取公钥

实习4基于Diffle-Human的密钥交换 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数10
  • 收藏数0 收藏
  • 顶次数0
  • 上传人rdwiirh
  • 文件大小148 KB
  • 时间2020-09-25