海纳百川

登录 | 登录并检查站内短信 | 个人设置 网站首页 |  论坛首页 |  博客 |  搜索 |  收藏夹 |  帮助 |  团队  | 注册  | RSS
主题: 请各位讨论一下王力雄这个建议的可行性:网上签名的技术思考
回复主题   printer-friendly view    海纳百川首页 -> 罕见奇谈
阅读上一个主题 :: 阅读下一个主题  
作者 请各位讨论一下王力雄这个建议的可行性:网上签名的技术思考   
所跟贴 可否详细介绍一下这个数字签名技术?十分赞同王力雄的设想, -- Anonymous - (56 Byte) 2003-5-24 周六, 下午8:58 (125 reads)
程序员
[博客]
[个人文集]

游客









文章标题: 参看这个: Internet上的安全认证——加密与数字签名 (164 reads)      时间: 2003-5-24 周六, 下午11:32

作者:Anonymous罕见奇谈 发贴, 来自 http://www.hjclub.org

原文:

http://www.netfront.com.cn/attention/index/nous_007.htm





Internet上的安全认证——加密与数字签名



——迅速发展的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位用于奇偶校验)。解密时的过程和加密时相似,但密钥的顺序正好相反。



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



3、公开密钥密码体制



——公开密钥(publickey)密码体制出现于1976年。它最主要的特点就是加密和解密使用不同的密钥,每个用户保存着一对密钥──公开密钥PK和秘密密钥SK,因此,这种体制又称为双钥或非对称密钥密码体制。



——在这种体制中,PK是公开信息,用作加密密钥,而SK需要由用户自己保密,用作解密密钥。加密算法E和解密算法D也都是公开的。虽然SK与PK是成对出现,但却不能根据PK计算出SK。公开密钥算法的特点如下:



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



——加密密钥不能用来解密,即DPK(EPK(X))≠X在计算机上可以容易地产生成对的PK和SK。从已知的PK实际上不可能推导出SK。



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



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



下面简要介绍RSA体制的原理。



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



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



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



——解同余方程



——ed=1modΦ(n)



——求出解密指数d。



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



——加密:Y=Xemodn



——解密:X=Ydmodn



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



——要求明文X


——RSA体制的保密性在于对大数的因数分解很花时间。若设机器周期为1μs,分解一个二进制数n所需时间如表1所示。



——位数1002003005007501000



——所需时间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向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公司,您可以通过以下步骤获得您的数字标识:



——访问http://www.verisign.com站点,按提示填入您的个人信息及电子邮件地址,确认无误并提交后,稍过一会儿,您可以从您的电子信箱中收到一封Verisign公司发来的电子邮件,其中就包含了您的DigitalIDPIN。



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



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



以下是其他一些提供类似服务的商业发证机构:



BankGateCA,http://www.bankgate.com/



BelSignNV

作者:Anonymous罕见奇谈 发贴, 来自 http://www.hjclub.org
返回顶端
    显示文章:     
    回复主题   printer-friendly view    海纳百川首页 -> 罕见奇谈 所有的时间均为 北京时间


     
    论坛转跳:   
    不能在本论坛发表新主题
    不能在本论坛回复主题
    不能在本论坛编辑自己的文章
    不能在本论坛删除自己的文章
    不能在本论坛发表投票
    不能在这个论坛添加附件
    不能在这个论坛下载文件


    based on phpbb, All rights reserved.
    [ Page generation time: 0.708058 seconds ] :: [ 23 queries excuted ] :: [ GZIP compression enabled ]