公钥加密与数字签名的联系与区别

       首先,让我们先了解什么是密钥加密和数字签名。

       一、密钥加密:密钥加密也称不对称加密,其常用算法是RSA、ElGamal。 不对称加密算法不对称加密算法使用两把完全不同但又是完全匹配的一对钥匙—公钥和私钥。在使用不对称加密算法加密文件时,只有使用匹配的一对公钥和私钥,才能完成对明文的加密和解密过程。加密明文时采用公钥加密,解密密文时使用私钥才能完成,而且发信方(加密者)知道收信方的公钥,只有收信方(解密者)才是唯一知道自己私钥的人。不对称加密算法的基本原理是,如果发信方想发送只有收信方才能解读的加密信息,发信方必须首先知道收信方的公钥,然后利用收信方的公钥来加密原文;收信方收到加密密文后,使用自己的私钥才能解密密文。显然,采用不对称加密算法,收发信双方在通信之前,收信方必须将自己早已随机生成的公钥送给发信方,而自己保留私钥。由于不对称算法拥有两个密钥,因而特别适用于分布式系统中的数据加密。广泛应用的不对称加密算法有RSA算法和美国国家标准局提出的DSA。以不对称加密算法为基础的加密技术应用非常广泛。

       二、数字签名: 数字签名技术是不对称加密算法的典型应用。数字签名的应用过程是,数据源发送方使用自己的私钥对数据校验和或其他与数据内容有关的变量进行加密处理,完成对数据的合法“签名”,数据接收方则利用对方的公钥来解读收到的“数字签名”,并将解读结果用于对数据完整性的检验,以确认签名的合法性。数字签名技术是在网络系统虚拟环境中确认身份的重要技术,完全可以代替现实过程中的“亲笔签字”,在技术和法律上有保证。在公钥与私钥管理方面,数字签名应用与加密邮件PGP技术正好相反。在数字签名应用中,发送者的公钥可以很方便地得到,但他的私钥则需要严格保密。通俗地说,就是A用自己的私钥机密,B用A的公钥解密来确定是否是A发送的。 可是实际的情况是,用双钥密码体制加密消息非常慢,单钥加密比双钥加密要快1000倍,所以实际应用中,不是直接加密消息,而是先通过散列函数处理消息,得到消息摘要,然后用双钥密码体制中的私钥来加密这个消息摘要,就得到了数字签名。

       三、两者的区别:密钥加密是用来数据加密与解密的一种手段,增强了密文的安全性。而数字签名是一种类似写在纸上的普通的物理签名,但是使用了公钥加密领域的技术实现,用于鉴别数字信息的方法。一套数字签名通常定义两种互补的运算,一个用于签名,另一个用于验证。

       四、从两者的定义及两者的区别中,我们也可以看出两者之间的联系其实也是很紧密的。在公钥加密的基础上附加数字签名,不仅保证了密文的安全性,同时也可以验证密文是否由真实的发送方发送的,从而做到不轻易被解密。数字签名仅仅只能保证消息的来源,却不能加密消息本身,而公钥加密恰恰弥补了这一缺陷。两者的关系,简单地说,这就类似一封写好的信和一个签上了名字的信封一样。

    计算机领域非常广阔,本人的知识也十分有限,解释的不好的地方请见谅,希望大家从这篇文章中能有所收获。

  • 5
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值