<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>安全模型 on Lutong's Homepage</title><link>https://www.elliot98.top/tags/%E5%AE%89%E5%85%A8%E6%A8%A1%E5%9E%8B/</link><description>Recent content in 安全模型 on Lutong's Homepage</description><generator>Hugo</generator><language>zh-cn</language><lastBuildDate>Thu, 28 May 2020 08:31:39 +0800</lastBuildDate><atom:link href="https://www.elliot98.top/tags/%E5%AE%89%E5%85%A8%E6%A8%A1%E5%9E%8B/index.xml" rel="self" type="application/rss+xml"/><item><title>密码学专题| 一、论加密模型的完美安全、计算安全和实际安全</title><link>https://www.elliot98.top/post/crypto/crypto-models/</link><pubDate>Thu, 28 May 2020 08:31:39 +0800</pubDate><guid>https://www.elliot98.top/post/crypto/crypto-models/</guid><description>&lt;h2 id="加密模型"&gt;加密模型&lt;/h2&gt;
&lt;p&gt;定义所有的明文消息空间为 \( M \)，Alice 希望将其中一条明文 \( m \in M \) 通过密码学加密算法 \(Enc\) 变换成了密文 \(c\)，然后通过不可靠信道传输。Bob 收到 \(c\) 后则通过对应解密算法 \(Dec\) 将 \(c\) 还原成 \(m\)。此时也就是说：&lt;/p&gt;
&lt;p&gt;\[Dec(Enc(m)) = m\]&lt;/p&gt;
&lt;p&gt;这就是古典密码学加密模型的基本原理，是基于算法 \(\{Enc,Dec\}\)的保密性来提供安全性。但是这种保护的成本是非常大的，密码学人员流动、算法泄密都需要更换密码学算法。此外，古典密码学的安全性是无法进行量化考量的。因此，引入了秘钥 \(k\) 的概念，&lt;code&gt;Kerckhoffs 原理&lt;/code&gt; 是说：&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;code&gt;Kerckhoffs 原理&lt;/code&gt;: 一个密码学系统中，除了秘钥 \(k\) 之外的其他部分都被公开，仍然需要能够提供安全性保护。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;此时引入了现代的加密模型，\( \{M, Gen, Enc, Dec\} \) 定义了一个加密方案：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;有一个明文空间 \( M \) 和其中的待加密明文 \( m \in M \)&lt;/li&gt;
&lt;li&gt;有一个密文空间 \( C \) 以及加密后得到的密文 \( c \in C \)&lt;/li&gt;
&lt;li&gt;有一个秘钥生成算法 \( Gen \)，以及一个秘钥 \(k = Gen(\delta) \)，其中 \(\delta\) 是一个安全参数&lt;/li&gt;
&lt;li&gt;一个加密算法 \(Enc\) 满足 \(c = Enc_k(m)\) 和一个解密算法 \(Dec\) 满足 \(m = Dec_k(c)\)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;那么什么样的加密模型是安全的呢？在《Introductino of Modern Cryptography》 中给出的答案：&lt;/p&gt;</description></item></channel></rss>