Text Decoder Toolkit破解古典密码:词频分析

Text Decoder Toolkit
官网 http://www.kahusecurity.com/tools/
Requirements
Microsoft .NET Framework 4.5
Summary
Text Decoder Toolkit is used to decode text using XOR and character shift methods.

暴力枚举法

把密文放入input框
【Decoder】选项卡 - 点击action中的单选框Enumerate to File(枚举并保存为文件)
点击operators中的单选框Character Shift
点击Decode就在程序目录生成一个枚举结果textdecodertoolkit_CS.txt

搜索“the”发现第50行就是明文。

相同差值法

利用明文字符间的ascii差值 =密文字符间的ascii差值

打开Text Decoder Toolkit
statistics(统计)选项卡
在Difference内的 Value1 Value2 分别填入值
点击Calculate计算出差值difference = value2 - value1

h-e-l-l-o的差值为
-3 7 0 3


h - e得到差值-3
l - e得到差值7
...

如果hello的ascii码都增加10得到密文rovvy

hello、rovvy字母间ascii码差值相同: -3 7 0 3

操作:
点击statistics(统计)选项卡,在Distance中的Match String(匹配字符串)中填入“the”(或任何可能大量出现的单词)
工具箱会试图帮你找到密文中相同差值(Distance,间距)的字符串的位置。
比如返回
Found first match at position: 14
Shift value: 50

得到ascii码增加值(Shift value):50 在Custom Substitution Table中填入50可得到明文。

词频分析法

实例:

T{4 G=C 9<=E B63 3<3;G /<2 9<=E G=C@A3:4^ G=C <332 <=B 43/@ B63 @3AC:B =4 / 6C<2@32 0/BB:3A` {4 G=C 9<=E G=C@A3:4 0CB <=B B63 3<3;G^ 4=@ 3D3@G D71B=@G 5/7<32 G=C E7:: /:A= AC443@ / 2343/B` {4 G=C 9<=E <37B63@ B63 3<3;G <=@ G=C@A3:4^ G=C E7:: AC11C;0 7< 3D3@G 0/BB:3`T _ !C< "HC^ "63 s@B =4 %/@
  • 得到全文中出现频率最高的符号
    打开Text Decoder Toolkit,把密文放入Input,选择statistics(统计)选项卡 点击 Get Stats

  • 计算Ascii码差值
    符号“3”出现频率最高(除了空格以外)
    在statistics(统计)选项卡的 Difference内
    Value1填入3 Value2填入e(英文中出现频率最高的字母)
    点击Calculate计算出其 ascii码差值为50 差值difference = value2 - value1

  • Decoder解码器
    在Arithmetic(算法)选项卡默认选择Single Decimal,填入Value:50
    在Operator(操作)中选择Character Shift点击Decode,输出框中得到明文

  • 修正、验证
    输出框中第三个字符是“f”,因此前面的字符【可能】是“I”(If)我们可以验证一下

回到“Statistics”选项中,我在输出框(明文)【选中】了一个可能是“I”的字符,点击“Get Hightlighted Char”(突出显示字符)
程序将提取并显示输入相应的字符value1 和输出框相应的字符value2
value1:{ value2:�
本例中我认为“{”对应的明文应该是大写“I”,所以把value2的“�”改为“I”
value1:{ value2:I

点击“Calculate Difference” 得到差值“-50”
差值difference = value2 - value1
得到了两个不同的差值(字符替换值)

我们再次【映射字符】进行解码:打开选项卡“Custom Substitution Table”(自定义替换表,很直观,类似ASCII表映射)

对任一字符进行映射(替换)的方法:ascii码为032的是空格“ ”字符,如果在032-SPC处的【增量框】填入17再点convert
【output输出框】内的“ ”都变为字符“1”(因为032+17=049 49是字符“1”的ascii码)

如果密文中的空格就是明文的空格,那么空格这个字符是不用转换的,在032-SPC【ascii码增量框】填0 字符不变。

为了填入方便,这种表在第一行某个增量框输入一个值,这1列都赋值为这个值,但我们要注意修改,比如明文密文中空格不用转换,增量框填0

字母相对频率

wikipedia

频率从大到小:
E T A O I N S H R
然后是 D L C U M W F G Y P B V K J X Q Z

Letter Relative frequency in the English language
字母 在英语中的相对频率(从高到低)
e 12.702%
t 9.056%
a 8.167%
o 7.507%
i 6.966%
n 6.749%
s 6.327%
h 6.094%
r 5.987%
d 4.253%
l 4.025%
c 2.782%
u 2.758%
m 2.406%
w 2.361%
f 2.228%
g 2.015%
y 1.974%
p 1.929%
b 1.492%
v 0.978%
k 0.772%
j 0.153%
x 0.150%
q 0.095%
z 0.074%

(字母abc顺序表)
字母 在英语中的相对频率
a 8.167%
b 1.492%
c 2.782%
d 4.253%
e 12.702%
f 2.228%
g 2.015%
h 6.094%
i 6.966%
j 0.153%
k 0.772%
l 4.025%
m 2.406%
n 6.749%
o 7.507%
p 1.929%
q 0.095%
r 5.987%
s 6.327%
t 9.056%
u 2.758%
v 0.978%
w 2.361%
x 0.150%
y 1.974%
z 0.074%

首字母相对频率

英文单词 一个单词的首字母相对频率,从最常见到不常见一般是:
The first letter of an English word, from most to least common

 s a c m p r t b f g d l h i e n o w u v j k q y z x

Letter Relative frequency as the first letter of an English word
字母 相对频率(某英文单词首字母)
a 11.602%
b 4.702%
c 3.511%
d 2.670%
e 2.007%
f 3.779%
g 1.950%
h 7.232%
i 6.286%
j 0.597%
k 0.590%
l 2.705%
m 4.383%
n 2.365%
o 6.264%
p 2.545%
q 0.173%
r 1.653%
s 7.755%
t 16.671%
u 1.487%
v 0.649%
w 6.753%
x 0.017%
y 1.620%
z 0.034%

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,117评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,328评论 1 293
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,839评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,007评论 0 206
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,384评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,629评论 1 219
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,880评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,593评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,313评论 1 243
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,575评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,066评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,392评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,052评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,082评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,844评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,662评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,575评论 2 270

推荐阅读更多精彩内容