现代密码学导论-14-基于伪随机发生器的EAV安全

news/2024/5/17 6:31:33/文章来源:https://blog.csdn.net/qq_53076049/article/details/128047283

目录

3.3.3 基于伪随机发生器的EAV安全

用伪随机发生器进行加密的图示

CONSTRUCTION 3.17 一种基于伪随机发生器的私钥加密方案

THEOREM 3.16 基于伪随机发生器的私钥加密方案的EAV安全

THEOREM 3.16 的证明

最后来理一下


3.3.3 基于伪随机发生器的EAV安全

用伪随机发生器进行加密的图示


CONSTRUCTION 3.17 一种基于伪随机发生器的私钥加密方案

设G是一个膨胀系数为l(n)的伪随机发生器,定义一个对于消息长度为l(n)的固定长度的私钥加密方案

Gen:在输入为1^n时,均匀选择k∈{0,1}^n作为密钥输出。

Enc:输入为k和消息m∈{0, 1}^l(n),输出密文c := G(k)⊕m

Dec:输入为k和密文c∈{0, 1}^l(n),输出明文m := G(k)⊕c


THEOREM 3.16 基于伪随机发生器的私钥加密方案的EAV安全

如果G是一个伪随机发生器,那么对于消息长度为l(n)的固定长度的私钥加密方案3.17是EAV安全的


THEOREM 3.16 的证明

设Π表示方案3.17,其满足定义3.8。关于定义3.8的内容见下文

现代密码学导论-10-EAV安全_南鸢北折的博客-CSDN博客

我们证明了对于任何PPT敌手A,有一个可忽略的函数negl,使得

 

通过敌手 A 构造一个区分器 D ,将 D 的区分G的输出和一个随机字符串的能力直接与 A 分辨 Π 加密明文的能力建立联系。即区分器将敌手 A 作为自己的一个子程序来完成区分实验。假设A是一个任意的PPT敌手。我们构造了一个区分器D,它以一个字符串w作为输入,它的目标是判断w究竟是真随机比特串,还是由伪随机发生器生成的伪随机比特串。我们构造D,使它模拟A的窃听实验,如下所述,并观察A是否成功。如果A成功了,那么D猜测w一定是一个伪随机字符串,而如果A不成功,那么D猜测w是一个随机字符串。详细构造:

区分器D:

D的输入是字符串w∈{0, 1}^l(n)。我们假设n可以由l(n)来确定

运行A(1^n)以获得一对消息m0、m1∈{0,1}^l(n)

随机均匀选择b∈{0,1},令c:= w⊕mb。

将c交给A,得到输出b’。如果为b’ = b,则输出1,否则输出0

定义加密方案Π’ = (Gen', Enc', Dec')

Π’实际上是引入了安全参数n的一次性密码本方案,这意味着Gen(1^n)输出长度为l(n)的随机均匀密钥k,使用k∈{0,1}^l(n)加密消息m∈{0,1}^l(n)得到c:= k⊕m。由于一次性密码本是具有完善保密性的,因此、

分析D的行为,主要的观察结果是:

如果w是真随机比特串,A作为D的子进程运行时,相当于在进行实验

因为D正好在A的窃听实验成功时输出1,即得到下面的式子,记为A式 

其中第一个概率Pr的下标只是明确地表示w是均匀地从{0,1}^l(n)中选择的

如果w是由真随机k∈ {0, 1}^n生成的,我们记作w := G(k)。A作为D的子进程运行时,相当于在进行实验

因此我们得到下面的式子,记为B式

根据文章

现代密码学导论-12-伪随机发生器_南鸢北折的博客-CSDN博客

DEFINITION 3.14 伪随机发生器的定义

由于G是一个伪随机发生器,其具有伪随机性

伪随机性:对于任何ppt算法D,有一个可忽略函数negl,使得

Pr[D(G(s)) = 1] − Pr[D(r) = 1]≤ negl(n)

应用该式子于当前情况,我们得到

 联立刚刚得到的A式和B式,我们得到

 由于A是一个任意的PPT敌手,这就完成了Π是EAV安全的证明


最后来理一下

  • 我们要证明的结论是什么??

我们要证明基于伪随机发生器G构建的方案3.17是EAV安全的,参考

现代密码学导论-10-EAV安全_南鸢北折的博客-CSDN博客

DEFINITION 3.8 EAV-安全的等价定义(一)

根据EAV安全的定义,也就是要证明对于任何PPT敌手a,存在可忽略函数negl使得

  • 我们可以利用的条件是什么??

由于G是一个伪随机发生器,其具有伪随机性,参考

现代密码学导论-12-伪随机发生器_南鸢北折的博客-CSDN博客

上文中DEFINITION 3.14 伪随机发生器的定义 中的第二个条件

伪随机性:对于任何ppt算法D,有一个可忽略函数negl,使得

Pr[D(G(s)) = 1] − Pr[D(r) = 1]≤ negl(n)

我们观察一下条件结论条件是关于区分器算法D结论是关于不可区分实验

如何把两者联系起来?我们使用归约算法,即用参与不可区分实验的敌手A来构建区分器D

我们基于为伪随机发生器定义的方案3.17为Π= (Gen, Enc, Dec),该方案使用伪随机数对明文进行加密

还定义了方案Π’= (Gen', Enc', Dec'),该方案使用真随机数对明文进行加密

根据区分器D的定义,D输出为1的概率等于敌手A在区分实验中成功的概率,

当区分器D的输入为伪随机数时,就相当于敌手A在做关于方案Π的不可区分实验,得到A式

 当区分器D的输入w为真随机数时,就相当于敌手A在做关于方案Π的不可区分实验,得到B式

这样我们得到了两个式子,这两个式子都含有区分器D与不可取分实验的关系。这样我们就解决了之前“如何把两者联系起来”的问题。

根据G的伪随机性:Pr[D(G(s)) = 1] − Pr[D(r) = 1]≤ negl(n),即

将上式与A式和B式联立,得到

这恰好是EAV安全的定义。 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_36944.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

sql server如何卸载干净?来看这里

一、如何卸载干净 1.关闭服务 快捷键:windows R,在命令行输入: services.msc,把有关SQL都关闭 ,下图所示: 2.到控制面板,卸载 sql server 3.删除磁盘里的文件 我的在c盘里,看各位…

Linux Command htpasswd 创建密码文件

文章目录Linux Command htpasswd 创建密码文件1. 简介2. 安装3. 语法4. 选项5. 示例6. 其他Linux Command htpasswd 创建密码文件 1. 简介 htpasswd是Apache的Web服务器内置的工具,用于创建和更新储存用户名和用户基本认证的密码文件。 2. 安装 centos 7、 redhat&#xff…

详解设计模式:简单工厂模式

简单工厂模式(Smiple Factory Pattern):定义一个工厂类,他可以根据参数的不同返回不同类的实例,被创建的实例通常都具有共同的父类,简单工厂模式也被称为静态工厂模式。 ~ 本篇内容包括&#xf…

SpringBoot整合Mybatis方式2:使用注解方式整合Mybatis

SpringBoot整合Mybatis简介SpringBoot整合Mybatis方式2:使用注解方式整合Mybatis1.先用idea创建一个添加mybatis需要的相关依赖的工程。2.准备数据库和表3.创建表映射类4.创建mapper代理接口5.创建Service层和Service的实现层6.创建控制层(也就是web层&a…

五种方法帮你解决电脑内存占用大的问题

有用户反映自己的电脑什么都没开,但是运行内存显示占用90%以上,这是什么情况?运行内存占用大,直接影响了用户的使用体验,下面小编就给大家分享五个解决电脑内存占用大的办法吧。 方法一: 1、右键【我的电脑…

Spring Boot Admin2 自定义异常监控

其他相关文章: Spring Boot Admin 参考指南SpringBoot Admin服务离线、不显示健康信息的问题Spring Boot Admin2 EnableAdminServer的加载Spring Boot Admin2 AdminServerAutoConfiguration详解Spring Boot Admin2 实例状态监控详解Spring Boot Admin2 自定义JVM监控…

GEO振弦式钢筋计的组装

(1)按钢筋直径选配相应的钢筋计,如果规格不符合,应选择尽量接近于结构钢筋直径 的钢筋计,例如:钢筋直径为 35mm,可使用 NZR-36 或 NZR-32 的钢筋计,此时仪器的最小 读数应进行修…

MapReduce

4.1 MapReduce概述 2003年和2004年,Google公司在国际会议上分别发表了两篇关于Google分布式文件系统和MapReduce的论文,公布了Google的GFS和MapReduce的基本原理和主要设计思想。 4.1.1 MapReduce定义 MapReduce是一个分布式运算程序的编程框架&#…

【无百度智能云与实体经济“双向奔赴”: 一场1+1>2的双赢 标题】

实体经济,已经成为检验科技企业潜力的试金石。 在最近的财报季中,各家大厂的财报里“实体经济”都是关键字眼,已经成为各家心照不宣的共同目的地。 当然,条条大路通罗马。每一家的战略思路和打法都不一样。11月22日,…

DOTA-PEG-麦芽糖 maltose-DOTA 麦芽糖-四氮杂环十二烷四乙酸

DOTA-PEG-麦芽糖 maltose-DOTA 麦芽糖-四氮杂环十二烷四乙酸 PEG接枝修饰麦芽糖,麦芽糖-聚乙二醇-四氮杂环十二烷四乙酸,DOTA-PEG-麦芽糖 中文名称:麦芽糖-四氮杂环十二烷四乙酸 英文名称:maltose-DOTA 别称:DOTA修…

HCIA 访问控制列表ACL

一、前言 ACL又称访问控制列表,其实这个东西在很多地方都有用,可能名字不太一样但原理和功能都差不太多,比如服务器、防火墙,都有类似的东西,功能其实也就是“过滤”掉不想收到的数据包。为什么不想收到一些数据包呢&…

The Seven Tools of Causal Inference with Reflections on Machine Learning 文章解读

目录 THE THREE LAYER CAUSAL HIERARCHY. 4 THE SEVEN TOOLS OF CAUSAL INFERENCE (OR WHAT YOU CAN DO WITH A CAUSAL MODEL THAT YOU COULD NOT DO WITHOUT?) 7 Tool 1: Encoding Causal Assumptions – Transparency and Testability. 10 Tool 2: Do-calculus and the …

深入浅出基于HLS流媒体协议视频加密的解决方案

一套简单的基于HLS流媒体协议,使用video.js NodeJS FFmpeg等相关技术实现的m3u8tsaes128视频加密及播放的解决方案示例。 项目简介 起初是为了将工作中已有的基于Flash的视频播放器替换为不依赖Flash的HTML5视频播放器,主要使用了现有的video.js开源播…

【学习笔记25】JavaScript字符串的基本认识

JavaScript字符串的基本认识一、严格模式二、字符串1、字面量2、构造函数3、包装类型三、字符集(了解)1、ASCII:128个2、GBK国标码:前128位ASCII,从129开始为汉字3、unicode(万国码)四、字符串的length与下标一、严格模…

学弟:功能测试转测试开发容易吗?

最近看到后台留言问:功能测试转测试开发容易吗? 从这个问题,我能读出一些信息如下: 不知道你从事测试工作多久了,可以看出您特别羡慕测试开发工程师;你可能一直从事功能测试工作,工作模式或大…

排名预测系统

排名预测系统 题目链接 题目背景: 本题大模拟来自真实的需求,即:综合三场网络赛的名次,来预计一个正式队伍在所有正式参赛队伍中的名次以此来估计自己能不能拿牌。本来只有一道题,即为你们看到的T5,经过…

HTTP响应详解

目录 一.状态码 小结(记住) 二.认识响应正文(body) 三.如何构造http请求 一.状态码 是一个数字,这个数字描述了当前这次请求的状态(成功,失败,失败的原因) http的状态…

logcat日志文件分析

3:显示时间戳日志 adb logcat -v time > d:\文件\log.txt 日志文件分析 输出的日志格式由5部分组成 1:写下日志的时间 2:优先级,日志优先级从低到高分以下几种 v -verbose 最低级别,开发调试中的一些详细信息,仅在开发中使用&#…

以分割栅格为例实现FME模板的方案优化

一、利用FME分割栅格 (一)问题的产生 对于FME使用者来说,利用FME完成栅格的批量分割是一件极为平常且容易的事情。只需要输入栅格和确定分割方案就可以实现利用FME对栅格数据的分割,再配合FME的“扇出”功能,就能够实…

【colab安装mmcv-full和mmclassification】

colab安装mmcv-full和mmclassification改变cuda和pytorch版本查看torch版本安装mmcv-full安装mmclassification克隆并安装mmcls切换到目录源码安装检查mmcls版本改变cuda和pytorch版本 !pip --default-timeout1000 install torch1.9.0cu111 -f https://download.pytorch.org/w…