ctf竞赛中常见古典密码的解密方法(上)

本文意在整理最近做题过程中遇到的常见古典密码的特征及解密方法。

一、baseX解密

1.密码特征

编码类型字母特征数字特征特殊符号特征

base16

大写×
base32大写没有“1”补“=”
base64大小写“+”,“/”,补“=”
base58大小写(没有“O”,L小写,i大写)没有“0”,“1”×
base85大小写(小写没有v-z)
base91大小写

表中数字特征中“√”表示有0-9,特殊符号中“×”表示无特殊符号,“√”表示有较多特殊符号。

2.解密方法:在线网站Base16 Base32 Base58 Base62 Base64 Base85 Base91 编码/解码 - 锤子在线工具 (toolhelper.cn)

二、caesar密码

1.密码特征:仅限字母加密,用一致偏移相同距离的新字母代替原码中的字母,如A加密为D,B加密为E,以此类推,此时偏移量为3。

2.解密方法,已知偏移量下利用在线网站在线凯撒密码加密解密 (lddgo.net)凯撒密码 加密/解密 - 锤子在线工具 (toolhelper.cn)

未知偏移量下通过python输出所有可能的结果,寻找可读明文:

str="Khoor"
destr=""

for n in range(0,27):
    destr = ""
    for char in str:
        if char.islower():
            dechar = chr((ord(char) - ord("a") - n) % 26 + ord("a"))
            destr = destr + dechar
        else:
            dechar=chr((ord(char)-ord("A") -n) %26 +ord("A"))
            destr = destr+dechar
    print(f"偏移量为{n}时,解密得到的明文为{destr}")

此案例得到结果在偏移量为3时,解密得到的明文为“Hello”。

或者在线词频分析quipqiup - cryptoquip and cryptogram solver

三、摩斯密码

1.密码特征:密文由“-”、“.”或“0”、“1”等两种信号构成。

2.解密方法:在线网站在线摩斯密码翻译器 (lddgo.net)。自定义好短码、长码、分隔符、编码间隔、分隔间隔即可。

四、栅栏密码

1.密码特征:通过分组移位加密,各种符号(中英文、特殊符号等)都有可能出现。

2.解密方法:在线解密网站栅栏密码在线加密解密 - 千千秀字 (qqxiuzi.cn)

其他常见密码将在下期整理,行文仓促,有不足之处恳请大家批评指正。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值