对称密钥与非对称密钥算法

对称密钥算法和非对称密钥算法

密码学中两种常见的密码算法为对称密码算法(单钥密码算法)和非对称密码算法(公钥密码算法)。

所谓对称密钥算法是指如果一个加密算法的加密密钥和解密密钥相同,或者虽然不相同,但是可由其中的任意一个很容易的推导出另一个,即密钥是双方共享的。

非对称密钥算法是指一个加密算法的加密密钥和解密密钥是不一样的,或者说不能由其中一个密钥推导出另一个密钥。这两个密钥其中一个称为公钥,用于加密,是公开的,另一个称为私钥,用于解密,是保密的。其中由公钥计算私钥是计算上不可行的。

这两种密码算法的不同之处主要有如下几个方面:

1、加解密时采用的密钥的差异:从上述对对称密钥算法和非对称密钥算法的描述中可看出,对称密钥加解密使用的同一个密钥,或者能从加密密钥很容易推出解密密钥;而非对称密钥算法加解密使用的不同密钥,其中一个很难推出另一个密钥。

2、算法上区别:①对称密钥算法采用的分组加密技术,即将待处理的明文按照固定长度分组,并对分组利用密钥进行数次的迭代编码,最终得到密文。解密的处理同样,在固定长度密钥控制下,以一个分组为单位进行数次迭代解码,得到明文。而非对称密钥算法采用的思想是从一个方向求值是容易的,而其逆向计算却很困难,或者说是计算不可行的。加密时对明文利用公钥进行加密变换,得到密文。解密时对密文利用私钥进行解密变换,得到明文。②对称密钥算法具有加密处理简单,加解密速度快,密钥较短,发展历史悠久等特点,非对称密钥算法具有加解密速度慢的特点,密钥尺寸大,发展历史较短等特点。

3、密钥管理安全性的区别:对称密钥算法由于其算法是公开的,其保密性取决于对密钥的保密。由于加解密双方采用的密钥是相同的,因此密钥的分发、更换困难。而非对称密钥算法由于密钥已事先分配,无需在通信过程中传输密钥,安全性大大提高,也解决了密钥管理问题。

4、安全性:对称密钥算法由于其算法是公开的,其安全性依赖于分组的长度和密钥的长度,常的攻击方法包括:穷举密钥搜索法,字典攻击、查表攻击,差分密码分析,线性密码分析,其中最有效的当属差分密码分析,它通过分析明文对密文对的差值的影响来恢复某些密钥比特。非对称密钥算法安全性建立在所采用单向函数的难解性上,如椭圆曲线密码算法,许多密码专家认为它是指数级的难度,从已知求解算法看,160bit的椭圆曲线密码算法安全性相当于1024bit RSA算法。

对称算法有:DES IEDS

时间: 2024-12-28 23:47:36

对称密钥与非对称密钥算法的相关文章

ssl证书的对称密钥与非对称密钥

(一)对称加密(Symmetric Cryptography) 对称密钥加密,又称私钥加密,即信息的发送方和接收方用一个密钥去加密和解密数据.它的最大优势是加/解密速度快,适合于对大数据量进行加密,对称 加密的一大缺点是密钥的管理与分配,换句话说,如何把密钥发送到需要解密你的消息的人的手里是一个问题.在发送密钥的过程中,密钥有很大的风险会被黑客们 拦截.现实中通常的做法是将对称加密的密钥进行非对称加密,然后传送给需要它的人. 对称加密通常使用的是相对较小的密钥,一般小于256 bit.因为密钥越

对称密钥与非对称密钥

(一)对称加密(Symmetric Cryptography) 对称密钥加密,又称私钥加密,即信息的发送方和接收方用一个密钥去加密和解密数据.它的最大优势是加/解密速度快,适合于对大数据量进行加密,对称加密的一大缺点是密钥的管理与分配,换句话说,如何把密钥发送到需要解密你的消息的人的手里是一个问题.在发送密钥的过程中,密钥有很大的风险会被黑客们拦截.现实中通常的做法是将对称加密的密钥进行非对称加密,然后传送给需要它的人. 对称加密通常使用的是相对较小的密钥,一般小于256 bit.因为密钥越大,

SQLSERVER加密解密函数(非对称密钥 证书加密 对称密钥)

ENCRYPTBYASYMKEY() --非对称密钥 ENCRYPTBYCERT()   --证书加密 ENCRYPTBYKEY()   --对称密钥 ENCRYPTBYPASSPHRASE()  --通行短语(PassPhrase)加密 --非对称密钥包含数据库级的内部公钥和私钥,它可以用来加密和解密SQL Server数据库中的数据,它可以从外部文件或程序集中导入,也可以在SQL Server数据库中生成.它不像证书,不可以备份到文件.这意味着一旦在SQL Server中创建了它,没有非常简

对称与非对称密钥加密

公开密钥加密也称非对称密钥加密,该加密算法使用两个不同的密钥:加密密钥和解密密钥.前者公开,又称公开密钥,简称公钥:后者保密,又称私有密钥,简称私钥.这两个密钥是数学相关的,用某用户加密密钥加密后所得的信息只能用该用户的解密密钥才能解密.RSA算法(由发明者Rivest,Shmir和Adleman姓氏首字母缩写而来)是著名的公开密钥加密算法. 公钥加密的另一用途是身份验证:用私钥加密的信息,可以用公钥对其解密,接收者由此可知这条信息确实来自于拥有私钥的某人.私钥加密的过程即数字签名. 用公钥加密

数字签名、数字证书、对称加密算法、非对称加密算法、单向加密(散列算法)

数字签名是什么? 1. 鲍勃有两把钥匙,一把是公钥,另一把是私钥. 2. 鲍勃把公钥送给他的朋友们----帕蒂.道格.苏珊----每人一把. 3. 苏珊给鲍勃写信,写完后用鲍勃的公钥加密,达到保密的效果. 4. 鲍勃收信后,用私钥解密,看到信件内容. 5. 鲍勃给苏珊回信,写完后用Hash函数,生成信件的摘要(digest). 6. 然后,鲍勃使用私钥,对这个摘要加密,生成"数字签名"(signature). 7. 鲍勃将这个签名,附在信件下面,一起发给苏珊. 8. 苏珊收信后,取下数

非对称密钥的来源

RSA算法是最早得到广泛使用的非对称加密算法,RSA算法基于分解大素数之乘积的困难性.较新的非对称加密算法是ECC,ECC基于离散对数难题.它能够以较少的计算资源消耗达到与RSA相当的安全性.目前,大多的数字证书仍然基于RSA算法.如果数学上发现了一种快速计算素数乘积或者离散对数的方法,就意味着相应的非对称加密算法被彻底破解.在这样一个数学天才出现之前,我们还能够无忧地使用这些算法. 对称加密算法本身对密钥的值没有约束,虽然我们会有意避开一些太有规律的密钥值.与对称密钥不同,非对称加密算法不能使

sftp,putty使用非对称密钥RSA无需密码登录远程主机

参考链接 SCP和SFTP不用输入密码的信任公钥方法攻略 1.在本地主机(Ubuntu)产生RSA密钥 cd ~/.ssh/ ssh-keygen -t rsa 均Enter采用默认方式,则产生两个文件 id_rsa id_rsa.pub 2.将公钥id_rsa.pub添加到远程主机~/.ssh/authorized_keys 文件 cat id_rsa.pub >> .ssh/authorized_keys 3.再次使用sftp链接远程主机无需密码 sftp -o port=XXX [ema

非对称密钥实验

非对称密钥实验 实验目的 对文件进行非对称加解密 实验准备 主机:A和B OS: CentOS7 IP :192.168.172.134 一.分别在2台主机上生成公钥和私钥 1.在主机A上生成公私钥 [[email protected] ~]# gpg --gen-key gpg (GnuPG) 2.0.22; Copyright (C) 2013 Free Software Foundation, Inc. This is free software: you are free to chan

https 结合使用 对称加密和非对称加密

(一)对称加密(Symmetric Cryptography) ---共享密钥加密 对称加密是最快速.最简单的一种加密方式,加密(encryption)与解密(decryption)用的是同样的密钥(secret key),这种方法在密码学中叫做对称加密算法.对称加密有很多种算法,由于它效率很高,所以被广泛使用在很多加密协议的核心当中.对称加密通常使用的是相对较小的密钥,一般小于256 bit.因为密钥越大,加密越强,但加密与解密的过程越慢.如果你只用1 bit来做这个密钥,那黑客们可以先试着用