?
密码应用
裙中藏玄机
二战期间,纳粹特工在探测盟军机密军事情报后,将这些情报传递给他们的负责人,从而决定作战方针。一次,盟军的检查员截获了一张设计图纸。这张设计草图上是3位年轻的模特,她们穿着时尚的服装。表面上看起来,设计草图很寻常,然而这张看似“清白”的图纸没能瞒过英国反间谍专家们的眼睛。英国安全局的官员们识破了纳粹特工的诡计,命令密码破译员和检查员迅速破译这些密码。大批敌方援军随时可能到来。”最终从这张设计图纸上密码破译员们读出了这样的信息。原来纳粹特工利用莫尔斯电码的点和长横等符号作为密码,把这些密码做成装饰图案,藏在图上诸如模特的长裙、外套和帽子等图案中。
手段多种多样
解密文件还展示了纳粹特工其他巧妙的传递情报的方法。为了把情报伪装得“天衣无缝”从而顺利寄出,纳粹特工可谓是殚精竭虑。隐形的墨水、针刺的小孔以及字母的凹进都是他们的惯用伎俩。纳粹特工利用这些暗示告知军队活动、轰炸式袭击和军舰建造的具体细节。他们还会把密码藏在活页乐谱、教你下象棋的描述以及速记符号里面。这些带密码的情报被伪装成普通书信。有时他们把明信片加厚一层,在夹层中塞满极其薄的纸片和文书。种种稀奇古怪的手段让人防不胜防。
老马也失蹄
纳粹特工还利用字母表“作弊”。看起来只是一份普通的信件,但你把每个单词的第一个字母拼起来,就是一封“机密情报”。两名德国特务1942年被捕,他们向英国情报部门坦白了这种藏匿密码的方法。然而,英国情报部门两次都与这样的机密文件失之交臂,让情报流传了出去。原因是,他们认为不再会有这种藏匿情报的方法,所以并未把那两封信当成机密文件处理。这种密码藏在一封“休伯特”写给“珍妮特”姑妈的信中。信中暗藏的情报是“14架波音堡垒式轰炸机昨日抵达伦敦。飞行员将空袭基尔(德国城市)”。英国战时情报侦察负责人大卫·皮特里曾尴尬地承认这两次失败“有点烦人”。但随着战争的发展,反间谍官员们也发明了种种探测可疑信件的方法。!证据确凿的纳粹特工信件通常包括:文字散漫而没有重点,信寄往中立国而信封上贴着大量的邮票。书信中有艰深难懂又少用的短语是暗藏密码的标志之一。而信件中人员的罗列和大段关于桥牌的内容也会引起怀疑。
密码术,Cryprography,从希腊词Kryptos派生而来。它是一种为了使信息无法
被外人理解,而对信息进行加密的技术。密码术通常分为两种,那就是易位和替
换。
对于易位,不得不说栅栏密码,请先看下面的密文:
TEOGSDYUTAENNHLNETAMSHVAED
再看看解密过程:
先将密文分为两行
TEOGSDYUTAENN
HLNETAMSHVAED
再按上下上下的顺序组合成一句话
THELONGESTDAYMUSTHAVEANEND.
其实,还有多线的栅栏密码,大家试试解下面的密文:
ASLELNASLAJLLHLWLDCHLVILABEAJKAHEL
然而,替换比易位更常用,古老的方法是随机的将字母两两配对,如:
QWERTYUIOPASD
!!!!!!!!!!!!!
FGHJKLZXCVBNM
那么,句子Wallshaveears.就被加密为Gbyynebphhbjn.
后来,出现了恺撒移位密码,它是将字母表中的字母依次后移一定的位置得到的
,如:
明码表ABCDEFGHIJKLMNOPQRSTUVWXYZ
密码表FGHIJKLMNOPQRSTUVWXYZABCDE
(密码学中用来书写原始信息的有关文字称为明码表,用来替换明码字母的有关
字母称为密码表)
明文FOREST
密文KTWJXY
但恺撒密码的密钥只有可怜的25种,人们只需检查这25种可能性即可破解。大家
又试试解下面的密文:
1.QEBUBFPKLOLPBTFQELRQDQELOK.
2.WSKQUGEWWSKQYG
因此,为了使密码有更高的安全性,单字母替换密码就出现了。只需重排密码表
二十六个字母的顺序,密钥就会增加到四千亿亿亿多种,那么就能有效的防止敌
人用筛选的方法检验所有的密钥,如:
明码表ABCDEFGHIJKLMNOPQRSTUVWXYZ
密码表QWERTYUIOPASDFGHJKLZXCVBNM
明文FOREST
密文YGKTLZ
这种密码持续使用几个世纪,直到阿拉伯人发明了密码破解术
ADFGVX密码
假设我们需要发送明文讯息"Attackatonce",用一套秘密混杂的字母表填满Polybius方格,像是这样:
ADFGX
Abtalp
Ddhozk
Fqfvsn
Ggjcux
Xmrewy
i和j视为同个字,使字母数量符合5×5格。之所以选择这五个字母,是因为它们译成摩斯密码时不容易混淆,可以降低传输错误的机率。使用这个方格,找出明文字母在这个方格的位置,再以那个字母所在的栏名称和列名称代替这个字母。可将该讯息可以转换成处理过的分解形式。
ATTACKATONCE
AFADADAFGFDXAFADDFFXGFXF
下一步,利用一个移位钥匙加密。假设钥匙字是「CARGO」,将之写在新格子的第一列。再将上一阶段的密码文一列一列写进新方格里。
CARGO
_________
AFADA
DAFGF
DXAFA
DDFFX
GFXFX
最后,按照钥匙字字母顺序「ACGOR」依次抄下该字下整行讯息,形成新密文。如下:
FAXDFADDDGDGFFFAFAXXAFAFX
在实际应用中,移位钥匙字通常有两打字符那么长,且分解钥匙和移位钥匙都是每天更换的。
ADFGVX
在1918年6月,再加入一个字V扩充。变成以6×6格共36个字符加密。这使得所有英文字母(不再将I和J视为同一个字)以及数字0到9都可混合使用。这次增改是因为以原来的加密法发送含有大量数字的简短信息有问题。
希尔密码
加密
例如:密钥矩阵
13
02
明文:HITHERE
去空格,2个字母一组,根据字母表顺序换成矩阵数值如下,末尾的E为填充字元:
HITHEREE
82055
98185
HI经过矩阵运算转换为IS,具体算法参考下面的说明:
|13|8e1*8+3*9=35MOD26=9=I
|02|9e0*8+2*9=18MOD26=18=S
用同样的方法把“HITHERE”转换为密文“ISRPGJTJ”,注意明文中的两个E分别变为密文中的G和T。
解密
解密时,必须先算出密钥的逆矩阵,然后再根据加密的过程做逆运算。
逆矩阵算法公式:
|AB|=1/(AD-BC)*|D-B|
|CD||-CA|
例如密钥矩阵=
|17|
|03|
AD-BC=1*3-0*7=33*X=1mod26所以X=9
因此
|17|的逆矩阵为:9*|3-7|
|03||01|
假设密文为“FOAOESWO”
FOAOESWO
61523
15151915
9*|3-7||6|=9*(3*6-7*15)=-783mod26=23=W
|01||15|=9*(0*6+1*15)=135mod26=5=E
所以密文“FOAOESWO”的明文为“WEREDONE”
四方密码
四方密码用4个5×5的矩阵来加密。每个矩阵都有25个字母(通常会取消Q或将I,J视作同一样,或改进为6×6的矩阵,加入10个数字)。
首先选择两个英文字作密匙,例如example和keyword。对于每一个密匙,将重复出现的字母去除,即example要转成exampl,然后将每个字母顺序放入矩阵,再将余下的字母顺序放入矩阵,便得出加密矩阵。
将这两个加密矩阵放在右上角和左下角,余下的两个角放a到z顺序的矩阵:
abcdeEXAMP
fghijLBCDF
klmnoGHIJK
prstuNORST
vwxyzUVWYZ
KEYWOabcde
RDABCfghij
FGHIJklmno
LMNPSprstu
TUVXZvwxyz
加密的步骤:
两个字母一组地分开讯息:(例如helloworld变成helloworld)
找出第一个字母在左上角矩阵的位置
abcdeEXAMP
fghijLBCDF
klmnoGHIJK
prstuNORST
vwxyzUVWYZ
KEYWOabcde
RDABCfghij
FGHIJklmno
LMNPSprstu
TUVXZvwxyz
同样道理,找第二个字母在右下角矩阵的位置:
abcdeEXAMP
fghijLBCDF
klmnoGHIJK
prstuNORST
vwxyzUVWYZ
KEYWOabcde
RDABCfghij
FGHIJklmno
LMNPSprstu
TUVXZvwxyz
找右上角矩阵中,和第一个字母同行,第二个字母同列的字母:
abcdeEXAMP
fghijLBCDF
klmnoGHIJK
prstuNORST
vwxyzUVWYZ
KEYWOabcde
RDABCfghij
FGHIJklmno
LMNPSprstu
TUVXZvwxyz
找左下角矩阵中,和第一个字母同列,第二个字母同行的字母:
abcdeEXAMP
fghijLBCDF
klmnoGHIJK
prstuNORST
vwxyzUVWYZ
KEYWOabcde
RDABCfghij
FGHIJklmno
LMNPSprstu
TUVXZvwxyz
这两个字母就是加密过的讯息。
helpmeobiwankenobi的加密结果:
FYGMKYHOBXMFKKKIMD
[编辑]二方密码
二方密码(en:Two-square_cipher)比四方密码用更少的矩阵。
得出加密矩阵的方法和四方密码一样。
例如用「example」和「keyword」作密匙,加密lp。首先找出第一个字母(L)在上方矩阵的位置,再找出第二个字母(D)在下方矩阵的位置:
EXAMP
LBCDF
GHIJK
NORST
UVWYZ
KEYWO
RDABC
FGHIJ
LMNPS
TUVXZ
在上方矩阵找第一个字母同行,第二个字母同列的字母;在下方矩阵找第一个字母同列,第二个字母同行的字母,那两个字母就是加密的结果:
EXAMP
LBCDF
GHIJK
NORST
UVWYZ
KEYWO
RDABC
FGHIJ
LMNPS
TUVXZ
helpme的加密结果:
helpme
HEDLXW
这种加密法的弱点是若两个字同列,便采用原来的字母,例如he便加密作HE。约有二成的内容都因此而暴露。
替换加密法
用一个字符替换另一个字符的加密方法。
换位加密法
重新排列明文中的字母位置的加密法。
回转轮加密法
一种多码加密法,它是用多个回转轮,每个回转轮实现单码加密。这些回转轮可以组合在一起,在每个字母加密后产生一种新的替换模式。
多码加密法
一种加密法,其替换形式是:可以用多个字母来替换明文中的一个字母。
夹带法
通过隐藏消息的存在来隐藏消息的方法。
Kasiski法
于19世纪由波兰的一个军官发现的,这种方法通过查看重复密文部分,来发现多码密钥的长度。
三分密码
首先随意制造一个3个3×3的Polybius方格替代密码,包括26个英文字母和一个符号。然后写出要加密的讯息的三维坐标。讯息和坐标四个一列排起,再顺序取横行的数字,三个一组分开,将这三个数字当成坐标,找出对应的字母,便得到密文。
仿射密码
仿射密码是一种替换密码。它是一个字母对一个字母的。
它的加密函数是e(x)=ax+b(modm),其中a和m互质。
m是字母的数目。
译码函数是d(x)=a^(x-b)(modm),其中a^是a在M群的乘法逆元。
波雷费密码
1选取一个英文字作密匙。除去重复出现的字母。将密匙的字母逐个逐个加入5×5的矩阵内,剩下的空间将未加入的英文字母依a-z的顺序加入。(将Q去除,或将I和J视作同一字。)
2将要加密的讯息分成两个一组。若组内的字母相同,将X(或Q)加到该组的第一个字母后,重新分组。若剩下一个字,也加入X字。
3在每组中,找出两个字母在矩阵中的地方。
若两个字母不同行也不同列,在矩阵中找出另外两个字母,使这四个字母成为一个长方形的四个角。
若两个字母同行,取这两个字母右方的字母(若字母在最右方则取最左方的字母)。
若两个字母同列,取这两个字母下方的字母(若字母在最下方则取最上方的字母)。
新找到的两个字母就是原本的两个字母加密的结果。
RC5
1.创建密钥组,RC5算法加密时使用了2r+2个密钥相关的的32位字:,这里r表示加密的轮数。创建这个密钥组的过程是非常复杂的但也是直接的,首先将密钥字节拷贝到32位字的数组L中(此时要注意处理器是little-endian顺序还是big-endian顺序),如果需要,最后一个字可以用零填充。然后利用线性同余发生器模2初始化数组S:
对于i=1到2(r+1)-1:(本应模,本文中令w=32)
其中对于16位字32位分组的RC5,P=0xb7e1Q=0x9e37
对于32位字和64位分组的RC5,P=0xb7e15163Q=0x9e3779b9
对于64位字和128位分组,P=0xb7151628aed2a6bQ=0x9e3779b97f4a7c15
最后将L与S混合,混合过程如下:
i=j=0
A=B=0
处理3n次(这里n是2(r+1)和c中的最大值,其中c表示输入的密钥字的个数)
2.加密|处理,在创建完密钥组后开始进行对明文的加密,加密时,首先将明文分组划分为两个32位字:A和B(在假设处理器字节顺序是little-endian、w=32的情况下,第一个明文字节进入A的最低字节,第四个明文字节进入A的最高字节,第五个明文字节进入B的最低字节,以此类推),其中操作符>>是循环右移,减运算也是模(本应模,本文中令w=32)的。
维热纳尔方阵
ABCDEFGHIJKLMNOPQRSTUVWXYZ
BCDEFGHIJKLMNOPQRSTUVWXYZA
CDEFGHIJKLMNOPQRSTUVWXYZAB
DEFGHIJKLMNOPQRSTUVWXYZABC
EFGHIJKLMNOPQRSTUVWXYZABCD
FGHIJKLMNOPQRSTUVWXYZABCDE
GHIJKLMNOPQRSTUVWXYZABCDEF
HIJKLMNOPQRSTUVWXYZABCDEFG
IJKLMNOPQRSTUVWXYZABCDEFGH
JKLMNOPQRSTUVWXYZABCDEFGHI
KLMNOPQRSTUVWXYZABCDEFGHIJ
LMNOPQRSTUVWXYZABCDEFGHIJK
MNOPQRSTUVWXYZABCDEFGHIJKL
NOPQRSTUVWXYZABCDEFGHIJKLM
OPQRSTUVWXYZABCDEFGHIJKLMN
PQRSTUVWXYZABCDEFGHIJKLMNO
QRSTUVWXYZABCDEFGHIJKLMNOP
RSTUVWXYZABCDEFGHIJKLMNOPQ
STUVWXYZABCDEFGHIJKLMNOPQR
TUVWXYZABCDEFGHIJKLMNOPQRS
UVWXYZABCDEFGHIJKLMNOPQRST
VWXYZABCDEFGHIJKLMNOPQRSTU
WXYZABCDEFGHIJKLMNOPQRSTUV
XYZABCDEFGHIJKLMNOPQRSTUVW
YZABCDEFGHIJKLMNOPQRSTUVWX
ZABCDEFGHIJKLMNOPQRSTUVWXY
著名的维热纳尔方阵由密码学家维热纳尔编制,大体与凯撒加密法类似。即二人相约好一个密钥(单词
),然后把加密后内容给对方,之后对方即可按密码表译出明文。
密钥一般为一个单词,加密时依次按照密钥的每个字母对照明码行加密。
例如:我的密钥是who,要加密的内容是Iloveyou,则加密后就是ESCRLMKB.即加密I,就从密钥第一个字母打头的w那行找明码行的I对应的字母,即E。加密l,就从密钥第2个字母打头的h那行找明码l对应的字母,S。加密o,从密钥第三个字母O打头的那行找到明码行中o对应的字母,C。加密v,就又从密钥第一个字母w打头的那行找到明码行中v对应的字母,R。依此类推。
所以由维热纳尔方阵加密的密码,在没有密钥的情况下给破译带来了不小的困难。
维热纳尔方阵很完美的避开了概率算法(按每个语种中每个字母出现的概率推算。例如英语中最多的是e),使当时的密码破译师必须重新找到新方法破译。
维热纳尔方阵(维吉纳正方形)衍生版本
衍生版本是将密钥和原文转化为数字,如:密钥为shadowinthesky(没有人说过密钥只能为一个词),原文为Alphasix,pleasebombareaCA.Over.
将他们转化为数字便是
密钥:1908010415230914200805191125
原文:01121608011909241612050119050215130201180501030115220518
将密钥连续不断地写在原文上,如下:
19080104152309142008051911251908010415230914200805191125
01121608011909241612050119050215130201180501030115220518
再将上下两行相加(若相加后的数大于10,则忽略十位,在原位写下个位数字),如下:
密码数:10101702163208383610001020201113140616310415230910311633
若要读出密码,则将密码数减去密钥(若相减后的数小于0,则先加上10,再相减)即可,如下:
密码数:10101702163208383610001020201113140616310415230910311633
密钥:19080104152309142008051911251908010415230914200805191125
原文:01121608011909241612050119050215130201180501030115220518
再译成英语即可。
此方法可以适用任何表音文字(英、俄、日、法语等),而且他不仅传承了维吉纳正方形的所有优点(几乎不被破译,避开概率统计),而且它还有编写容易的特点(你一定不喜欢整天捧着个正方形表来编码吧)
维吉纳正方形中文版本
此版本是建立在中文标准电码和维吉纳衍生版本之上的。首先,将你要输入的中文(包括符号,标准电码本上有给符号编码)用某些可以将中文译成标准电码的网站(我在拓展阅读那里会放一个)译成电码,比如下面这句话:
东京,覆盖八分之八,不适合目测投弹
译成电码:
26390079997660105556036004330037036099760008662406784158326121211734
再按衍生版本中的方法加上密钥(数字串、英语换成数字、中文电码都可以),这里我们用“祖国光复”作为密钥:4371094803421788
将密钥连续不断地写在原文上,如下:
43710948034217884371094803421788437109480342178843710948034217884371
26390079997660105556036004330037036099760008662406784158326121211734
再将上下两行相加(若相加后的数大于10,则忽略十位,在原位写下个位数字),如下:
密码数:69000917921877989827020807751715463198140340730249494096350338095005
如果有兴趣的话,发送密文时把上面这串密码数翻译成中文发出去,只不过经常有很多字找不到
若要读出密码,则将密码数减去密钥(若相减后的数小于0,则先加上10,再相减)即可,如下:
密码数:69000917921877989827020807751715463198140340730249494096350338095005
密钥:43710948034217884371094803421788437109480342178843710948034217884371
原文:26390079997660105556036004330037036099760008662406784158326121211734
再反查为中文即可
有了这东西,发中文密件时会方便一点。而且中文电码是无理码(根据偏旁笔画制定的),想玩频率分析的要考虑一下。缺点是需要辅助工具(电码本或查询网站)
维吉纳正方形加解码Pascal程序
加码:
programCODE;
var
b,L,e,g,i,h:integer;//定义整数变量
a,c,d,f:string;//定义字符串变量
begin
repeat
c:='00';//方便后面插入数据,要不然可以改成别的写法
readln(a);//输入你要加密的文本,以单词为单位,输入一个单词打一次回车。字母打大写的
repeat
repeat
e:=random(60);//生成小于60的随机数关键词
untile>=10;//使关键词大于10
h:=ord(a[1]);//读取输入的单词的第一个字母并转换成ASCII,赋值
i:=length(a);//判定单词所剩长度,供后面的until判断一个单词是否结束
delete(a,1,1);//删去已读取字母
b:=h-e;//字母的ASCII减去关键词得密码数
L:=length(c);//判断字符串c的长度以供后面插入数据用
str(b,d);//将密码数转化为字符串
str(e,f);//将关键词转化为字符串
insert(f,d,3);//将关键词插入密码数后,如密码数d=11,关键词f=50,这条命令能够就能使字符串d从11变成1150
insert(d,c,L+1);//将新的d插入到c后面
untili=0;//这个单词的所有字母全部加码后跳出重复
L:=length(c);//读取这个单词的密码串的长度
delete(c,L-3,4);//由于这个程序有一个小问题,最后一个字母会被加密两次,也就是说一个7个字母的单词加密后会有8个字母,所以这边加一段以删去多余字母
delete(c,1,2);//删去开头的00
writeln(c);//在屏幕上输出密码串,请自己抄下来
untilh=96;//只有当你打出`(1左边那个)时程序才会结束,否则可以继续加密下一个单词
end.
解码:请与上面的加码程序配对使用
programDECODE;
var
a,b,c,d:string;
e,f,err,g,L:integer;
h:char;
begin
repeat
readln(a);//输入密码串(还是以一个单词的密码串为单位)
repeat
b:=copy(a,1,4);//提取密码串中前四个数字(即第一个字母的密码数和关键词)
c:=copy(b,1,2);//提取出密码数
d:=copy(b,3,2);//提取出关键词
val(c,e,err);//将密码数(这里还是字符串)转换成数字
val(d,f,err);//同上,转换的是关键词
g:=e+f;//得出原字母的ASCII
h:=chr(g);//将ASCII转化成相对应的字母
write(h);//输出这个字母
delete(a,1,4);//从密码串中删去前四个数字
L:=length(a);//判定剩余密码串长度
untilL=0;//剩余密码串长度为零时跳出重复,此时屏幕上会显示一个完整的单词,请抄下来
writeln;//换行,以便解码下一个单词
untilb='0000';//要结束解码的话请打0000(4个零)
end.
适用于拉丁字母文字,德语和法语等有标音的字母也可打出
栅栏加密法
栅栏加密法是一种比较简单快捷的加密方法。栅栏加密法就是把要被加密的文件按照一上一下的写法写出来,再把第二行的文字排列到第一行的后面。
相应的,破译方法就是把文字从中间分开,分成2行,然后插入。
栅栏加密法一般配合其他方法进行加密。
例:
加密information
分行
ifrain
nomto
合并
ifrainnomto
完成~
埃特巴什码
埃特巴什码是一个系统:最后一个字母代表第一个字母,倒数第二个字母代表第二个字母。
在罗马字母表中,它是这样出现的:
常文:abcdefghijklmnopqrstuvwxyz
密文:ZYXWVUTSRQPONM|LK|JIHGFEDCBA(。。不能连着打被河蟹了)
这种密码是由熊斐特博士发现的。熊斐特博士为库姆兰《死海古卷》的最初研究者之一,他在《圣经》历史研究方面最有名气的著作是《逾越节的阴谋》。他运用这种密码来研究别人利用其他方法不能破解的那些经文。这种密码被运用在公元1世纪的艾赛尼/萨多吉/拿撒勒教派的经文中,用以隐藏姓名。其实早在公元前500年,它就被抄经人用来写作《耶利米书》〔1〕耶利米是活动在公元前627-前586年间的犹太先知,圣经旧约书中有许多关于他的记载。在他离世前,犹太领土已被巴比伦人占领。〔1〕。它也是希伯来文所用的数种密码系统之一。
白金特、雷伊和林肯在《弥赛亚的遗产》中写道,熊斐特博士于《艾赛尼派的奥德赛》一书中描述他如何对圣殿骑士们崇拜的鲍芙默神痴迷,又如何用埃特巴什码分析这个词。令他惊奇的是,破译出的词“Sophia”为希腊语中的“智慧”。
在希伯来语中,“Baphomet”一词拼写如下——要记住,希伯来语句必须从右向左读:
〔taf〕〔mem〕〔vav〕〔pe〕〔bet〕
将埃特巴什码用于上述字母,熊斐特博士得到如下结果:
〔alef〕〔yud〕〔pe〕〔vav〕〔shin〕
即为用希伯来语从右向左书写的希腊词“Sophia”。
Sophia的词义不仅限于“智慧”。它还是一位女神的名字——这位女神照说应该是上帝的新娘。许多人相信,圣殿骑士们崇拜这位女神。〔1〕作者引用的是诺斯替学派的神话:“不可知解”的至尊上帝,“源化”出最早的几位亚神,最后一位就是索菲亚——“智慧”。她极求得到对上帝“神质”的“真知”——她名字第二意义的来源,而这种不合神性的欲望“孕生”了邪神,即创造宇宙的另一位“上帝”。诺斯替派将他等同于旧约中的上帝,来解释亚当夏娃堕降尘间和大洪水的事件。〔1〕
圣殿骑士们通晓埃特巴什码的事实,强烈表明有些来自一个拿撒勒教派的人置身于圣殿骑士中间。
丹?布朗关于英语是“最纯洁的”语言的观念可能是空想的,但并不是什么新理论。莱纳堡附近有个叫做莱纳浴泉的村庄,那里的神父亨利?布德写过一本名为《真实的凯尔特语》的书,也声称英语是一种神圣的语言,或许在“巴比伦塔”〔2〕用方舟拯救人类的诺亚,有一支后代在巴比鲁尼亚定居。他们在史纳尔平原建造高塔,试图攀登天界。恼怒的上帝分化了在此之前统一使用的语言,而交流不通引发的混乱和争执使人前功尽弃。〔2〕堕毁前就已得到使用。据说,这本书从字面上是不能理解的,它是用密码写成的,传达一个不同的信息。我们还应该记住,与其他的一些欧洲语言一样,英语的许多词汇源于拉丁。正如翠茜?特威曼在《达戈贝特复仇记》杂志中指出的那样,英语因为有26个字母,可以完美地用于埃特巴什码。其他欧洲语言所用的字母则不成偶数。此外,她始终认为郇山隐修会偏爱英语
针孔加密法
这种加密法诞生于近代。由于当时邮费很贵,但是寄送报纸则花费很少。于是人们便在报纸上用针在需要的字下面刺一个孔,等到寄到收信人手里,收信人再把刺有孔的文字依次排列,连成文章。
现在已经很少使用这种加密了。
猪笔加密法
它的英文名是pigpencipher,直译过来好搞笑。
在18世纪时,Freemasons为了使让其他的人看不懂他所写而发明的,猪笔密码属于替换密码流,但它不是用一个字母替代另一个字母,而是用一个符号来代替一个字母,把26个字母写进下四个表格中,然后加密时用这个字母所挨着表格的那部分来代替。
推理无限]美国侦探小说鼻祖凡迪恩关于如何写侦探小说的二十条规则
探案小说是一种智力游戏,更像是一种竞赛,作者必须公平的和读者玩这场比赛,他必须在运用悬念和推理的过程中,保持诚实并以智取胜。因此,探案小说有着非常明确的守则存在,虽然是不成文的规定,但约束力是非常明显的。每一个渴求成功的探案小说作者,都应该服从这些守则。
在此,特别列出这些理应称之为“戒律”的条文,是根据伟大的探案小说作家所遵行的原则,同时也来自所有城市作家内心的信念:
1、探案小说必须给读者与侦探同等的机会去推理,因此所有的线索要交待清楚。
2、除凶手对侦探布置的谜团之外,作者不应故意向读者设置诡计,诱导读者发生混乱。
3、探案小说不应加入恋爱故事,因为这容易使纯粹的斗智游戏,渗透不纯粹的情绪,以至引起推理的混乱。
4、侦探本人或警方搜查人员不可摇身一变变成凶手。因为这样做,有愚弄读者之嫌。
5、凶手必须从严格的逻辑推理过程中得出。不可偶然或巧合,以及无推理根据的自供。
6、探案小说需要设定侦探,有他来侦察案情及收集解谜的线索,并从而找出真凶。
7、探案小说绝对要有杀人事件,事件显露的疑点越多越好。因为杀人案件最容易引起读者兴趣。
8、探案小说的谜团必须以严格而自然的方式解决。不可使用占卜、魔术以及诸如读心术、降灵术、水晶透视术等超自然力的方法去解谜。
9、侦探只应有一人。过多侦探往往会分散读者的注意力,搅乱读者逻辑思考的脉络。
10、凶手在故事中,必须是主要人物之一。作者不要故意将凶手定为与故事毫无瓜葛的局外人或无足轻重的小角色。
11、不应设定那些极有可能被怀疑为凶手的人为凶手,如秘书、马夫、园丁、佣人、守门人、厨师等人。凶手在故事中,须具社会地位,最好是以常识判断不会犯案的任务。
12、不管被害者有多少人,凶手只应有一个。不过可以设定共犯,只是案件的全部责任必须由一个凶手承担。
13、不可以用秘密结社、黑社会犯罪组织等作为探案小说的主体。这类小说应属政治小说。
14、杀人方法须合理且具科学根据。如杜撰发现一种科学新元素,或是发明了一种新奇毒药并以此作为杀人方法,是对读者不公平的戏弄
15、案件自发生到侦察破案,须保持连贯性,以便读者参与推理。作者不可以故意隐藏重要的破案线索,那无异于欺骗作者。
16、不需要用很长的篇幅来描述与案件进展无关的事物。比如文学性的粉饰、完美的写景等。因为读者只想参与案件的智力游戏,其余皆无关紧要。
17、不可将凶手最终设为强盗、山贼、海盗等职业犯罪者。如此的设定,对于破案毫无斗智的魅力可言。
18、解决案件时,应避免未到最后关头,以凶手自杀和意外死亡的情节做结束。这样做是虎头蛇尾,纯粹是拿读者开玩笑。
19、探案小说中的犯罪动机必须是纯个人性的。如国际阴谋、政变、战争等等,属于间谍小说的范围不是探案小说范畴。
20、最后列举几项凡诗人真的探案作家,都应竭力避免的几种用烂了的手法:
A.犯罪现场留有烟蒂,籍此找出凶手。
B.假造受害者鬼魂显灵,以致使嫌疑犯自白。
C.故意设下假造指纹在犯罪现场。
D.找替身制造不在场证明。
E.犯罪现场的狗没叫,以此判定凶手和被害者是熟人。
F.揭开谜底时,才告知读者凶手是双胞胎之一
(https://www.mangg.com/id38313/2024477.html)
1秒记住追书网网:www.mangg.com。手机版阅读网址:m.mangg.com