• 希尔密码


    希尔密码(Hill Cipher):是运用基本矩阵论原理的替换密码,每个字母当作26进制数字:A=0, B=1, C=2... 一串字母当成n维向量,跟一个n×n的矩阵相乘,再将得出的结果mod26。用作加密的矩阵(即密匙)必须是可逆的,否则就不可能译码。只有矩阵的行列式和26互质,才是可逆的。

    例题:

      来自安恒杯的一道题:爬坡道

      一张图片打开是一串字符

      mtt pjbp ex fdzc egtdzeanut

      然后图片里面藏着一个矩阵

      3 1

      2 1

      

      综上所知,这是一个希尔加密的题。

    解法:

      (1)、先算出这个矩阵的逆矩阵

        逆矩阵求法如下:

      求出此题逆矩阵

      

      (2)、根据字母表顺序将密文换成矩阵数值

      

        密文:m  t    t     p   j   b  p e  x   f  d  z  c e  g  t    d    z    e    a   n    u   t   z

          明文:13 20 20 16 10 2 16 5 24 6 4 26 3 5  7  20  4   26  5    1  14  21 20  26

      (3)、将密钥的逆矩阵与密文变换成的矩阵做乘运算

        矩阵乘法计算如下:

          

        

      (4)丶将得到的矩阵mod26

        

        

        得flag:yunbfdfyltdvslsadvcxxwtf

        纯手工。

  • 相关阅读:
    c# 子窗体打开或者切换就最大化
    TreeView失去焦点时亮显选中状态
    解决 RecursionError: maximum recursion depth exceeded
    CentOS7安装jdk1.8
    CentOS7安装mysql5.7
    CentOS7安装redis3.2.3
    CentOS7安装nginx1.8
    centos7设置redis开机自启动
    Linux下执行sh脚本报错:$' ': command not found
    Linux下使用unhide查看隐藏文件
  • 原文地址:https://www.cnblogs.com/pangya/p/9627216.html
Copyright © 2020-2023  润新知