画布 1
Crypto
  现代密码学
    非对称加密密码
      RSA
        分解模数n、p、q泄露、私钥d泄露、φ(n)泄露
          利用基本的 RSA 加解密原理
        n, φ(n)泄露求 p
          利用pq关系构建方程式求解
        模数因子差异过大或过小
          p、q的差异过大或者过小：可以用Pollard rho或者费马分解
        n的多质因数攻击
          模数n并不是两个大质数生成，而是多个质数生成。（相近或者很远
        e 和 φ(n) 不互质
          中国剩余定理求解
        公因子唯密文攻击
          多组强安全模数n；安全指数e；枚举求解n之间的最大公因数
        共模攻击
          相同模数；不同指数e；同一明文多次加密：利用e之间互质，可以求逆元，构造方程 x*e1 + y*e2=1 进行求解
        低解密指数攻击
          一般指数e很大：wiener-attack
        低加密指数(广播)攻击
          指数e比较小；加密相同明文；给多个用户发送密文（模数n不同）；中国剩余定理直接解
        Coppersmith 相关攻击
          相关消息攻击
          短填充攻击
            https://ctf-wiki.org/crypto/asymmetric/rsa/rsa_coppersmith_attack/#coppersmiths-short-pad-attack
          明文高位已知攻击
            https://ctf-wiki.org/crypto/asymmetric/rsa/rsa_coppersmith_attack/#known-high-bits-message-attack
          P 高位部分已知攻击
            https://ctf-wiki.org/crypto/asymmetric/rsa/rsa_coppersmith_attack/#factoring-with-high-bits-known
        d的低位部分泄露
          https://ctf-wiki.org/crypto/asymmetric/rsa/rsa_d_attack/#d_1
        n，e，dp，c 泄露
          https://skysec.top/2018/08/25/RSA%E4%B9%8B%E6%8B%92%E7%BB%9D%E5%A5%97%E8%B7%AF-2/
        dp、dq、q、p、c泄露
          https://skysec.top/2018/08/25/RSA%E4%B9%8B%E6%8B%92%E7%BB%9D%E5%A5%97%E8%B7%AF-2/
        已知n和e*d， 求 p 和 q
          https://www.codenong.com/cs105472586/
        LSB
          https://ctf-wiki.org/crypto/asymmetric/rsa/rsa_chosen_plain_cipher/?h=lsb#rsa-byte-oracle
      Elgamal
        随机数缺陷攻击
          分析随机数关系，带入已知方程求解
        p-1 含小质因子
          baby step-giant step&Pohlig-Hellman algorithm。sage：https://doc.sagemath.org/html/en/reference/groups/sage/groups/generic.html
        模数过小攻击
          暴力跑
      ECC
        随机数缺陷攻击
          分析随机数关系，带入已知方程求解
        模数过小攻击
          暴力跑密钥
      格密码
        CVP:Babai's nearest plane algorithm
        NRTU 格密码
          https://lazzzaro.github.io/2020/11/07/crypto-%E6%A0%BC%E5%AF%86%E7%A0%81/index.html#NRTU%E6%A0%BC%E5%AF%86%E7%A0%81
    对称加密密码
      AES/DES
        CBC反转字节码攻击
          https://www.jianshu.com/p/476b595e9594
      流密码
        流密码
        伪随机数生成器
        线性同余生成器
        反馈移位寄存器
        特殊流密码
        感觉主要是分析序列生成的规律，然后解方程
          https://ctf-wiki.org/crypto/streamcipher/intro/#_1
    哈希函数
      MD5
        常见的会出题的碰撞，已经有很多现成工具了
          https://0clickjacking0.github.io/2020/08/24/CTF%E4%B8%AD%E5%85%B3%E4%BA%8Emd5%E7%9A%84%E4%B8%80%E4%BA%9B%E6%80%BB%E7%BB%93/
      SHA-1
        理论上已经完全不安全了，Google已经可以生成两个不同的 pdf 来计算出相同的 SHA-1
          https://shattered.io/
  古典密码学
  攻击方式
    暴力攻击
      不依赖于任何算法细节，仅与 Hash 值长度有关
    生日攻击
      没有利用 Hash 函数的结构和任何代数弱性质，只依赖于消息摘要的长度，即 Hash 值的长度
    中点交会攻击
      是生日攻击的一种变形，不比较 Hash 值，而是比较中间变量。这种攻击主要适用于攻击具有分组链结构的 Hash 方案
    密码分析
      就是分析算法的结构特点，这个很困难基本不可能，除非是出题者自定义的，或者魔改的。
  攻击方式
    是否知道这种密码、编码
    词频分析
    暴力枚举