Koki.
返回博客

密码学入门:从凯撒密码到 HTTPS

3 分钟阅读

密码学听起来高深,但它回答的问题两千年来没变过:怎么让敌人看不懂我的信,而收信人看得懂?

凯撒密码:一切的起点

凯撒大帝给将军写信时,把每个字母向后移 3 位:ATTACK 变成 DWWDFN。将军收到后向前移 3 位还原。这就是对称加密的雏形:

  • 明文:原始信息
  • 密钥:偏移量 3(这个 3 就是「钥匙」)
  • 密文:加密后的乱码

它被破解了 2000 年——26 个字母只有 25 种偏移,挨个试就出来了(这也叫暴力破解)。本站的凯撒工具可以直接玩。

换位密码:换一种思路

凯撒是「替换」——换字母。换位密码是「打乱」——不换字母,只换位置:

明文:HELLO WORLD
规则:每行 5 个字符竖着读
H E L L O
W O R L D
→ 竖着读:HWEOLRLLOD

替换 + 换位组合起来,就是近代密码机的核心思想。

对称加密:一个钥匙开一把锁

凯撒的现代版:AES。发信人和收信人共享同一个密钥,加密解密都用它——快、安全,是今天硬盘加密、WiFi(WPA2)的主流方案。

但有个致命问题:密钥怎么安全地交给对方? 快递会截获,见面不现实。这就是密钥分发难题。

非对称加密:数学变魔术

1970 年代,RSA 横空出世,思路反转:两把钥匙

  • 公钥:随便公开,谁都能拿
  • 私钥:只有自己知道
  • 用公钥加密的内容,只有私钥能解开

就像大街上的邮箱:人人都能把信塞进投递口(公钥),只有邮递员有开箱钥匙(私钥)。

RSA 的安全性基于「大数分解极难」:两个大质数相乘容易(61×53=3233),把乘积分解回去就难了(3233 是哪两个质数乘的?)。数字大到 2048 位时,全世界的计算机算到宇宙热寂也算不完。

哈希:单向的指纹

哈希不是加密,它是单向的:任意长度的输入 → 固定长度的「指纹」,无法反推原文。

  • 同一个输入永远得到同一个哈希
  • 改一个字符,哈希面目全非
  • SHA-256 的输出永远是 256 位

用途:密码存储(数据库只存哈希,泄露也推不出明文)、文件完整性校验(下载的文件有没有被篡改)、区块链。本站的 SHA-256 工具可以试试「改一个字符,哈希变化有多大」。

HTTPS 的一天:全都用上了

你访问这个网站时:

  1. 非对称加密交换出一次性的「会话密钥」(解决密钥分发)
  2. **对称加密(AES)**加密后续所有流量(又快又安全)
  3. 哈希验证证书和数据没被篡改

凯撒大帝的 3 位移位和你的 HTTPS 之间,隔了 2000 年,但核心思想一脉相承。

下一步

  • CTF 挑战第 4、5 关就是 Base64 和凯撒——现在你有武器了
  • CTF Wiki 的密码学板块,从古典密码学起
  • 推荐阅读:《图解密码技术》(结城浩)

koki.asia bootloader v1.0

0%

CLICK / ESC TO SKIP