密码学归约证明——计数器CTR模式
1. 计数器CTR模式
选择,计算,。不加密并作为密文的一部分发送。
2. CTR模式的CPA安全
若是,则模式是安全的。
挑战密文在实验中被加密时,设表示初始,表示加密挑战密文每个分组。要求从未被加密预言机用于回答以前的问询。因为如果没有被回答过,那么是一个完全随机的值,那么用这个值和异或与“一次一密”具有相同的效果。
将模式是安全的证明转化为界定之前被使用过的概率。
设是将中的替换为随机函数后的加密方案。
⑴首先,说明。
令是敌手向加密预言机问询数量的上限,同时令其为问询明文的最大长度以及的最大长度。令表示挑战密文被加密时的初始向量,表示加密预言机回答第个明文选择的初始向量。当挑战密文被加密时,函数被应用在值上,其中是的长度。当第个明文被回答时,函数被应用在值,其中是被请求加密的消息的长度。现在考虑两种情况:
- 使得,其中且。
此时,当加密挑战密文时,使用的值是彼此独立且均匀分布的。因为当加密任何敌手的预言机问询时,没有在这些值上使用过。即:挑战密文的计算是通过异或随即比特流和消息获得的。这种情况下,输出的概率同“一次一密”的情况,刚好是。
使得,其中且。
此时,用来加密第个加密预言机问询的第分组的值和用来加密挑战密文的第分组的值是相同的。在这种情况下,当给定挑战密文时,很容易确定哪一个消息被加密,因为敌手能够从它的第个预言机问询的答案中推断出的值。
如果和每一个尽可能大,概率能够达到最大,所以假设,有。令表示序列重叠于序列的事件。则有。
固定,当满足,事件发生。即此时,有个值使得发生,并且随机均匀从中选择来的,于是。因此。
此时便界定成功的概率
。
因为是多项式,可忽略,则。
⑵接着证明,使得。
类似于对基于的定长安全的加密方案(密码学归约证明——选择明文攻击下的不可区分性_悬巷的博客-CSDN博客_证明对称加密方案下的选择明文攻击)。将区分器归约到敌手。有且;
又
,
则。
3. 参考文献
乔纳森.卡茨,耶胡达.林德尔著,任伟译,现代密码学——原理与协议,国防工业出版社,2017年第一版第4次印刷.
密码学归约证明——计数器CTR模式相关推荐
- 密码学归约证明——基于伪随机函数的消息鉴别码方案
1. 消息鉴别码实验 运行得到密钥,即. 敌手获得输入,且能够访问预言机,最终输出,其中为消息的鉴别码.设为敌手访问预言机的问询集合. 当且仅当且,实验输出1.其中是鉴别码方案的验证方法. 如果一个消 ...
- java ctr_分组密码_计数器(CTR)模式_原理及java实现
一.原理: CTR模式是一种通过将逐次累加的计数器进行加密来生成密钥流的流密码,在CTR模式中,每个分组对应一个逐次累加的计数器,并通过对计数器进行加密来生成密钥流.最终的密文分组是通过将计数器加密得 ...
- 密码学归约证明——定长对称加密密钥的敌手不可区分性
1. 前言 针对任伟译<现代密码学--原理与协议>这本书中,将reduction一词翻译成"规约",根据笔者在网上查阅资料,最终认为翻译成"归约"更 ...
- 密码学归约证明——选择明文攻击下的不可区分性
1. 选择明文攻击不可区分性实验 运行生成密钥 :输出给敌手,敌手可以访问预言机,并输出一对长度相等的消息:选择一个随机比特 ,计算出挑战密文交给 ;敌手继续访问预言机,输出一个比特:如果 ,则,成功 ...
- 密码学归约证明——DH密钥交换协议在窃听者存在的情况下的安全性
1. 密钥交换实验KEA,Πeav(n)KE^{eav}_{A,\Pi}(n)KEA,Πeav(n) 持有1n1^n1n的通信方执行Π\PiΠ协议.之后得到通信双方发送的所有的消息的副本以及双方输出 ...
- 密码学归约证明——哈希签名范式的安全性
1. 哈希碰撞发现实验HashcollA,H(n)Hashcoll_{A,H} (n)HashcollA,H(n) 产生密钥s←Gen(1n)s\leftarrow Gen(1^n )s←Gen(1 ...
- [密码学基础][每个信息安全博士生应该知道的52件事][Bristol Cryptography][第18篇]画一个/描述ECB,CBC,CTR模式的操作
操作模式:块密码的安全性依赖于加解密一个固定长度的明文块.当加密或者解密消息的时候,块是被需要的.我们使用一种操作模式将明文的多个块链接在一起.我们会知道,这种链接在一起的方法是十分重要. 电子密码本 ...
- 通俗地解释下密码学中的归约证明
本文首发于本人的:能否通俗地解释下密码学中的归约证明? - ChainingBlocks的回答 - 知乎 https://www.zhihu.com/question/49441102/answer/ ...
- 密码学常用的算法填充模式_密码学的操作模式
密码学常用的算法填充模式 Modes of operation of a block cipher are procedural rules for a generic block cipher. T ...
最新文章
- 17日南土所蒋瑀霁报告:红壤团聚体尺度养分转化的生物学过程(线虫-微生物互作机制)...
- Java解析SQL记录为JSON_Oracle解析复杂json的方法
- 2021年大数据研究中心支持项目交流会成功举行
- ACID、数据库隔离级别
- ntu课程笔记7454 期中复习
- NLP太难学了!?吃透NLP的方法来拿走
- 设置axios默认访问前缀
- 覆盖17类面试题小结
- 三维点云学习(2)上- 二叉树实现K-NN Radius-NN Search
- Codeforces 61B【怪在读题】
- c语言电子钢琴课程设计,单片机课程设计(电子琴).doc
- Fastjson 远程命令执⾏漏洞
- 机箱前面的耳机插孔没声音
- NSOperation
- 二进制,八进制,十进制,十六进制的详解
- 鼠标失灵,但鼠标和USB接口都是好的的情况。
- 上周NFT销售CryptoPunk囊括前三
- [CTF] python的pip源更改及常用python库
- 提早两天向同事发新年祝福
- html 文档在线查看,在网页中在线查看文档(doc、docx 、xls 、xlsx、 pdf 、swf )
热门文章
- 计算机指令集的相关概念
- 索(shen)引(keng)大全
- ionic4的ion-searchbar的setFocus()方法使用
- TCGA差异表达分析|2022.5.1更新
- 零基础制作微信小程序
- 从bam文件的内容来学习Phred quality score /QUAL/Cigar/等常用概念
- 龙芯教育派:loongson 不在 sudoers 文件中。此事将被报告。
- ubuntu20.04搭建lamp环境 +制作网页
- codewars打怪日记 Greed is Good JavaScript中数组用法和 哈希表的使用
- 如何练胸肌(完整篇)