族谱网 头条 人物百科

初始化向量

2017-10-16
出处:族谱网
作者:阿族小谱
浏览:691
转发:0
评论:0
动机由电子密码书模式(ECB)下加密的结果并不安全,即使未经破解我们仍几乎可以看得出原图的轮廓。区块加密在密码学的领域里是最基本的加密运算方式之一。然而它的限制是只能对一个预先定义、固定大小数据进行加密。比如在高级加密标准(AES)里,若使用长度为128位的密钥,加密的过程就是将整个明文切割成多个128位长度的子明文,然后依前后顺序用同一把密钥转换成对应的多个128位长度的子密文,这些子密文依产生的顺序连接起来便是完整的密文。这种作法其实就是把甲数据转换成固定的乙数据,这样的对应关系是绝对的,因此攻击者在收集足够的明文与密文的组合后可以轻易的比对并推导出明文或密钥。为了要隐藏明文与密文的组合被攻击者收集,并且不重新创建密钥来混淆输入的明文,在1980年由美国国家标准与技术中心提出了四种区块加密模式。第一种称为电子密码书模式(ECBmode),描述了最基本的运作模式(前述较有疑虑的运算方式)...

动机

初始化向量

由电子密码书模式(ECB)下加密的结果并不安全,即使未经破解我们仍几乎可以看得出原图的轮廓。

区块加密在密码学的领域里是最基本的加密运算方式之一。然而它的限制是只能对一个预先定义、固定大小数据进行加密。比如在高级加密标准(AES)里,若使用长度为128位的密钥,加密的过程就是将整个明文切割成多个128位长度的子明文,然后依前后顺序用同一把密钥转换成对应的多个128位长度的子密文,这些子密文依产生的顺序连接起来便是完整的密文。这种作法其实就是把甲数据转换成固定的乙数据,这样的对应关系是绝对的,因此攻击者在收集足够的明文与密文的组合后可以轻易的比对并推导出明文或密钥。

为了要隐藏明文与密文的组合被攻击者收集,并且不重新创建密钥来混淆输入的明文,在1980年由美国国家标准与技术中心提出了四种区块加密模式。第一种称为电子密码书模式(ECB mode),描述了最基本的运作模式(前述较有疑虑的运算方式)。为了要避免ECB模式的问题,文中提出了密码块链接模式(CBC mode)。CBC模式的作法是对第一块明文投入随机的初始化向量,然后将明文与向量运算的结果加密,加密的结果再作为下一块明文的向量。这种做法的最终目的是要达到语义上的安全,让攻击者无法从密文中获取能助其破译的相关线索,避免遭受选择明文攻击法。

取值

初始化向量的值依密码算法而不同。最基本的要求是“唯一性”,也就是说同一把密钥不重复使用同一个初始化向量。这个特性无论在区块加密或流加密中都非常重要。

许多要求初始化向量必须让攻击者无法预测。这种要求一般使用随机数或拟随机数来达到。在这种应用中,重复的初始化向量是可以被忽略的,但是生日攻击的问题依然得列入考量,因为若向量可以被预测,会让攻击者找到撤消明文的线索。

初始化向量的值主要还是取决于密码算法。其做法不外乎就是随机或指定(stateful)。使用随机的方式则取值由发送方计算,并要将向量值送交给接收方。指定的方式则是让收发两方分享初始化向量所能指定的所有值(state),这些值收发双方必须预先就定义好。

区块加密

区块加密常被用做身份验证的加密。之后亦有所谓的身份验证加密模式(authenticated encryption modes)。在这种模式中会使用到初始化向量。这类应用中一般求出的结果都是固定值,因此使用固定结果的方式(deterministic algorithms)进行验证,所以初始化向量亦使用固定值或是全部填零。

流加密

流加密中的初始化向量被计入那些被用来加密的密钥的信息(secret state)里,然后每次算出后的密文再滚入下一轮(round)的密文计算之中。由于性能的要求,流加密的设计都希望轮的总数能愈小愈好;但实际的应用上,要定义出总数是十分困难的(not a trivial task)。再著,我们也必须考量其他议题,如:传输过程中损失的信息量、密文的独一性、初始化向量的相关性以及造成流加密许多安全议题的相关初始化向量攻击法。这类攻击议题对流加密的安全性造成严重的隐忧,并且有许多持续进行的研究。

WEP的初始化向量

在无线传输规格802.11的有线等效加密算法中使用24位的初始化向量来与同一把密钥做加密运算,这使得密文容易被破译。 使用数据包插入的方式可以在数秒内将WEP破解。这个严重的缺限使得此算法不被推荐使用。

参见

Nonce

随机数

盐 (密码学)

块密码的工作模式

RC4

延伸

Schneier, B.Applied Cryptography 2nd. New York: Wiley. 1996. ISBN 0-471-12845-7.

Ferguson, N.; Schneier, B. Practical Cryptography. New York: Wiley. 2003. ISBN 0-471-22894-X.


免责声明:以上内容版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。感谢每一位辛勤著写的作者,感谢每一位的分享。

——— 没有了 ———
编辑:阿族小谱

更多文章

更多精彩文章
评论 {{commentTotal}} 文明上网理性发言,请遵守《新闻评论服务协议》
游客
发表评论
  • {{item.userName}} 举报

    {{item.content}}

    {{item.time}} {{item.replyListShow ? '收起' : '展开'}}评论 {{curReplyId == item.id ? '取消回复' : '回复'}}

    回复评论
加载更多评论
打赏作者
“感谢您的打赏,我会更努力的创作”
— 请选择您要打赏的金额 —
{{item.label}}
{{item.label}}
打赏成功!
“感谢您的打赏,我会更努力的创作”
返回
打赏
私信

推荐阅读

· 初始化
实现初始化可以在编译时通过静态嵌入值来实现,也可以在运行时进行分配。进行初始化的代码部分称为“初始化代码”,但这部分代码可能还包含其他的一次性使用函数(例如打开文件)。将存储单元设为16进制0的做法也称作“清除”,这一般在机器代码级用异或指令的方式实现(指令的两个操作数必须为相同的变量),因为这不需要额外的内存访问。C系编程语言初始化器在C/C99/C++中,初始化器是声明器的可选部分,它由一个"="以及其后的一个表达式(或含有多个以","隔开的带圆括号表达式的单一列表)所组成。后面这一列表有时也被称为“初始化(器)列表”(initializerlist)或”初始化列表”(initializationlist),不过initializerlist也是C++中用于初始化类或结构中的元素的保留字。一个包含初始化的声明则通常被称为定义。根据C++标准规定,定义是声明的一种;具体来说,声明只需为函...
· 向量
表示方法向量由方向和程度(或:长度)两个因素所组成,可以记为a→→-->{\displaystyle{\vec{a}}}。一些书本向量会用粗体字母表示,如v{\displaystyle\mathbf{v}},要区分是否粗体字有时不容易,例如D{\displaystyle\!\mathrm{D}}和D{\displaystyle\!\mathbf{D}}肉眼看易混淆。向量的直观图形表示则一般使用带箭头的线段。而遇到某些特殊情况需要表示与记载纸面垂直的向量,则会使用圆圈中打叉或打点的方式来表示(如右图)。圆圈中带点的记号(⊙)表示由纸下方指向纸上方的向量,而圆圈中带叉的记号(⊗)则表示由纸的上方指向纸下方的向量。由于这种记号不表示向量的大小,所以必须时需要在旁边或其它地方另外注明。在直角坐标系中,定义有若干个特殊的基本向量,其它的向量可以通过这些基本向量来表示。在常见的三维空间直角坐标系...
· 向量势
定理设为二次连续可微的螺线向量场。假设当||x||→∞时,v(x)下降得足够快。定义那么,A是v的一个向量势,也就是说:这个定理的一个推广是亥姆霍兹分解,它表明任何一个向量场都可以分解为一个螺线向量场和一个无旋向量场的和。非唯一性螺线向量场所具有的向量势不是唯一的。如果A是v的一个向量势,那么:也是一个向量势,其中m是任何一个连续可微的标量函数。这可以从梯度的旋度是零的事实推出。参见向量分析基本定理磁矢势螺线管参考文献FundamentalsofEngineeringElectromagneticsbyDavidK.Cheng,Addison-Wesley,1993.
· 向量积
定义在右手坐标系中的向量积两个向量a{\displaystyle\mathbf{a}}和b{\displaystyle\mathbf{b}}的叉积写作a××-->b{\displaystyle\mathbf{a}\times\mathbf{b}}(有时也被写成a∧∧-->b{\displaystyle\mathbf{a}\wedge\mathbf{b}},避免和字母x混淆)。叉积可以定义为:在这里θθ-->{\displaystyle\theta}表示a{\displaystyle\mathbf{a}}和b{\displaystyle\mathbf{b}}之间的角度(0∘∘-->≤≤-->θθ-->≤≤-->180∘∘-->{\displaystyle0^{\circ}\leq\theta\leq180^{\circ}}),它位于这两个向量所...
· 向量场
定义设X是R里的一个连通开集,一个向量场就是一个向量函数我们称F为一个C向量场,如果F在X上是k次连续可微的。在X内,一个点x被称为固定的,若向量场可以理解为一个n维空间,其中对X内每一个点都有个附着的n维向量。给定两个定义于X上的C-向量场F,G以及一个定义于X上的C-实值函数f,可以定义以下运算如此便可定义在C函数的环上的C向量场的模。

关于我们

关注族谱网 微信公众号,每日及时查看相关推荐,订阅互动等。

APP下载

下载族谱APP 微信公众号,每日及时查看
扫一扫添加客服微信