新型安全电子邮件加密系统的设计与实现.doc

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

新型安全电子邮件加密系统的设计与实现

作者:李海江

来源:《信息安全与技术》2012年第07期

【摘要】基于身份公钥加密是一种以用户的身份标识符作为公钥的新型加密体制。本文首先介绍基于身份的公钥加密方案(IBE),给出IBE安全加密体制的基本框架结构与工作原理;设计了一个IBE密钥管理方案,实现IBE公钥和私钥的安全分发;提出了一套基于IBE

的安全电子邮件系统,开发了一个PKG密钥服务器和Outlook邮件客户端加密插件,并实现IBE密钥管理方案;最后讨论了IBE邮件加密系统的安全问题。

【关键词】基于身份的公钥加密;密钥管理;私钥产生中心;邮件加密

Design and Implementation on Secure E-mail System Using Identity-based Encryption

Li Hai-jiang

(Hangzhou Dracom Technology Co.,LTD ZhejiangHangzhou 310012)

【 Abstract 】 Identity-based encryption (IBE) is a novel type of public key scheme which uses the user’s identity as her public key. In this paper, the identity-based encryption is firstly introduced, as well as the basic work framework of IBE present. A key management solution for IBE public and private key issuing is then proposed. At last, an IBE-based secure Email system is proposed which including an IBE key server named PKG and an encryption client plug-in for Outlook. In the proposed Email encryption system, the IBE key management scheme is fully implemented and the security and performance of system are both discussed.

【 Keywords 】 Identity-based encryption;key management;PKG; email encryption

1 引言

PKI(Public Key Infrastructure) 系统中用户的公钥是由密码算法生成的一串大数,通过认证机构CA 签发的证书与用户的身份信息绑定,客户端在使用时需执行获取并验证公钥证书的操作,通常由CA 以证书撤销列表CRL 的形式发布公钥的撤销信息。由于PKI系统的组成和运营复杂庞大,且CA需要负责证书的颁发撤销和管理等操作,效率低下。1984年Shamir提出了基于身份的公钥密码(Identity-based Encryption,以下简称IBE)[1]。IBE的好处是无需公钥证书,可大大简化基于证书的PKI系统的密钥管理过程。IBE加密体制采用接收者身份信息(ID)产生公钥,公钥对应的私钥由一个密钥管理中心PKG产生。由于私钥也可根据用户ID产生,因此私钥产生的权限不能赋予用户而需PKG集中管理。由此,用户如何获取私钥、如何向PKG进行身份认证,私钥如何安全传送等密钥管理问题也成为IBE系统应用的研究热点。本

文即将在介绍IBE体制基础上,设计一个具体的密钥管理解决方案,提出一套基于IBE的新型邮件加密系统,并给出具体的实现。

2 IBE安全加密体制

IBE的公钥是由用户身份信息计算所得,再由此公钥产生相应的私钥。这是IBE跟其它公钥加密技术(如PKI等公钥和私钥随机产生)的不同之处。IBE消除了发送方在发送加密信息之前直接或间接地通过目录服务器等代理方式跟接收方的交互验证过程。

目前的IBE方案主要有两类:一类是基于数论中的二次剩余的方案,使用了大整数因子分解难题;另一种是基于椭圆曲线的方案,使用了双线性对映射,如Weil对和Tate对。在实际应用中基于二次剩余的IBE 方案产生的密文较长,对传输带宽要求较高,基于椭圆曲线的方案则具有低带宽等优点。

一个IBE方案通常有四个算法组成:系统初始化、私钥提取、加密和解密,系统还应包含一个第三方信任机构PKG。

(1) 系统初始化:系统参数和主密钥初始化,系统参数完全公开,包括明文空间、密文空间、密码Hash 函数等,主密钥仅由PKG秘密保管,用于计算用户私钥。

(2) 私钥提取:输入系统参数、主密钥和标识用户身份的任意字符串ID,返回对应的私钥。

(3) 加密:输入系统参数、用户ID和明文,返回对应的密文。

(4) 解密:输入系统参数、用户私钥和密文,返回对应的明文。

(1)服务器系统初始化:生成公共参数和主密钥,并且把系统参数和一些关于该服务器的策略信息(如公钥自动更新时间等)放在IBE参数服务器上作为公共参数,同时把公共参数和主密钥存放在PKG服务器上。

(2)用户(发送者及接收者)向IBE参数服务器请求公共参数,服务器经过对用户的身份认证为合法用户,即返回公共参数,否则请求失败。

(3)发送者在客户端,根据IBE公共参数及接收者身份信息对明文加密,产生IBE密文。

(4)接收者收到密文后,若未取得对应的私钥,则向PKG发起私钥请求。

(5)PKG接收用户私钥请求,验证客户端信息如版本等、用户信息如用户名和密码,以及请求的公钥信息等;经PKG认证成功则在服务器产生用户私钥,并通过安全协议如SSL给用户返回私钥,认证失败则给出失败原因代码信息。

(6)接收方获得私钥后,输入公共参数、私钥即可解密,获得消息明文。

3 IBE安全电子邮件框架设计与实现

3.1 IBE密钥管理方案设计

(1) 公钥参数获取协议在IBE系统中发送方、接收方和PKG共用同一组公共参数,用户通过访问IBE参数服务器来获得公共参数,用户需要提供身份信息经过IBE参数服务器认证为合法用户,IBE参数服务器才会返回参数,否则将拒绝请求。

(2) 私钥分发协议私钥管理是IBE最关键的部分。接收者收到加密信息后,向PKG Server 提出私钥请求,PKG接收请求后,提取请求信息,如版本、私钥产生算法(BF或者BBl),请求的身份信息以及用户身份认证信息。PKG根据信息分析,产生不同的响应:拒绝服务或提供服务。

3.2 协议设计与实现

本文采用C 语言开发实现了一整套基于身份加密的Boneh-Franklin方案,提供了产生系统参数、私钥生成、加密、解密等IBE应用接口和服务器客户端的应用测试等程序,并且采用Java Web开发实现了上述的IBE密钥管理协议。

用户需要先在服务器上注册:注册用户名、邮箱地址、用户口令等基本信息。服务器接受后发送邮件到用户邮箱,用户通过点击邮件链接激活帐号。注册成功后用户可以通过访问IBE 参数服务器地址(如https://...),输入相关信息通过验证后,经SSL或TLS协议获取IBE公共参数。

用户私钥分发协议的实现如下:服务器端系统在JDK1.5下采用JAVA axis开发包,对用户请求信息进行SOAP消息封装,通过https下SOAPConnection的call函数,即public SOAPMessage call(SOAPMessage msg,URL to)的调用,采用SOAPMessage req封装请求信息,请求地址to为new URL("https://localhost/soap/service/ getkey,服务器端采用

public class KeyResponse extends JAXMServlet implements ReqRespListener{ ……

public SOAPMessage onMessage(SOAPMessage req){ …… } }

将该Servlet映射为IBE的PKG服务器地址。

相关文档
最新文档