下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

数据加密和解密原理以及实现方法

作者:课课家教育     来源: http://www.kokojia.com点击数:4619发布时间: 2018-01-19 10:00:15

标签: 加密原理安全网络安全通信信息安全

软考,您想通过吗?一次通过才是硬道理

  随着Internet的普及,大量的数据、文件在Internet传送,因此在客观上就需要一种强有力的安全措施来保护机密数据不被窃取或篡改。不管是安全手段或是安全措施,它们都需要加密算法和相应的解密算法,不了解与此相关的加密原理和算法,就很难深刻认识到各种安全传输协议,以及实现网络安全所采用的数字凭证、数字签名等技术,那么我们就来介绍一下吧。
  从最初的保密通信发展到目前的网络信息加密,信息加密技术一直伴随着信息技术的发展而发展。作为计算机信息保护的最实用和最可靠的方法,信息加密技术被广泛应用到信息安全的各个领域。信息加密技术是一门涉及数学、密码学和计算机的交叉学科。现代密码学的发展,使信息加密技术已经不再依赖于加密算法本身的保密,而是通过在统计学上提高破解的成本来提高加密算法的安全性。
  密码学是一门古老而又年轻的学科,它用于保护军事和外交通信,可追溯到几千年前。最近几十年,随着计算机网络及通信技术的民化发展,尤其是商业和金融事务的介入,密码学的研究才得到前所未有的广泛重视。
  所谓加密,就是把数据信息即明文转换为不可辨识的形式即密文的过程,目的是使不应了解该数据信息的人不能够知道和识别。将密文转换为明文的过程就是解密。加密和解密的过程形成加密系统,明文与密文统称为报文。任何加密系统,不论形式如何复杂,实现的算法如何不同,但其基本组成部分是相同的,通常都包括如下4个部分:
  (1)需要加密的报文,也称为明文;
  (2)加密以后形成的报文,也称为密文;
  (3)加密、解密的装置或算法;
  (4)用于加密和解密的钥匙,称为密钥。密钥可以是数字、词汇或者语句。
  报文加密后,发送方就要将密文通过通信渠道传输给接收方。传输过程中,即密文在通信渠道传输过程中是不安全的,可能被非法用户即第三方窃取和窃听,但是由于是密文,只要第三方没有密钥,只能得到一些无法理解其真实意义的密文信息,从而达到保密的目的。
  数据加密和解密原理以及实现方法_加密原理_安全_网络安全_通信_信息安全_课课家教育
  长久以来,人们发明了各种各样的加密方法,为便于研究,通常把方法分为传统加密方法和现代加密方法两大类。前者的共同特点是采用单钥技术,即加密和解密过程中使用同一密钥,为便于研究,通常把这些方法分为传统加密方法和现代加密方法两大类。前者的共同特点是采用单钥技术,即加密和解密过程中使用同一密钥,所以也称为对称式加密方法;而后者的共同特点是采用双钥技术,也就是加密和解密过程中使用两个不同的密钥,它也称为非对称加密方法。
  加密的基本功能包括:
  (1)防止不速之客查看机密的数据文件;
  (2)防止机密数据被泄露或篡改;
  (3)防止特权用户(如系统管理员)查看私人数据文件;
  (4)使入侵者不能轻易查找一个系统的文件。
  数据加密匙确保计算机网络安全的一种机制,虽然由于成本、技术和管理上的复杂性等原因,目前尚未在网络中普及,但数据加密的确是实现分布式系统和网络环境下数据安全的重要手段之一。
  数据加密可在网络OSI七层协议(Open System Interconnect,开放式系统互联,国际标准组织(国际标准化组织)指定了OSI模型。这个模型把网络通信的工作分为7层,分别为物理层、数据链路层、网络层、传输层、会话层、表示层和应用层)的多层上实现、所以从加密技术应用的逻辑位置看,有三种方式:
  ①链路加密:通常把网络层以下的加密叫链路加密,主要用于保护通信节点间传输的数据,加解密由置于线路上的密码设备实现。根据传递的数据的同步方式又可分为同步通信加密和异步通信加密两种,同步通信加密又包含字节同步通信加密和位同步通信加密。
  ②节点加密:是对链路加密的改进。在协议传输层上进行加密,主要是对源节点和目标节点之间传输数据进行加密保护,与链路加密类似.只是加密算法要结合在依附于节点的加密模件中,克服了链路加密在节点处易遭非法存取的缺点。
  ③端对端加密:网络层以上的加密称为端对端加密。是面向网络层主体。对应用层的数据信息进行加密,易于用软件实现,且成本低,但密钥管理问题困难,主要适合大型网络系统中信息在多个发方和收方之间传输的情况。
  这些加密方法主要包括代码加密法、替换加密法、变位加密法和一次性密码簿加密法等。
  (1)代码加密法。通信双方使用预先设定的一组代码表达特定的意义,而实现的一种最简单的加密方法。代码可以是日常词汇、专有名词,也可以是某些特殊用语。例如:
  密文:姥姥家的黄狗三天后下崽。
  明文:县城鬼子三天后出城扫荡。
  这种方法简单好用,但通常一次只能传送一组预先约定的信息,而且重复使用是不安全的,因为那样的话窃密者会逐渐明白代码含义。
  (2)替换加密法。这种方法是指定一种规则,将明文中的每个字母或每组字母替换成另外一个或一组字母。例如,下面的这组字母对应关系就构成了一个替换加密器:
  明文字母:A B C D E F……
  密文字母:K U P S W B……
  虽然说替换加密法比代码加密法应用的范围要广,但使用得多了,窃密者就可以从多次搜集的密文中发现其中的规律,破解加密方法。
  (3)变位加密法。与前两种加密方法不同,变位加密法不隐藏原来明文的字符,而是将字符重新排序。比如,加密方首先选择一个用数字表示的密钥,写成一行,然后把明文逐行写在数字下。按照密钥中数字指示的顺序,将原文重新抄写,就形成密文。例如:
  密钥:6835490271
  明文:小赵拿走黑皮包交给李
  密文:包李交拿黑走小给赵皮
  (4)一次性密码簿加密法。这种方法要先制定出一个密码薄,该薄每一页都是不同的代码表。加密时,使用一页上的代码加密一些词,用后撕掉或烧毁该页;然后再用另一页上的代码加密另一些词,直到全部的明文都加密成为密文。破译密文的唯一办法就是获得一份相同的密码簿。
  计算机出现以后,密码簿就无需使用纸张而使用计算机和一系列数字来制作。加密时,根据密码簿里的数字对报文中的字母进行移位操作或进行按位的异或计算,以加密报文。解密时,接收方需要根据持有的密码簿,将密文的字母反向移位,或再次作异或计算,以求出明文。
  数论中的“异或”规则是这样的:1^1=0,0^0=0;1^0=1,0^1=1。下面就是一个按位进行异或计算的加密和解密实例:
  加密过程中明文与密码按位异或计算,求出密文:
  明文:101101011011
  密码:011010101001
  密文:110111110010
  解密过程中密文与密码按位异或计算,求出明文:
  密文:110111110010
  密码:011010101001
  数据安全问题涉及到企业的很多重大利益,发展数据安全技术是目前面临的迫切要求,除了上述的问题以外,数据安全还涉及其他很多方面的技术与知识,如黑客技术、防火墙技术、入侵检测技术、病毒防护技术、信息隐藏技术等。因此,我们更需要一个完善的数据安全 保障系统来确保自身在Internet应用过程中各种信息的安全性。

赞(15)
踩(0)
分享到:
推荐查看
华为认证网络工程师 HCIE直播课视频教程