你好,密码学(1):什么是密码学

导览

课程地址请见Coursera

密码学的核心

Slide-1

  • 安全密钥的构造
    • 在协议结束时,两方均能获得一个只有通信双方知道的密钥$k$。
    • 通信双方均能确信自己是在和对方通信。(而不是和其它什么人通信)
  • 安全通信
    • 使用$k$密钥加密的信息是绝对安全且可信的。
      • 个人理解:即 密钥安全 ≡ 信息安全 ,密钥可信完整 ≡ 信息可信完整

关键:密码学应保证信息的安全性完整性

但是密码学还能做到更多

Slide-2

  • 数字签名

    • 关键:基于内容的签署函数
      • 个人理解:即内容(文本)不同或密钥(特征)不同,得到的签名都不同。
  • 匿名通信

    • Mixnet:通过多重代理实现通信双方的 互相不可知单方可知
      • 即 发信人不知道收信人,收信人也不知道发信人,代理服务器不知道“发信人在和收信人通信”。
      • 或 发信人知道收信人,但 收信人不知道发信人,代理服务器不知道“发信人在和收信人通信”。
  • 匿名电子货币

    • 收款人不知道付款人(付款人匿名)

    • 阻止付款人将 一单位货币 非法拷贝多次以得到 $N$单位货币

      关键:当一单位电子货币被消费一次,则付款人匿名;

      但若一单位电子货币被消费多次(出现了非法拷贝),则付款人信息被公开。

协议

安全多方计算

  • 保证“外界只知道输出的结果,而不知道用户的输入(因为可能包含不应透露的信息)”?

    • 通常情况下,这是对$\alpha = f(x1, x2, x3, … ,xn)$进行计算,公布$\alpha$的计算结果且保证$x1, x2, x3, … ,xn$不被泄露。

    • “一种较呆板、不安全的方法”:找到一个“可信机构”,将输入交给可信机构,由可信机构计算并输出结果。但你需确保可信机构是可信。(因为可信机构能够掌握这些 “不应被泄露” 的输入)

    • 密码学中非常中心的理论:如果任何计算能通过将该计算交给“可信机构”计算来完成,那么该计算不依赖“可信机构”也一定能完成。

      • 可信机构一定不必须。

      关键:各个参与者之间互相建立通信,通过某种协议,使得在计算结束后,每个参与者只知道自己的信息和计算结果。

密码学的“魔法”

私密外包计算

  • 搜索

    • 通信发起方将加密后的信息传送给接收方,接收方可以依据已经加密后的信息进行搜索运算并返回搜索结果,但接收方不知道信息的实际内容(只知道加密后的内容)
      • 接收方能对加密后的信息进行特定运算,但接收方不知道信息本身。

        零知识证明

  • 通信发起方能够向接收方证明“我拥有$A$”,并且接收方能够确信“发起方拥有$A$”,但是接收方不知道$A$是什么

一门严谨的科学

三个步骤

  • 给出一个“威胁模型”

    • 攻击者会对数字签名的“可靠性(不可伪造)”发起攻击
  • 证明“任何需要通过方案$A$去破解系统的攻击者都能解决难题$B$”

    • 任何攻击者要攻击数字签名的可靠性必须能够解决因子整数分解
  • 证明难题$B$是“不可解决”的

    • 因子整数分解是普遍认为不可解的
  • 最终证明:该威胁模型下没有一种方法能够攻破体系**

    • 该体系在该威胁模型下是安全的

本节完

=。=
0%