1. 数据加密的方法
网络安全防范措施与应用是什么呢?如果您也想要了解一下网络安全防范措施和应用的话,请从数据加密的方法入手。因此很多人都会问数据加密有哪些方法呢?无巧不成书,最近公布了一个关于数据加密方法的总结,我相信您一定可以找到问题的答案哦。
由于计算机软件的非法复制,通信的泄密、数据安全受到威胁,解密及盗版问题日益严重,甚至引发国际争端,所以在信息安全技术中,加密技术占有不可替代的位置,因此对信息加密技术和加密手段的研究与开发,受到各国计算机界的重视,发展日新月异。现在我们就几种常用的加密算法给大家比较一下。
DES加密算法是一种分组密码,以64位为分组对数据加密,它的密钥长度是56位,加密解密用同一算法。DES加密算法是对密钥进行保密,而公开算法,包括加密和解密算法。这样,只有掌握了和发送方相同密钥的人才能解读由DES加密算法加密的密文数据。因此,破译DES加密算法实际上就是搜索密钥的编码。对于56位长度的密钥来说,如果用穷举法来进行搜索的话,其运算次数为256。随着计算机系统能力的不断发展,DES的安全性比它刚出现时会弱得多,然而从非关键性质的实际出发,仍可以认为它是足够的。不过,DES现在仅用于旧系统的鉴定,而更多地选择新的加密标准。
RSA加密算法是目前最有影响力的公钥加密算法,并且被普遍认为是目前最优秀的公钥方案之一。RSA是第一个能同时用于加密和数宇签名的算法,它能够抵抗到目前为止已知的所有密码攻击,已被ISO推荐为公钥数据加密标准。RSA加密算法基于一个十分简单的数论事实:将两个大素数相乘十分容易,但那时想要,但那时想要对其乘积进行因式分解却极其困难,因此可以将乘积公开作为加密密钥。
2. word文档加密的实验报告
word文档加密,我建议您使用超级加密3000试试。
超级加密3000采用国际上成熟的加密算法和安全快速的加密方法,可以有效保障数据安全!
操作比较简单,您可以到网络上下载一下给您文档加密试试。
3. Android加密算法总结
1.概念:
Base64是一种用64个字符(+/)来表示二进制数据的方法,只是一种编码方式,所以不建议使用Base64来进行加密数据。
2.由来:
为什么会有Base64编码呢?因为计算机中数据是按ascii码存储的,而ascii码的128~255之间的值是不可见字符。在网络上交换数据时,比如图片二进制流的每个字节不可能全部都是可见字符,所以就传送不了。最好的方法就是在不改变传统协议的情况下,做一种扩展方案来支持二进制文件的传送,把不可打印的字符也能用可打印字符来表示,所以就先把数据先做一个Base64编码,统统变成可见字符,降低错误率。
3.示例:
加密和解密用到的密钥是相同的,这种加密方式加密速度非常快,适合经常发送数据的场合。缺点是密钥的传输比较麻烦。
1.DES
DES全称为Data Encryption Standard,即数据加密标准,是一种使用 密钥加密 的块算法。
DES算法把64位的明文输入块变为64位的密文输出块,它所使用的密钥也是64位,密钥事实上是56位参与DES运算(第8、16、24、32、40、48、56、64位是校验位,使得每个密钥都有奇数个1)分组后的明文组和56位的密钥按位替代或交换的方法形成密文组的加密方法。
2.3DES
3DES(或称为Triple DES)是三重 数据加密算法 (TDEA,Triple Data Encryption Algorithm)块密码的通称。是DES向AES过渡的加密算法,它使用3条56位的密钥对数据进行三次加密。是DES的一个更安全的变形。它以DES为基本模块,通过组合分组方法设计出分组加密算法。比起最初的DES,3DES更为安全。
3.AES
AES全称Advanced Encryption Standard,即高级加密标准,当今最流行的对称加密算法之一,是DES的替代者。支持三种长度的密钥:128位,192位,256位。
AES算法是把明文拆分成一个个独立的明文块,每一个明文块长128bit。这些明文块经过AES加密器的复杂处理,生成一个个独立的密文块,这些密文块拼接在一起,就是最终的AES加密结果。
但是这里涉及到一个问题:假如一段明文长度是192bit,如果按每128bit一个明文块来拆分的话,第二个明文块只有64bit,不足128bit。这时候怎么办呢?就需要对明文块进行填充(Padding):
AES的工作模式,体现在把明文块加密成密文块的处理过程中。
加密和解密用的密钥是不同的,这种加密方式是用数学上的难解问题构造的,通常加密解密的速度比较慢,适合偶尔发送数据的场合。优点是密钥传输方便。
1.SHA
安全散列算法(英语:Secure Hash Algorithm,缩写为SHA)是一个密码散列函数家族,是FIPS所认证的安全散列算法。能计算出一个数字消息所对应到的,长度固定的字符串(又称消息摘要)的算法,且若输入的消息不同,它们对应到不同字符串的机率很高。
SHA分为SHA-1、SHA-224、SHA-256、SHA-384,和SHA-512五种算法,后四者有时并称为SHA-2。SHA-1在许多安全协定中广为使用,包括TLS和SSL、PGP、SSH、S/MIME和IPsec,曾被视为是MD5(更早之前被广为使用的杂凑函数)的后继者。但SHA-1的安全性如今被密码学家严重质疑;虽然至今尚未出现对SHA-2有效的攻击,它的算法跟SHA-1基本上仍然相似;因此有些人开始发展其他替代的杂凑算法。
2.RSA
RSA算法1978年出现,是第一个既能用于数据加密也能用于数字签名的算法,易于理解和操作。
RSA基于一个数论事实:将两个大素数相乘十分容易,但想要对其乘积进行因式分解却极其困难,因此可以将乘积公开作为加密密钥,即公钥,而两个大素数组合成私钥。公钥是可提供给任何人使用,私钥则为自己所有,供解密之用。
3.MD5
MD5信息摘要算法 (英语:MD5 Message-Digest Algorithm),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值,用于确保信息传输完整一致。具有如下优点:
XOR:异或加密,既将某个字符或者数值 x 与一个数值 m 进行异或运算得到 y ,则再用 y 与 m 进行异或运算就可还原为 x。
使用场景:
(1)两个变量的互换(不借助第三个变量);
(2)数据的简单加密解密。
4. 加密技术06-加密总结
对称密码是一种用相同的密钥进行加密和解密的技术,用于确保消息的机密性。在对称密码的算法方面,目前主要使用的是 AES。尽管对称密码能够确保消息的机密性,但需要解决将解密密钥配送给接受者的密钥配送问题。
主要算法
DES
数据加密标准(英语:Data Encryption Standard,缩写为 DES)是一种对称密钥加密块密码算法,1976年被美国联邦政府的国家标准局确定为联邦资料处理标准(FIPS),随后在国际上广泛流传开来。它基于使用56位密钥的对称算法。
DES现在已经不是一种安全的加密方法,主要因为它使用的56位密钥过短。
原理请参考: 加密技术01-对称加密-DES原理
3DES
三重数据加密算法(英语:Triple Data Encryption Algorithm,缩写为TDEA,Triple DEA),或称3DES(Triple DES),是一种对称密钥加密块密码,相当于是对每个数据块应用三次DES算法。由于计算机运算能力的增强,原版DES由于密钥长度过低容易被暴力破解;3DES即是设计用来提供一种相对简单的方法,即通过增加DES的密钥长度来避免类似的攻击,而不是设计一种全新的块密码算法。
注意:有3个独立密钥的3DES的密钥安全性为168位,但由于中途相遇攻击(知道明文和密文),它的有效安全性仅为112位。
3DES使用“密钥包”,其包含3个DES密钥,K1,K2和K3,均为56位(除去奇偶校验位)。
密文 = E k3 (D k2 (E k1 (明文)))
而解密则为其反过程:
明文 = D k3 (E k2 (D k1 (密文)))
AES
AES 全称 Advanced Encryption Standard(高级加密标准)。它的出现主要是为了取代 DES 加密算法的,因为 DES 算法的密钥长度是 56 位,因此算法的理论安全强度是 56 位。于是 1997 年 1 月 2 号,美国国家标准技术研究所宣布什望征集高级加密标准,用以取代 DES。AES 也得到了全世界很多密码工作者的响应,先后有很多人提交了自己设计的算法。最终有5个候选算法进入最后一轮:Rijndael,Serpent,Twofish,RC6 和 MARS。最终经过安全性分析、软硬件性能评估等严格的步骤,Rijndael 算法获胜。
AES 密码与分组密码 Rijndael 基本上完全一致,Rijndael 分组大小和密钥大小都可以为 128 位、192 位和 256 位。然而 AES 只要求分组大小为 128 位,因此只有分组长度为 128 位的 Rijndael 才称为 AES 算法。
本文 AES 默认是分组长度为 128 位的 Rijndael 算法
原理请参考: 加密技术02-对称加密-AES原理
算法对比
公钥密码是一种用不同的密钥进行加密和解密的技术,和对称密码一样用于确保消息的机密性。使用最广泛的一种公钥密码算法是 RAS。和对称密码相比,公钥密码的速度非常慢,因此一般都会和对称密码一起组成混合密码系统来使用。公钥密码能够解决对称密码中的密钥交换问题,但存在通过中间人攻击被伪装的风险,因此需要对带有数字签名的公钥进行认证。
公钥密码学的概念是为了解决对称密码学中最困难的两个问题而提出
应用场景
几个误解
主要算法
Diffie–Hellman 密钥交换
迪菲-赫尔曼密钥交换(英语:Diffie–Hellman key exchange,缩写为D-H) 是一种安全协议。它可以让双方在完全没有对方任何预先信息的条件下通过不安全信道创建起一个密钥。这个密钥可以在后续的通讯中作为对称密钥来加密通讯内容。公钥交换的概念最早由瑞夫·墨克(Ralph C. Merkle)提出,而这个密钥交换方法,由惠特菲尔德·迪菲(Bailey Whitfield Diffie)和马丁·赫尔曼(Martin Edward Hellman)在1976年发表,也是在公开文献中发布的第一个非对称方案。
Diffie–Hellman 算法的有效性是建立在计算离散对数很困难的基础上。简单地说,我们可如下定义离散对数。首先定义素数 p 的本原跟。素数 p 的本原根是一个整数,且其幂可以产生 1 到 p-1 之间所有整数,也就是说若 a 是素数 p 的本原根,则
a mod p, a 2 mod p,..., a p-1 mod p 各不相同,它是整数 1 到 p-1 的一个置换。
对任意整数 b 和素数 p 的本原跟 a,我们可以找到唯一的指数 i 使得
b ≡ a i (mod p) 其中 0 <= i <= p-1
其中 a, b, p 这些是公开的,i 是私有的,破解难度就是计算 i 的难度。
Elgamal
1985年,T.Elgamal 提出了一种基于离散对数的公开密钥体制,一种与 Diffie-Hellman 密钥分配体制密切相关。Elgamal 密码体系应用于一些技术标准中,如数字签名标准(DSS) 和 S/MIME 电子邮件标准。
基本原理就是利用 Diffie–Hellman 进行密钥交换,假设交换的密钥为 K,然后用 K 对要发送的消息 M,进行加密处理。
所以 Elgamal 的安全系数取决于 Diffie–Hellman 密钥交换。
另外 Elgamal 加密后消息发送的长度会增加一倍。
RSA
MIT 的罗纳德·李维斯特(Ron Rivest)、阿迪·萨莫尔(Adi Shamir)和伦纳德·阿德曼(Leonard Adleman)在 1977 年提出并于 1978 年首次发表的算法。RSA 是最早满足要求的公钥算法之一,自诞生日起就成为被广泛接受且被实现的通用的公钥加密方法。
RSA 算法的有效性主要依据是大数因式分解是很困难的。
原理请参考: 加密技术03-非对称加密-RSA原理
ECC
大多数使用公钥密码学进行加密和数字签名的产品和标准都使用 RSA 算法。我们知道,为了保证 RSA 使用的安全性,最近这些年来密钥的位数一直在增加,这对使用 RSA 的应用是很重的负担,对进行大量安全交易的电子商务更是如此。近来,出现的一种具有强大竞争力的椭圆曲线密码学(ECC)对 RSA 提出了挑战。在标准化过程中,如关于公钥密码学的 IEEE P1363 标准中,人们也已考虑了 ECC。
与 RSA 相比,ECC 的主要诱人之处在于,它可以使用比 RSA 短得多的密钥得到相同安全性,因此可以减少处理负荷。
ECC 比 RSA 或 Diffie-Hellman 原理复杂很多,本文就不多阐述了。
算法对比
公钥密码体制的应用
密码分析所需计算量( NIST SP-800-57 )
注:L=公钥的大小,N=私钥的大小
散列函数是一种将长消息转换为短散列值的技术,用于确保消息的完整性。在散列算法方面,SHA-1 曾被广泛使用,但由于人们已经发现了一些针对该算法理论上可行的攻击方式,因此该算法不应再被用于新的用途。今后我们应该主要使用的算法包括目前已经在广泛使用的 SHA-2,以及具有全新结构的 SHA-3 算法。散列函数可以单独使用,也可以作为消息认证、数字签名以及伪随机数生成器等技术的组成元素来使用。
主要应用
主要算法
MD5
MD5消息摘要算法(英语:MD5 Message-Digest Algorithm),一种被广泛使用的密码散列函数,可以产生出一个 128 位( 16 字节,被表示为 32 位十六进制数字)的散列值(hash value),用于确保信息传输完整一致。MD5 由美国密码学家罗纳德·李维斯特(Ronald Linn Rivest)设计,于 1992 年公开,用以取代 MD4 算法。这套算法的程序在 RFC 1321 中被加以规范。
2009年,中国科学院的谢涛和冯登国仅用了 2 20.96 的碰撞算法复杂度,破解了MD5的碰撞抵抗,该攻击在普通计算机上运行只需要数秒钟。2011年,RFC 6151 禁止MD5用作密钥散列消息认证码。
原理请参考: 加密技术04-哈希算法-MD5原理
SHA-1
SHA-1(英语:Secure Hash Algorithm 1,中文名:安全散列算法1)是一种密码散列函数,美国国家安全局设计,并由美国国家标准技术研究所(NIST)发布为联邦资料处理标准(FIPS)。SHA-1可以生成一个被称为消息摘要的160位(20字节)散列值,散列值通常的呈现形式为40个十六进制数。
2005年,密码分析人员发现了对SHA-1的有效攻击方法,这表明该算法可能不够安全,不能继续使用,自2010年以来,许多组织建议用SHA-2或SHA-3来替换SHA-1。Microsoft、Google以及Mozilla都宣布,它们旗下的浏览器将在2017年停止接受使用SHA-1算法签名的SSL证书。
2017年2月23日,CWI Amsterdam与Google宣布了一个成功的SHA-1碰撞攻击,发布了两份内容不同但SHA-1散列值相同的PDF文件作为概念证明。
2020年,针对SHA-1的选择前缀冲突攻击已经实际可行。建议尽可能用SHA-2或SHA-3取代SHA-1。
原理请参考: 加密技术05-哈希算法-SHA系列原理
SHA-2
SHA-2,名称来自于安全散列算法2(英语:Secure Hash Algorithm 2)的缩写,一种密码散列函数算法标准,由美国国家安全局研发,由美国国家标准与技术研究院(NIST)在2001年发布。属于SHA算法之一,是SHA-1的后继者。其下又可再分为六个不同的算法标准,包括了:SHA-224、SHA-256、SHA-384、SHA-512、SHA-512/224、SHA-512/256。
SHA-2 系列的算法主要思路和 SHA-1 基本一致
原理请参考: 加密技术05-哈希算法-SHA系列原理
SHA-3
SHA-3 第三代安全散列算法(Secure Hash Algorithm 3),之前名为 Keccak 算法。
Keccak 是一个加密散列算法,由 Guido Bertoni,Joan Daemen,Michaël Peeters,以及 Gilles Van Assche 在 RadioGatún 上设计。
2012年10月2日,Keccak 被选为 NIST 散列函数竞赛的胜利者。SHA-2 目前没有出现明显的弱点。由于对 MD5、SHA-0 和 SHA-1 出现成功的破解,NIST 感觉需要一个与之前算法不同的,可替换的加密散列算法,也就是现在的 SHA-3。
SHA-3 在2015年8月5日由 NIST 通过 FIPS 202 正式发表。
原理请参考: 加密技术05-哈希算法-SHA系列原理
算法对比
5. AES加解密使用总结
AES, 高级加密标准, 是采用区块加密的一种标准, 又称Rijndael加密法. 严格上来讲, AES和Rijndael又不是完全一样, AES的区块长度固定为128比特, 秘钥长度可以是128, 192或者256. Rijndael加密法可以支持更大范围的区块和密钥长度, Rijndael使用的密钥和区块长度均可以是128,192或256比特. AES是对称加密最流行的算法之一.
我们不去讨论具体的AES的实现, 因为其中要运用到大量的高等数学知识, 单纯的了解AES流程其实也没什么意义(没有数学基础难以理解), 所以我们今天着重来总结一些使用过程中的小点.
当然了分组密码的加密模式不仅仅是ECB和CBC这两种, 其他的我们暂不涉及.
上面说的AES是一种区块加密的标准, 那加密模式其实可以理解为处理不同区块的方式和联系.
ECB可以看做最简单的模式, 需要加密的数据按照区块的大小分为N个块, 并对每个块独立的进行加密
此种方法的缺点在于同样的明文块会被加密成相同的密文块, 因此, 在某些场合, 这种方法不能提供严格的数据保密性. 通过下面图示例子大家就很容易明白了
我们的项目中使用的就是这种模式, 在CBC模式中, 每个明文块与前一个块的加密结果进行异或后, 在进行加密, 所以每个块的加密都依赖前面块的加密结果的, 同时为了保证第一个块的加密, 在第一个块中需要引入初始化向量iv.
CBC是最常用的模式. 他的缺点是加密过程只能是串行的, 无法并行, 因为每个块的加密要依赖到前一个块的加密结果, 同时在加密的时候明文中的细微改变, 会导致后面所有的密文块都发生变化. 但此种模式也是有优点的, 在解密的过程中, 每个块的解密依赖上一个块的加密结果, 所以我们要解密一个块的时候, 只需要把他前面一个块也一起读取, 就可以完成本块的解密, 所以这个过程是可以并行操作的.
AES加密每个块blockSize是128比特, 那如果我们要加密的数据不是128比特的倍数, 就会存在最后一个分块不足128比特, 那这个块怎么处理, 就用到了填充模式. 下面是常用的填充模式.
PKCS7可用于填充的块大小为1-255比特, 填充方式也很容易理解, 使用需填充长度的数值paddingSize 所表示的ASCII码 paddingChar = chr(paddingSize)对数据进行冗余填充. (后面有解释)
PKCS5只能用来填充8字节的块
我们以AES(128)为例, 数据块长度为128比特, 16字节, 使用PKCS7填充时, 填充长度为1-16. 注意, 当加密长度是16整数倍时, 反而填充长度是最大的, 要填充16字节. 原因是 "PKCS7" 拆包时会按协议取最后一个字节所表征的数值长度作为数据填充长度, 如果因真实数据长度恰好为16的整数倍而不进行填充, 则拆包时会导致真实数据丢失.
举一个blockSize为8字节的例子
第二个块中不足8字节, 差4个字节, 所以用4个4来填充
严格来讲 PKCS5不能用于AES, 因为AES最小是128比特(16字节), 只有在使用DES此类blockSize为64比特算法时, 考虑使用PKCS5
我们的项目最开始加解密库使用了CryptoSwift, 后来发现有性能问题, 就改为使用IDZSwiftCommonCrypto.
这里咱们结合项目中边下边播边解密来提一个点, 具体的可以参考之前写的 边下边播的总结 . 因为播放器支持拖动, 所以我们在拖拽到一个点, 去网络拉取对应数据时, 应做好range的修正, 一般我们都会以range的start和end为基准, 向前后找到包含这个range的所有块范围. 打比方说我们需要的range时10-20, 这是我们应该修正range为0-31, 因为起点10在0-15中, 20 在16-31中. 这是常规的range修正.(第一步 找16倍数点).
但是在实际中, 我们请求一段数据时, 还涉及到解密器的初始化问题, 如果我们是请求的0-31的数据, 因为是从0开始, 所以我们的解密器只需要用key和初始的iv来进行初始化, 那如果经过了第一步的基本range修正后, 我们请求的数据不是从0开始, 那我们则还需要继续往前读取16个字节的数据, 举个例子, 经过第一步修正后的range为16-31, 那我们应该再往前读取16字节, 应该是要0-31 这32个字节数据, 拿到数据后,使用前16个字节(上一个块的密文)当做iv来初始化解密器.
还有一个要注意的点是, 数据解密的过程中, 还有可能会吞掉后面16个字节的数据, 我暂时没看源码, 不知道具体因为什么, 所以保险起见, 我们的range最好是再向后读取6个字节.
感谢阅读
参考资料
https://zh.wikipedia.org/zh-cn/%E9%AB%98%E7%BA%A7%E5%8A%A0%E5%AF%86%E6%A0%87%E5%87%86
https://segmentfault.com/a/1190000019793040
https://ithelp.ithome.com.tw/articles/10250386
6. 数据加密方式总结
程序开发过程中一般会遇到客户端与服务端进行数据通信,不可避免的会遇到数据安全问题。为了防止数据在网络传输中发生数据泄露,我们常常会用到数据加密。常规的数据加密方式主要有:对称加密和非对称加密。
对称加密主要有3种加密方式:DES加密、3DES加密及AES加密
如上图所述,对称加密使用同一个秘钥,先用秘钥对需要传输的明文数据进行加密,已加密的密文数据经过网络传输后,数据接收方通过同一个秘钥进行解密,将密文数据再转化成明文数据,完成数据传输过程。
但DES加密算法的安全性不够好,DES 被证明是可以破解的,明文+密钥=密文,这个公式只要知道任何两个,就可以推导出第三个在已经知道明文和对应密文的情况下,通过穷举和暴力破解是可以破解DES的。
顾名思义,3DES加密就是使用DES算法加密解密3次,由于DES加密缺乏安全性,3DES加密3次后安全性大大提高,但损失了一定的速度性能,所以慢慢被更优异的AES加密算法所取代,3DES算法可以说是DES加密和AES加密中间的过度品。
AES加解密过程和DES加解密过程类似,AES标准支持可变分组长度,分组长度可设定为32 比特的任意倍数,最小值为128 比特,最大值为256 比特,安全性大大增加,加解密速度也还可以。
RSA的安全基于大数分解的难度。其公钥和私钥是一对大素数(100到200位十进制数或更大)的函数。从一个公钥和密文恢复出明文的难度,等价于分解两个大素数之积(这是公认的数学难题)。
同时由于RSA的私钥不用在网络上传输,避免了秘钥泄露,因此安全性能大大提高。
RSA加解密速度测试:
通过上表可以发现,RSA加密速度还比较快,但解密速度会随着加密数据的大小慢很多,加密6KB大小的数据用时0秒,解密用时1秒还可以接受。但对1M左右的数据进行解密,花费了5分多钟的时间,在实际开发过程中就会显得很慢,所以RSA算法一般用于加密数据量较小的应用场景。
7. 多媒体信息加密技术论文
多媒体多媒体信息加密技术论文是解决网络安全问要采取的主要保密安全 措施 。我为大家整理的多媒体多媒体信息加密技术论文论文,希望你们喜欢。
多媒体多媒体信息加密技术论文论文篇一
多媒体信息加密技术论文研究
摘要:随着 网络 技术的 发展 ,网络在提供给人们巨大方便的同时也带来了很多的安全隐患,病毒、黑客攻击以及 计算 机威胁事件已经司空见惯,为了使得互联网的信息能够正确有效地被人们所使用,互联网的安全就变得迫在眉睫。
关键词:网络;加密技术;安全隐患
随着 网络技术 的高速发展,互联网已经成为人们利用信息和资源共享的主要手段,面对这个互连的开放式的系统,人们在感叹 现代 网络技术的高超与便利的同时,又会面临着一系列的安全问题的困扰。如何保护 计算机信息的安全,也即信息内容的保密问题显得尤为重要。
数据加密技术是解决网络安全问要采取的主要保密安全措施。是最常用的保密安全手段,通过数据加密技术,可以在一定程度上提高数据传输的安全性,保证传输数据的完整性。
1加密技术
数据加密的基本过程就是对原来为明文的文件或数据按某种算法进行处理。使其成为不可读的一段代码,通常称为“密文”传送,到达目的地后使其只能在输入相应的密钥之后才能显示出本来内容,通过这样的途径达到保护数据不被人非法窃取、修改的目的。该过程的逆过程为解密,即将该编码信息转化为其原来数据的过程。数据加密技术主要分为数据传输加密和数据存储加密。数据传输加密技术主要是对传输中的数据流进行加密,常用的有链路加密、节点加密和端到端加密三种方式。
2加密算法
信息加密是由各种加密算法实现的,传统的加密系统是以密钥为基础的,是一种对称加密,即用户使用同一个密钥加密和解密。而公钥则是一种非对称加密 方法 。加密者和解密者各自拥有不同的密钥,对称加密算法包括DES和IDEA;非对称加密算法包括RSA、背包密码等。目前在数据通信中使用最普遍的算法有DES算法、RSA算法和PGP算法等。
2.1对称加密算法
对称密码体制是一种传统密码体制,也称为私钥密码体制。在对称加密系统中,加密和解密采用相同的密钥。因为加解密钥相同,需要通信的双方必须选择和保存他们共同的密钥,各方必须信任对方不会将密钥泄漏出去,这样就可以实现数据的机密性和完整性。对于具有n个用户的网络,需要n(n-1)/2个密钥,在用户群不是很大的情况下,对称加密系统是有效的。DES算法是目前最为典型的对称密钥密码系统算法。
DES是一种分组密码,用专门的变换函数来加密明文。方法是先把明文按组长64bit分成若干组,然后用变换函数依次加密这些组,每次输出64bit的密文,最后将所有密文串接起来即得整个密文。密钥长度56bit,由任意56位数组成,因此数量高达256个,而且可以随时更换。使破解变得不可能,因此,DES的安全性完全依赖于对密钥的保护(故称为秘密密钥算法)。DES运算速度快,适合对大量数据的加密,但缺点是密钥的安全分发困难。
2.2非对称密钥密码体制
非对称密钥密码体制也叫公共密钥技术,该技术就是针对私钥密码体制的缺陷被提出来的。公共密钥技术利用两个密码取代常规的一个密码:其中一个公共密钥被用来加密数据,而另一个私人密钥被用来解密数据。这两个密钥在数字上相关,但即便使用许多计算机协同运算,要想从公共密钥中逆算出对应的私人密钥也是不可能的。这是因为两个密钥生成的基本原理根据一个数学计算的特性,即两个对位质数相乘可以轻易得到一个巨大的数字,但要是反过来将这个巨大的乘积数分解为组成它的两个质数,即使是超级计算机也要花很长的时间。此外,密钥对中任何一个都可用于加密,其另外一个用于解密,且密钥对中称为私人密钥的那一个只有密钥对的所有者才知道,从而人们可以把私人密钥作为其所有者的身份特征。根据公共密钥算法,已知公共密钥是不能推导出私人密钥的。最后使用公钥时,要安装此类加密程序,设定私人密钥,并由程序生成庞大的公共密钥。使用者与其向 联系的人发送公共密钥的拷贝,同时请他们也使用同一个加密程序。之后他人就能向最初的使用者发送用公共密钥加密成密码的信息。仅有使用者才能够解码那些信息,因为解码要求使用者知道公共密钥的口令。那是惟有使用者自己才知道的私人密钥。在这些过程当中。信息接受方获得对方公共密钥有两种方法:一是直接跟对方联系以获得对方的公共密钥;另一种方法是向第三方即可靠的验证机构(如Certification Authori-ty,CA),可靠地获取对方的公共密钥。公共密钥体制的算法中最着名的代表是RSA系统,此外还有:背包密码、椭圆曲线、EL Gamal算法等。公钥密码的优点是可以适应网络的开放性要求,且密钥 管理问题也较为简单,尤其可方便的实现数字签名和验证。但其算法复杂,加密数据的速率较低。尽管如此,随着现代 电子 技术和密码技术的发展,公钥密码算法将是一种很有前途的网络安全加密体制。
RSA算法得基本思想是:先找出两个非常大的质数P和Q,算出N=(P×Q),找到一个小于N的E,使E和(P-1)×(Q-1)互质。然后算出数D,使(D×E-1)Mod(P-1)×(Q-1)=0。则公钥为(E,N),私钥为(D,N)。在加密时,将明文划分成串,使得每串明文P落在0和N之间,这样可以通过将明文划分为每块有K位的组来实现。并且使得K满足(P-1)×(Q-1I)K3加密技术在 网络 中的 应用及 发展
实际应用中加密技术主要有链路加密、节点加密和端对端加密等三种方式,它们分别在OSI不同层次使用加密技术。链路加密通常用硬件在物理层实现,加密设备对所有通过的数据加密,这种加密方式对用户是透明的,由网络自动逐段依次进行,用户不需要了解加密技术的细节,主要用以对信道或链路中可能被截获的部分进行保护。链路加密的全部报文都以明文形式通过各节点的处理器。在节点数据容易受到非法存取的危害。节点加密是对链路加密的改进,在协议运输层上进行加密,加密算法要组合在依附于节点的加密模块中,所以明文数据只存在于保密模块中,克服了链路加密在节点处易遭非法存取的缺点。网络层以上的加密,通常称为端对端加密,端对端加密是把加密设备放在网络层和传输层之间或在表示层以上对传输的数据加密,用户数据在整个传输过程中以密文的形式存在。它不需要考虑网络低层,下层协议信息以明文形式传输,由于路由信息没有加密,易受监控分析。不同加密方式在网络层次中侧重点不同,网络应用中可以将链路加密或节点加密同端到端加密结合起来,可以弥补单一加密方式的不足,从而提高网络的安全性。针对网络不同层次的安全需求也制定出了不同的安全协议以便能够提供更好的加密和认证服务,每个协议都位于 计算 机体系结构的不同层次中。混合加密方式兼有两种密码体制的优点,从而构成了一种理想的密码方式并得到广泛的应用。在数据信息中很多时候所传输数据只是其中一小部分包含重要或关键信息,只要这部分数据安全性得到保证整个数据信息都可以认为是安全的,这种情况下可以采用部分加密方案,在数据压缩后只加密数据中的重要或关键信息部分。就可以大大减少计算时间,做到数据既能快速地传输,并且不影响准确性和完整性,尤其在实时数据传输中这种方法能起到很显着的效果。
4结语
多媒体信息加密技术论文作为网络安全技术的核心,其重要性不可忽略。随着加密算法的公开化和解密技术的发展,各个国家正不断致力于开发和设计新的加密算法和加密机制。所以我们应该不断发展和开发新的多媒体信息加密技术论文以适应纷繁变化的网络安全 环境。
多媒体多媒体信息加密技术论文论文篇二
信息数据加密技术研究
[摘 要] 随着全球经济一体化的到来,信息安全得到了越来越多的关注,而信息数据加密是防止数据在数据存储和和传输中失密的有效手段。如何实现信息数据加密,世界各个国家分别从法律上、管理上加强了对数据的安全保护,而从技术上采取措施才是有效手段,信息数据加密技术是利用数学或物理手段,对电子信息在传输过程中和存储体内进行保护,以防止泄漏的技术。
[关键字] 信息 数据加密 对称密钥加密技术 非对称密钥加密技术
随着全球经济一体化的到来,信息技术的快速发展和信息交换的大量增加给整个社会带来了新的驱动力和创新意识。信息技术的高速度发展,信息传输的安全日益引起人们的关注。世界各个国家分别从法律上、管理上加强了对数据的安全保护,而从技术上采取措施才是有效手段,技术上的措施分别可以从软件和硬件两方面入手。随着对信息数据安全的要求的提高,数据加密技术和物理防范技术也在不断的发展。数据加密是防止数据在数据存储和和传输中失密的有效手段。信息数据加密技术是利用数学或物理手段,对电子信息在传输过程中和存储体内进行保护,以防止泄漏的技术。信息数据加密与解密从宏观上讲是非常简单的,很容易掌握,可以很方便的对机密数据进行加密和解密。从而实现对数据的安全保障。
1.信息数据加密技术的基本概念
信息数据加密就是通过信息的变换或编码,把原本一个较大范围的人(或者机器)都能够读懂、理解和识别的信息(这些信息可以是语音、文字、图像和符号等等)通过一定的方法(算法),使之成为难以读懂的乱码型的信息,从而达到保障信息安全,使其不被非法盗用或被非相关人员越权阅读的目的。在加密过程中原始信息被称为“明文”,明文经转换加密后得到的形式就是“密文”。那么由“明文”变成“密文”的过程称为“加密”,而把密文转变为明文的过程称为“解密”。
2. 信息数据加密技术分类
信息数据加密技术一般来说可以分为两种,对称密钥加密技术及非对称密钥加密技术。
2.1 对称密钥加密技术
对称密钥加密技术,又称专用密钥加密技术或单密钥加密技术。其加密和解密时使用同一个密钥,即同一个算法。对称密钥是一种比较传统的加密方式,是最简单方式。在进行对称密钥加密时,通信双方需要交换彼此密钥,当需要给对方发送信息数据时,用自己的加密密钥进行加密,而在需要接收方信息数据的时候,收到后用对方所给的密钥进行解密。在对称密钥中,密钥的管理极为重要,一旦密钥丢失,密文将公开于世。这种加密方式在与多方通信时变得很复杂,因为需要保存很多密钥,而且密钥本身的安全就是一个必须面对的大问题。
对称密钥加密算法主要包括:DES、3DES、IDEA、FEAL、BLOWFISH等。
DES 算法的数据分组长度为64 位,初始置换函数接受长度为64位的明文输入,密文分组长度也是64 位,末置换函数输出64位的密文;使用的密钥为64 位,有效密钥长度为56 位,有8 位用于奇偶校验。DES的解密算法与加密算法完全相同,但密钥的顺序正好相反。所以DES是一种对二元数据进行加密的算法。DES加密过程是:对给定的64 位比特的明文通过初始置换函数进行重新排列,产生一个输出;按照规则迭代,置换后的输出数据的位数要比迭代前输入的位数少;进行逆置换,得到密文。
DES 算法还是比别的加密算法具有更高的安全性,因为DES算法具有相当高的复杂性,特别是在一些保密性级别要求高的情况下使用三重DES 或3DES 系统较可靠。DES算法由于其便于掌握,经济有效,使其应用范围更为广泛。目前除了用穷举搜索法可以对DES 算法进行有效地攻击之外, 还没有发现 其它 有效的攻击办法。
IDEA算法1990年由瑞士联邦技术协会的Xuejia Lai和James Massey开发的。经历了大量的详细审查,对密码分析具有很强的抵抗能力,在多种商业产品中被使用。IDEA以64位大小的数据块加密的明文块进行分组,密匙长度为128位,它基于“相异代数群上的混合运算”设计思想算法用硬件和软件实现都很容易且比DES在实现上快的多。
IDEA算法输入的64位数据分组一般被分成4个16位子分组:A1,A2,A3和A4。这4个子分组成为算法输入的第一轮数据,总共有8轮。在每一轮中,这4个子分组相互相异或,相加,相乘,且与6个16位子密钥相异或,相加,相乘。在轮与轮间,第二和第三个子分组交换。最后在输出变换中4个子分组与4个子密钥进行运算。
FEAL算法不适用于较小的系统,它的提出是着眼于当时的DES只用硬件去实现,FEAL算法是一套类似美国DES的分组加密算法。但FEAL在每一轮的安全强度都比DES高,是比较适合通过软件来实现的。FEAL没有使用置换函数来混淆加密或解密过程中的数据。FEAL使用了异或(XOR)、旋转(Rotation)、加法与模(Molus)运算,FEAL中子密钥的生成使用了8轮迭代循环,每轮循环产生2个16bit的子密钥,共产生16个子密钥运用于加密算法中。
2.2 非对称密钥加密技术
非对称密钥加密技术又称公开密钥加密,即非对称加密算法需要两个密钥,公开密钥和私有密钥。有一把公用的加密密钥,有多把解密密钥,加密和解密时使用不同的密钥,即不同的算法,虽然两者之间存在一定的关系,但不可能轻易地从一个推导出另一个。使用私有密钥对数据信息进行加密,必须使用对应的公开密钥才能解密,而 公开密钥对数据信息进行加密,只有对应的私有密钥才能解密。在非对称密钥加密技术中公开密钥和私有密钥都是一组长度很大、数字上具有相关性的素数。其中的一个密钥不可能翻译出信息数据,只有使用另一个密钥才能解密,每个用户只能得到唯一的一对密钥,一个是公开密钥,一个是私有密钥,公开密钥保存在公共区域,可在用户中传递,而私有密钥则必须放在安全的地方。
非对称密钥加密技术的典型算法是RSA算法。RSA算法是世界上第一个既能用于数据加密也能用于数字签名的非对称性加密算法,RSA算法是1977年由Ron Rivest、Adi Shamirh和LenAdleman在(美国麻省理工学院)开发的。RSA是目前最有影响力的公钥加密算法,它能够抵抗到目前为止已知的所有密码攻击,已被ISO推荐为公钥数据加密标准。
RSA算法的安全性依赖于大数分解,但现在还没有证明破解RSA就一定需要作大数分解。所以是否等同于大数分解一直没有理论证明的支持。由于RSA算法进行的都是大数计算,所以无论是在软件还是硬件方面实现相对于DES算法RSA算法最快的情况也会慢上好几倍。速度一直是RSA算法的缺陷。
3. 总结
随着计算机网络的飞速发展,在实现资源共享、信息海量的同时,信息安全达到了前所未有的需要程度,多媒体信息加密技术论文也凸显了其必不可少的地位,同时也加密技术带来了前所未有的发展需求,加密技术发展空间无限。
参考文献:
[1] IDEA算法 中国信息安全组织 2004-07-17.
看了“多媒体多媒体信息加密技术论文论文”的人还看:
1. ssl加密技术论文
2. 详解加密技术概念加密方法以及应用论文
3. 浅谈计算机安全技术毕业论文
4. 电子信息技术论文范文
5. 计算机网络安全结课论文
8. 加密算法总结
iOS加密相关算法框架:CommonCrypto
明文: 明文指的是未被加密过的原始数据。
密文: 明文被某种加密算法加密之后,会变成密文,从而确保原始数据的安全。密文也可以被解密,得到原始的明文。
密钥: 密钥是一种参数,它是在明文转换为密文或将密文转换为明文的算法中输入的参数。密钥分为对称密钥与非对称密钥,分别应用在对称加密和非对称加密上。
对称加密又叫做私钥加密 ,即信息的发送方和接收方使用 同一个密钥 去加密和解密数据。
对称加密的特点是 算法公开、计算量少、加密和解密速度快效率高 ,适合于对大数据量进行加密;
缺点是 双方使用相同的密钥、密钥传输的过程不安全、易被破解、因此为了保密其密钥需要经常更换
常见的对称加密算法有 AES、DES 、3DES、TDEA、Blowfish、RC5和IDEA。【不过DES被认为是不安全的】
加密过程:明文 + 加密算法 + 私钥 => 密文
解密过程: 密文 + 解密算法 + 私钥 => 明文
对称加密中用到的密钥叫做 私钥 ,私钥表示个人私有的密钥,即该密钥不能被泄露。
其 加密过程中的私钥与解密过程中用到的私钥是同一个密钥 ,这也是称加密之所以称之为“对称”的原因。由于对称加密的 算法是公开 的,所以一旦私钥被泄露,那么密文就很容易被破解,所以对称加密的 缺点是密钥安全管理困难 。
3DES是DES加密算法的一种模式,它使用3条64位的密钥对数据进行三次加密。是DES像AES过渡的加密算法,是DES的一个更安全的变形,它以DES为基本模块,通过组合分组方法设计出分组加密算法。
非对称加密也叫做公钥加密 。非对称加密与对称加密相比,其安全性更好。对称加密的通信双方使用相同的密钥,如果一方的密钥遭泄露,那么整个通信就会被破解。而 非对称加密使用一对密钥,即公钥和私钥 , 且二者成对出现 。私钥被自己保存,不能对外泄露。公钥指的是公共的密钥,任何人都可以获得该密钥。用公钥或私钥中的任何一个进行加密,用另一个进行解密。两种使用方法:
哈希算法加密是通过哈希算法对数据加密、加密后的结果不可逆,即加密后不能在解密。
SHA加密,安全哈希算法,主要适用于数字签名签名标准( DSS )里面定义的数字签名算法( DSA )。对于长度小于 2^64 位的消息, SHA1 会产生一个160位的消息摘要。当接收消息的时候,这个消息摘要可以用来验证数据的完整性。在传输的过程中,数据很可能会发生变化,那么这时候就会产生不同的消息摘要。当然除了 SHA1 还有 SHA256 以及 SHA512 等。
HMAC加密,给定一个密钥,对明文加密,做两次“散列”,得到的结果还是32位字符串。
就是或、与、异或、或者加上某个数据
特点:可逆、原始数据和加密数据长度保持一致
9. 密码学第一次实验报告:DES算法与差分攻击
DES算法与差分攻击
了解DES算法基本工作原理,体会并理解分组密码算法的混淆和扩散概念。了解Sbox工作原理及效果。了解DES的工作模式和填充方式。了解差分攻击
的基本原理。
IP置换目的是将输入的64位数据块按位重新组合,并把输出分为L0、R0两部分,每部分各长32位。
表中的数字代表新数据中此位置的数据在原数据中的位置,即原数据块的第58位放到新数据的第1位,第50位放到第2位,……依此类推,第7位放到第64位。置换后的数据分为L0和R0两部分,L0为新数据的左32位,R0为新数据的右32位。
不考虑每个字节的第8位,DES的密钥由64位减至56位,每个字节的第8位作为奇偶校验位。产生的56位密钥由下表生成(注意表中没有8,16,24,32,40,48,56和64这8位):
在DES的每一轮中,从56位密钥产生出不同的48位子密钥,确定这些子密钥的方式如下:
1).将56位的密钥分成两部分,每部分28位。
2).根据轮数,这两部分分别循环左移1位或2位。每轮移动的位数如下表:
移动后,从56位中选出48位。这个过程中,既置换了每位的顺序,又选择了子密钥,因此称为压缩置换。压缩置换规则如下表(注意表中没有9,18,22,25,35,38,43和54这8位):
压缩后的密钥与扩展分组异或以后得到48位的数据,将这个数据送人S盒,进行替代运算。替代由8个不同的S盒完成,每个S盒有6位输入4位输出。48位输入分为8个6位的分组,一个分组对应一个S盒,对应的S盒对各组进行代替操作。
一个S盒就是一个4行16列的表,盒中的每一项都是一个4位的数。S盒的6个输入确定了其对应的输出在哪一行哪一列,输入的高低两位做为行数H,中间四位做为列数L,在S-BOX中查找第H行L列对应的数据(<32)。
S盒代替时DES算法的关键步骤,所有的其他的运算都是线性的,易于分析,而S盒是非线性的,相比于其他步骤,提供了更好安全性
S盒代替运算的32位输出按照P盒进行置换。该置换把输入的每位映射到输出位,任何一位不能被映射两次,也不能被略去,映射规则如下表:
表中的数字代表原数据中此位置的数据在新数据中的位置,即原数据块的第16位放到新数据的第1位,第7位放到第2位,……依此类推,第25位放到第32位。
末置换是初始置换的逆过程,DES最后一轮后,左、右两半部分并未进行交换,而是两部分合并形成一个分组做为末置换的输入。末置换规则如下表:
置换方法同上
实际应用中,DES是根据其加密算法所定义的明文分组的大小(64bits),将数据割成若干64bits的加密区块,再以加密区块为单位,分别进行加密处理。根据数据加密时每个加密区块间的关联方式,可以分为4种加密模式,包括ECB,CBC,CFB及OFB。
DES算法其中主要起作用的算法有:矩阵置换、扩展、左移、异或、左右互换、s盒作用 。其中对攻击者来说最麻烦的要说s盒一步,破解des体系关键在s盒。
乍一看六位输入与四位输出貌似没什么关系。但事实上,对于同一个s盒具有相同输入异或的所有输入六比特组的输出四比特异或值有一定规律。
具体些说,对于输入异或相同的明文对B,B*仅有32组,而这32组输出异或却并不是均匀分布,而是仅分布在很少的几个四比特值中;也可以说具有相同输入异或且输出四比特异或也相同的六比特输入数量不多且分布不均匀。正是这种输入输出输出异或间的不均匀性可以被攻击者利用并破解密钥。
结果表格:
10. 《TrueCrypt加密系统》实验报告
嚎哥,给你,分也太少了把
【实验目的】
1. 了解TrueCrypt加密系统的功能、工作原理和使用方法。
2. 在实践中学习TrueCrypt加密系统的使用,并能够加以运用。
3. 能够使用TrueCrypt加密系统进行加密。
4. 联系实际,加深对计算机技术的了解和认识。
【实验环境】
TrueCrypt是一款免费的PC数据加密软件,支持Vista和Linux系统,可以在硬盘或闪存上创建一个或多个虚拟磁盘,所有虚拟磁盘上的文件都被自动加密,加密后需要通过密码来进行访问,由于加入了AES-256加密算法,使得加密数据几乎不可能被破解,对于没有商务安全功能的普通电脑,或者不舍得购买加密闪存的商务用户,TrueCrypt可以让他们的数据存储安全可靠。
【实验内容】