Skip to content

Home

本网页由 mkdocs 生成,完整的 documentation 可以参看 mkdocs.org

源文件以 markdown 语法撰写,相关语法可以参考 markdown 语法总览

For every complex problem there is an answer that is clear, simple, and wrong.

-- H.L.Mencken

主要参考来源:


Crypto 1.0

在密码学 1.0 时代,我们主要考虑在通信存储检索等场景中,如何确保数据的保密性(confidentiality)和可验证性(authentication),使用的主要密码学原语(cryptographic primitives)包括

  • 公钥加密(public-key encryption)
  • 数字签名(digital signatures)
  • 密钥协商(key-exchange protocols)
  • 密码哈希函数(cryptographic hash functions)
  • ...

Crypto 2.0

如果说 1.0 关注的是外部攻击者,那么 2.0 更多关注的是内部攻击者。 因为随着“云”的普及,密码协议的执行者开始由用户转移到了外包的服务器,如何确保服务器不能侵犯用户的隐私,成为了 2.0 时代的难题。 一些诸如对加密数据进行计算,允许展示数据的部分信息,隐藏数据拥有者的身份信息等想法相继被提出,相关的密码学原语包括:

  • 同态加密(homomorphic encryption)
  • 秘密共享(secre sharing)
  • 不经意的传输(oblivious transfer)
  • 盲签名(blind signatures)
  • 零知识证明(zero-knowledge proofs)
  • 安全多方计算(secure multi-party computation)
  • ...