安全规约第一讲:Definitions(Algorithm and Security Model)

安全规约第一讲:Definitions(Algorithm and Security Model)

安全规约主目录链接:https://blog.csdn.net/qq_43479839/article/details/117249715
在这里插入图片描述

标题xyi

下面这张图第一讲的大纲,并附上郭福春老师的照片±+。
在这里插入图片描述

1、Classical Cryptograpgy vs Modern Cryptography

经典密码和现代密码的区别。
(密码可以分三个阶段,)

  • 经典密码:古罗马时期,手算
  • 近代密码:二战时期,机算
  • 现代密码:20th,用数字电脑算
  • 现代密码与经典密码的区别:即有很正式的定义definition、模型models(安全模型和计算模型)、证明proofs(安全规约,game-hopping proof ).

在这里插入图片描述

1.1 Clarified Concepts【Cryptology=Cryptography[以构造为主]+ Cryptanalysis[以分析为主]】

在这里插入图片描述

1.2 Clarified Concepts【Cryptology树状图】

在这里插入图片描述

2、How to Define Algorithms

当我们要构造cryptosystem,首先第一步就是定义算法algorithms。

当我们给定一个cryptosystem时,定义算法algorithms时,需要了解下面的:

  • 第一步:理解我们安全服务的目标是什么【用故事的形式描述】
  • 第二步:需要几方的参与。
  • 第三步: 当我们定义一个cryptosystem时,我们到底需要几个algorithms。
  • 第四步:每个算法需要用什么名字来命名。
  • 第五步:谁来运行每一个算法。【映射到前面的entity,即哪个entity来运行算法】
  • 第六步:每个算法输入和输出到底是什么。
  • 第七步:算法满足的正确性correctness.

在这里插入图片描述

2.1 通过一个数字签名去介绍怎么定义算法

第一步:我们的安全服务目标是什么。motivation【通过故事给出motivation】

在这里插入图片描述

第二步:给出涉及的entity

在这里插入图片描述

第三步: 当我们定义一个cryptosystem时,我们到底需要几个算法algorithms。

【可以透过第一步的故事知道到底需要几个算法:看里面设计有几个计算,一个generate,一个sign,一个verify】
在这里插入图片描述

第四步:每个算法需要用什么名字来命名。

在这里插入图片描述

第五步:谁来运行每一个算法。【映射到前面的entity,即哪个entity来运行算法】

在这里插入图片描述

第六步:每个算法输入和输出到底是什么。

在这里插入图片描述
再通过上面把每个算法的输入输出符号定义清楚之后,需要给出形式化严格的定义。(即要对其进行描述,给出其输入和输出的语言描述[尽量规范,但是不要copy])
在这里插入图片描述

第七步:算法满足的正确性correctness.

在这里插入图片描述

3、How to Define Security Models[安全模型,可以看看西村密码学报第29期的《密码学入门之安全模型》]

在介绍安全模型之前在这里有三个问题:

  • 1、怎么去分析一个方案的安全性?:How to analyze the security of a scheme?【答:通过安全模型来进行分析】
  • 2、给定的一个方案(它是在一个安全模型下是安全的),那么它可以抵抗所有的攻击嘛?:Can a sheme(secure in a security )【答:不是,只能抵御在安全模型下描述的攻击】
  • 3、安全模型是为了一个提出的方案定义的嘛?:Is a security model defines for a scheme?【答:不是,为一个cryptosystem】
    在这里插入图片描述

3.1 what is security model?[证明某个方案在给定的安全模型下是安全的]

  • 1、当我们为一个cryptosystem提供一种方案的时候,我们不能分析他抵御很多攻击是安全的,例如重放攻击和合谋攻击。但是我们能分析这个提出的方案在安全模型下是安全的。【即我们不能直接去描述说,这个方案能抵御什么攻击,而是在某种安全模型下是安全的】
  • 2、一个**安全模型可以被看成是对于cryptosystem很多种攻击的抽象概念,**如果一个方案在某个安全模型下是安全的,则说明该方案可以抵御所有在该安全模型下描述的攻击。
  • 3、抽象的攻击主要关注:攻击者能知道什么信息,而不是攻击者怎么知道这些信息。
  • 4、一个安全模型是为一个cryptosystem定义,而不是对于一个方案。

在这里插入图片描述

3.2 How to Define a Security Model?【怎样去定义一个安全模型】

可以有俩种类型可以描述,一个是game,一个是实验的形式。这里只给出game的形式。
在用game描述安全模型的时候,只能用challanger和adversary之间的行为进行描述,其他的角色都不能在这里出现。

一个安全模型的定义:

  • 1、攻击者的能力:(攻击者如何询问信息?或者是攻击者什么时候询问信息?)
  • 2、攻击者的安全目标:(攻击者怎么能赢得游戏,即打破这个cryptosystem)

在这里插入图片描述

3.2.1 安全模型:正式的定义

在这里插入图片描述

3.2.2 定义安全模型时(When defining a security model)

因为当我们定义安全模型时,我们只考虑到算法algorithm定义的输入和输出,因为可能那个时候我们还没有具体的算法构造方案,但是并不重要,因为我们只关注算法的输入和输出。因为这样我们的安全模型才适用于cryptosystem中的所有方案。

下面给出了一个案列:自己看
在这里插入图片描述
当定义安全模型时,注意下面俩点:

  • trivial attack:即如果一个攻击者可以做trival attack,则攻击者可以很容易得赢得这个游戏。

    所以我们要尽量将这个trivial attack给排除掉。attack其实是一种询问query。

  • 攻击者的strategy:即攻击者是如何获取信息的。

    所以,我们只需要在询问的时候,挑战者给正确且实诚的回复即可。

    上面trivial attack和strategy都是不考虑的,
    在这里插入图片描述

3.2.3 对于数字签名的安全模型【 案列】

在这里插入图片描述
下面实例中的“trivial attack”:即攻击者询问数字签名的签名私钥。一旦攻击者获得签名私钥,则很容易赢得游戏。【这种trivial attack在安全模型中,是需要被排除的】
在这里插入图片描述
用形式化的语言,去描述数字签名的安全模型:
下面值得注意的是:

  • Query其实就是攻击拥有的能力Capability
  • 在数字签名中的Forgery伪造签名,即是攻击者想要完成的goal。【即是安全模型需要达到的安全goal】
    在这里插入图片描述

3.3 Remarks on Security Model[在安全模型上的注意点]

3.3.1 Remarks on Security Model(1)
  • 一个cryptosystem可以有一个或多个的security service

  • 一个security service需要有一个security model。

  • 多个安全服务security service可能被一个特殊的security model给描述。在这里插入图片描述

3.3.2 Remarks on Security Model(2)

standard security model与standard model是不一样的。
标准安全模型standard security model并不一定是最强安全模型。【强或弱是需要对比才能凸显出来的,而不是一个是说弱就是弱】
在这里插入图片描述

3.3.3 Remarks on Security Model(3)
  • 强安全模型,即敌手能力更强,安全模型能够抵抗更强的敌手。
  • 并不是越强的安全模型就越好,这取决于你的安全应用需求。
  • 为什么需要weak security model,1、可能弱的安全会有更高效的方案 2、因为有效的方案只能在弱安全模型中证明安全。

在这里插入图片描述
下面就是为了规约的前提:没有安全模型,我们就不能把攻破方案抽象到一个解决一个数学问题,如果不能抽象到解决一个数学问题,则被办法做安全规约。
在这里插入图片描述

4、Examples for Pratice

4.1 Online/Offline Signatures[algorithms and security model for this cryptosystem]

在这里插入图片描述

4.2 Identity-Based Signatures[algorithms and security model for this cryptosystem]

在这里插入图片描述

4.3 Public-Key Encryption[algorithms and security model for this cryptosystem]

在这里插入图片描述

4.4 Identity-Based Encryption[algorithms and security model for this cryptosystem]

在这里插入图片描述

4.5 Identity-Based Broadcast Encryption[algorithms and security model for this cryptosystem]

在这里插入图片描述
在这里插入图片描述
可参考资料:《卧村密码学报第六期:《Introduction to Security Reduction》方案证明指南》

  • 5
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值