词条 | 密码 |
释义 | 密码是一种用来混淆的技术,它希望将正常的(可识别的)信息转变为无法识别的信息。当然,对一小部分人来说,这种无法识别的信息是可以再加工并恢复的。密码在中文里是“口令”(password)的通称。登录网站、电子邮箱和银行取款时输入的“密码”其实严格来讲应该仅被称作“口令”,因为它不是本来意义上的“加密代码”,但是也可以称为秘密的号码。 加密方法(RSA算法 ECC加密法 四方密码 替换加密法 换位加密法 回转轮加密法 多码加密法 夹带法 三分密码 仿射密码 波雷费密码 RC5 ADFGVX密码 希尔密码 维热纳尔方阵 维热纳尔方阵(维吉纳正方形)衍生版本 维吉纳正方形中文版本 维吉纳正方形加解码Pascal程序 栅栏加密法 埃特巴什码 针孔加密法 猪笔加密法) 释义词目:密码 拼音:mì mǎ 基本解释[cipher;cryptogram;secret code] 主要限定于个别人理解(如一则电文)的符号系统。如密码电报、密码式打字机。 详细解释1. 特别编制的秘密电码。在约定的范围内使用,以区别于“明码”。《二十年目睹之怪现状》第九二回:“便亲自起了个一百多字的电稿,用他自己私家的密码译了出来,送到电局,打给他胞弟 惠禄 。”郭沫若《洪波曲》第十五章五:“不过我还可以保证,他们一定会把密码电报大大地改编过一道。” 2. 引申指隐密的信息。 王蒙《春之声》:“春天的旋律,生活的密码,这是非常珍贵的。” 密码由来公元前405年,雅典和斯巴达之间的伯罗奔尼撒战争已进入尾声。斯巴达军队逐渐占据了优势地位,准备对雅典发动最后一击。这时,原来站在斯巴达一边的波斯帝国突然改变态度,停止了对斯巴达的援助,意图是使雅典和斯巴达在持续的战争中两败俱伤,以便从中渔利。在这种情况下,斯巴达急需摸清波斯帝国的具体行动计划,以便采取新的战略方针。正在这时,斯巴达军队捕获了一名从波斯帝国回雅典送信的雅典信使。斯巴达士兵仔细搜查这名信使,可搜查了好大一阵,除了从他身上搜出一条布满杂乱无章的希腊字母的普通腰带外,别无他获。情报究竟藏在什么地方呢?斯巴达军队统帅莱桑德把注意力集中到了那条腰带上,情报一定就在那些杂乱的字母之中。他反复琢磨研究这些天书似的文字,把腰带上的字母用各种方法重新排列组合,怎么也解不出来。最后,莱桑德失去了信心,他一边摆弄着那条腰带,一边思考着弄到情报的其他途径。当他无意中把腰带呈螺旋形缠绕在手中的剑鞘上时,奇迹出现了。原来腰带上那些杂乱无章的字母,竟组成了一段文字。这便是雅典间谍送回的一份情报,它告诉雅典,波斯军队准备在斯巴达军队发起最后攻击时,突然对斯巴达军队进行袭击。斯巴达军队根据这份情报马上改变了作战计划,先以迅雷不及掩耳之势攻击毫无防备的波斯军队,并一举将它击溃,解除了后顾之忧。随后,斯巴达军队回师征伐雅典,终于取得了战争的最后胜利。 雅典间谍送回的腰带情报,就是世界上最早的密码情报,具体运用方法是,通信双方首先约定密码解读规则,然后通信—方将腰带(或羊皮等其他东西)缠绕在约定长度和粗细的木棍上书写。收信—方接到后,如不把腰带缠绕在同样长度和粗细的木棍上,就只能看到一些毫无规则的字母。后来,这种密码通信方式在希腊广为流传。现代的密码电报,据说就是受了它的启发而发明的。 “密码”一词对人们来说并不陌生,人们可以举出许多有关使用密码的例子。如保密通信设备中使用“密码”,个人在银行取款使用“密码”,在计算机登录和屏幕保护中使用“密码”,开启保险箱使用“密码”,儿童玩电子游戏中使用“密码”等等。这里指的是一种特定的暗号或口令字。现代的密码已经比古代有了长远的发展,并逐渐形成一门科学,吸引着越来越多的人们为之奋斗。 组成密码是按特定法则编成,用以对通信双方的信息进行明密变换的符号。换而言之,密码是隐蔽了真实内容的符号序列。就是把用公开的、标准的信息编码表示的信息通过一种变换手段,将其变为除通信双方以外其他人所不能读懂的信息编码,这种独特的信息编码就是密码。 密码是一门科学,有着悠久的历史。密码在古代就被用于传递秘密消息。在近代和现代战争中,传递情报和指挥战争均离不开密码,外交斗争中也离不开密码。密码一般用于信息通信传输过程中的保密和存储中的保密。随着计算机和信息技术的发展,密码技术的发展也非常迅速,应用领域不断扩展。密码除了用于信息加密外,也用于数据信息签名和安全认证。这样,密码的应用也不再只局限于为军事、外交斗争服务,它也广泛应用在社会和经济活动中。当今世界已经出现了密码应用的社会化和个人化趋势。例如:可以将密码技术应用在电子商务中,对网上交易双方的身份和商业信用进行识别,防止网上电子商务中的“黑客”和欺诈行为;应用于增值税发票中,可以防伪、防篡改,杜绝了各种利用增值税发票偷、漏、逃、骗国家税收的行为,并大大方便了税务稽查;应用于银行支票鉴别中,可以大大降低利用假支票进行金融诈骗的金融犯罪行为;应用于个人移动通信中,大大增强了通信信息的保密性等等。 据路透社4日报道,英国安全局近日解密的一批文件,首次向世人展示了英国情报部门的工作成果。破译“裙中密码”就是其中著名的一起。 密码的应用裙中藏玄机二战期间,纳粹特工在探测盟军机密军事情报后,将这些情报传递给他们的负责人,从而决定作战方针。一次,盟军的检查员截获了一张设计图纸。这张设计草图上是3位年轻的模特,她们穿着时尚的服装。 表面上看起来,设计草图很寻常,然而这张看似“清白”的图纸没能瞒过英国反间谍专家们的眼睛。英国安全局的官员们识破了纳粹特工的诡计,命令密码破译员和检查员迅速破译这些密码。 大批敌方援军随时可能到来。”最终从这张设计图纸上密码破译员们读出了这样的信息。 原来纳粹特工利用莫尔斯电码的点和长横等符号作为密码,把这些密码做成装饰图案,藏在图上诸如模特的长裙、外套和帽子等图案中。 手段多种多样解密文件还展示了纳粹特工其他巧妙的传递情报的方法。为了把情报伪装得“天衣无缝”从而顺利寄出,纳粹特工可谓是殚精竭虑。 隐形的墨水、针刺的小孔以及字母的凹进都是他们的惯用伎俩。纳粹特工利用这些暗示告知军队活动、轰炸式袭击和军舰建造的具体细节。 他们还会把密码藏在活页乐谱、教你下象棋的描述以及速记符号里面。这些带密码的情报被伪装成普通书信。 有时他们把明信片加厚一层,在夹层中塞满极其薄的纸片和文书。种种稀奇古怪的手段让人防不胜防。 老马也失蹄纳粹特工还利用字母表“作弊”。看起来只是一份普通的信件,但你把每个单词的第一个字母拼起来,就是一封“机密情报”。 两名德国特务1942年被捕,他们向英国情报部门坦白了这种藏匿密码的方法。然而,英国情报部门两次都与这样的机密文件失之交臂,让情报流传了出去。原因是,他们认为不再会有这种藏匿情报的方法,所以并未把那两封信当成机密文件处理。 这种密码藏在一封“休伯特”写给“珍妮特”姑妈的信中。信中暗藏的情报是“14架波音堡垒式轰炸机昨日抵达伦敦。飞行员将空袭基尔(德国城市)”。 英国战时情报侦察负责人大卫·皮特里曾尴尬地承认这两次失败“有点烦人”。 但随着战争的发展,反间谍官员们也发明了种种探测可疑信件的方法! 证据确凿的纳粹特工信件通常包括: 1.文字散漫而没有重点,信寄往中立国而信封上贴着大量的邮票。 2.书信中有艰深难懂又少用的短语是暗藏密码的标志之一。 3.信件中人员的罗列和大段关于桥牌的内容也会引起怀疑。 有关密码的作品1.倪匡卫斯理科幻小说——密码 2.高秀敏、赵世林小品《密码》 3.方力申《密码》歌曲 4.话剧 上海大剧院小剧场自2005年5月开始上演话剧后,又一部商业话剧《密码》于10月4日起在此亮相。而这一次,该剧的主创是一群平均年龄在20多岁的在校学生。虽然年轻,但他们却有很多初生牛犊不怕虎的想法,还在上戏导演系就读的导演王欢表示,他们要把《密码》打造成一部原创的“电影话剧”:“我们会动用很多DV和投影,使舞台影像化,观众可以从很多角度看这个故事,有现实层面的,也有画面的。” 《密码》是根据2004年的畅销小说《克隆天才》改编而成,讲述了一个17年来生活在封闭世界中的天才,虽然在学识上成就惊人,思想却完全被父亲控制。踏上社会后,爱上一个女孩,又遭遇了一个性格和自己完全相反的“兄弟”。最后,天才惊讶地发现自己竟是父亲安排了17年的“克隆”科学的阴谋。 在剧中担任主演的,都是来自上戏和中戏的学生。据介绍,这群年轻人已经前后修改剧本达18次,封闭排练也有两个月。除了提出“电影话剧”的想法,他们还在舞台上设计了一个巨大的符号式道具,所有人物都将在其中完成表演。 5.《达芬奇密码》 《达·芬奇密码》 是由美国作家丹·布朗写作并于2003年3月18日由兰登书屋出版。这本书以七百五十万本打破美国小说销售记录,目前全球累积销售量已突破4000万册成为有史以来最卖座的小说。集合了侦探,惊悚和阴谋论多种风格,这本书激起了大众对某些理论的兴趣:有关圣杯的传说、抹大拉的玛丽亚(Mary Magdalene)在基督教历史中的角色等通常为基督徒视为异端的理论。它是布朗2000年小说《天使与魔鬼》(Angels and Demons)的续篇。 加密方法RSA算法RSA算法是第一个能同时用于加密和数字签名的算法,也易于理解和操作。RSA算法是一种非对称密码算法,所谓非对称,就是指该算法需要一对密钥,使用其中一个加密,则需要用另一个才能解密。 RSA的算法涉及三个参数,n、e1.e2。 其中,n是两个大质数p、q的积,n的二进制表示时所占用的位数,就是所谓的密钥长度。 e1和e2是一对相关的值,e1可以任意取,但要求e1与(p-1)*(q-1)互质(互质:两个正整数只有公约数1时,他们的关系叫互质);再选择e2,要求(e2*e1)mod((p-1)*(q-1))=1。 (n及e1),(n及e2)就是密钥对。 RSA加解密的算法完全相同,设A为明文,B为密文,则:A=B^e1 mod n;B=A^e2 mod n; e1和e2可以互换使用,即: A=B^e2 mod n;B=A^e1 mod n ECC加密法ECC算法也是一个能同时用于加密和数字签名的算法,也易于理解和操作。同RSA算法是一样是非对称密码算法使用其中一个加密,用另一个才能解密。 公开密钥算法总是要基于一个数学上的难题。比如RSA 依据的是:给定两个素数p、q 很容易相乘得到n,而对n进行因式分解却相对困难。那椭圆曲线上有什么难题呢? 考虑如下等式 : K=kG [其中 K,G为Ep(a,b)上的点,k为小于n(n是点G的阶)的整数] 不难发现,给定k和G,根据加法法则,计算K很容易;但给定K和G,求k就相对困难了。 这就是椭圆曲线加密算法采用的难题。我们把点G称为基点(base point),k(k<n,n为基点G的阶)称为私有密钥(privte key),K称为公开密钥(public key)。 现在我们描述一个利用椭圆曲线进行加密通信的过程: 1、用户A选定一条椭圆曲线Ep(a,b),并取椭圆曲线上一点,作为基点G。 2、用户A选择一个私有密钥k,并生成公开密钥K=kG。 3、用户A将Ep(a,b)和点K,G传给用户B。 4、用户B接到信息后 ,将待传输的明文编码到Ep(a,b)上一点M(编码方法很多,这里不作讨论),并产生一个随机整数r(r<n)。 5、用户B计算点C1=M+rK;C2=rG。 6、用户B将C1、C2传给用户A。 7、用户A接到信息后,计算C1-kC2,结果就是点M。因为 C1-kC2=M+rK-k(rG)=M+rK-r(kG)=M 再对点M进行解码就可以得到明文。 ECC的功能比RSA强。而令人感兴趣的是点和点的过程,这也是其功能之来源。 四方密码四方密码用4个5×5的矩阵来加密。每个矩阵都有25个字母(通常会取消Q或将I,J视作同一样,或改进为6×6的矩阵,加入10个数字)。 首先选择两个英文字作密匙,例如example和keyword。对于每一个密匙,将重复出现的字母去除,即example要转成exampl,然后将每个字母顺序放入矩阵,再将余下的字母顺序放入矩阵,便得出加密矩阵。 将这两个加密矩阵放在右上角和左下角,余下的两个角放a到z顺序的矩阵: a b c d e E X A M P f g h i j L B C D F k l m n o G H I J K p r s t u N O R S T v w x y z U V W Y Z K E Y WO a b c d e R D A BC f g h i j F G H I J k l m n o L M N P S p r s t u T U V X Z v w x y z 加密的步骤: 两个字母一组地分开讯息:(例如hello world变成he ll ow or ld) 找出第一个字母在左上角矩阵的位置 a b c d e E X A M P f g h i j L B C D F k l m n o G H I J K p r s t u N O R S T v w x y z U V W Y Z K E Y W O a b c d e R D A B C f g h i j F G H I J k l m n o L M N P S p r s t u T U V X Z v w x y z 同样道理,找第二个字母在右下角矩阵的位置: a b c d e E X A M P f g h i j L B C D F k l m n o G H I J K p r s t u N O R S T v w x y z U V W Y Z K E Y W O a b c d e R D A B C f g h i j F G H I J k l m n o L M N P S p r s t u T U V X Z v w x y z 找右上角矩阵中,和第一个字母同行,第二个字母同列的字母: a b c d e E X A M P f g h i j L B C D F k l m n o G H I J K p r s t u NO R S T v w x y z U V W Y Z K E Y W O a b c d e R D A B C f g h i j F G H I J k l m n o L M N P S p r s t u T U V X Z v w x y z 找左下角矩阵中,和第一个字母同列,第二个字母同行的字母: a b c d e E X A M P f g h i j L B C D F k l m n o G H I J K p r s t u N O R S T v w x y z U V W Y Z K E Y W O a b c d e R D A B C f g h i j F G H I J k l m n o L M N P S p r s t u T U V X Z v w x y z 这两个字母就是加密过的讯息。 he lp me ob iw an ke no bi的加密结果: FY GM KY HO BX MF KK KI MD [编辑]二方密码 二方密码(en:Two-square_cipher)比四方密码用更少的矩阵。 得出加密矩阵的方法和四方密码一样。 例如用「example」和「keyword」作密匙,加密lp。首先找出第一个字母(L)在上方矩阵的位置,再找出第二个字母(D)在下方矩阵的位置: E X A M P L B C D F G H I J K N O R S T U V W Y Z K E Y W O R D A B C F G H I J L M N P S T U V X Z 在上方矩阵找第一个字母同行,第二个字母同列的字母;在下方矩阵找第一个字母同列,第二个字母同行的字母,那两个字母就是加密的结果: E X A M P L B C D F G H I J K N O R S T U V W Y Z K E Y W O R D A B C F G H I J L M N P S T U V X Z help me的加密结果: he lp me HE DL XW 这种加密法的弱点是若两个字同列,便采用原来的字母,例如he便加密作HE。约有二成的内容都因此而暴露。 替换加密法用一个字符替换另一个字符的加密方法。 换位加密法重新排列明文中的字母位置的加密法。 回转轮加密法一种多码加密法,它是用多个回转轮,每个回转轮实现单码加密。这些回转轮可以组合在一起,在每个字母加密后产生一种新的替换模式。 多码加密法一种加密法,其替换形式是:可以用多个字母来替换明文中的一个字母。 夹带法通过隐藏消息的存在来隐藏消息的方法。 三分密码首先随意制造一个3个3×3的Polybius方格替代密码,包括26个英文字母和一个符号。然后写出要加密的讯息的三维坐标。讯息和坐标四个一列排起,再顺序取横行的数字,三个一组分开,将这三个数字当成坐标,找出对应的字母,便得到密文。 仿射密码仿射密码是一种替换密码。它是一个字母对一个字母的。 它的加密函数是e(x)=ax+b(mod m),其中 a和m互质。 m是字母的数目。 译码函数是d(x)=a^(x-b)(mod m),其中a^是a在M群的乘法逆元。 波雷费密码1选取一个英文字作密匙。除去重复出现的字母。将密匙的字母逐个逐个加入5×5的矩阵内,剩下的空间将未加入的英文字母依a-z的顺序加入。(将Q去除,或将I和J视作同一字。) 2将要加密的讯息分成两个一组。若组内的字母相同,将X(或Q)加到该组的第一个字母后,重新分组。若剩下一个字,也加入X字。 3在每组中,找出两个字母在矩阵中的地方。 若两个字母不同行也不同列,在矩阵中找出另外两个字母,使这四个字母成为一个长方形的四个角。 若两个字母同行,取这两个字母右方的字母(若字母在最右方则取最左方的字母)。 若两个字母同列,取这两个字母下方的字母(若字母在最下方则取最上方的字母)。 新找到的两个字母就是原本的两个字母加密的结果。 RC51.创建密钥组,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=0xb7e1 Q=0x9e37 对于32位字和64位分组的RC5,P=0xb7e15163 Q=0x9e3779b9 对于64位字和128位分组,P=0xb7151628aed2a6b Q=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)的。 输出的密文是在寄存器A和B中的内容 3.解密处理,解密也是很容易的,把密文分组划分为两个字:A和B(存储方式和加密一样),这里符合>>>是循环右移,减运算也是模 (本应模 ,本文中令w=32)的。 ADFGVX密码假设我们需要发送明文讯息 "Attack at once", 用一套秘密混杂的字母表填满 Polybius 方格,像是这样: A D F G X A b t a l p D d h o z k F q f v s n G g j c u x X m r e w y i 和 j 视为同个字,使字母数量符合 5 × 5 格。之所以选择这五个字母,是因为它们译成摩斯密码时不容易混淆,可以降低传输错误的机率。使用这个方格,找出明文字母在这个方格的位置,再以那个字母所在的栏名称和列名称代替这个字母。可将该讯息可以转换成处理过的分解形式。 A T T A C K A T O N C E AF AD AD AF GF DX AF AD DF FX GF XF 下一步,利用一个移位钥匙加密。假设钥匙字是「CARGO」,将之写在新格子的第一列。再将上一阶段的密码文一列一列写进新方格里。 C A R G O _________ A F A D A D A F G F D X A F A D D F F X G F X F X 最后,按照钥匙字字母顺序「ACGOR」依次抄下该字下整行讯息,形成新密文。如下: FAXDF ADDDG DGFFF AFAXX AFAFX 在实际应用中,移位钥匙字通常有两打字符那么长,且分解钥匙和移位钥匙都是每天更换的。 ADFGVX 在 1918年 6月,再加入一个字 V 扩充。变成以 6 × 6 格共 36 个字符加密。这使得所有英文字母(不再将 I 和 J 视为同一个字)以及数字 0 到 9 都可混合使用。这次增改是因为以原来的加密法发送含有大量数字的简短信息有问题。 希尔密码加密 例如:密钥矩阵 1 3 0 2 明文:HI THERE 去空格,2个字母一组,根据字母表顺序换成矩阵数值如下,末尾的E为填充字元: HI TH ER EE 8 20 5 5 9 8 18 5 HI 经过矩阵运算转换为 IS,具体算法参考下面的说明: |1 3| 8 e1*8+3*9=35 MOD26=9 =I |0 2| 9 e0*8+2*9=18 MOD26=18=S 用同样的方法把“HI THERE”转换为密文“IS RPGJTJ”,注意明文中的两个E分别变为密文中的G和T。 解密 解密时,必须先算出密钥的逆矩阵,然后再根据加密的过程做逆运算。 逆矩阵算法公式: |A B| = 1/(AD-BC) * | D -B| |C D| |-C A| 例如密钥矩阵= |1 7| |0 3| AD-BC=1*3-0*7=3 3*X=1 mod26 所以 X=9 因此 |1 7| 的逆矩阵为: 9 * |3 -7| |0 3| |0 1| 假设密文为“FOAOESWO” FO AO ES WO 6 1 5 23 15 15 19 15 9* |3 -7| | 6| = 9*(3*6-7*15)=-783 mod26 = 23=W |0 1| |15| = 9*(0*6+1*15)= 135 mod26 = 5 =E 所以密文“FOAOESWO”的明文为“WEREDONE” 维热纳尔方阵A B C D E F G H I J K L M N O P Q R S T U V W X Y Z B C D E F G H I J K L M N O P Q R S T U V W X Y Z A C D E F G H I J K L M N O P Q R S T U V W X Y Z A B D E F G H I J K L M N O P Q R S T U V W X Y Z A B C E F G H I J K L M N O P Q R S T U V W X Y Z A B C D F G H I J K L M N O P Q R S T U V W X Y Z A B C D E G H I J K L M N O P Q R S T U V W X Y Z A B C D E F H I J K L M N O P Q R S T U V W X Y Z A B C D E F G I J K L M N O P Q R S T U V W X Y Z A B C D E F G H J K L M N O P Q R S T U V W X Y Z A B C D E F G H I K L M N O P Q R S T U V W X Y Z A B C D E F G H I J L M N O P Q R S T U V W X Y Z A B C D E F G H I J K M N O P Q R S T U V W X Y Z A B C D E F G H I J K L N O P Q R S T U V W X Y Z A B C D E F G H I J K L M O P Q R S T U V W X Y Z A B C D E F G H I J K L M N P Q R S T U V W X Y Z A B C D E F G H I J K L M N O Q R S T U V W X Y Z A B C D E F G H I J K L M N O P R S T U V W X Y Z A B C D E F G H I J K L M N O P Q S T U V W X Y Z A B C D E F G H I J K L M N O P Q R T U V W X Y Z A B C D E F G H I J K L M N O P Q R S U V W X Y Z A B C D E F G H I J K L M N O P Q R S T V W X Y Z A B C D E F G H I J K L M N O P Q R S T U W X Y Z A B C D E F G H I J K L M N O P Q R S T U V X Y Z A B C D E F G H I J K L M N O P Q R S T U V W Y Z A B C D E F G H I J K L M N O P Q R S T U V W X Z A B C D E F G H I J K L M N O P Q R S T U V W X Y 著名的维热纳尔方阵由密码学家维热纳尔编制,大体与凯撒加密法类似。即二人相约好一个密钥(单词 ),然后把加密后内容给对方,之后对方即可按密码表译出明文。 密钥一般为一个单词,加密时依次按照密钥的每个字母对照明码行加密。 例如:我的密钥是who,要加密的内容是I love you,则加密后就是E SCRL MKB.即加密I,就从密钥第一个字母打头的w那行找明码行的I对应的字母,即E。加密l,就从密钥第2个字母打头的h那行找明码l对应的字母,S。加密o,从密钥第三个字母O打头的那行找到明码行中o对应的字母,C。加密v,就又从密钥第一个字母w打头的那行找到明码行中v对应的字母,R。 依此类推。 所以由维热纳尔方阵加密的密码,在没有密钥的情况下给破译带来了不小的困难。 维热纳尔方阵很完美的避开了概率算法(按每个语种中每个字母出现的概率推算。例如英语中最多的是e),使当时的密码破译师必须重新找到新方法破译。 维热纳尔方阵(维吉纳正方形)衍生版本衍生版本是将密钥和原文转化为数字,如:密钥为shadow in the sky(没有人说过密钥只能为一个词),原文为Alpha six,please bomb area CA.Over. 将他们转化为数字便是 密钥:1908010415230914200805191125 原文:01121608011909241612050119050215130201180501030115220518 将密钥连续不断地写在原文上,如下: 19080104152309142008051911251908010415230914200805191125 01121608011909241612050119050215130201180501030115220518 再将上下两行相加(若相加后的数大于10,则忽略十位,在原位写下个位数字),如下: 密码数:10101702163208383610001020201113140616310415230910311633 若要读出密码,则将密码数减去密钥(若相减后的数小于0,则先加上10,再相减)即可,如下: 密码数:10101702163208383610001020201113140616310415230910311633 密钥:19080104152309142008051911251908010415230914200805191125 原文:01121608011909241612050119050215130201180501030115220518 再译成英语即可。 此方法可以适用任何表音文字(英、俄、日、法语等),而且他不仅传承了维吉纳正方形的所有优点(几乎不被破译,避开概率统计),而且它还有编写容易的特点(你一定不喜欢整天捧着个正方形表来编码吧) 维吉纳正方形中文版本此版本是建立在中文标准电码和维吉纳衍生版本之上的。首先,将你要输入的中文(包括符号,标准电码本上有给符号编码)用某些可以将中文译成标准电码的网站(我在拓展阅读那里会放一个)译成电码,比如下面这句话: 东京,覆盖八分之八,不适合目测投弹 译成电码: 26390079997660105556036004330037036099760008662406784158326121211734 再按衍生版本中的方法加上密钥(数字串、英语换成数字、中文电码都可以),这里我们用“祖国光复”作为密钥:4371094803421788 将密钥连续不断地写在原文上,如下: 43710948034217884371094803421788437109480342178843710948034217884371 26390079997660105556036004330037036099760008662406784158326121211734 再将上下两行相加(若相加后的数大于10,则忽略十位,在原位写下个位数字),如下: 密码数:69000917921877989827020807751715463198140340730249494096350338095005 如果有兴趣的话,发送密文时把上面这串密码数翻译成中文发出去,只不过经常有很多字找不到 若要读出密码,则将密码数减去密钥(若相减后的数小于0,则先加上10,再相减)即可,如下: 密码数:69000917921877989827020807751715463198140340730249494096350338095005 密钥: 43710948034217884371094803421788437109480342178843710948034217884371 原文: 26390079997660105556036004330037036099760008662406784158326121211734 再反查为中文即可 有了这东西,发中文密件时会方便一点。而且中文电码是无理码(根据偏旁笔画制定的),想玩频率分析的要考虑一下。缺点是需要辅助工具(电码本或查询网站) 维吉纳正方形加解码Pascal程序加码: program CODE; 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的随机数关键词 until e>=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后面 until i=0; //这个单词的所有字母全部加码后跳出重复 L:=length(c); //读取这个单词的密码串的长度 delete(c,L-3,4); //由于这个程序有一个小问题,最后一个字母会被加密两次,也就是说一个7个字母的单词加密后会有8个字母,所以这边加一段以删去多余字母 delete(c,1,2); //删去开头的00 writeln(c); //在屏幕上输出密码串,请自己抄下来 until h=96; //只有当你打出`(1左边那个)时程序才会结束,否则可以继续加密下一个单词 end. 解码:请与上面的加码程序配对使用 program DECODE; 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); //判定剩余密码串长度 until L=0; //剩余密码串长度为零时跳出重复,此时屏幕上会显示一个完整的单词,请抄下来 writeln; //换行,以便解码下一个单词 until b='0000'; //要结束解码的话请打0000(4个零) end. 适用于拉丁字母文字,德语和法语等有标音的字母也可打出 flyfire2002原创,请勿抄袭 栅栏加密法栅栏加密法是一种比较简单快捷的加密方法。栅栏加密法就是把要被加密的文件按照一上一下的写法写出来,再把第二行的文字排列到第一行的后面。 相应的,破译方法就是把文字从中间分开,分成2行,然后插入。 栅栏加密法一般配合其他方法进行加密。 例: 加密information 分行 i f r a i n n o m t o 合并 ifrainnomto 完成~ 埃特巴什码埃特巴什码是一个系统:最后一个字母代表第一个字母,倒数第二个字母代表第二个字母。 在罗马字母表中,它是这样出现的: 常文:a b c d e f g h i j k l m n o p q r s t u v w x y z 密文:Z Y X W V U T S R Q P O N M L K J I H G F E D C B A 这种密码是由熊斐特博士发现的。熊斐特博士为库姆兰《死海古卷》的最初研究者之一,他在《圣经》历史研究方面最有名气的著作是《逾越节的阴谋》。他运用这种密码来研究别人利用其他方法不能破解的那些经文。这种密码被运用在公元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个字母,可以完美地用于埃特巴什码。其他欧洲语言所用的字母则不成偶数。此外,她始终认为郇山隐修会偏爱英语 针孔加密法这种加密法诞生于近代。由于当时邮费很贵,但是寄送报纸则花费很少。于是人们便在报纸上用针在需要的字下面刺一个孔,等到寄到收信人手里,收信人再把刺有孔的文字依次排列,连成文章。 现在已经很少使用这种加密了。 猪笔加密法它的英文名是pigpen cipher,直译过来好搞笑。 在18世纪时,Freemasons为了使让其他的人看不懂他所写而发明的,猪笔密码属于替换密码流,但它不是用一个字母替代另一个字母,而是用一个符号来代替一个字母, 把26个字母写进下四个表格中,然后加密时用这个字母所挨着表格的那部分来代替。 加密方法概况DES(Data Encryption Standard):数据加密标准,速度较快,适用于加密大量数据的场合(块加密法); 3DES(Triple DES):是基于DES,对一块数据用三个不同的密钥进行三次加密,强度更高(块加密法); RC2和 RC4:用变长密钥对大量数据进行加密,比 DES 快(流加密法); IDEA(International Data Encryption Algorithm)国际数据加密算法,使用 128 位密钥提供非常强的安全性(块加密法); RSA:由 RSA 公司发明,是一个支持变长密钥的公共密钥算法,需要加密的文件块的长度也是可变的(公匙加密法); DSA(Digital Signature Algorithm):数字签名算法,是一种标准的 DSS(数字签名标准); AES(Advanced Encryption Standard):高级加密标准,是下一代的加密算法标准,速度快,安全级别高,目前 AES 标准的一个实现是 Rijndael 算法(块加密法); BLOWFISH,它使用变长的密钥,长度可达448位,运行速度很快,而经过改进后就是TWOFISH,AES的候选者之一(块加密法); 其它算法,如XOR、CA (流加密法)、MD5、SHA1、(流加密法)ElGamal、Diffie-Hellman、新型椭圆曲线算法ECC(数字签名、公匙加密法)等。 密码现在运用于电脑里的文件保护,防止外人偷看你的东西。 电影《密码》简介名称:密码 外文名称:Secretul cifrului 导演:L·布拉图 演员: 乌里亚:E·彼得路波(郑万玉) 杜米特里乌大尉:G·马伊乾(苑小君) 沃伊涅斯库将军:A·拉杜列斯库(车轩) 台雷布:M·麦列乌查(卢志平) 兹梅乌大尉:C·兹莫诺姆(王鸿涛) 卡捷丽娜:A·克乌阿露(李铧) 巴尔布:S·列斯库(吴永庆) 道洛别兹:G·麦路查(徐丹) 编剧:D·卡拉别兹 T·康斯坦丁 摄影:K·楚包塔路 音乐:C·萨尔克诺夫 出品:罗马尼亚布加勒斯特电影制片厂 1959 地区:罗马尼亚 发行时间:1960年 片长:80min 颜色:黑白 类型:战争/惊悚 译制:长春电影制片厂1960年 翻译:傅佩珩 张杲 导演:李景超 录音:石玉琨 配音:郑万玉、苑小君、车轩、卢志平、王鸿涛、李铧等 剧情介绍: 1944年秋天,罗马尼亚莫拉多瓦师团遵照乌克兰第二战线的作战计划,追击正在溃退希特勒匪帮,敌人为了窃取我军作战计划,派遣特务打进了我军内部,进行多方面的败坏活动,企图得到军事密码,并炸毁密码发报车…… 密码强度密码强度是对您密码安全性给出的评级,供您参考。一般来说,密码强度越高,密码就越安全。 为了帐号的安全性,我们强烈建议您设置高强度的密码。 高强度的密码应该是: 包括大小写字母、数字和符号,且长度不宜过短,最好不少于10位。 不包含姓名、生日、手机号码等易被猜出的信息。 此外,建议您定期更换密码,不要轻易把您的帐号或者密码透露给别人。 小说《密码》阿加莎·克里斯蒂1941作品,主人公为汤米和塔彭丝夫妇。又译作《桑苏西来客》。 |
随便看 |
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。