当前位置:文档之家› 公钥密码算法

公钥密码算法

公钥密码算法
公钥密码算法

公钥密码算法

学号:0900250114 姓名:李荣亮

摘要:古往今来,通信中的安全保密问题一直受到广泛关注。历史上,交战双方在通信安全、保密和密码破译方面的优势均被认为是取得战争胜利的关键因素之一。今天,随着互联网的发展,人类进入信息化时代,现代通信涉及各个行业,信息安全已成为人人都关心的问题,敏感信息的安全传输越来越受到人们的关注,这就促使密码学揭去了神秘的面纱,为更广泛的领域和大众服务。

一、公钥密码学概述。

公开密钥密码算法的提出是整个密码学历史上最大的而且也许是最唯一真

正的变革。从最初一直到现代,几乎所有密码系统都建立在基本的替代和置换工具的基础上。在用了数千年的本质上可以手算完成的算法之后,常规的密码学随着转轮加密/解密机的发展才出现了一个重大进步。机电式变码旋转软件使得极其复杂的密码系统被研制出来。有了计算机后,更加复杂的系统被设计出来。但是不管是转轮机还是后来的DES(数据加密标准),虽然代表了重要的进展,却仍然依赖于替代和置换这样的基本工具。

公钥密码学则与以前的所有方法都截然不同。一方面公开密钥算法基于数学函数而不是替代和置换,更重要的是,公开密钥密码学是非对称的,它用到两个不同的密钥,而对称的常规加密则只使用一个密钥。使用两个密钥对于保密通信,密钥分配和鉴别等领域都有着深远的影响。

公钥密码算法中的密钥依性质划分,可分为公钥和私钥两种。 用户或系统产生一对密钥,将其中的一个公开,称为公钥;另一个自己保留,称为私钥。 任何获悉用户公钥的人都可用用户的公钥对信息进行加密与用户实现安全信息交互。

由于公钥与私钥之间存在的依存关系,只有用户本身才能解密该信息,任何未受授权用户甚至信息的发送者都无法将此信息解密。

在近代公钥密码系统的研究中, 其安全性都是基于难解的可计算问题的。 如:

(1)大数分解问题;

(2)计算有限域的离散对数问题;

(3)平方剩余问题;

(4)椭圆曲线的对数问题等。

基于这些问题, 于是就有了各种公钥密码体制。 关于公钥密码有众多的研究, 主要集中在以下的几个方面:

(1)RSA 公钥体制的研究;

(2)椭圆曲线密码体制的研究;

(3)各种公钥密码体制的研究;

(4)数字签名研究。

(5)

公钥加密体制具有以下优点:

(1)密钥分配简单;

(2)密钥的保存量少;

(3)可以满足互不相识的人之间进行私人谈话时的保密性要求;

(4)可以完成数字签名和数字鉴别。

二、什么是公钥密码算法

目前存在两种密钥体制:对称密钥体制和非对称密钥体制。对称密钥体制就是加密和解密用同一个密钥。这很好理解,相当于你用你家的钥匙既可以锁上你家的门,也可以打开你家的门。非对称密钥体制就是加密和解密不是同一个密钥。也就是说一个密钥所加密的数据用另一个密钥解密。举个生活中的例子,类似于在机场、火车站、超市以及很多其他公共场所看到的非对称的存物箱。为了安全存储你的财物,你把它们放入存物箱并且投入钱币锁上它。就如同你的住宅钥匙锁上大门一样,钱币锁上了存物箱---在某种意义上,你的钱币就是密钥。锁上门后,你得到另外一把钥匙---也许是一把真正的钥匙;也许只是一张写有号码的纸条。要开启存物箱,你就要使用该钥匙或在键盘上输入号码。而这个时候,你投入多少钱币也是打不开存物箱的。

类似地,我们可以产生一个密码算法,其中一个密钥用来加密数据,另一个用来解密。这个模型的另一说法就是公钥密码学。要加密和解密数据,两个密钥

都需要使用,所以其中一个可以公开而不会危害安全性。这个密钥就是公钥。另一个则称之为私钥。我们用公钥加密数据,用私钥解密数据。就好象例子中的任何人都知道用钱币(公钥)锁上存物箱,但仍然打不开存物箱。只有拥有钥匙或写有号码的纸条(私钥)的人才能打开存物箱。

1976年后,提出了多种公开密钥算法,其中许多是不安全的。而那些被视为安全的算法,有许多却不实用,要么密钥太大,要么密文远大于明文。只有少数几个算法既安全又实用。其中有三种算法可以很好的用于加密和数字签名:RSA、ElGamal和Rabin。不过它们都很慢。它们加密和解密速度比对称算法要慢的多,通常是太慢以致无法用于许多快速数据加密。基于这点考虑,很多时候使用混合密码系统。使用带随机会话密钥的对称算法来加密消息,使用公开密钥算法来加密随机会话密钥。

三、RSA公钥密码算法原理

RSA算法是第一个比较完善的公开密钥算法。它既能用于加密也能用于数字签名。在已提出的公开密钥算法中,RSA是最容易理解和实现的。RSA以它的三个发明者Ron Rivest、Adi Shamir和Leonard Adleman的名字命名。该算法已经经受住了多年深入的密码分析,虽然密码分析者既不能证明也不能否认RSA的安全性,但这恰恰说明了该算法有一定的可信度。

RSA的安全基于大数分解的难度。其公开密钥和私人密钥是一对大素数(100到200个十进制数或更大)的函数。从一个公开密钥和密文中恢复出明文的难度等价于分解两个大素数之积。

四、结束语

密码技术是信息安全的核心技术。当前,公钥密码在信息安全中担负起密钥协商、数字签名、消息认证等重要角色,已成为最核心的密码。密码学还有许许多多的问题,当前,密码学发展面临着挑战和机遇。计算机网络通信技术的发展和信息时代的到来,给密码学提供了前所未有的发展机遇。在密码理论、密码技术、密码保密、密码管理等方面都应该有所发展,其中,公钥密码体制在现代信息安全中扮演者重要的角色。

椭圆曲线密码总结大全

椭圆曲线密码 概述: 椭圆曲线密码学(ECC, Elliptic curve cryptography )是基于椭圆曲线数学的一种公钥密码的方法。1985年,Neal Koblitz 和Victor Miller 分别独立提出了椭圆曲线密码体制(ECC),其依据就是定义在椭圆曲线点群上的离散对数问题的难解性。 引言: ECC 被广泛认为是在给定密钥长度的情况下,最强大的非对称算法,因此在对带宽要求十分紧的连接中会十分有用。 ECC 的主要优势是在某些情况下它比其他的方法使用更小的密钥——比如RSA ——提供相当的或更高等级的安全。ECC 的另一个优势是可以定义群之间的双线性映射,基于Weil 对或是Tate 对;双线性映射已经在密码学中发现了大量的应用,例如基于身份的加密。不过一个缺点是加密和解密操作的实现比其他机制花费的时间长。 国家标准与技术局和ANSI X9已经设定了最小密钥长度的要求,RSA 和DSA 是1024位,ECC 是160位,相应的对称分组密码的密钥长度是80位。NIST 已经公布了一列推荐的椭圆曲线用来保护5个不同的对称密钥大小(80, 112, 128, 192, 256)。一般而言,二进制域上的ECC 需要的非对称密钥的大小是相应的对称密钥大小的两倍。 椭圆曲线密码学的许多形式有稍微的不同,所有的都依赖于被广泛承认的解决椭圆曲线离散对数问题的困难性上,对应有限域上椭圆曲线的群。 引理及有关概念: (1) 无穷远元素(无穷远点,无穷远直线)平面上任意两相异直线的位置关系 有相交和平行两种。引入无穷远点,是两种不同关系统一。AB ⊥L1, L2∥L1,直线AP 由AB 起绕A 点依逆时针方向转动,P 为AP 与L1的交点,如图1。Q=∠BAP →π /2则AP → L2,可设想L1上有一点P ∞,它为L2和L1的交点,称之为无穷远点。直线L1上的无穷远点只能有一个(因为过A 点只能有一条平行于L1的直线L2,而两直线的交点只能有一个)。 图1 结论: 1. 平面上一组相互平行的直线,有公共的无穷远点(为与无穷远点相区别,把

公钥密码体制

数学文化课程报告论文题目:公钥密码体制的现状与发展 公钥密码体制的现状与发展 摘要:文中对公钥密码体制的现状与发展进行了介绍,其中着重讨论了几个比较重要的公钥密码体制M-H背包算法、RSA、ECC、量子密码、NTRU密码体制和基于辫群上的密码体制。 关键词:公钥密码体制;离散对数问题;格基归约;量子密码

1949年,Claude Shannon在《Bell System Technical Journal》上发表了题为“Communication Theory of Secrecy Systems”的论文,它是现代密码学的理论基础,这篇论文将密码学研究纳入了科学轨道,但由于受到一些因素的影响,该篇论文当时并没有引起人们的广泛重视。直到20世纪70年代,随着人类社会步入信息时代才引起人们的普遍重视,那个时期出现了现代密码的两个标志性成果。一个是美国国家标准局公开征集,并于1977年正式公布实施的美国数据加密标准;另一个是由Whitfield Diffie和Martin Hellman,在这篇文章中首次提出了公钥密码体制,冲破了长期以来一直沿用的私钥体制。自从公钥密码体制被提出以来,相继出现了许多公钥密码方案,如RSA、Elgamal密码体制、背包算法、ECC、XTR和NTRU等。 公钥密码体制的发现是密码学发展史上的一次革命。从古老的手工密码,到机电式密码,直至运用计算机的现代对称密码,这些编码系统虽然越来越复杂,但都建立在基本的替代和置换工具的基础上,而公钥密码体制的编码系统是基于数学中的单向陷门函数。更重要的是,公钥密码体制采用了两个不同的密钥,这对在公开的网络上进行保密通信、密钥分配、数字签名和认证有着深远的影响。文章共分为5部分:第1部分首先介绍了Merkle-Hellmen背包算法,第2,3,4,5,5部分分别讨论了RSA、ECC、量子密码、NTUR,同时对公钥密码体制进行了展望。 1、Merkle-Hellmen背包算法 1978年,Ralph Merkle和Martin Hellmen提出的背包算法是公钥密码体制用于加密的第一个算法,它起初只能用于加密,但后来经过Adi Shamtr的改进使之也能用于数字签名。其安全性基于背包难题,它是个NP完全问题,这意味

常见公钥加密算法有哪些

常见公钥加密算法有哪些 什么是公钥加密公钥加密,也叫非对称(密钥)加密(public key encrypTIon),属于通信科技下的网络安全二级学科,指的是由对应的一对唯一性密钥(即公开密钥和私有密钥)组成的加密方法。它解决了密钥的发布和管理问题,是目前商业密码的核心。在公钥加密体制中,没有公开的是私钥,公开的是公钥。 常见算法RSA、ElGamal、背包算法、Rabin(Rabin的加密法可以说是RSA方法的特例)、Diffie-Hellman (D-H)密钥交换协议中的公钥加密算法、EllipTIc Curve Cryptography (ECC,椭圆曲线加密算法)。使用最广泛的是RSA算法(由发明者Rivest、Shmir和Adleman 姓氏首字母缩写而来)是著名的公开金钥加密算法,ElGamal是另一种常用的非对称加密算法。 非对称是指一对加密密钥与解密密钥,这两个密钥是数学相关,用某用户密钥加密后所得的信息,只能用该用户的解密密钥才能解密。如果知道了其中一个,并不能计算出另外一个。因此如果公开了一对密钥中的一个,并不会危害到另外一个的秘密性质。称公开的密钥为公钥;不公开的密钥为私钥。 如果加密密钥是公开的,这用于客户给私钥所有者上传加密的数据,这被称作为公开密钥加密(狭义)。例如,网络银行的客户发给银行网站的账户操作的加密数据。 如果解密密钥是公开的,用私钥加密的信息,可以用公钥对其解密,用于客户验证持有私钥一方发布的数据或文件是完整准确的,接收者由此可知这条信息确实来自于拥有私钥的某人,这被称作数字签名,公钥的形式就是数字证书。例如,从网上下载的安装程序,一般都带有程序制作者的数字签名,可以证明该程序的确是该作者(公司)发布的而不是第三方伪造的且未被篡改过(身份认证/验证)。 对称密钥密码体制 所谓对称密钥密码体制,即加密密钥与解密密钥是相同的密码体制。 数据加密标准DES属于对称密钥密码体制。它是由IBM公司研制出,于1977年被美国

国产密码算法及应用报告-共11页

国产密码算法及应用 商用密码,是指能够实现商用密码算法的加密、解密和认证等功能的技术。(包括密码算法编程技术和密码算法芯片、加密卡等的实现技术)。商用密码技术是商用密码的核心,国家将商用密码技术列入国家秘密,任何单位和个人都有责任和义务保护商用密码技术的秘密。 商用密码的应用领域十分广泛,主要用于对不涉及国家秘密内容但又具有敏感性的内部信息、行政事务信息、经济信息等进行加密保护。比如各种安全认证、网上银行、数字签名等。 为了保障商用密码安全,国家商用密码管理办公室制定了一系列密码标准,包括SSF33 SM1(SCB2、SM2、SM3、SM4、SM7、SM9、祖冲之密码算法等等。其中SSF33 SM1、SM4 SM7、祖冲之密码是对称算法;SM2、SM9是非对称算法;SM3是哈希算法。 目前已经公布算法文本的包括SM2椭圆曲线公钥密码算法、SM3 密码杂凑算法、SM4分组密码算法等。 一、国密算法简介 1. SM1对称密码 国密SM1算法是由国家密码X局编制的一种商用密码分组标准对称算法,分组长度为128位,密钥长度都为128比特,算法安全保密强度及相关软硬件实现性能与AES相当,算法不公开,仅以IP核的形式存在于

芯片中。 采用该算法已经研制了系列芯片、智能IC卡、智能密码钥匙、加密卡、加密机等安全产品,广泛应用于电子政务、电子商务及国民经济的各个应用领域(包括国家政务通、警务通等重要领域)。 2. SM2椭圆曲线公钥密码算法 SM2算法就是ECC椭圆曲线密码机制,但在签名、密钥交换方面不同于ECDSA ECDH等国际标准,而是采取了更为安全的机制。国密SM2算法标准包括4个部分,第1部分为总则,主要介绍了ECC 基本的算法描述,包括素数域和二元扩域两种算法描述,第2部分为数字签名算法,这个算法不同于ECDSA算法,其计算量大,也比ECDSA 复杂些,也许这样会更安全吧,第3部分为密钥交换协议,与ECDH 功能相同,但复杂性高,计算量加大,第4部分为公钥加密算法,使用ECC公钥进行加密和ECC私钥进行加密算法,其实现上是在ECDH 上分散出流密钥,之后与明文或者是密文进行异或运算,并没有采用第3部分的密钥交换协议产生的密钥。对于SM2算法的总体感觉,应该是国家发明,其计算上比国际上公布的ECC算法复杂,相对来说算法速度可能慢,但可能是更安全一点。 设需要发送的消息为比特串M , len为M的比特长度。为了对明文M 进行加密,作为加密者的用户应实现以下运算步骤:步骤1:用随机数发生器产生随机数k€ [1, n -1]; 步骤2:计算椭圆曲线点C仁[k]G=(X1 , Y1 ),将C1的数据类型转换为比特串;

公钥加密算法

公钥加密算法 一.简介 公钥加密算法需要两个密钥:公开密钥(publickey)和私有密钥(privatekey)。公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。 图1 非对称加密的简化模型 非对称加密算法实现机密信息交换的基本过程是:甲方生成一对密钥并将其中的一把作为公用密钥向其它方公开;得到该公用密钥的乙方使用该密钥对机密信息进行加密后再发送给甲方;甲方再用自己保存的另一把专用密钥对加密后的信息进行解密。另一方面,甲方可以使用乙方的公钥对机密信息进行签名后再发送给乙方;乙方再用自己的私匙对数据进行验签。 甲方只能用其专用密钥解密由其公用密钥加密后的任何信息。非对称加密算法的保密性比较好,它消除了最终用户交换密钥的需要。 非对称密码体制的特点:密钥管理简单,算法强度复杂、安全性依赖于算法与密钥;但是由于其算法复杂,而使得加密解密速度没有对称加密解密的速度快。 二.起源 W.Diffie和M.Hellman 1976年在IEEE Trans.on Information刊物上发表了“ New Direction in Cryptography”文章,提出了“非对称密码体制即公开密钥密码体制”的概念,开创了密码学研究的新方向。 三.基本原理 1.A要向B发送信息,A和B都要产生一对用于加密和解密的公钥和私钥。 2.A的私钥保密,A的公钥告诉B;B的私钥保密,B的公钥告诉A。 3.A要给B发送信息时,A用B的公钥加密信息,因为A知道B的公钥。

公钥密码系统及RSA公钥算法

公钥密码系统及RSA公钥算法 07301910 张云霖 随着电脑连网的逐步实现,Internet前景越来越美好,全球经济发展正在进入信息经济时代,知识经济初见端倪。电脑信息的保密问题显得越来越重要,无论是个人信息通信还是电子商务发展,都迫切需要确保Internet网上信息传输的安全,需要确保信息安全。信息安全技术是一门综合学科,他涉及信息论、电脑科学和密码学等多方面知识,他的主要任务是研究电脑系统和通信网络内信息的保护方法以实现系统内信息的安全、保密、真实和完整。其中,信息安全的核心是密码技术。密码技术是集数学、电脑科学、电子和通信等诸多学科于一身的交叉学科。他不但能够确保机密性信息的加密,而且能够实现数字签名、身份验证、系统安全等功能。是现代化发展的重要科学之一。本文将对公钥密码系统及该系统中现在最广泛流行的RSA 算法做一些简单介绍。 公钥密码体制,突破性地解决了困扰着无数科学家的密钥分发问题,事实上,在这种体制中,人们甚至不用分发需要严格保密的密钥,这次突破同时也被认为是密码史上两千年来自单码替代密码发明以后最伟大的成就。这一全新的思想是本世纪70年代,美国斯坦福大学的两名学者Diffie和Hellman提出的,该体制和单钥密码最大的不同是:

在公钥密码系统中,加密和解密使用的是不同的密钥(相对于对称密钥,人们把他叫做非对称密钥),这两个密钥之间存在着相互依存关系:即用其中任一个密钥加密的信息只能用另一个密钥进行解密。这使得通信双方无需事先交换密钥就可进行保密通信。其中加密密钥和算法是对外公开的,人人都能够通过这个密钥加密文档然后发给收信者,这个加密密钥又称为公钥;而收信者收到加密文档后,他能够使用他的解密密钥解密,这个密钥是由他自己私人掌管的,并无需分发,因此又成称为私钥,这就解决了密钥分发的问题。 当前最著名、应用最广泛的公钥系统RSA是在1978年,由美国麻省理工学院(MIT)的Rivest、Shamir和Adleman在题为《获得数字签名和公开钥密码系统的方法》的论文中提出的。他是个基于数论的非对称(公开钥)密码体制,是一种分组密码体制。其名称来自于三个发明者的姓名首字母。他的安全性是基于大整数素因子分解的困难性,而大整数因子分解问题是数学上的著名难题,至今没有有效的方法予以解决,因此能够确保RSA算法的安全性。RSA系统是公钥系统的最具备典型意义的方法,大多数使用公钥密码进行加密和数字签名的产品和标准使用的都是RSA 算法。 RSA算法是第一个既能用于数据加密也能用于数字签名的算法,因此他为公用网络上信息的加密和鉴别提供了一种基本的方法。他通常是先生成一对RSA 密钥,其中之一是保密密钥,由

椭圆曲线加密算法

椭圆曲线加密算法 椭圆曲线密码学(英语:Elliptic curve cryptography,缩写为 ECC),一种建立公开密钥加密的算法,基于椭圆曲线数学。椭圆曲线在密码学中的使用是在1985年由Neal Koblitz和Victor Miller分别独立提出的。 ECC的主要优势是在某些情况下它比其他的方法使用更小的密钥——比如RSA 加密算法——提供相当的或更高等级的安全。ECC的另一个优势是可以定义群之间的双线性映射,基于Weil对或是Tate对;双线性映射已经在密码学中发现了大量的应用,例如基于身份的加密。不过一个缺点是加密和解密操作的实现比其他机制花费的时间长 1.椭圆曲线 在数学上,椭圆曲线(英语:Elliptic curve,缩写为EC)为一代数曲线,被下列式子所定义 y2=x3+ax+b 其是无奇点的;亦即,其图形没有尖点或自相交。 满足此条件的a b满足:4a3+27b2≠0 图1 在基础上需要定义一个无穷远的点,将此点作为零点:此时椭圆曲线定义为:{(x,y)∈?2|y2=x3+ax+b,4a3+27b2≠0}∪{0} 在椭圆曲线中的群的运算律: 1. 所有的点都在椭圆曲线上 2. 0点作为群上的单元点即 P+0=P 3. P点关于X轴的对称点为P点的逆即 P+(?P)=0

4.对于位于同一条直线上的三个点P,Q,R.则有 P+Q+R=0 图2 P+Q+R=0(无限远点 P Q R三个点的位置是任意的,他们满足加法的结合律,因为这个群是一个阿贝尔群。 2.椭圆曲线加法 当P和Q不相等时(x P≠x Q) 由于是在阿贝尔群上可以将P+Q+R=0改写为P+Q=?R所以在椭圆曲线上的加法定义为P Q 两点加法为P,Q两点连线与曲线的交点R的关于X轴对称点?R 图2-3 P+Q=-R P Q两点的直线的斜率为: m=y P?y Q x P?x Q 这条线与曲线的交点为:R=(x R,y R) x R=m2?x P?x Q y R=y P+m(x R?x P) 因此(x P,y P)+(x Q,y Q)=(x R,?y R)如果在图上表示即为上述的P+Q=?R

公钥密码算法

公钥密码算法 学号:0900250114 姓名:李荣亮 摘要:古往今来,通信中的安全保密问题一直受到广泛关注。历史上,交战双方在通信安全、保密和密码破译方面的优势均被认为是取得战争胜利的关键因素之一。今天,随着互联网的发展,人类进入信息化时代,现代通信涉及各个行业,信息安全已成为人人都关心的问题,敏感信息的安全传输越来越受到人们的关注,这就促使密码学揭去了神秘的面纱,为更广泛的领域和大众服务。 一、公钥密码学概述。 公开密钥密码算法的提出是整个密码学历史上最大的而且也许是最唯一真 正的变革。从最初一直到现代,几乎所有密码系统都建立在基本的替代和置换工具的基础上。在用了数千年的本质上可以手算完成的算法之后,常规的密码学随着转轮加密/解密机的发展才出现了一个重大进步。机电式变码旋转软件使得极其复杂的密码系统被研制出来。有了计算机后,更加复杂的系统被设计出来。但是不管是转轮机还是后来的DES(数据加密标准),虽然代表了重要的进展,却仍然依赖于替代和置换这样的基本工具。 公钥密码学则与以前的所有方法都截然不同。一方面公开密钥算法基于数学函数而不是替代和置换,更重要的是,公开密钥密码学是非对称的,它用到两个不同的密钥,而对称的常规加密则只使用一个密钥。使用两个密钥对于保密通信,密钥分配和鉴别等领域都有着深远的影响。 公钥密码算法中的密钥依性质划分,可分为公钥和私钥两种。 用户或系统产生一对密钥,将其中的一个公开,称为公钥;另一个自己保留,称为私钥。 任何获悉用户公钥的人都可用用户的公钥对信息进行加密与用户实现安全信息交互。 由于公钥与私钥之间存在的依存关系,只有用户本身才能解密该信息,任何未受授权用户甚至信息的发送者都无法将此信息解密。 在近代公钥密码系统的研究中, 其安全性都是基于难解的可计算问题的。 如: (1)大数分解问题; (2)计算有限域的离散对数问题;

公钥密码体制的介绍

目录 第一章绪论 (1) 1.1 研究背景与意义 (1) 第二章预备知识 (7) 2.1 复杂性理论 (7) 2.2 可证明安全理论 (8) 2.2.1 困难问题假设 (8) 2.2.2 形式化证明方法 (10) 2.3 公钥密码体制 (11) 2.3.1 PKE形式化定义 (11) 2.3.2 PKE的安全模型 (12) 2.5 密钥泄露 (12) 2.5.1 问题描述 (12) 2.5.2 解决方法 (13) 2.6 本章小结 (14) 致谢 (16)

第一章绪论 第一章绪论 本章主要阐述了公钥密码体制的研究背景和积极意义,并简单介绍了代理重加密体制的研究现状以及该密码体制在云存储数据共享领域的独特优势。最后,本章介绍了本文的主要研究工作和论文结构。 1.1 研究背景与意义 密码学是伴随着信息保密而产生的,但是随着密码学技术本身的不断发展和通信网络技术的不断发展,现代的密码学研究已经远远超越了信息保密的范围,被广泛应用于各种安全和隐私保护应用之中。它是一门古老的学科,又是一门新兴的交叉学科,在今后人类社会的发展历程中必将发挥越来越重要的作用。密码学的发展可分为3个阶段: 第一阶段:从古代一直到1949年,密码学都是停留在应用于军事政治等神秘领域的实践技术。从1949年香农(Shannon)发表了《保密系统的信息理论》错误!未找到引用源。后,密码学才由理论基础指导而上升为学科。这一阶段,密码学研究的突破并不大,而且应用方面仍然只局限于特殊领域。 第二阶段:以1976年迪菲(Diffie)与赫尔曼(Hellman)发表的论文《密码学的新方向》错误!未找到引用源。以及1977年美国发布的数据加密标准(DES)加密算法为标志,密码学进入了现代密码学。 第三阶段:伴随着相关理论的完善,以及由集成电路和因特网推动的信息化工业浪潮,密码学进入了一个全新爆发的时代:研究文献和成果层出不穷,研究的方向也不断拓展,并成为了一个数学、计算机科学、通信工程学等各学科密切相关的交叉学科,同时各种密码产品也走进了寻常百姓家,从原来局限的特殊领域进入了人民群众的生产、生活之中。 在信息社会,加密体制为保证信息的机密性提供了重要的技术手段。根据密钥的特点,可将加密体制分为对称密钥体制和非对称密钥体制两种。在对称加密体制中,通信双方为了建立一个安全的信道进行通信,需要选择相同的密钥,并将密钥秘密保存。根据对明文的加密方式不同,对称密码算法又分为分组加密算法和流密码算法。分组加密算法将明文分为固定长度的分组进行加密,而流密码算法则将明文按字符逐位加密,二者之间也不是有着不可逾越的鸿沟,很多时候,分组加密算法也可以用于构建流密码算法。目前,世界上存在的分组密码算法可能有成千上万种,而其中最有名的就是美国的DES、AES以及欧洲的IDEA算法。

公钥加密算法

实验五公钥加密算法—RSA 一、实验目的 通过使用RSA算法对实验数据进行加密和解密,掌握公钥加密算法的基本原理,熟练掌握RSA算法各功能模块的工作原理和具体运算过程。 二、实验原理 RSA公钥加密算法是1977年由Ron Rivest、Adi Shamirh和LenAdleman在(美国麻省理工学院)开发的。RSA取名来自开发他们三者的名字。RSA是目前最有影响力的公钥加密算法,它能够抵抗到目前为止已知的所有密码攻击,已被ISO推荐为公钥数据加密标准。RSA算法基于一个十分简单的数论事实:将两个大素数相乘十分容易,但那时想要对其乘积进行因式分解却极其困难,因此可以将乘积公开作为加密密钥。 1. RSA的密钥生成 RSA的算法涉及三个参数,n、e、d。 其中,n是两个大质数p、q的积,n的二进制表示时所占用的位数,就是所谓的密钥长度。鉴于现代对于大整数分解的水平不断增强,一般P、Q的取值都要求在1024位以上。 e和d是一对相关的值,e可以任意取,但要求e与(p-1)*(q-1)互质;再选择d,要求: (e*d)mod((p-1)*(q-1))=1。 就是密钥对。一般将前者当作公钥,后者作为私钥使用。 2. RSA加密/解密过程 RSA加解密和解密的算法完全相同,设A为明文,B为密文,则: A=B^e mod n;B=A^d mod n; e和d可以互换使用,即: A=B^d mod n;B=A^e mod n; 三、实验环境 运行Windows或Linux操作系统的PC机,具有gcc(Linux)、VC(Windows)等C语言编译环境。 四、 实验内容和步聚 1.根据本讲义提供的RSA程序,分析RSA算法的实现过程: (1).利用:void GenerateKey(RSA_Key& PublicKey,RSA_Key& PrivateKey,unsigned int iKeySize)函数根据实际需要生成符合要求长度的公钥和私钥,大致步骤如下: a) 随机生成两个指定长度的大素数P,Q。 b) 计算N=P*Q,以及N的欧拉函数φ(N)=(P-1)*(Q-1)。 c) 随机生成一个与φ(N)互素的大整数E(公钥)。 d) 根据公式ed≡1(modΦ(N)),利用函数multi_inverse(1, Big*, Big, Big*)计算出 私钥D。 (2).将某个大整数赋值给一个Big型变量M(明文)。 (3).调用函数powmod(..,..,..,..)对明文M加密得到密文C。 (4).调用函数powmod(..,..,..,..)对密文C解密得到明文D。 (5).比较M与D是否一致,判断实验结果是否正确。

公钥密码体制原理及展望---读《New Directions in Cryptography》

公钥密码体制原理及展望 ----读《New Directions in Cryptography》 姓名 学号 指导教师 时间2010年11月19日星期五

公钥密码体制原理及展望 ----读《New Directions in Cryptography》 摘要:本文通过读《New Direction in Cryptography》一文,简述了密码学的发展,重点讨论了公钥密码体制的算法及安全性。并在此基础上介绍了ECC和量子密码,了解了非对称密码体制的应用,展望了密码学未来的发展方向。 关键字:公钥密码体制,单向陷门函数、ECC、量子密码 一概述 密码学是研究如何隐密地传递信息的学科。在现代特別指对信息以及其传输的数学性研究,常被认為是数学和计算机科学的分支,和信息论也密切相关。回顾密码学的发展历程: 第一个阶段是古典密码学(19世纪以前),主要包括代替密码、换位密码以及代替密码与换位密码的组合方式等。 第二阶段是中世纪密码学,它是宗教上被刺激的原文分析对Quran那些导致了发明频率分析打破的技术替换密码。它是最根本的cryptanalytic前进直到WWII。所有暗号根本上依然是脆弱直到这个cryptanalytic技术发明polyalphabetic暗号。 第三阶段是从1800到第二次世界大战,由第二次世界大战机械和机电暗号机器在宽用途,虽然这样机器是不切实际的地方继续的人工制在使用中。巨大前进被做了暗号打破所有在秘密。 第四阶段是现代密码学,C.E.Shannon于1949年发表的划时代论文“The Communication Theory of Secret Systems”,这是现代密码学的第一次发展也是开端。而更重要的一次发展是1976年,当时在美国斯坦福大学的迪菲(Diffie)和赫尔曼(Hellman)两人提出了公开密钥密码的新思想,论文《New Direction in Cryptography》把密钥分为加密的公钥和解密的私钥,这是现代密码学的经典之作,是密码学的一场革命。 《New Direction in Cryptography》一文为解决传统密码体制(主要针对对称密码体制)密钥分发困难、密钥集中了密文的安全性等缺陷,设计了公钥密码体制,是非对称密码学的开山之作。下面简要地介绍一下这篇文章的主要内容。 二公钥密码体制基本原理 公钥密码算法中的密钥依性质划分,可分为公钥和私钥两种。用户或系统产生一对密钥,将其中的一个公开,称为公钥;另一个自己保留,称为私钥。任何获悉用户公钥的人都可用用户的公钥对信息进行加密与用户实现安全信息交互。由于公钥与私钥之间存在的依存关系,只有用户本身才能解密该信息,任何未受授权用户甚至信息的发送者都无法将此信息解密。所以在公钥密码系统中,首先要求加密函数具有单向性,即求逆的困难性。即: 一个可逆函数f:A→B,若它满足: 1o对所有x∈A,易于计算f(x)。 2o对“几乎所有x∈A”由f(x)求x“极为困难”,以至于实际上不可能做到,则称f为一单向(One-way)函数。 但是,要做加密处理,对加密函数仅有单向的要求还不够,必须还要满足,

常见的几种加密算法

1、常见的几种加密算法: DES(Data Encryption Standard):数据加密标准,速度较快,适用于加密大量数据的场合; 3DES(Triple DES):是基于DES,对一块数据用三个不同的密钥进行三次加密,强度更高; RC2和RC4:用变长密钥对大量数据进行加密,比DES 快;IDEA(International Data Encryption Algorithm)国际数据加密算法,使用128 位密钥提供非常强的安全性; RSA:由RSA 公司发明,是一个支持变长密钥的公共密钥算法,需要加密的文件块的长度也是可变的; DSA(Digital Signature Algorithm):数字签名算法,是一种标准的DSS(数字签名标准); AES(Advanced Encryption Standard):高级加密标准,是下一代的加密算法标准,速度快,安全级别高,目前AES 标准的一个实现是Rijndael 算法; BLOWFISH,它使用变长的密钥,长度可达448位,运行速度很快; 其它算法,如ElGamal钥、Deffie-Hellman、新型椭圆曲线算法ECC等。 2、公钥和私钥:

私钥加密又称为对称加密,因为同一密钥既用于加密又用于解密。私钥加密算法非常快(与公钥算法相比),特别适用于对较大的数据流执行加密转换。 公钥加密使用一个必须对未经授权的用户保密的私钥和一个可以对任何人公开的公钥。用公钥加密的数据只能用私钥解密,而用私钥签名的数据只能用公钥验证。公钥可以被任何人使用;该密钥用于加密要发送到私钥持有者的数据。两个密钥对于通信会话都是唯一的。公钥加密算法也称为不对称算法,原因是需要用一个密钥加密数据而需要用另一个密钥来解密数据。

公钥密码体制的研究

目录 第一章绪论 1.1 研究背景与意义 第二章预备知识 2.1 复杂性理论 2.2 可证明安全理论 2.2.1 困难问题假设 2.2.2 形式化证明方法 2.3 公钥密码体制 2.3.1 PKE形式化定义 2.3.2 PKE的安全模型 2.5 密钥泄露 2.5.1 问题描述 2.5.2 解决方法 2.6 本章小结 致谢

第一章绪论 本章主要阐述了公钥密码体制的研究背景和积极意义,并简单介绍了代理重加密体制的研究现状以及该密码体制在云存储数据共享领域的独特优势。最后,本章介绍了本文的主要研究工作和论文结构。 1.1 研究背景与意义 密码学是伴随着信息保密而产生的,但是随着密码学技术本身的不断发展和通信网络技术的不断发展,现代的密码学研究已经远远超越了信息保密的范围,被广泛应用于各种安全和隐私保护应用之中。它是一门古老的学科,又是一门新兴的交叉学科,在今后人类社会的发展历程中必将发挥越来越重要的作用。密码学的发展可分为3个阶段:第一阶段:从古代一直到1949年,密码学都是停留在应用于军事政治等神秘领域的实践技术。从1949年香农(Shannon)发表了《保密系统的信息理论》[1]后,密码学才由理论基础指导而上升为学科。这一阶段,密码学研究的突破并不大,而且应用方面仍然只局限于特殊领域。 第二阶段:以1976年迪菲(Diffie)与赫尔曼(Hellman)发表的论文《密码学的新方向》[2]以及1977年美国发布的数据加密标准(DES)加密算法为标志,密码学进入了现代密码学。 第三阶段:伴随着相关理论的完善,以及由集成电路和因特网推动的信息化工业浪潮,密码学进入了一个全新爆发的时代:研究文献和成果层出不穷,研究的方向也不断拓展,并成为了一个数学、计算机科学、通信工程学等各学科密切相关的交叉学科,同时各种密码产品也走进了寻常百姓家,从原来局限的特殊领域进入了人民群众的生产、生活之中。 在信息社会,加密体制为保证信息的机密性提供了重要的技术手段。根据密钥的特点,可将加密体制分为对称密钥体制和非对称密钥体制两种。在对称加密体制中,通信双方为了建立一个安全的信道进行通信,需要选择相同的密钥,并将密钥秘密保存。根据对明文的加密方式不同,对称密码算法又分为分组加密算法和流密码算法。分组加密算法将明文分为固定长度的分组进行加密,而流密码算法则将明文按字符逐

椭圆曲线密码的C语言设计与实现

计算机研究生开放研究 《椭圆曲线密码的C语言设计与实现》 美国GeneChiu基金资助 基于TOM算法库的ECC加密算法的C语言设计与实现 研究生徐立均 内容: 一、源代码下载 二、ECC算法的设计思想 三、椭圆曲线参数的选取和基点的确定 四、椭圆曲线的点加和纯量乘法 五、加密文件的读入与输出 六、密文的存取和读入 七、ECC加密的实现

八、ECC解密的实现 九、测试结果及分析 一、源代码下载 本文使用了TOM算法库实现了椭圆曲线公钥密码体制,能对各类不同的磁盘文件进行加密和解密。 1 请下载可执行程序MY_ECC.exe,此程序无需任何额外的LIB或DLL,可在Windows下独立运行,运行情况如下:

2 请下载源代码source.rar: 编译此源代码需要使用TOM的高精度算法库 MathLib.lib 和相关的头文件 tommath.h tommath_class.h tommath_superclass.h 一并打包在source.rar中,请下载

3 对于TOM的高精度算法库的详细说明,请看本站C语言: 二、 ECC算法的设计思想 根据椭圆曲线进行加密通信的过程,首先选定一个适合加密的椭圆曲线Ep(a,b),并取椭圆曲线上一点,作为基点G。选择一个私有密钥k,并生成公开密钥K=kG。加密时,将明文编码到Ep(a,b)上一点M,并产生一个随机整数r(r < n)。计算点C1=M+rK;C2=rG。将C1、C2存入密文。解密时,从密文中读出C1、C2,计算C1-kC2,根据:C1-kC2=M+rK-k(rG)=M+rK-r(kG)=M, 解得的结果就是点M,即明文。 三、椭圆曲线参数的选取和基点的确定 并不是所有的椭圆曲线都适合加密,y^2=x^3+ax+b是一类可以用来加密的椭圆曲线,也是最为简单的一类。下面我们就选用 y^2=x^3+ax+b作为我们的加密曲线。这条曲线定义在Fp上:两个满足下列条件的小于p(p为素数)的非负整数a、b:4a3+27b2≠0 (mod p) 则满足下列方程的所有点(x,y),再加上无穷远点∞ ,构成一条椭圆曲线。y^2=x^3+ax+b(mod p) 其中 x,y属于0到p-1间的整数,并将这条椭圆曲线记为Ep(a,b)。

公钥密码技术讲义

公钥密码技术讲义 1.问题的引入 1.1攻击类型 根据攻击的不同方式,攻击被分为被动攻击和主动攻击。 图表1消息的正常传送 被动攻击 获得正在传送的信息。其特点是:偷听或监视传送。攻击的手段是:泄露消息内容和通信量分析。(绘图说明) 主动攻击 主动攻击主要涉及到数据流的修改或创建错误流。攻击手段是:伪装、重放、修改消息和拒绝服务。 1.2安全服务 (简要说明) A.XX性 B.验证(鉴别) C.完整性 D.不可抵赖性(不可否认性) E.访问控制 F.可用性

1.3常规加密的缺陷 尽管对称密码技术有一些很好的特性,但它也存在着明显的缺陷,主要在于其密钥的管理: A.进行安全通信前需要以安全方式进行密钥交换。这一步骤,在某种情况下是可行的, 但在某些情况下会非常困难,甚至无法实现。 B.密钥规模复杂。举例来说,A与B两人之间的密钥必须不同于A和C两人之间的密钥, 否则给B的消息的安全性就会受到威胁。在有1000个用户的团体中,A需要保持至少999个密钥(更确切的说是1000个,如果她需要留一个密钥给他自己加密数据)。对于该团体中的其它用户,此种情况同样存在。这样,这个团体一共需要将近50万个不同的密钥!推而广之,n个用户的团体需要n2/2个不同的密钥。 2.公钥密码技术 2.1基本概念 应用两个不同的密钥:一个是公开的,一个是秘密的。从公开密钥(以下简称为公钥)很难推断出私人密钥(以下简称为私钥)。持有公钥的任何人都可以加密消息,但却无法解密。只有持有私钥的人才能够解密。 2.2加密/解密基本步骤 图表2加密/解密基本步骤 一般的情况下,网络中的用户约定一个共同的公开密钥密码系统,每个用户都有自己的公钥和私钥,并且所有的公钥都保存在某个公开的数据库中,任何用户都可以访问此数据库。这样加密协议如下: A.Alice从公开数据库中取出Bob的公开密钥。 B.Alice用Bob的公开密钥加密她的消息,然后传送给Bob。 C.Bob用他的私钥解密Alice的消息。

公钥密码体制的研究

公钥密码体制的研究

目录 第一章绪论 (1) 1.1 研究背景与意义 (1) 第二章预备知识 (7) 2.1 复杂性理论 (7) 2.2 可证明安全理论 (8) 2.2.1 困难问题假设 (8) 2.2.2 形式化证明方法 (10) 2.3 公钥密码体制 (11) 2.3.1 PKE形式化定义 (11) 2.3.2 PKE的安全模型 (12) 2.5 密钥泄露 (12) 2.5.1 问题描述 (12) 2.5.2 解决方法 (13) 2.6 本章小结 (14) 致谢 (17)

第一章绪论 本章主要阐述了公钥密码体制的研究背景和积极意义,并简单介绍了代理重加密体制的研究现状以及该密码体制在云存储数据共享领域的独特优势。最后,本章介绍了本文的主要研究工作和论文结构。 1.1 研究背景与意义 密码学是伴随着信息保密而产生的,但是随着密码学技术本身的不断发展和通信网络技术的不断发展,现代的密码学研究已经远远超越了信息保密的范围,被广泛应用于各种安全和隐私保护应用之中。它是一门古老的学科,又是一门新兴的交叉学科,在今后人类社会的发展历程中必将发挥越来越重要的作用。密码学的发展可分为3个阶段: 第一阶段:从古代一直到1949年,密码学都是停留在应用于军事政治等神秘领域的实践技术。从1949年香农(Shannon)发表了《保密系统的信息理论》错误!未找到引用源。后,密码学才由理论基础指导而上升为学科。这一阶段,密码学研究的突破并不大,而且应用方面仍然只局限于特殊领域。 第二阶段:以1976年迪菲(Diffie)与赫尔曼(Hellman)发表的论文《密码学的新方向》错误!未找到引用源。以及1977年美国发布的数据加密标准(DES)加密算法为标志,密码学进入了现代密码学。 第三阶段:伴随着相关理论的完善,以及由集成电路和因特网推动的信息化工业浪潮,密码学进入了一个全新爆发的时代:研究文献和成果层出不穷,研究的方向也不断拓展,并成为了一个数学、计算机科学、通信工程学等各学科密切相关的交叉学科,同时各种密码产品也走进了寻常百姓家,从原来局限的特殊领域进入了人民群众的生产、生活之中。 在信息社会,加密体制为保证信息的机密性提供了重要的技术手段。根据密钥的特点,可将加密体制分为对称密钥体制和非对称密钥体制两种。在对称加密体制中,通信双方为了建立一个安全的信道进行通信,需要选择相同的密钥,并将密钥秘密保存。根据对明文的加密方式不同,对称密码算法又分为分组加密算法和流密码算法。分组加密算法将明文分为固定长度的分组进行加密,而流密码算法则将明文按字符逐位加密,二者之间也不是有着不可逾越的鸿沟,很多时候,分组加密算法也可以用于构建流密码算法。目前,世界上存在的分组密码算法可能有成千上万种,而其中最有名的就是美国的DES、AES以及欧洲的IDEA算法。

RSA算法公钥加密算法

RSA1978年,MIT的Rivest、Shamir、Adleman提出RSA算法 非对称加密(公开密钥加密)密码学的一次革命,定义:KA≠KB ,KA、E和D公开 特点: 基于数论原理(大数分解难题) 是目前应用最广泛的公钥加密算法 属于块加密算法 在数论,对正整数n,欧拉函数是少于或等于n的数中与n互质的数的数目。此函数以其首名研究者欧拉命名,它又称为Euler's totient function、φ函数、欧拉商数等。 RSA算法原理 l 定义:RSA加密算法 确定密钥: 1. 找到两个大质数,p,q 2. Let n=pq 3. let m=(p-1)(q-1);Choose e and d such that de=1(%m). 4. Publish n and e as public key. Keep d and n as secret key. 加密: C=M^e(%n) 解密: M=(C^d)%n 其中C=M^e(%n) 为C%n=(M^e)%n 存在的主要问题是大数计算和大数存储的问题。 什么是RSA RSA算法是第一个能同时用于加密和数字签名的算法,也易于理解和操作。 RSA是被研究得最广泛的公钥算法,从提出到现在已近二十年,经历了各种攻击的考验,逐渐为人们接受,普遍认为是目前最优秀的公钥方案之一。RSA的安全性依赖于大数的因子分解,但并没有从理论上证明破译RSA的难度与大数分解难度等价。即RSA的重大缺陷是无法从理论上把握它的保密性能如何,而且密码学界多数人士倾向于因子分解不是NPC问题。

RSA的缺点主要有:A)产生密钥很麻烦,受到素数产生技术的限制,因而难以做到一次一密。B)分组长度太大,为保证安全性,n 至少也要600 bits以上,使运算代价很高,尤其是速度较慢,较对称密码算法慢几个数量级;且随着大数分解技术的发展,这个长度还在增加,不利于数据格式的标准化。目前,SET(Secure Electronic Transaction)协议中要求CA采用2048比特长的密钥,其他实体使用1024比特的密钥。 这种算法1978年就出现了,它是第一个既能用于数据加密也能用于数字签名的算法。它易于理解和操作,也很流行。算法的名字以发明者的名字命名:Ron Rivest, AdiShamir 和Leonard Adleman。 RSA算法是一种非对称密码算法,所谓非对称,就是指该算法需要一对密钥,使用其中一个加密,则需要用另一个才能解密。 RSA的算法涉及三个参数,n、e1、e2。 其中,n是两个大质数p、q的积,n的二进制表示时所占用的位数,就是所谓的密钥长度。 e1和e2是一对相关的值,e1可以任意取,但要求e1与(p-1)*(q-1)互质;再选择e2,要求(e2*e1)mod((p-1)*(q-1))=1。 (n及e1),(n及e2)就是密钥对。 RSA加解密的算法完全相同,设A为明文,B为密文,则:A=B^e1 mod n;B=A^e2 mod n; e1和e2可以互换使用,即: A=B^e2 mod n;B=A^e1 mod n; 一、RSA 的安全性 RSA的安全性依赖于大数分解,但是否等同于大数分解一直未能得到理论上的证明,因为没有证明破解RSA就一定需要作大数分解。假设存在一种无须分解大数的算法,那它肯定可以修改成为大数分解算法。目前,RSA 的一些变种算法已被证明等价于大数分解。不管怎样,分解n是最显然的攻击方法。现在,人们已能分解多个十进制位的大素数。因此,模数n 必须选大一些,因具体适用情况而定。 二、RSA的速度 由于进行的都是大数计算,使得RSA最快的情况也比DES慢上倍,无论是软件还是硬件实现。速度一直是RSA的缺陷。一般来说只用于少量数据加密。 三、RSA的选择密文攻击 RSA在选择密文攻击面前很脆弱。一般攻击者是将某一信息作一下伪装( Blind),让拥有私钥的实体签署。然后,经过计算就可得到它所想要的信息。实际上,攻击利用的都是同一个弱点,即存在这样一个事实:乘幂保留了输入的乘法结构:

公钥密码系统及RSA公钥算法

公钥密码系统及RSA公钥算法 摘要: 本文简单介绍了公开密钥密码系统的思想和特点,并具体介绍了RSA算法的理论基础,工作原理和具体实现过程,并通过一个简单例子说明了该算法是如何实现。在本文的最后,概括说明了RSA算法目前存在的一些缺点和解决方法。 关键词:公钥密码体制,公钥,私钥, RSA 中图分类号:TP309.7 §1引言 随着计算机联网的逐步实现,Internet前景越来越美好,全球经济发展正在进入信息经济时代,知识经济初见端倪。计算机信息的保密问题显得越来越重要,无论是个人信息通信还是电子商务发展,都迫切需要保证Internet网上信息传输的安全,需要保证信息安全。信息安全技术是一门综合学科,它涉及信息论、计算机科学和密码学等多方面知识,它的主要任务是研究计算机系统和通信网络内信息的保护方法以实现系统内信息的安全、保密、真实和完整。其中,信息安全的核心是密码技术。密码技术是集数学、计算机科学、电子与通信等诸多学科于一身的交叉学科。它不仅能够保证机密性信息的加密,而且能够实现数字签名、身份验证、系统安全等功能。是现代化发展的重要科学之一。本文将对公钥密码系统及该系统中目前最广泛流行的RSA 算法做一些简单介绍。 §2公钥密码系统 要说明公钥密码系统,首先来了解一下不同的加密算法:目前的加密算法按密钥方式可分为单钥密码算法和公钥密码算法。 2.1. 单钥密码 又称对称式密码,是一种比较传统的加密方式,其加密运算、解密运算使用的是同样的密钥,信息的发送者和信息的接收者在进行信息的传输与处理时,必须共同持有该密码(称为对称密码)。因此,通信双方都必须获得这把钥匙,并保持钥匙的秘密。 单钥密码系统的安全性依赖于以下两个因素:第一,加密算法必须是足够强的,仅仅基于密文本身去解密信息在实践上是不可能的;第二,加密方法的安全性依赖于密钥的秘密性,而不是算法的秘密性,因此,我们没有必要确保算法的秘密性(事实上,现实中使用的很多单钥密码系统的算法都是公开的),但是我们一定要保证密钥的秘密性。 从单钥密码的这些特点我们容易看出它的主要问题有两点:第一,密钥量问题。在单钥密码系统中,每一对通信者就需要一对密钥,当用户增加时,必然会带来密钥量的成倍增长,因此在网络通信中,大量密钥的产生﹑存放和分配将是一个难以解决的问题。第二,密钥分发问题。单钥密码系统中,加密的安全性完

相关主题
文本预览
相关文档 最新文档