荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: zzt (破网,烂网), 信区: Hacker
标  题: INTERNET上的安全认证
发信站: BBS 荔园晨风站 (Sun Nov 29 13:17:50 1998), 站内信件 (WWW POST)

──加密与数字签名

(410004 湖南省经济管理干部学院计算机系 沈立强)

一、概述

迅速发展的INTERNET给人们的生活、工作带来了巨大的方便,人们可以坐在家里通过
INTERNET收发电子邮件、打电话、进行网上购物、银行转帐等。然而,您可曾想过,
您发出的电子邮件(或别人发给您的电子邮件)是否已被人看过,甚至还被人修改过?
您和朋友打的电话是否被人窃听?当每次从您的银行帐户上给别人转帐5万元(通过
INTERNET),是否会有人恶意地将您的这一次操作重新执行1次甚至多次?总之,您在
INTERNET上做的一切,安全吗?同时,对于银行和信用卡公司而言,怎样来确定您就是
真正的“您”呢?

这一切,导致了加密、解密、数字签名技术的产生,并且正在不断的研究和发展之中,
本文试图就这些技术作一些初步的介绍和探讨,并给出在Microsoft Outlook Express
下收发安全电子邮件的操作方法。

二、加密

为了保护您的数据在传递过程中不被别人窃听或修改,您必须对数据进行加密(加密后
的数据称为密文),这样,即使别人窃取了您的数据(密文),由于没有密钥而无法将
之还原成明文(未经加密数据),从而保证了数据的安全性,接收方因有正确的密钥,
因此可以将密文还原成正确的原文。

一般的加密模型如图所示:

1、常规密钥密码体制
所谓常规密钥密码体制,即加密密钥与解密密钥是相同的。
在早期的常规密钥密码体制中,典型的有代替密码,其原理可用一个例子来说明。
例如,将字母a,b,c,d,…,w,x,y,z的自然顺序保持不变,但使之与D,E,F,G,
…,Z,A,B,C分别对应(即相差3个字符)。若明文为student则对应的密文为VWXGHQW
(此时密钥为3)。
由于英文字母中各字母出现的频度早已有人进行过统计,所以根据字母频度表可以很容易
对这种代替密码进行破译。

2、数据加密标准DES
DES算法原是IBM公司为保护产品的机密于1971年至1972年研制成功的,后被美国国家标准
局和国家安全局选为数据加密标准,并于1977年颁布使用。ISO也已将DES作为数据加密标
准。
DES对64位二进制数据加密,产生64位密文数据。使用的密钥为64位,实际密钥长度为56
位(有8位用于奇偶校验)。解密时的过程和加密时的相似,但16个密钥的顺序正好相反

DES的保密性仅取决于对密钥的保密,而算法是公开的。DES内部的复杂结构是至今没有找
到捷径破译方法的根本原因。现在DES可由软件和硬件实现。美国AT&T首先用LSI芯片实现
了DES的全部工作模式,该产品称为数据加密处理机DEP。

3、公开密钥密码体制
公开密钥(public key)密码体制出现于1976年。它最主要的特点就是加密和解密使用不
同的密钥,每个用户保存着一对密钥──公开密钥PK和秘密密钥SK,因此,这种体制又称
为双钥或非对称密钥密码体制。
在这种体制中,PK是公开信息,用作加密密钥,而SK需要由用户自己保密,用作解密密钥
。加密算法E和解密算法D也都是公开的。虽然SK与PK是成对出现,但却不能根据PK计算出
SK。公开密钥算法的特点如下:

(1)用加密密钥PK对明文X加密后,再用解密密钥SK解密,即可恢复出明文,或写为:
DSK(EPK(X))=X

(2)加密密钥不能用来解密,即
DPK(EPK(X))≠X

(3)在计算机上可以容易地产生成对的PK和SK。

(4)从已知的PK实际上是不可能推导出SK。

(5)加密和解密的运算可以对调,即:
EPK(DSK(X))=X

在公开密钥密码体制中,最有名的一种是RSA体制。它已被ISO/TC97的数据加密技术分委
员会SC20推荐为公开密钥数据加密标准。
下面简要介绍RSA体制的原理。

(1)用户选择2个足够大的秘密的素数p和q(一般为100位以上的十进制数)。

(2)令n=pq。n是公开的。实际上,从n分解出因子p和q是极其困难的。n的欧拉函数
φ(n)=(p-1)(q-1),φ(n)即小于等于n并与n互素的数的个数。

(3)选择一个相对较大的整数e作为加密指数,使e与φ(n)互素。

(4)解同余方程
ed=1modφ(n)
求出解密指数d。

(5)若用整数X、Y分别表示明文、密文,则以下2式可用于加密和解密(X、Y均小于N)

加密:Y=Xe mod n
解密:X=Yd mod n

(6)每个用户都有一组密钥(e,d、n)。对这种体制,只有(e,n)是出现在公开手册
上的(即PK)。d则是需要用户保密的(即SK)。

(7)要求明文X〈n。
RSA体制的保密性在于对大数的因数分解很花时间。若设机器周期为1μs,分解一个b位二
进制数n所需时间为:
b(bit)
100
200
300
500
750
1000
时间
30秒
3天
9年
1兆年
2×109年
6×1015年
因此,当n足够大时,在目前情况下,对n进行因数分解实际上是无法实现的。

三、数字签名
以往的书信或文件是根据亲笔签名或印章来证明其真实性的。但在计算机网络中传送的
报文又如何盖章呢?这就是数字签名所要解决的问题。数字签名必须保证以下3点:

(1)接收者能够核实发送者对报文的签名;

(2)发送者事后不能抵赖对报文的签名;

(3)接收者不能伪造对报文的签名。

现在已有多种实现各种数字签名的方法,但采用公开密钥算法要比常规算法更容易实现。
下面就来介绍这种数字签名。

发送者A用其秘密解密密钥SKA对报文X进行运算,将结果DSKA(X)传送给接收者B。B用已
知的A的公开加密密钥得出EPKA(DSKA(X))=X。因为除A外没有别人能具有A的解密密钥
SKA,所以除A外没有别人能产生密文DSKA(X)。这样,报文X就被签名了。

假若A要抵赖曾发送报文给B。B可将X及DSKA(X)出示给第三者。第三者很容易用PKA去证实
A确实发送消息X给B。反之,如果是B将X伪造成X',则B不能在第三者面前出示DSKA(X')。
这样就证明了B伪造了报文。可以看出,实现数字签名也同时实现了对报文来源的鉴别。

但是上述过程只是对报文进行了签名。对传送的报文X本身却未保密。因为截到密文DSKA
(X)并知道发送者身份的任何人,通过查问手册即可获得发送者的公开密钥PKA,因而能够
理解报文内容。若采用如图所示的方法,则可同时实现秘密通信和数字签名。图中SKA和
SKB分别为A和B的秘密密
.,而PKA和PKB分别为A和B的公开密钥。

四、密钥分配

目前,公认的有效方法是通过密钥分配中心KDC来管理和分配公开密钥。每个用户只保存
自己的秘密密钥和KDC的公开密钥PKAS。用户可以通过KDC获得任何其他用户的公开密钥。
当用户A要和用户B通信时,可用下图所示的步骤获得所需的公开密钥。

首先,A向KDC申请公开密钥,将信息(A,B)发给KDC。KDC返回给A的信息为(CA,CB),其
中,CA=DSKAS(A,PKA,T1),CB=DSKAS(B,PKB,T2)。CA和CB称为证明书(Certificate)
,分别含有A和B的公开密钥。KDC使用其解密密钥SKAS对CA和CB进行了签名,以防止伪造。
时间戳T1和T2的作用是.止重放攻击。

最后,A将证明书CA和CB传送给B。B获得了A的公开密钥PKA,同时也可检验他自己的公开
密钥PKB。

五、Outlook Express下的操作实例

Microsoft公司的Outlook Express是目前功能较完美、使用较方便的一个电子邮件管理软
件,其中所提供的安全特性就支持前述的加密与数字签名,使您在Internet上可以发送和
接收安全的电子邮件,下面就其使用方法详述之。

要使用 Outlook Express 中的安全电子邮件,您需要数字标识。数字标识(也叫证书)提
供了一种在 Internet 上验证您身份的方式,与司机驾照或日常生活中的其他身份证的
方式相似。这儿所说的数字标识即前面提到的公开密钥PK和秘密密钥SK。

数字标识允许您给电子邮件签名,这样真正的收件人可确保该邮件确实是由您发来的并且
没有受损。另外,数字标识允许其他人给您发送加密邮件。

1、获取您的数字标识

使用数字标识之前先得获取数字标识,您可以从发证机构获得数字标识,那是个负责发布
数字标识的组织,并不断地验证数字标识是否仍然有效。然后您可将您的数字标识发送给
要给您发送加密邮件的用户,您也可用相同的数字标识发送签名邮件。

有较多的商业发证机构,如果您选用Verisign, Inc.,您可以通过以下步骤获得您的数字
标识:

(1) 访问http://www.verisign.com站点,按提示填入您的个人信息及电子邮件地址,确
认无误并提交后,大约过一会儿,您可以从您的电子信箱中收到一封Verisign, Inc.发
来的电子邮件,其中就包含了您的Digital ID PIN;

(2) 根据刚收到的电子邮件的提示,访问https://digitalid.verisign.com/mspickup.htm
站点,然后根据提示输入您的Digital ID PIN并提交,成功后,您即可获得您的数字标识
(数字标识将自动被加入到了本机的Outlook Express中)。

要注意的是,Verisign, Inc.提供给您的数字标识免费使用日期只有60天,您要长期使
用,必须付费。

以下是其他一些提供类似服务的商业发证机构:
* BankGate CA。http://www.bankgate.com/
* BelSign NV-SA。http://www.belsign.be/
* CertiSign Certificadora Digital Ltda. (西班牙文)。
http://www.certisign.com.br/
* GTE CyberTrust Solutions, Incorporated。http://www.cybertrust.gte.com/
* KeyWitness Canada.(有英语或法语版本)。http://www.keywitness.ca/
* Thawte Consulting。http://www.thawte.com/
以上机构所提供的服务还包括:Internet 信息服务器 (IIS)、SSL 的 Internet Explorer
 客户程序证书。

2、使用您的数字标识

在发送签名邮件之前,您必须使用要用的电子邮件帐号的数字标识。为此,请单击 “
工具”菜单并单击“帐号”, 选择您想使用标识的帐号,单击“属性”, 然后单击“
安全”选项卡。请检查以下名称的对话框“发送安全邮件时使用数字标识”, 然后单击
“数字标识”, 选择与该帐号.泄氐氖直晔?(只显示出与帐号的电子邮件地址相同的
邮件地址的数字标识)。

3、备份您的数字标识

数字标识的部分信息是存储在计算机上的不能替换的非公开关键字。如果该非公开关键
字丢失,您将无法再发送已签名的邮件或读取具有该数字标识的加密邮件。您应该保留
数字标识的备份,以防包含该数字标识的文件损坏或无法读取。要备份数字标识,先运
行 Internet Explorer,然后单击“查看”菜单,然后单击“Internet 选项”, 单击
“内容”选项卡并随后单击“个人”按钮。 “导入”和“导出”该页面上的按钮允许
管理您的数字标识。

4、安全电子邮件

您已经拥有数字标识,可以发送安全电子邮件了。Outlook Express 中的安全电子邮件
通过使用数字签名和加密对 Internet
通讯提供保护。使用数字签名,您可以在所发电子邮件上签署独特的标识,这样接收方
就可以确认您是邮件的发送者,并且邮件在传送过程中未被篡改。对所发邮件进行加密
有助于确保只有预定接受人员才能在传送过程中读取该邮件。

因为 Outlook Express 使用标准 S/MIME ,所以其他人可用支持该技术的程序阅读您
所撰写的安全电子邮件。同样,您也可用支持 S/MIME 技术的电子邮件程序阅读他人撰
写的邮件。Outlook Express 具有内置安全电子邮件,并提供下列特性的易用界面:

* 发送签名的邮件。 签名电子邮件允许收件人验证您的身份。要对某邮件进行数字签
名,请单击“工具”菜单,然后单击“数字签名”(或使用邮件工具条上的按扭)。

* 接收签名的邮件。 来自其他人的已签名邮件允许您验证邮件的身份 -- 该邮件是否
由指定用户发送、在发送过程中是否已更改。已签名的邮件带有特定的已签名图标。如
果接收到的已签名邮件出现问题,则表明该邮件已被更改或来自其他发送人。

* 发送加密的邮件。 将某电子邮件加密会防止传输过程中有他人阅读邮件。要将电子
邮件加密,您需要有收件人的数字标识。数字标识必须是“通讯簿”中所输入的那个数
字标识的一部分。要发送加密邮件,请单击“工具”菜单,然后单击“加密”(或使用
邮件工具拦上的按钮)。

* 接收加密的邮件。 收到加密的电子邮件信息时, Outlook Express 自动将电子邮件
解密。

* 将您的数字标识发送给别人。 他人必须知晓您的数字标识才能给您发送加密邮件。
要将数字标识发送给他们,只要发送带有您的数字签名的电子邮件即可, Outlook
Express 会自动包含您的数字标识。

* 检索其他数字标识。 要向其他人发送加密邮件,您必须知道他们的数字标识。Outlook
 Express 是允许您通过目录服务检索数字标识的第一个程序。要查找数字标识,请单击
“编辑”菜单,然后单击“查找用户”,选择带有数字标识的目录服务(如 VeriSign
目录服务),在相应的搜索域中输入接受方名称或电子邮件地址,然后单击“查找”,从
结果窗格中选择列表然后单击“添加到通讯簿”,(获得他人数字标识的另一方法是让
他给您发送“签过名的邮件”。要将一封签过名的邮件数字标识添加到您的“通讯簿”,
请单击“文件”菜单并单击“属性”,单击“安全”选项卡并单击“将数字标识添加到
通讯簿中”按钮。)

* 更改数字标识的可信状态。 将某人的数字标识添加到通讯簿中时,与之相关的信任状
态表明您是否信任要给其发布数字标识的个人、小组或公司。如果某数字标识的所有者
警告您,他或她怀疑数字标识私人密钥已受到损害,您就可能希望将信任状态更改为
“明确不信任”。

--
※ 修改:.Mill 于 Nov 29 20:50:49 修改本文.[FROM: 192.168.0.167]
☆ 来源:.BBS 荔园晨风站 bbs.szu.edu.cn.[FROM: 192.168.0.101]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店