现代密码学之加密方案和安全概念

Encryption Schemes & Security Notions

安全的意义

•保密性:未经授权方应无法访问敏感数据。

•完整性:未经授权方检测,数据应不可修改。

•真实性:未经授权的方应不可伪造数据

•可用性:应向授权人员提供数据。

保密的加密方案

• Classical ciphers 经典密码学

• Modern symmetric-key ciphers现代对称加密
• Block cipher
• Stream cipher

• Modern asymmetric-key ciphers现代非对称加密
• Public key encryption
• Identity-based encryption
• Attribute-based encryption
• Functional encryption

Encryption vs Encoding 加密和编码俩者的区别

加密需要密钥Key,而编码则不需要。
编码的例子:
ASCII码
语言翻译,比如英语翻译成汉语
用摩尔斯电码等等。
这些都不需要key!

对称加密和非对称加密

现代密码学之加密方案和安全概念
对称加密:
加密和解密的密钥是相同的。
Advantage: 算法公开、计算量小、加密速度快、加密效率高
Disadvantage: 一方的秘钥被泄露=gg.
收、发双方所拥有的钥匙数量巨大,密钥管理会成为双方的负担。

常见的对称加密算法有: DES、3DES、Blowfish、IDEA、RC4、RC5、RC6 和 AES

非对称密钥加密
非对称加密算法需要两个密钥:
一个公钥(加密密钥)和一个私钥(解密密钥)。
优点:安全
缺点:低速度

常见的非对称加密算法有: RSA、ECC(移动设备用)、Diffie-Hellman、El Gamal、DSA(数字签名用。

加密的安全概念

Goal + Atk

understand 攻击者有着最强大的能力,却不能实现最简单的目标难么证明这个model很Strong!

安全目标是什么?防止攻击者

•发现解密密钥
•解密密文
•获取有关加密消息的任何重要信息

攻击模型是什么?

•仅密文 Ciphertext only
•已知消息攻击 Known-message attack
•选择消息攻击 Chosen-message attack
•选择密文攻击 Chosen-ciphertext attack
//攻击强度从上到下递增

安全模型

  1. Semantic Security

An encryption scheme has semantic security if the attacker A learns norting (except the length of the message) from a ciphertext c. 攻击者除了长度啥都不知道。

  1. Information Theoretic Security

我们称之为Perfectly secure system
The ciphertext c does not provide any additional information to the attacker.

然而这个系统是不切实际的! We focus on computationally secure systems in modern cryptography.

  1. Indistinguishability IND模型

An Encryption Scheme has indistinguishability if for any PPT attacker, the winning probability is≈1/2. 猜中的概率等于瞎猜的概率.
现代密码学之加密方案和安全概念
两个限制:
Only consider polynomial time adversary.
The two challenge messages m0 and m1 must have equal length.
攻击者的时间必须是有限的,不能考虑没有时间限制的暴力破解
M0和M1的长度必须相等。

我们更深入一点:
Is Vigenere Cipher scheme IND secure?
No
M0: aaaaa. M1:abcde
C–>Repeat–>M0
C–>Random–>M1
解决方法:让KEY和M一样长–>One Time Pad
Is the One Time Pad IND secure? 
Yes! Perfect security. Only information leaked is the size of the message.

  1. Indistinguishability under Chosen Message Attacks  我们最熟悉的IND-CPA

Chosen Message Attacks简写CMA等同于CPA (Chosen Plaintext Attacks)

现代密码学之加密方案和安全概念
想比较于IND,IND-CPA在挑战之前2-4重复多次+ 挑战过程中多次Encryption queries
可以理解为给Attacker叠增益Buff,攻击者在能力越多的情况下猜中的概率仍然等于瞎猜–>
模型更强大。

Is the One Time Pad IND-CPA secure? 
NO! Why?
在IND-CPA model里,KEY必须要重复使用,所以one-time pad 不安全
正常的One Time Pad–>每次加密使用的key不同–>Perfect security.
在模型中,key被固定,所以我们只需要查询m=0000000就可以得到key–>直接解密C*

Proposition: There exists no deterministic encryption scheme that is IND-CPA secure
这个定义很重要!什么是确定加密?对于相同的原文,按照算法加密后得到的密文不变,那么就是确定加密,只要是确定加密那么就不是IND-CPA secure的。哈希函数也是确定加密。

Public key encryption 公共密钥加密

在说PKE之前我们思考一下:

SKE的最小攻击模型是什么?
Ciphertext only is meaningful minimum.
CPA is stronger.

PKE的最小攻击模型是什么?
CPA

这意味着需要一种方法,即使输入相同的m也要得到不同的ciphertext,因为在CPA中PK是直接给到ATTACKER的,在Public key encryption中不能有比这个更弱的了。

IND-CCA1

CCA1: The decryption oracle is only accessible before receiving the challenge ciphertext.

现代密码学之加密方案和安全概念

IND-CCA2

CCA2: The decryption oracle can be accessed before and after receiving the challenge ciphertext.
现代密码学之加密方案和安全概念
相比较与CCA1,CCA2第6步之后多了一步.

Trapdoor One-way Function

对于那些不知道Trapdoor 的人来说,这是one-way function,对于知道的人来说,他们可以reverse this function.

A trapdoor one-way function is a function which looks like a one-way function but is equipped with a secret trapdoor.

If this secret door is known, the inverse can be easily calculated.

Reference

  1. Wenbo Mao, Modern Cryptography, Prentice-Hall, 2003.
  2. Jonathan Katz and Yehuda Lindell, Introduction to Modern Cryptography, 2nd Edition, CRC Press, 2015.
  3. W Stallings, Cryptography and Network Security, Fourth (or later) Edition, Prentice Hall, 2006.
  4. J. Pieprzyk, T, Hardjono and J. Seberry, Cryptography: an introduction to computer security,
    Springer Verlag, 2003.
  5. Guo, F., Susilo, W., Mu, Y. Introduction to Security Reduction, Springer, 2018
上一篇:PKCS #1 RSA Encryption Version 1.5介绍


下一篇:No application encryption key has been specified.