是比较安全的,不用担心的,那些高级黑客不会有兴趣来找你的
无线wifi里的wap加密里的tkip和EAS是是两种不同的加密协议及标准,TKIP是可以动态改变密钥的“临时密钥完整性协议”(Temporal Key Integrity Protocol,TKIP),AES是高级加密标准(Advanced Encryption Standard,AES)。区别如下:
1、规范不同:
在IEEE 80211i规范中,TKIP:Temporal Key Integrity Protocol(临时密钥完整性协议)负责处理无线安全问题的加密部分。密码学中的高级加密标准(Advanced Encryption Standard,AES),又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准。
2、秘钥长度不同:
TKIP中密码使用的密钥长度为128位。AES的区块长度固定为128位,密钥长度则可以是128,192或256位。
扩展资料:
TKIP和WPA标准相关实施三个新的安全功能:
1、TKIP实现了密钥混合功能,结合秘密与根密钥初始化向量传递给它的RC4初始化之前。WEP的,相比之下,仅仅是连接到根密钥初始化向量,并通过这个值的RC4例程。
2、WPA实现了一个序列计数器,以防止重放攻击。为了接收的数据包将被拒绝接入点。
3、TKIP实现了一个64位的消息完整性检查(MIC)。
TKIP相关特性:
TKIP是包裹在已有WEP密码外围的一层“外壳”。TKIP由WEP使用的同样的加密引擎和RC4算法组成。不过,TKIP中密码使用的密钥长度为128位。这解决了WEP的一个问题:过短的密钥长度。
参考资料来源:百度百科-WPA (保护无线电脑网络安全系统)
参考资料来源:百度百科-TKIP
参考资料来源:百度百科-高级加密标准
跟第三方联调的时候会碰到各种加密算法,所以总结一下。
AES不是将拿到的明文一次性加密,而是分组加密,就是先将明文切分成长度相等的块,每块大小128bit,再对每一小块进行加密。那么问题就来了,并不是所有的原始明文串能被等分成128bit,例如原串大小200bit,那么第二个块只有72bit,所以就需要对第二个块进行填充处理,让第二个块的大小达到128bit。常见的填充模式有
不进行填充,要求原始加密串大小必须是128bit的整数倍;
假设块大小8字节,如果这个块跟8字节还差n个字节,那么就在原始块填充n,直到满8字节。例:块{1,2,3},跟8字节差了5个字节,那么补全后的结果{1,2,3,5,5,5,5,5}后面是五个5,块{1,2,3,7}跟8字节差了1个字节,那么补全后就是{1,2,3,,7,1},就是补了一个1。
如果恰好8字节又选择了PKCS5Padding填充方式呢?块{1,2,38}填充后变成{1,2,38,88},原串后面被补了8个8,这样做的原因是方便解密,只需要看最后一位就能算出原块的大小是多少。
跟PKCS5Padding的填充方式一样,不同的是,PKCS5Padding只是对8字节的进行填充,PKCS7Padding可以对1~256字节大小的block进行填充。openssl里aes的默认填充方式就是PKCS7Padding
AES有多种加密模式,包括:ECB,CBC,CTR,OCF,CFB,最常见的还是ECB和CBC模式。
最简单的一种加密模式,每个块进行独立加密,块与块之间加密互不影响,这样就能并行,效率高。
虽然这样加密很简单,但是不安全,如果两个块的明文一模一样,那么加密出来的东西也一模一样。
openssl的相关函数:
CBC模式中引入了一个新的概念,初始向量iv。iv的作用就是为了防止同样的明文块被加密成同样的内容。原理是第一个明文块跟初始向量做异或后加密,第二个块跟第一个密文块做异或再加密,依次类推,避免了同样的块被加密成同样的内容。
openssl相关函数:
敲黑板!! 所以跟第三方对接的时候,如果对面说他们用aes加密,务必对他们发起灵魂三问:
签名的作用是让接受方验证你传过去的数据没有被篡改;加密的作用是保证数据不被窃取。
原理:你有一个需要被验签的原串A。
步骤一:选择hash算法将A进行hash得到hash_a;
步骤二:将hash_a进行加密,得到加密值encrypt_a;
步骤三:将原串A和加密的encrypt_a发给第三方,第三方进行验签。第三方先解密encrypt_a,得到一个hash值hash_a1,然后对原串A使用同样的hash算法进行hash,得到的即为加密前的hash_a,如果hash_a = hash_a1, 那么验签成功。
rsa使用私钥对信息加密来做签名,使用公钥解密去验签。
openssl相关函数:
注意:两个函数中的m,是原串hash后的值,type表示生成m的算法,例如NID_sha256表示使用sha256对原串进行的hash,返回1为签名成功或者验签成功,-1位为失败。
再次敲黑板!! 所以如果第三方说使用rsa验签,要让对方告知他们的hash算法。
首先明确,私钥加密不等于签名。加密的时候,使用使用公钥加密,第三方使用你的私钥进行解密。
openssl里公钥加密函数为RSA_public_encrypt,私钥解密函数为RSA_private_decrypt,具体的可以自己去查看下官方文档。
rsa也涉及到了填充方式,所以对接的时候也要问清楚
在使用公钥进行加密时,会发现每次加密出的结果都不一样,但使用私钥加密时,每次的结果都一样,网上查了一圈,说是因为填充方式的原因。
官方文档说明:
那么为什么一定要使用私钥做签名,公钥做加密,而不是公钥做签名,私钥做加密呢?
举个栗子:
AES和DES加密的区别:
1、密钥长度不同
AES 密钥长度可以是 128 位,192 位和 256 位。DES 密钥长度在 DES 中为 56 位。
2、轮数不同
AES 轮数取决于密钥长度:10 (128 位), 12 (192 位) 或 14 (256 位)。DES 涉及 16 轮相同的 *** 作。
3、原理不同
AES 结构基于置换排列网络。DES 结构基于 feistal 网络。
4、安全性不同
AES 比 DES 密码更安全,并且是事实上的世界标准。由于 DES 具有已知漏洞,因此很容易被破坏。 3DES (三重 DES) 是 DES 的一种变体,它比通常的 DES 安全。
5、回合不同
AES 中的回合为:字节替换,移位行,混合列和键添加。DES 中的回合为:扩展,带回合键的 XOR *** 作,替换和置换。
6、加密不同
AES 可以加密 128 位纯文本。DES 可以加密 64 位纯文本。
,WiFi网络安全存取)。WPA协议是一种保护无线网络(WiFi)安全的系统,它是在前一代有线等效加密(WEP)的基础上产生的,解决了前任WEP的缺陷问题,它使用TKIP(临时密钥完整性)协议,是IEEE
80211i标准中的过渡方案
。其中WPA-PSK主要面向个人用户。
WPA2,即WPA加密的升级版。它是WiFi联盟验证过的IEEE 80211i标准的认证形式,WPA2实现了80211i的强制性元素,特别是Michael算法被公认彻底安全的CCMP(计数器模式密码块链消息完整码协议)讯息认证码所取代、而RC4加密算法也被AES(高级加密)所取代。
WPA-PSK+WPA2-PSK。从字面便可以看出,很明显,最后一种是两种加密算法的组合,可以说是强强联手。WPA-PSK 也叫做 WPA-Personal(WPA个人)。WPA-PSK使用TKIP加密方法把无线设备和接入点联系起来WPA2-PSK使用AES加密方法把无线设备和接入点联系起来。
1、聊胜于无的WEP
WEP作为一种老式的加密手段,它的特点是使用一个静态的密钥来加密所有的通信
,这就意味着,网管人员如果想更新密钥,必须亲自访问每台主机,并且其所采用的RC4的RSA数据加密技术具有可预测性,对于入侵者来说很容易截取和破解加密密钥,使用户的安全防护形同虚设,因此如非迫不得已,不建议选择此种安全模式。
2、升级后的WPA
继WEP之后,人们将期望转向了其升级后的WPA,与之前WEP的静态密钥不同,WPA需要不断的转换密钥。WPA采用有效的密钥分发机制,可以跨越不同厂商的无线网卡实现应用。它作为WEP的升级版,在安全的防护上比WEP更为周密,主要体现在身份认证、加密机制和数据包检查等方面,而且它还提升了无线网络的管理能力。
3、追求,永无止境:WPA2
WPA2是WiFi联盟验证过的IEEE 80211i标准的认证形式,WPA2实现了80211i的强制性元素,特别是Michael算法被公认彻底安全的CCMP(计数器模式密码块链消息完整码协议)讯息认证码所取代、而RC4加密算法也被AES所取代。
目前WPA2加密方式的安全防护能力非常出色,只要用户的无线网络设备均能够支持WPA2加密,那么恭喜你,你的无线网络处于一个非常安全的境地。1 引言 随着因特网的发展,信息传输及存储的安全问题成为影响因特网应用发展的重要因素。信息安全技术也就成为了人们研究因特网应用的新热点。 信息安全的研究包括密码理论与技术、安全协议与技术、安全体系结构理论、信息对抗理论与技术、网络安全与安全产品等领域,其中密码算法的理论与实现研究是信息安全研究的基础。
2 AES加密标准
1977年1月公布的数据加密标准DES(Data Encrption Standard)经过20年的实践应用后,现在已被认为是不可靠的。1997年1月美国国家标准和技术研究所(NIST)发布了高级加密标准(AES- FIPS)的研发计划,并于同年9月正式发布了征集候选算法公告[1],NIST希望确定一种保护敏感信息的公开、免费并且全球通用的算法作为AES,以代替DES。NIST对算法的基本要求是:算法必须是私钥体制的分组密码,支持128位分组长度和129、192、256bits密钥长度。
3 AES的研究现状
从1997年NIST发布了高级加密标准AES的研发计划到现在,对AES的研究大致可以分成三个阶段。第一阶段是从1997到2000年,研究的主要方向是提出候选算法并对各候选算法的性能进行分析。在此期间共提出了十五个候选算法,最终Rijndael算法胜出并用于AES中。Rijndael算法是一种可变分组长度和密钥长度的迭代型分组密码,它的分组长度和密钥长度均可独立地指定为128bits、192bits、256bits,它以其多方面的优良性能,成为AES的最佳选择。Rijndael算法能抵抗现在的所有己知密码攻击,它的密钥建立时间极短且灵活性强,它极低的内存要求使其非常适合在存储器受限的环境中使用,并且表现出很好的性能。第二阶段是从2000年Rijndael算法胜出后到2001年NIST发布FIPS PUBS 197文件前。在此阶段对AES的研究转到了对Rijndael算法的研究和分析、设计AES的工作模式上。第三阶段是从FIPS PUBS 197发布到现在。在此阶段,研究的方向可以分成两个主要方向:一个是继续研究Rijndael算法本身的性能,特别是其安全性分析;另一个就是AES的实现和应用的研究。
算法设计主要研究算法设计遵循的原则和整体结构,为性能分析提供了一条途径。从算法的结构上分析算法性能是简单有效的,研究算法整体结构上的缺陷为提出新的密码分析方法提供新的手段。另一方面,研究AES的算法设计对研发新的分组密码提供了设计原则和参考。目前分组数据加密算法的整体结构有两大类:Feistel网络、非平衡Feistel网络和SP网络。
性能分析主要研究算法的各项特性,性能分析主要可以分为实现分析和密码分析两类。实现分析主要研究AES算法可实现的能力。当前实现性分析主要集中在AES的硬、软件实现的难易度和实现算法的效率等领域中。密码分析则是在理论上对现有加密算法进行研究的主要方向。密码分析主要研究AES算法抵抗现有己知密码攻击的能力,即算法的安全性分析。当前主要攻击手段有:强力攻击、差分密码分析[2][3]、 线性密码分析[4]、Square攻击和插值攻击等。
但是随着密码分析技术的不断发展,积分分析、功耗分析和代数攻击等新的密码分析手段陆续出现。它们己成为密码分析新的研究方向[5]。
4 AES的实现
对于AES实现的研究主要集中在软件实现和硬件实现两个领域中。AES标准所选择的Rijndael算法遵循了分组密码设计的实现性原则,十分方便在软、硬件上实现。从AES实现的角度上看,当前研究的主要方向在各个算法步骤的优化实现。算法步骤针对不同的实现环境进行优化后,在应用中能获取更好的实际数据加密效果。其主要的研究成果集中在S-盒的生成算法优化、轮变换过程优化和密钥扩展优化三个方面。下面就软件实现和硬件实现在这三个方面的研究现状做一个简单介绍:
(1) 在微机上通过软件实现。这是利用AES算法保障计算机信息安全,特别是网络中信息传输与存储安全的主要途径。在软件实现中,轮变换过程优化则是软件实现算法优化的主要研究方向。密钥扩展优化也是研究的重点之一。AES所提供的密钥扩展方案保证了密钥扩展过程中的雪崩效应,也保证了密钥扩展方案的易实现性。此外,将其他的理论研究应用到分组数据加密算法中,也是实现研究的一个重要方向。
(2) 通过硬件芯片实现。AES算法对于存储空间的要求较小,算法过程相对比较简单,特别是经过有针对性的实现算法优化和精简后很易于利用硬件电路实现,因此现在许多相关的商业产品都是基于密码芯片的。
5 AES研究意义
目前,DES加密标准正在逐渐淡出加密标准的舞台,新加密标准AES正在获得越来越多的重视及应用。面对未来的发展,对AES产品的需求是非常巨大的。因此,对AES实现的探讨和研究具有很大的理论意义和实践意义。
――――――――――
参考文献
[1]褚振勇,翁木云FPGA设计及应用西安电子科技大学出版社,2002,7
[2]李玉山,来新泉电子系统集成设计技术电子工业出版社,2002,10
[3]牛风举,刘元成,朱明程基于IP复用的数字IC设计技术,2003,9
[4]Joan Daemon, Vincent Rijmen高级加密标准(AES)算法:Rijndael的设计谷大武,徐胜波,译清华大学出版社,2003,3
[5]Bruce Schneie应用密码学:协议、算法与C源程序昊世忠,祝世雄,张文政,等,译机械工业出版社,2000,1
作者简介:李佳(1976-),女,河北唐山人,讲师,北京科技大学工程硕士,主要研究网络数据安全。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)