转载自PassXYZ微信公众号,PassXYZ是一款可以运行在安卓和苹果手机以及Windows10上的KeePass兼容应用。可以通过苹果应用商店,微软应用商店,Google Play和华为应用商店搜索关键字PassXYZ来下载该应用。

在信息安全领域有几个概念大家可能经常会听到、用到,但是否理解这些概念,是否了解它们之间的关系呢?

谈到信息安全,加密和解密是人们首先想到的话题。一般人对加密都会有一定认识。加密就是通过密钥把明文转换成不可识别的密文。把密文发送给接收方后,接收者用同样的密钥把密文再转换成可读的明文。这种加密和解密方法就是密码学里的对称加密。

对称加密(Symmetric cryptography)

对称加密的特点是加密和解密使用的是同一组密钥。对称加密的安全性由加密算法和密钥长度决定。常用的加密算法有AES、DES、3DES和IDEA等等。目前比较常用的是AES(Advanced Encryption Standard)算法,它是由美国国家标准与技术研究院(NIST)于2001年11月26日发布的。密码管理软件KeePass和PassXYZ都是用的这个算法。

对称加密的优点是安全快速,在一定情况下还可以使用硬件算法进行加速。因为这些特点,对称加密被广泛地使用在大量数据的加密应用中。但对称加密所面临的最大问题是密钥的传输。如果无法安全传输密钥,再强大的加密算法也无用武之地。

非对称加密(Asymmetric cryptography)

为了解决对称加密中密钥传输的问题,科学家们发明了非对称加密算法。非对称加密的思想最早由瑞夫·墨克(Ralph C. Merkle)在1974年提出。之后在1976年,惠特菲尔德·迪菲(Whitfield Diffie)与马丁·赫尔曼(Martin Hellman)两位学者建立了非对称加密算法的基本理论。常见的非对称加密算法有RSA、ElGamal和ECC等。

非对称加密的过程与对称加密类似,但包括两组不同的密钥而不是一组。非对称加密主要有两个用途:文件加密和数字签名。

1. 文件加密

如上图所示,Alice要与Bob等人通信。Alice使用非对称加密工具产生一对密钥。这对密钥包括公钥(Public Key) 和私钥(Private Key) 。私钥是秘密的,不可以泄露给其他人,公钥是公开的,Alice可以通过任意途径发送给通信的对方。当Bob等人拿到Alice的公钥后就可以用这个公钥来加密文件发送回给Alice。这些经公钥加密的密文只有用Alice的私钥才能解开。这就是非对称加密文件的过程。

2. 数字签名(Digital Signatures)

如果将上述非对称加密的过程反过来,Alice使用自己的私钥加密文件,然后发送给Bob等人,由于私钥只有Alice本人持有,Bob等人可以确认收到的文件是由Alice本人发送的且没有被他人更改过,这就是数字签名。数字签名的目的不是加密,而是确保文件的完整性和确认文件的发送者。

非对称加密解决了信息安全领域中非常关键的两个问题就是:1. 密钥传输,和2.发送者身份的确认问题。

虽然非对称加密作用非常大,但也存在缺陷和漏洞。非对称加密的主要缺陷是加密效率低,解决这个问题的方法是使用混合加密和哈希算法。在使用非对称加密用作数字签名时,对签名者的身份认证也是存在漏洞的,目前的主要解决办法是使用数字证书。

混合加密

非对称加密最大的问题就是计算复杂造成效率欠佳。使用非对称加密来加密大量数据是不可行的。通常的做法是在加密过程中产生一个临时的对称密钥。这个密钥是用来加密通信中的数据的,而这个密钥的传输则可以使用非对称加密来实现。这样综合了两种加密方式的优点后,就是一种较为完美的解决方案了。

前面我们提到过非对称加密有两个主要用途:加密数字签名。我们可以用混合加密的方法来提高加密时的效率。对于数字签名,当我们对一个较大的文件进行签名时,也会有加密算法效率的问题,这时一般会用到哈希算法来解决这个问题。

哈希算法(Hash)

讲到对大文件的签名,就要讲一下哈希算法。大家可能在浏览网页时看到过哈希这个词。哈希算法也译作散列函数。它的作用就是把任意长度的输入通过散列算法变换成固定长度的输出,该输出就是散列值。这个散列值在英文中经常会用指纹(fingerprint)一词来表示,意思是这个值就像人的指纹一样,可以用文件的指纹来确认这个文件。通过哈希计算出来的散列值与原数据是一一对应的。对大文件的签名通常是对这个大文件的哈希值进行签名,而不是对文件本身进行签名。这样的话数字签名的效率就不会受到非对称加密的效率影响了。当我们下载文件时,特别是大文件,通常会提供文件的MD5或SHA256哈希值,然后用文件的哈希值来校验下载文件的完整性。

数字证书和身份认证

再来看看非对称加密在使用身份认证中存在的漏洞。前面讲过,Alice可以通过使用私钥加密文件来用作数字签名。如果另外一个人冒充Alice用自己产生的公钥和私钥来和Bob通信,Bob是无法分辨收到的公钥和文件是否真的是Alice发给他的,除非有办法能帮Bob证明收到的公钥是Alice的。这个就是公钥的身份认证和数字证书要解决的问题。

公钥的身份认证通常是由第三方认证机构来完成的。如图所示,Alice可将自己的身份资料和公钥一起提供给认证机构,认证机构核实后会用自己的私钥来加密Alice的身份资料和她的公钥。前面讲过,由私钥加密的文件其实就是数字签名。这个由认证机构签名的文件就是Alice的数字证书。Bob如果用Alice的数字证书来进行通信,Bob可以相信数字证书里的公钥是Alice的。这里还有一个问题就是Bob在使用Alice的数字证书时需要用到认证机构的公钥来解开数字证书。在哪里能获取认证机构的公钥呢?由于非对称加密的广泛使用,目前大多数认证机构的公钥都已经随操作系统一起发行了。也就是说,一般系统就带有认证机构的公钥。

在国内有些服务还没有完全使用操作系统所提供的信任链,这时就需要一个额外的步骤,就是下载所用服务的根证书。比如下图中的12306就是一个明显的例子。想要正确的使用12306网站,需要先安装根证书。这个根证书就是用来认证在交易中使用到的公钥。

其他生活中使用对称或非对称加密的场景

除了12306的例子,我们在日常生活中还有哪些时候用到了这些加密、解密的方法呢?

银行U盾

相信很多人都在使用各个银行发行的U盾吧。U盾就是使用非对称加密来保证银行和用户之间的通信是可信的和保密的。一般U盾存有银行分配给客户的私钥和银行本身的证书。客户使用私钥加密数据起到身份认证的作用。使用银行证书里的公钥加密数据起到数据加密的作用。所有认证机构颁发的数字证书都是有期限的,这也是为什么您的U盾需要定期更换新证书的原因。

支付宝、微信以及网络交易

中国的网络支付和网购都非常发达。人们常用的网络支付手段,如支付宝和微信等,都是建立在上面所提到的密码学概念之上的。

虚拟货币和比特币

像比特币这类的虚拟货币正是在非对称加密和数字身份认证技术的逐渐成熟基础上发展起来的。

总结

非对称加密在信息安全领域有着非常重要的作用。它解决了两个关键的问题,密钥传输和数字签名。为了解决密钥传输和提高整体的加密效率,通常会使用混合加密方法。为了提高数字签名的效率,通常会计算文件的哈希值,然后对哈希值进行数字签名。为了在网络交易中认证的双方的身份,通常会使用数字证书而不是直接使用对方的公钥。

如果您对上述网络信息安全相关的概念有所了解,这对您个人信息的安全管理将会有较大的帮助。

网络信息安全领域中常见的几个概念相关推荐

  1. 面对大量的用户数据泄露事件,普通用户该如何保护个人的网络信息安全?

    我们经常会在新闻里看到或听到关于用户数据泄露的事件,这些用户数据的泄露会对网站或服务的使用者产生非常严重的安全威胁.作为一个网络用户,您对用户数据泄露的严重程度和这些用户数据泄露事件背后的具体细节,又 ...

  2. 网络安全:网络信息安全的概述.

    网络安全:网络信息安全的概述 网络信息安全是一门涉及计算机科学,网络技术,通信技术.密码技术.信息安全技术.应用数学.数论.信息论等多种学科的综合性学科. 它主要是指网络系统的硬件.软件及其系统中的数 ...

  3. 《信息安全工程师教程》——网络信息安全概述

    网络发展现状与重要性认识 计算机网络演变成人类活动的新空间,即网络空间,它是国家继陆.海.空.天后的第五个疆域. 网络信息安全相关概念 网络信息安全的发展历经了通信保密.计算机安全.信息保障.可信计算 ...

  4. 【期末复习】带着问题看网络信息安全

    网络信息安全需求包含哪六个基本方面?分别简单说明它们的含义. 机密性:防止未授权用户非法获得保密信息. 完整性:在未经许可的情况下,保证数据不会被他人删除或修改(至少能发现被修改过). 身份认证:用户 ...

  5. Java 并发编程解析 | 如何正确理解Java领域中的多线程模型,主要用来解决什么问题?

    苍穹之边,浩瀚之挚,眰恦之美: 悟心悟性,善始善终,惟善惟道! -- 朝槿<朝槿兮年说> 写在开头 我国宋代禅宗大师青原行思在<三重境界>中有这样一句话:" 参禅之初 ...

  6. 《网络信息安全》作业题和考试复习题

    开卷必备! 网络信息安全需求包含哪六个基本方面?分别简单说明它们的含义. 机密性:防止未授权用户非法获得保密信息. 完整性:在未经许可的情况下,保证数据不会被他人删除或修改(至少能发现被修改过). 身 ...

  7. 华胜天成收购中天安泰10%股权 出手网络信息安全

    5月17日晚,华胜天成发布了收购公告称,公司以现金方式收购中天安泰(北京)信息技术有限公司司(以下称"中天安泰")10%的股权,交易对价为3000万元. 资料显示,中天安泰是一家创 ...

  8. 信息安全中常见的网络知识(一)网络基本概念

    文章目录 典型园区网络架构 OSI七层模型 七层 对等层通信 TCP/IP模型 数据封装解封装过程 五元组 常见网络层协议介绍 ARP 报文格式 工作原理 常见ARP应用 ICMP ICMP应用 路由 ...

  9. 总结 | 计算机视觉领域最常见几中损失函数

    英文地址:https://machinelearningmastery.com/loss-and-loss-functions-for-training-deep-learning-neural-ne ...

最新文章

  1. Linux创建线程时 内存分配的那些事
  2. Oracle Database 11g的使用
  3. 看了这篇C++笔记,你出去行走江湖我就放心了【C++】
  4. CentOS 7下搭建LAMP并把MySQL单独分离
  5. hbuilder打包ios_ios开发证书的作用及申请步骤
  6. 邻近算法(KNN算法)
  7. python opencv库下载_PythonopenCV 2.4.3 cv2.SolvePnP
  8. 大数据之-Hadoop之HDFS_HDFS的内容介绍---大数据之hadoop工作笔记0047
  9. python中用箱线图分析异常值_[宜配屋]听图阁
  10. 5.企业安全建设指南(金融行业安全架构与技术实践) --- 安全团队建设
  11. 5月份鸿蒙升级时间,事关所有华为手机用户,鸿蒙正式升级时间终于确定
  12. 11.30上海交大PMP试题每日一题
  13. 如何修改ppt已有的版式
  14. ASP.NET常用服务器控件
  15. SonarQube扫描的Bug、漏洞以及异味的修复(持续更新)
  16. 【工厂扫码打印扫码装箱错误追溯系统】完整案例详解(PythonPyQt 源码Mysql数据库)
  17. Swift 与OC转换
  18. 解决win10开机后死机:您操作系统的MSXML组件版本过低,导致启动失败。请到微软官方网站升级该组件后重试。
  19. 周杰伦2014新专辑《哎呦,不错哦》
  20. 使用oracle经验,ORACLE应用经验(2)

热门文章

  1. JMeter递增加压
  2. Bugku web — ereg正则%00截断(代码审计) ——详细题解
  3. Java程序基础——异常
  4. Linux(四)——CROND和磁盘分区与挂载
  5. filebeat7.7.0相关详细配置预览- Setup ILM
  6. 谷歌浏览器如何收藏网站 谷歌浏览器收藏网站的方法步骤
  7. 企业级项目实战讲解!我凭借这份PDF的复习思路,薪资翻倍
  8. Android解析域名获取IP
  9. Day215.课程详细页面功能完善、Echarts统计分析模块[生成统计数据+生成图表]前后端整合 -谷粒学院
  10. java后台导出pdf,基础用法和样例