休闲古今吧 关注:2,102贴子:90,815

回复:解密‖收集各式各样的密码!(欢迎来分享)

取消只看楼主收藏回复

我们看到第4步的计算量相当大,如果原文有5个字母,用手算的话要算25个,如果原文有10个字母,就要算10×10=100次之多的四则运算了……
如果用编程来实现的话还算简单,可是对于我们手算的来说工作量太大了……


19楼2012-12-27 00:55
回复
    【变种加密】
    为此我们需求一种易于操作的变种方法。
    例如我们加密这样一句话:Mr.Hill is climbing a hill.(希尔先生爬小山)
    这一小短句有21个字母,用常规的方法的话,我们需要21×21,也就是441个字长的密钥……这显然是手算的噩梦……


    20楼2012-12-27 00:56
    回复
      这时我们可以利用希尔密码求余的思想建立一种简易的加密方法。
      我们先选择任意的一个整数(不能与26有倍数关系,0、1、2、13等都不可以),例如此处我们选择数字5。


      21楼2012-12-27 00:56
      回复
        我们先做基本的整理,此时由于不做矩阵的运算了,我们就没有必要从0开始了。
        原文:mrhillisclimbingahill(我习惯把原文统一为小写,把密文统一为大写,这样比较容易区分)
        密钥:5
        原文转数字:13 18 8 9 12 12 9 19 3 12 9 13 2 9 14 7 1 8 9 12 12
        数字乘以密钥求余:13 12 14 19 08 08 19 17 15 08 19 13 10 19 18 09 05 14 19 08 08
        求得密文:MLNSHHSQOHSMJSRIENSHH
        利用这种方法加密的好处是利用密钥数字将原有的序列发散出去,利用求余收敛,但是究其根本还是替换密码。


        22楼2012-12-27 00:56
        回复
          解密的时候,已知密钥是5,密文为:MLNSHHSQOHSMJSRIENSHH
          先将密文转换为数字:
          13 12 14 19 08 08 19 17 15 08 19 13 10 19 18 09 05 14 19 08 08
          然后把其中所有不能被5整除的数都加上26,看能否被5整除,不能的话继续加26,直到能被5整除为止:
          65 90 40 45 60 60 45 95 15 60 45 65 10 45 70 35 05 40 45 60 60
          所有数除以5,得出来的就是原文的字母表数字


          23楼2012-12-27 00:56
          回复
            这些都是有益的东西!感兴趣的朋友可以认真看看(LZ转载不容易。原作者们V5


            25楼2012-12-27 00:59
            回复
              重复:
              这些都是有益的东西!感兴趣的朋友可以认真看看(LZ转载不容易。原作者们V5


              26楼2012-12-27 00:59
              回复
                键盘密码


                27楼2012-12-27 01:00
                回复
                  相关知识、概述】
                  名称:键盘密码
                  密码背景:凡是利用键盘的特性而制作的密码,我们都可以称之为键盘密码。[注1]
                  既然是利用键盘加密的方法,肯定是有了键盘之后才出现的产物,可见其历史并不久远。常见的分类有计算机的键盘和手机的键盘两种,而这两种又根据具体的方法可以衍生出层出不穷的加密方法。由于键盘在生活中十分常用,所以使用这种形式加密的频率十分之高。天使贴的其中两层都是用到了键盘密码哦~学好这种密码的重要性可见一斑。


                  28楼2012-12-27 01:00
                  回复
                    [注1]一些诸如利用五笔、智能ABC的加密形式,我们称之为输入法密码,不归于键盘密码一列。


                    29楼2012-12-27 01:00
                    回复
                      【加密方法】
                      由于键盘密码的种类繁多,我们分开电脑的键盘和手机的键盘两种分开介绍。


                      30楼2012-12-27 01:00
                      回复
                        『电脑键盘』
                        先让我们看看我们天天都会见到的键盘吧(这是偶清洗键盘时照的^ ^):

                        这算是一个比较标准的键盘了,我们主要关注的地方是大键盘区的字母和数字键,以及右边小键盘区的数字键。


                        31楼2012-12-27 01:01
                        回复
                          最常用的电脑键盘加密方法是这样的:
                          『大键盘区』
                          『方法一』
                          我们注意到大键盘区所有的字母上面都有其对应的数字,这个位置几乎在所有的键盘都是相同的。所以我们可以利用这一点应用单表替换的方法进行加密[注2]:
                          1 2 3 4 5 6 7 8 9 0
                          Q W E R T Y U I O P
                          A S D F G H J K L
                          Z X C V B N M


                          32楼2012-12-27 01:01
                          回复
                            我们根据上表可以得出,Q是1下面的第一个,A是1下面的第二个……以此类推,每一个字母都会有其对应的数字:
                            A 12
                            B 53
                            C 33
                            D 32
                            E 31
                            F 42
                            G 52
                            H 62
                            I 81
                            J 72
                            K 82
                            L 92
                            M 73
                            N 63
                            O 91
                            P 01
                            Q 11
                            R 41
                            S 22
                            T 51
                            U 71
                            V 43
                            W 21
                            X 23
                            Y 61
                            Z 13
                            第一个数字代表横向(X坐标)的位置,第二个数字代表纵向(Y坐标)的位置。
                            例如我们加密这样一句话:nice to meet you
                            对应刚才的字母表,我们可以轻松地得到密文:63813331 5191 73313151 619171
                            而一旦我们知道了加密的方法后,我们也可以轻松的反解出原文。


                            33楼2012-12-27 01:01
                            回复
                              有了这种加密方法,我们可以拥有相当多的变种加密方法:
                              例如(每一竖列是一种密码表):
                              A:11,!!,!2,QQ
                              B:555,%%%,%3,
                              C:333,###,#3,
                              D:33,##,#2,EE
                              E:3,#,#1,E
                              F:44,$$,$2,RR
                              G:55,%%,%2,TT
                              H:66,^^,^2,YY
                              I:8,*,*1,I
                              J:77,&&,&2,UU
                              K:88,**,*2,II
                              L:99,((,(2,OO
                              M:777,&&&,&3,UUU
                              N:666,^^^,^3,YYY
                              O:9,(,(1,O
                              P:0,),)1,P
                              Q:1,!,!1,Q
                              R:4,$,$1,R
                              S:22,@@,@2,WW
                              T:55,%%,%2,T
                              U:7,&,&1,U
                              V:444,$$$,$3,RRR
                              W:2,@,@1,W
                              X:222,@@@,@3,W
                              Y:6,^,^1,Y
                              Z:111,!!!,!3,QQQ
                              第一列是将前文提到的Y坐标用重复次数表现,第二列是将数字替换为键盘上对应的符号,第三列则是将前文的X坐标数字替换为符号,第四列则是用的第一行的第一个字母代替数字。


                              34楼2012-12-27 01:01
                              回复