当前位置:首页 » 操作系统 » 公钥算法基于

公钥算法基于

发布时间: 2022-04-10 22:24:11

⑴ 公开密钥密码体系的算法

公开密钥算法是在1976年由当时在美国斯坦福大学的迪菲(Diffie)和赫尔曼(Hellman)两人首先发明的(论文New Direction in Cryptography)。但目前最流行的RSA是1977年由MIT教授Ronald L.Rivest,Adi Shamir和Leonard M.Adleman共同开发的,分别取自三名数学家的名字的第一个字母来构成的。
1976年提出的公开密钥密码体制思想不同于传统的对称密钥密码体制,它要求密钥成对出现,一个为加密密钥(e),另一个为解密密钥(d),且不可能从其中一个推导出另一个。自1976年以来,已经提出了多种公开密钥密码算法,其中许多是不安全的, 一些认为是安全的算法又有许多是不实用的,它们要么是密钥太大,要么密文扩展十分严重。多数密码算法的安全基础是基于一些数学难题, 这些难题专家们认为在短期内不可能得到解决。因为一些问题(如因子分解问题)至今已有数千年的历史了。
公钥加密算法也称非对称密钥算法,用两对密钥:一个公共密钥和一个专用密钥。用户要保障专用密钥的安全;公共密钥则可以发布出去。公共密钥与专用密钥是有紧密关系的,用公共密钥加密的信息只能用专用密钥解密,反之亦然。由于公钥算法不需要联机密钥服务器,密钥分配协议简单,所以极大简化了密钥管理。除加密功能外,公钥系统还可以提供数字签名。 公钥加密算法中使用最广的是RSA。RSA使用两个密钥,一个公共密钥,一个专用密钥。如用其中一个加密,则可用另一个解密,密钥长度从40到2048bit可变,加密时也把明文分成块,块的大小可变,但不能超过密钥的长度,RSA算法把每一块明文转化为与密钥长度相同的密文块。密钥越长,加密效果越好,但加密解密的开销也大,所以要在安全与性能之间折衷考虑,一般64位是较合适的。RSA的一个比较知名的应用是SSL,在美国和加拿大SSL用128位RSA算法,由于出口限制,在其它地区(包括中国)通用的则是40位版本。
RSA算法研制的最初理念与目标是努力使互联网安全可靠,旨在解决DES算法秘密密钥的利用公开信道传输分发的难题。而实际结果不但很好地解决了这个难题;还可利用RSA来完成对电文的数字签名以抗对电文的否认与抵赖;同时还可以利用数字签名较容易地发现攻击者对电文的非法篡改,以保护数据信息的完整性。 通常信息安全的目标可以概括为解决信息的以下问题:
保密性(Confidentiality)保证信息不泄露给未经授权的任何人。
完整性(Integrity)防止信息被未经授权的人篡改。
可用性(Availability)保证信息和信息系统确实为授权者所用。
可控性(Controllability)对信息和信息系统实施安全监控,防止非法利用信息和信息系统。
密码是实现一种变换,利用密码变换保护信息秘密是密码的最原始的能力,然而,随着信息和信息技术发展起来的现代密码学,不仅被用于解决信息的保密性,而且也用于解决信息的完整性、可用性和可控性。可以说,密码是解决信息安全的最有效手段,密码技术是解决信息安全的核心技术。
公用密钥的优点就在于,也许你并不认识某一实体,但只要你的服务器认为该实体的CA是可靠的,就可以进行安全通信,而这正是Web商务这样的业务所要求的。例如信用卡购物。服务方对自己的资源可根据客户CA的发行机构的可靠程度来授权。目前国内外尚没有可以被广泛信赖的CA。美国Natescape公司的产品支持公用密钥,但把Natescape公司作为CA。由外国公司充当CA在中国是一件不可想象的事情。
公共密钥方案较保密密钥方案处理速度慢,因此,通常把公共密钥与专用密钥技术结合起来实现最佳性能。即用公共密钥技术在通信双方之间传送专用密钥,而用专用密钥来对实际传输的数据加密解密。另外,公钥加密也用来对专用密钥进行加密。
在这些安全实用的算法中,有些适用于密钥分配,有些可作为加密算法,还有些仅用于数字签名。多数算法需要大数运算,所以实现速度很慢,不能用于快的数据加密。以下将介绍典型的公开密钥密码算法-RSA。
RSA算法很好的完成对电文的数字签名以抗对数据的否认与抵赖;利用数字签名较容易地发现攻击者对电文的非法篡改,以保护数据信息的完整性。目前为止,很多种加密技术采用了RSA算法,比如PGP(PrettyGoodPrivacy)加密系统,它是一个工具软件,向认证中心注册后就可以用它对文件进行加解密或数字签名,PGP所采用的就是RSA算法。由此可以看出RSA有很好的应用。

⑵ 电脑操作的基于公钥的加密算法

一个好的加密算法的重要特点之一是具有这种能力:可以指定一个密码或密钥,并用它来加密明文,不同的密码或密钥产生不同的密文。这又分为两种方式:对称密钥算法和非对称密钥算法。所谓对称密钥算法就是加密解密都使用相同的密钥,非对称密钥算法就是加密解密使用不同的密钥。非常着名的pgp公钥加密以及rsa加密方法都是非对称加密算法。加密密钥,即公钥,与解密密钥,即私钥,是非常的不同的。从数学理论上讲,几乎没有真正不可逆的算法存在。例如,对于一个输入‘a’执行一个操作得到结果‘b’,那么我们可以基于‘b’,做一个相对应的操作,导出输入‘a’。在一些情况下,对于每一种操作,我们可以得到一个确定的值,或者该操作没有定义(比如,除数为0)。对于一个没有定义的操作来讲,基于加密算法,可以成功地防止把一个公钥变换成为私钥。因此,要想破译非对称加密算法,找到那个唯一的密钥,唯一的方法只能是反复的试验,而这需要大量的处理时间。
rsa加密算法使用了两个非常大的素数来产生公钥和私钥。即使从一个公钥中通过因数分解可以得到私钥,但这个运算所包含的计算量是非常巨大的,以至于在现实上是不可行的。加密算法本身也是很慢的,这使得使用rsa算法加密大量的数据变的有些不可行。这就使得一些现实中加密算法都基于rsa加密算法。pgp算法(以及大多数基于rsa算法的加密方法)使用公钥来加密一个对称加密算法的密钥,然后再利用一个快速的对称加密算法来加密数据。这个对称算法的密钥是随机产生的,是保密的,因此,得到这个密钥的唯一方法就是使用私钥来解密。
我们举一个例子:假定现在要加密一些数据使用密钥‘12345’。利用rsa公钥,使用rsa算法加密这个密钥‘12345’,并把它放在要加密的数据的前面(可能后面跟着一个分割符或文件长度,以区分数据和密钥),然后,使用对称加密算法加密正文,使用的密钥就是‘12345’。当对方收到时,解密程序找到加密过的密钥,并利用rsa私钥解密出来,然后再确定出数据的开始位置,利用密钥‘12345’来解密数据。这样就使得一个可靠的经过高效加密的数据安全地传输和解密。

⑶ 公钥加密的常见算法

RSA、ElGamal、背包算法、Rabin(Rabin的加密法可以说是RSA方法的特例)、Diffie-Hellman (D-H) 密钥交换协议中的公钥加密算法、Elliptic Curve Cryptography(ECC,椭圆曲线加密算法)。使用最广泛的是RSA算法(由发明者Rivest、Shmir和Adleman姓氏首字母缩写而来)是着名的公开金钥加密算法,ElGamal是另一种常用的非对称加密算法。

⑷ 公钥算法的介绍

这是一种不对称加密算法。公钥算法包括快速公钥算法与传统公钥算法。快速公钥算法与传统公钥算法相比具有更广泛地应用前景,对快速公钥系统的研究是当前公钥系统研究的一个热点。

⑸ 简要说说对称加密和非对称加密的原理以及区别是什么

对称加密的原理是数据发送方将明文(原始数据)和加密密钥一起经过特殊加密算法处理后,使其变成复杂的加密密文发送出去。接收方收到密文后,若想解读原文,则需要使用加密密钥及相同算法的逆算法对密文进行解密,才能使其恢复成可读明文。

非对称加密的原理是甲方首先生成一对密钥同时将其中的一把作为公开密钥;得到公开密钥的乙方再使用该密钥对需要加密的信息进行加密后再发送给甲方;甲方再使用另一把对应的私有密钥对加密后的信息进行解密,这样就实现了机密数据传输。

对称加密和非对称加密的区别为:密钥不同、安全性不同、数字签名不同。

一、密钥不同

1、对称加密:对称加密加密和解密使用同一个密钥。

2、非对称加密:非对称加密加密和解密所使用的不是同一个密钥,需要两个密钥来进行加密和解密。

二、安全性不同

1、对称加密:对称加密如果用于通过网络传输加密文件,那么不管使用任何方法将密钥告诉对方,都有可能被窃听。

2、非对称加密:非对称加密因为它包含有两个密钥,且仅有其中的“公钥”是可以被公开的,接收方只需要使用自己已持有的私钥进行解密,这样就可以很好的避免密钥在传输过程中产生的安全问题。

三、数字签名不同

1、对称加密:对称加密不可以用于数字签名和数字鉴别。

2、非对称加密:非对称加密可以用于数字签名和数字鉴别。

⑹ 密钥密码体系的公开密钥算法RSA

公开密钥算法是在1976年由当时在美国斯坦福大学的迪菲(Diffie)和赫尔曼(Hellman)两人首先发明的(论文New Direction in Cryptography)。但目前最流行的RSA是1977年由MIT教授Ronald L.Rivest,Adi Shamir和Leonard M.Adleman共同开发的,分别取自三名数学家的名字的第一个字母来构成的。
1976年提出的公开密钥密码体制思想不同于传统的对称密钥密码体制,它要求密钥成对出现,一个为加密密钥(e),另一个为解密密钥(d),且不可能从其中一个推导出另一个。自1976年以来,已经提出了多种公开密钥密码算法,其中许多是不安全的, 一些认为是安全的算法又有许多是不实用的,它们要么是密钥太大,要么密文扩展十分严重。多数密码算法的安全基础是基于一些数学难题, 这些难题专家们认为在短期内不可能得到解决。因为一些问题(如因子分解问题)至今已有数千年的历史了。
公钥加密算法也称非对称密钥算法,用两对密钥:一个公共密钥和一个专用密钥。用户要保障专用密钥的安全;公共密钥则可以发布出去。公共密钥与专用密钥是有紧密关系的,用公共密钥加密的信息只能用专用密钥解密,反之亦然。由于公钥算法不需要联机密钥服务器,密钥分配协议简单,所以极大简化了密钥管理。除加密功能外,公钥系统还可以提供数字签名。
公钥加密算法中使用最广的是RSA。RSA使用两个密钥,一个公共密钥,一个专用密钥。如用其中一个加密,则可用另一个解密,密钥长度从40到2048bit可变,加密时也把明文分成块,块的大小可变,但不能超过密钥的长度,RSA算法把每一块明文转化为与密钥长度相同的密文块。密钥越长,加密效果越好,但加密解密的开销也大,所以要在安全与性能之间折衷考虑,一般64位是较合适的。RSA的一个比较知名的应用是SSL,在美国和加拿大SSL用128位RSA算法,由于出口限制,在其它地区(包括中国)通用的则是40位版本。
RSA算法研制的最初理念与目标是努力使互联网安全可靠,旨在解决DES算法秘密密钥的利用公开信道传输分发的难题。而实际结果不但很好地解决了这个难题;还可利用RSA来完成对电文的数字签名以抗对电文的否认与抵赖;同时还可以利用数字签名较容易地发现攻击者对电文的非法篡改,以保护数据信息的完性。 公用密钥的优点就在于,也许你并不认识某一实体,但只要你的服务器认为该实体的CA是可靠的,就可以进行安全通信,而这正是Web商务这样的业务所要求的。例如信用卡购物。服务方对自己的资源可根据客户CA的发行机构的可靠程度来授权。目前国内外尚没有可以被广泛信赖的CA。美国Natescape公司的产品支持公用密钥,但把Natescape公司作为CA。由外国公司充当CA在我国是一件不可想象的事情。
公共密钥方案较保密密钥方案处理速度慢,因此,通常把公共密钥与专用密钥技术结合起来实现最佳性能。即用公共密钥技术在通信双方之间传送专用密钥,而用专用密钥来对实际传输的数据加密解密。另外,公钥加密也用来对专用密钥进行加密。
在这些安全实用的算法中,有些适用于密钥分配,有些可作为加密算法,还有些仅用于数字签名。多数算法需要大数运算,所以实现速度很慢,不能用于快的数据加密。以下将介绍典型的公开密钥密码算法-RSA。
RSA算法很好的完成对电文的数字签名以抗对数据的否认与抵赖;利用数字签名较容易地发现攻击者对电文的非法篡改,以保护数据信息的完整性。目前为止,很多种加密技术采用了RSA算法,比如PGP(PrettyGoodPrivacy)加密系统,它是一个工具软件,向认证中心注册后就可以用它对文件进行加解密或数字签名,PGP所采用的就是RSA算法。由此可以看出RSA有很好的应用。

⑺ 什么是公钥密码算法公钥的将密钥完全公开吗

公钥密码算法

公钥密码算法中的密钥依性质划分,可分为公钥和私钥两种。
用户或系统产生一对密钥,将其中的一个公开,称为公钥;另一个自己保留,称为私钥。
任何获悉用户公钥的人都可用用户的公钥对信息进行加密与用户实现安全信息交互。
由于公钥与私钥之间存在的依存关系,只有用户本身才能解密该信息,任何未受授权用户甚至信息的发送者都无法将此信息解密。
在近代公钥密码系统的研究中, 其安全性都是基于难解的可计算问题的。
如:
(1)大数分解问题;
(2)计算有限域的离散对数问题;
(3)平方剩余问题;
(4)椭圆曲线的对数问题等。基于这些问题, 于是就有了各种公钥密码体制。
关于公钥密码有众多的研究, 主要集中在以下的几个方面:
(1)RSA 公钥体制的研究;
(2)椭圆曲线密码体制的研究;
(3)各种公钥密码体制的研究;
(4)数字签名研究。
公钥加密体制具有以下优点:
(1)密钥分配简单;
(2)密钥的保存量少;
(3)可以满足互不相识的人之间进行私人谈话时的保密性要求;
(4)可以完成数字签名和数字鉴别。

答案补充
SHA-1算法
SHA-1杂凑算法[4]起初是针对DSA算法而设计的,其设计原理与Ron Rivest提出的MD2,MD4,尤其是MD5杂凑函数的设计原理类似。当输入长度<264bit的消息时,输出160bit的摘要,其算法分为5步:
(1)填充消息使其长度为512的倍数减去64,填充的方法是添一个“1”在消息后,然后添加“0”直至达到要求的长度,要求至少1位,至多512位填充位;
(2)完成第1步后,在新得到的消息后附加上64bit填充前的消息长度值;
(3)初始化缓存,SHA-1用5字的缓存,每个字均是32bit;
(4)进入消息处理主循环,一次循环处理512bit,主循环有4轮,每轮20次操作;
(5)循环结束后,得到的输出值即为所求。

⑻ 公钥算法的工作原理

1976 年,Whitfield Diffe 和 Martin Hellman 创建了公钥加密。公钥加密是重大的创新,因为它从根本上改变了加密和解密的过程。
Diffe 和 Hellman 提议使用两个密钥,而不是使用一个共享的密钥。一个密钥(称为“私钥”)是保密的。它只能由一方保存,而不能各方共享。第二个密钥(称为“公钥”)不是保密的,可以广泛共享。这两个密钥(称为“密钥对”)在加密和解密操作中配合使用。密钥对具有特殊的互补关系,从而使每个密钥都只能与密钥对中的另一个密钥配合使用。这一关系将密钥对中的密钥彼此唯一地联系在一起:公钥与其对应的私钥组成一对,并且与其他任何密钥都不关联。
由于公钥和私钥的算法之间存在特殊的数学关系,从而使得这种配对成为可能。密钥对在数学上彼此相关,例如,配合使用密钥对可以实现两次使用对称密钥的效果。密钥必须配合使用:不能使用每个单独的密钥来撤消它自己的操作。这意味着每个单独密钥的操作都是单向操作:不能使用一个密钥来撤消它的操作。此外,设计两个密钥使用的算法时,特意设计无法使用一个密钥确定密钥对中的另一个密钥。因此,不能根据公钥确定出私钥。但是,使得密钥对成为可能的数学原理也使得密钥对具有对称密钥所不具有的一个缺点。这就是,所使用的算法必须足够强大,才能使人们无法通过强行尝试,使用已知的公钥来解密通过它加密的信息。公钥利用数学复杂性以及它的单向特性来弥补它是众所周知的这样一个事实,以防止人们成功地破解使用它编码的信息。
如果将此概念应用于前面的示例,则发件人将使用公钥将纯文本加密成密码。然后,收件人将使用私钥将密码重新解密成纯文本。
由于密钥对中的私钥和公钥之间所存在的特殊关系,因此一个人可以在与许多人交往时使用相同的密钥对,而不必与每个人分别使用不同的密钥。只要私钥是保密的,就可以随意分发公钥,并让人们放心地使用它。使许多人使用同一个密钥对代表着密码学上的一个重大突破,因为它显着降低了密钥管理的需求,大大提高了密码学的可用性。用户可以与任意数目的人员共享一个密钥对,而不必为每个人单独设立一个密钥。
公钥加密是邮件安全中的一个基本要素。如果没有公钥加密,那么是否存在实用的邮件安全解决方案是值得怀疑的,因为在公钥加密出现之前,密钥管理是一件很麻烦的事情。在了解了公钥加密的基本概念之后,接下来便是了解如何借助这些概念来实现邮件安全性。

⑼ (1)RSA算法是一种基于()的公钥体系。

aes-256和rsa-2048绝对可以,用rsa加密密匙,aes加密数据,因为非对称算法加密数据速度实在太慢,所以用非对称算法加密数据根本行不通,但是安全性非常高。

热点内容
栈是内存条的存储结构吗 发布:2024-11-14 20:53:59 浏览:55
编程师作文 发布:2024-11-14 20:46:04 浏览:117
平板怎么破解密码 发布:2024-11-14 20:31:23 浏览:340
安卓和苹果系统哪个好哪个不卡顿 发布:2024-11-14 20:24:58 浏览:472
jetty文件上传 发布:2024-11-14 20:23:58 浏览:863
彩色解压泥 发布:2024-11-14 20:16:33 浏览:341
苹果手机怎么打开配置 发布:2024-11-14 20:14:09 浏览:128
php自动压缩 发布:2024-11-14 20:03:48 浏览:15
northwind数据库 发布:2024-11-14 19:46:37 浏览:502
解压感悟 发布:2024-11-14 19:40:25 浏览:448