wargames-krypton
wargames的krypton是以通关游戏的方式来学习密码学相关知识。
文章记录在通关过程中新学习知识盲点。
前言
游戏的服务器地址krypton.labs.overthewire.org
,端口2231
,用户名从krypton1
到krypton7
,上一关会解出下一关的密码。相关说明在/krypton/
目录中。
可以用ssh krypton1@krypton.labs.overthewire.org -p 2231
来连接。
LV0
题干已经明出base64
编码 S1JZUFRPTklTR1JFQVQ=
echo S1JZUFRPTklTR1JFQVQ= | base64 -d
KRYPTONISGREAT
LV01
关键字 a simple rotation called ROT13
。
一般讲密码学的学的书,都会从简易的替换式密码开始讲。ROT13
就是其中一个比较典型的替换密码。也是凯撒密码的一个变种。
1 |
|
LV02
有个可执行程序encrypt
,具有特权,密钥是keyfile.dat
,可以选择对文件进行加密。
因为环境权限的限制,要在tmp
目录下创将工作区。建立keyfile到工作区的软连接。
1 |
|
1 |
|
LV03
给了三段秘文,及两个提示,并在README中告知这三段是通过同一方法加密的。
提示中给出需要进行频率分析(Frequency Analysis)
这题我属于知道原理,但没有称手的工具。 就直接看了参考答案了。
1 |
|
LV04
前面几关是替换的类型加密方式,这关是多密码表(A polyalphabetic cipher)的加密方式。
其中简单的一种形式是维吉尼亚密码(vigenere)
破译维吉尼亚密码的关键在于它的密钥是循环重复的。
如果我们知道了密钥的长度,那密文就可以被看作是交织在一起的凯撒密码,而其中每一个都可以单独破解
找了一个vigenere解密工具
https://f00l.de/hacking/vigenere.php
拷贝上面密文
因为有提示,密钥长度为6位。
密钥是:frekey
解出的下一关密码为: CLEARTEXT
LV05
和上一关一样,只是key长度未知。
还是用那个工具,先是猜key的长度。再是猜密码。再解密。
密钥:keylength
解出的下一关密码为: RANDOM
LV06
考察了选择明文攻击方法
mkdir /tmp/xqiRXPmUnFTvI6X07SSb
1 |
|
PNUKLYLWRQKGKBE