---
# System prepended metadata

title: Cryptography 密碼學L1
tags: [密碼學]

---

###### tags: `密碼學`
# Cryptography 密碼學L1
1. Course intro
* Cryptography v.s. Password
* Background?
  Math: Algebra/Probability
  CS: Algorithm/Complexity
2. Story Merkle
* PKC & Merkle
  1974 Merkle "Secure Communications Over Insecure     Channel"
3. Conventions
*  離散且有限的世界，因為電腦無法運作在無限的世界裡
*  Data v.s. Information
*  Data: 蒐集到的資料
   Information: 從Data中獲得的資訊
*  Machine(funtion/algorithm) only works in polynomial time
    * 期望在多項式時間內能看到結果(大多數情況內)
*  Two important roles: Alice & Bob
*  What is computation?
   funtion: input & output 
   e.g. algorithm, protocol
*  Efficiency
    efficient algo.: poly(n) 多項式時間
    inefficient algo.: exp(n) 指數時間
*  Crypto is like Faith?!
    *  Not always right
    *  Concept: P does not equal NP
*  Randomness is also a Faith
    *  Lots of crypto relies on randomness
    *  Randomness can not be tested
4. Overview of Cryptography 
* Is Crypto important?
    * An example: Privacy
      like Pokemon Go leaks some information
* What is cryptography?
    * Def: Cryptography is the art of writing or solving codes
    * Security
        * Purposes
        * Requirments
        * Security in real-life
            * Protect communication
            * Outsoure private data to a server (雲端，Blockchain),cryptocurrency
    * classic
        * Encyprtion
        * Signature
        * Zero knowledge 零知識協定
        * Secure computation
    * Some notions 
        * Private key encryption(secret key encryption)
            * application: E-mail 傳統鎖頭
            * ![](https://i.imgur.com/E70qPWQ.png)
        * Zero knowledge
          在密碼學中，零知識證明或零知識協議是一種方法，通過該方法，一方可以向另一方證明他們知道x值，而除了他們知道x值這一事實外，不傳遞任何信息。零知識證明的本質是，通過簡單地揭露某人擁有某些信息的知識是微不足道的。面臨的挑戰是在不洩露信息本身或任何其他信息的情況下證明這種擁有。
5. Some notions
    * Private key encryption(secret key encryption)
        * application: E-mail, 腳踏車鎖頭(需要鑰匙的)
    * Zero knowledge
        * interactive
        * non-interactive
6. Story about solving impossiblility
    -If there is a good algorithm for Q
     then there exists a good one for another well-known problem Q-
    -No existing algorithm for Q- so also no good for Q
7. Principle modern crypto
    Kerckhoff's principle 
    * Principle of modern crypto
      1. Formal Definition
          - system framework
          - security definition
      3. Precise Assumption (well-studied hardness)
      4. Construction
      5. Security Proof (安全性證明)
         完成證明reduction可以用來說服別人
8. History of cryptography
    * Very  Shift Cipher
        * 加密解密用同一把key
        * EX: A~Z: 0~25
              APPLE
              加密: +3 -> DSSOH
    * Cryptography is everywhere
        * Real-life is based on cryptography
        * Most systems are based on the RSA(Riven, Shamir, Adleman) cryptosystem
          link: https://zh.wikipedia.org/wiki/RSA%E5%8A%A0%E5%AF%86%E6%BC%94%E7%AE%97%E6%B3%95
9. Outro
    "全台首家線上密碼學上線啦!!"
