密码学系列2-安全模型(CPA,CCA,selective,adaptive)

2024-04-22 21:28

本文主要是介绍密码学系列2-安全模型(CPA,CCA,selective,adaptive),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本章介绍了安全模型中的CPA,selective/adaptive CCA, EUF-CMA

加密的安全性模型定义:

一、选择明文攻击下的不可区分性(IND-CPA

初始化:挑战者 C \mathcal{C} C运行初始化算法算法来获取系统参数。

阶段1:敌手 A \mathcal{A} A产生明文,加密的到对应的密文(多项式有界次数)。

挑战:对手将输出两条相同长度的消息 m 0 m_0 m0 m 1 m_1 m1

挑战者 C \mathcal{C} C随机选择比特 b ∈ { 0 , 1 } b\in \{0,1\} b{0,1},并加密消息 m b m_b mb以获得挑战密文。然后, C \mathcal{C} C将挑战密文发送给对手。

猜测:最后, A \mathcal{A} A输出一个猜测 b ′ ∈ { 0 , 1 } b'\in \{0,1\} b{0,1}

如果 b = b ′ b=b' b=b A \mathcal{A} A赢得游戏,优势定义为:

A d v A = ∣ P r ( b ′ = b ) − 1 / 2 ∣ Adv_{\mathcal{A}}=|Pr(b'=b)-1/2| AdvA=Pr(b=b)1/2∣

思考:阶段一敌手需要和挑战者交互吗?

概率和优势的区别:比如有一个丢一枚硬币的赌局。我们猜测正面朝上,那么我们猜测正确的概率为 1 / 2 1/2 1/2。如果我们知道硬币密度,丢硬币的方式会对结果有影响。那么丢一次硬币后,经过我们精密的分析,我们猜对的概率可能就是 1 / 2 + r 1/2+r 1/2+r,那么此时就说我们有 r r r的优势来正确猜硬币。
如果这个优势不可忽略,比如等于 r = 1 / 2 r=1/2 r=1/2,那么我们猜对的概率就是1!!如果这个概率无敌小到可以忽略,比如 r = 1 / 2 1 亿 r=1/2^{1亿} r=1/21亿,那么我们知道硬币密度,丢硬币的方式会对结果几乎没有影响。那么我们的能力对猜硬币的赌局没有任何作用。

二、适应性选择密文攻击下的不可区分性(adaptive IND-CCA2

初始化:挑战者 C \mathcal{C} C运行初始化算法算法来获取系统参数。

阶段1:

1.加密问询:敌手 A \mathcal{A} A产生明文,加密的到对应的密文(多项式有界次数)。
2.解密问询:敌手 A \mathcal{A} A产生密文,挑战者解密后,将解密得到的明文返给敌手(多项式有界次数)。

挑战:对手将输出两条相同长度的消息 m 0 m_0 m0 m 1 m_1 m1

挑战者 C \mathcal{C} C随机选择比特 b ∈ { 0 , 1 } b\in \{0,1\} b{0,1},并加密消息 m b m_b mb以获得挑战密文。然后, C \mathcal{C} C将挑战密文发送给对手。

阶段2:

1.加密问询:敌手 A \mathcal{A} A产生明文,加密的到对应的密文(多项式有界次数)。
2.解密问询:敌手 A \mathcal{A} A产生密文,挑战者解密后,将解密得到的明文返给敌手(多项式有界次数,且敌手不能对挑战密文进行解密问询)。

猜测:最后, A \mathcal{A} A输出一个猜测 b ′ ∈ { 0 , 1 } b'\in \{0,1\} b{0,1}

如果 b = b ′ b=b' b=b A \mathcal{A} A赢得游戏,优势定义为:

A d v A = ∣ P r ( b ′ = b ) − 1 / 2 ∣ Adv_{\mathcal{A}}=|Pr(b'=b)-1/2| AdvA=Pr(b=b)1/2∣

三、选择性选择密文攻击下的不可区分性(selective IND-CCA2

对手将输出两条相同长度的消息 m 0 m_0 m0 m 1 m_1 m1并发送给挑战者。

初始化:挑战者 C \mathcal{C} C运行初始化算法算法来获取系统参数。

阶段1:

1.加密问询:敌手 A \mathcal{A} A产生明文,加密的到对应的密文(多项式有界次数)。
2.解密问询:敌手 A \mathcal{A} A产生密文,挑战者解密后,将解密得到的明文返给敌手(多项式有界次数)。

挑战者 C \mathcal{C} C随机选择比特 b ∈ { 0 , 1 } b\in \{0,1\} b{0,1},并加密消息 m b m_b mb以获得挑战密文。然后, C \mathcal{C} C将挑战密文发送给对手。

阶段2:

1.加密问询:敌手 A \mathcal{A} A产生明文,加密的到对应的密文(多项式有界次数)。
2.解密问询:敌手 A \mathcal{A} A产生密文,挑战者解密后,将解密得到的明文返给敌手(多项式有界次数,且敌手不能对挑战密文进行解密问询)。

猜测:最后, A \mathcal{A} A输出一个猜测 b ′ ∈ { 0 , 1 } b'\in \{0,1\} b{0,1}

如果 b = b ′ b=b' b=b A \mathcal{A} A赢得游戏,优势定义为:

A d v A = ∣ P r ( b ′ = b ) − 1 / 2 ∣ Adv_{\mathcal{A}}=|Pr(b'=b)-1/2| AdvA=Pr(b=b)1/2∣

selective是在系统生成前产生挑战密文,再系统初始化时,挑战者可能会根据挑战密文生成相应的系统参数。
思考:selective和adaptive哪个安全性更强

四、(非自适应)选择密文攻击下的不可区分性(IND-CCA1

初始化:挑战者 C \mathcal{C} C运行初始化算法算法来获取系统参数。

阶段1:
1.加密问询:敌手 A \mathcal{A} A产生明文,加密的到对应的密文(多项式有界次数)。
2.解密问询:敌手 A \mathcal{A} A产生密文,挑战者解密后,将解密得到的明文返给敌手(多项式有界次数)。

挑战:对手将输出两条相同长度的消息 m 0 m_0 m0 m 1 m_1 m1

挑战者 C \mathcal{C} C随机选择比特 b ∈ { 0 , 1 } b\in \{0,1\} b{0,1},并加密消息 m b m_b mb以获得挑战密文。然后, C \mathcal{C} C将挑战密文发送给对手。

猜测:最后, A \mathcal{A} A输出一个猜测 b ′ ∈ { 0 , 1 } b'\in \{0,1\} b{0,1}

如果 b = b ′ b=b' b=b A \mathcal{A} A赢得游戏,优势定义为:

A d v A = ∣ P r ( b ′ = b ) − 1 / 2 ∣ Adv_{\mathcal{A}}=|Pr(b'=b)-1/2| AdvA=Pr(b=b)1/2∣

现在论文中定义的IND-CCA即指IND-CCA2,CCA1很少见了。
CCA1即在敌手获得挑战密文前可以进行解密问询。敌手获得挑战密文后,便不能再根据挑战密文生成其他密文来进行解密问询了。

签名安全性模型:

五、适应性选择消息的存在不可伪造性(EUF-CMA)

初始化:挑战者 C \mathcal{C} C运行初始化算法算法来获取系统参数。

阶段1:
1.签名问询:敌手 F \mathcal{F} F产生消息,敌手为消息产生签名并返回给敌手(多项式有界次数)。

伪造:敌手 F \mathcal{F} F伪造出一个签名。

如果伪造的签名满足以下条件,则敌手赢得这个游戏:
1.这个签名不是签名问询产生的。
2.签名能通过验证算法。

上面的五个模型都是最基础的定义,不同的方案会由不同的变化。后续文章将给出实例化安全性证明。

这篇关于密码学系列2-安全模型(CPA,CCA,selective,adaptive)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/926899

相关文章

Spring Security 从入门到进阶系列教程

Spring Security 入门系列 《保护 Web 应用的安全》 《Spring-Security-入门(一):登录与退出》 《Spring-Security-入门(二):基于数据库验证》 《Spring-Security-入门(三):密码加密》 《Spring-Security-入门(四):自定义-Filter》 《Spring-Security-入门(五):在 Sprin

大模型研发全揭秘:客服工单数据标注的完整攻略

在人工智能(AI)领域,数据标注是模型训练过程中至关重要的一步。无论你是新手还是有经验的从业者,掌握数据标注的技术细节和常见问题的解决方案都能为你的AI项目增添不少价值。在电信运营商的客服系统中,工单数据是客户问题和解决方案的重要记录。通过对这些工单数据进行有效标注,不仅能够帮助提升客服自动化系统的智能化水平,还能优化客户服务流程,提高客户满意度。本文将详细介绍如何在电信运营商客服工单的背景下进行

Andrej Karpathy最新采访:认知核心模型10亿参数就够了,AI会打破教育不公的僵局

夕小瑶科技说 原创  作者 | 海野 AI圈子的红人,AI大神Andrej Karpathy,曾是OpenAI联合创始人之一,特斯拉AI总监。上一次的动态是官宣创办一家名为 Eureka Labs 的人工智能+教育公司 ,宣布将长期致力于AI原生教育。 近日,Andrej Karpathy接受了No Priors(投资博客)的采访,与硅谷知名投资人 Sara Guo 和 Elad G

Retrieval-based-Voice-Conversion-WebUI模型构建指南

一、模型介绍 Retrieval-based-Voice-Conversion-WebUI(简称 RVC)模型是一个基于 VITS(Variational Inference with adversarial learning for end-to-end Text-to-Speech)的简单易用的语音转换框架。 具有以下特点 简单易用:RVC 模型通过简单易用的网页界面,使得用户无需深入了

科研绘图系列:R语言扩展物种堆积图(Extended Stacked Barplot)

介绍 R语言的扩展物种堆积图是一种数据可视化工具,它不仅展示了物种的堆积结果,还整合了不同样本分组之间的差异性分析结果。这种图形表示方法能够直观地比较不同物种在各个分组中的显著性差异,为研究者提供了一种有效的数据解读方式。 加载R包 knitr::opts_chunk$set(warning = F, message = F)library(tidyverse)library(phyl

透彻!驯服大型语言模型(LLMs)的五种方法,及具体方法选择思路

引言 随着时间的发展,大型语言模型不再停留在演示阶段而是逐步面向生产系统的应用,随着人们期望的不断增加,目标也发生了巨大的变化。在短短的几个月的时间里,人们对大模型的认识已经从对其zero-shot能力感到惊讶,转变为考虑改进模型质量、提高模型可用性。 「大语言模型(LLMs)其实就是利用高容量的模型架构(例如Transformer)对海量的、多种多样的数据分布进行建模得到,它包含了大量的先验

图神经网络模型介绍(1)

我们将图神经网络分为基于谱域的模型和基于空域的模型,并按照发展顺序详解每个类别中的重要模型。 1.1基于谱域的图神经网络         谱域上的图卷积在图学习迈向深度学习的发展历程中起到了关键的作用。本节主要介绍三个具有代表性的谱域图神经网络:谱图卷积网络、切比雪夫网络和图卷积网络。 (1)谱图卷积网络 卷积定理:函数卷积的傅里叶变换是函数傅里叶变换的乘积,即F{f*g}

秋招最新大模型算法面试,熬夜都要肝完它

💥大家在面试大模型LLM这个板块的时候,不知道面试完会不会复盘、总结,做笔记的习惯,这份大模型算法岗面试八股笔记也帮助不少人拿到过offer ✨对于面试大模型算法工程师会有一定的帮助,都附有完整答案,熬夜也要看完,祝大家一臂之力 这份《大模型算法工程师面试题》已经上传CSDN,还有完整版的大模型 AI 学习资料,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

客户案例:安全海外中继助力知名家电企业化解海外通邮困境

1、客户背景 广东格兰仕集团有限公司(以下简称“格兰仕”),成立于1978年,是中国家电行业的领军企业之一。作为全球最大的微波炉生产基地,格兰仕拥有多项国际领先的家电制造技术,连续多年位列中国家电出口前列。格兰仕不仅注重业务的全球拓展,更重视业务流程的高效与顺畅,以确保在国际舞台上的竞争力。 2、需求痛点 随着格兰仕全球化战略的深入实施,其海外业务快速增长,电子邮件成为了关键的沟通工具。

【生成模型系列(初级)】嵌入(Embedding)方程——自然语言处理的数学灵魂【通俗理解】

【通俗理解】嵌入(Embedding)方程——自然语言处理的数学灵魂 关键词提炼 #嵌入方程 #自然语言处理 #词向量 #机器学习 #神经网络 #向量空间模型 #Siri #Google翻译 #AlexNet 第一节:嵌入方程的类比与核心概念【尽可能通俗】 嵌入方程可以被看作是自然语言处理中的“翻译机”,它将文本中的单词或短语转换成计算机能够理解的数学形式,即向量。 正如翻译机将一种语言