Cryptographie

语言: CN / TW / HK

Prérequis : les fonctions de hachage

  • entree有一点点不同的话sortie(hash)就会差很多
  • 很难从hash反推entree
  • hash大小都一样
  • ex : MD5(不靠谱), SHA-1(不靠谱), SHA-256(不戳) 64位十六进制, SHA-3

Les principes de base de la cryptographie

  • L’algorithme 编码和解码的工具
  • La clé 与人话一起放进algo中,得到密码(或者和密码一起得到人话
  • L’algorithme est public, la clé est secrète在这里插入图片描述

La cryptographie symétrique

在这里插入图片描述
在这里插入图片描述
ex. Advanced Encryption System(AES), Triple Data Encryption Algorithm(3DES), Twofish
One Time Pad : cle是一串随机的字母,人话和cle的排行加起来整除26得到密码


La cryptographie asymétrique (à clé publique)

chiffrement & déchiffrement

通过公共钥匙加密,通过私人钥匙解密。我希望所有人都能加密发消息给我,但是只有我能阅读。
在这里插入图片描述
在这里插入图片描述
ex. RSA Algorithm, Digital Signature Algorithm, Cramer-Shoup


signature numérique

确认在签名后message没有被改动。
在这里插入图片描述
在这里插入图片描述

  • Il se pourrait que m ≠ m’ et sha256(m) = sha256(m’) mais la probabilité est très faible.
  • Avec une bonne fonction de hachage cryptographique et sans la clé privée d’Alice, il est impossible à Charlie de remplacer à la fois m par m’ et S par S’=E( K s A l i c e K_s^{Alice} KsAlice, sha256(m’)).
  • Connaissant K p A l i c e K_p^{Alice} KpAlice, Charlie peut retrouver facilement sha256(m) en faisant D( K p A l i c e K_p^{Alice} KpAlice, S), mais il ne peut remonter à m.

résumé

  • Pour écrire un message chiffré à Bob, Alice utilise : la clé publique de Bob
  • Pour déchiffrer un message reçu d’Alice, Bob utilise : la clé privée de Bob
  • Pour signer un message, Alice utilise : la clé privée d’Alice (+ hachage)
  • Pour vérifier une signature d’Alice, Bob utilise : la clé publique d’Alice (+ hachage)

Les certificats électroniques

为了保证cle publique真的是Bob的,而没有被中间商暗中调包拦截
Un certificat électronique est un fichier signé qui contient essentiellement :

  • des informations sur l’entité
  • la clé publique de l’entité
    plus :
  • l’identifiant de l’émetteur
  • une date de validité
  • un numéro de série
    et surtout :
  • la signature de l’émetteur
    在这里插入图片描述
    Un certificat électronique certifie une clé publique, il est signé par (la clé privée de) l’émetteur, typiquement une autorité de certification de confiance.

Une application marquante : Blockchain & Bitcoin

  • un système décentralisé
  • 自成立以来的所有交易历史都有记载
  • 每笔转账需要得到出钱人的私人钥匙
  • 区块链中,每一个bloc都包含了上一个bloc的hash
  • 保持最长的链

Le contexte légal