Cryptographie
Cryptographie
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
「其他文章」
- 疫情催化下的全球远程工作调查报告
- 给产品经理的9千字总结:系统间数据传输关注这些就够了:接口、otter、log4j、SFTP、MQ……
- 安全新手入坑——如何在虚拟机中安装操作系统 VMware Tools(T)的安装
- 王者连跪是什么感觉?
- 抓取了1400家科技公司的招聘信息,我发现数据工程师比数据科学家更有市场 - 知乎
- 21中国矿业大学北京\矿大北京计算机考研复试经验
- Hyperledger Fabric学习笔记(二)- Fabric 2.2.1环境搭建
- 以向量运算为例,总结运算符重载
- svn认证失败,解决方案
- Cryptographie
- 跟我学Android之七 资源文件
- 当文件内存使用量并打印文件超过100k自动结束程序
- R语言 lightgbm 算法优化:不平衡二分类问题(附代码)
- 2021年软件开发的七大趋势
- 实现微服务会带来哪些挑战?
- 【重点】初窥Linux 之 我最常用的20多条命令
- 如何使用这个 KDE Plasma 文本编辑器?
- SCRIPT7002: XMLHttpRequest: 网络错误 0x2ef3的解决方法
- 程序员漫画:终极广告拦截器
- 猜数字游戏,游戏界面