zoukankan      html  css  js  c++  java
  • 【转载】古典密码

    题目:密文内容如下{79 67 85 123 67 70 84 69 76 88 79 85 89 68 69 67 84 78 71 65 72 79 72 82 78 70 73 69 78 77 125 73 79 84 65}
    请对其进行解密
    提示:1.加解密方法就在谜面中
             2.利用key值的固定结构


    答案:CTF{COULDYOUEXCHANGETHEINFORMATION}
    分析:
    将Ascii码转换为字母,得到OCU{CFTELXOUYDECTNGAHOHRNFIENM}IOTA
    古典密码中最基础的加密法:列置换,加密:将明文按固定长m分组,即每行m个字母,在密钥控制下按某一顺序交换列,最后按列优先的顺序依次读出,即产生了密文。
    原来字符串为35位。35=7*5
    得到如下结果:
    1 234567


    OCU{CFT
    ELXOUYD
    ECTNGAH
    OHRNFIE
    NM}IOTA


    key值的固定结构为CTF{}
    故第2列打头或第5列打头,接下来是第7列,然后是第6列,考虑到“{”是第4列,考虑到“}”是最后一列
    尝试后得到
    1234567列转换为2764513
    即为:
    2764513


    CTF{COU
    LDYOUEX
    CHANGET
    HEINFOR
    MATION}


    CTF{COULDYOUEXCHANGETHEINFORMATION}
    could you exchange the information?是一句完整的答案,从而解答成功

  • 相关阅读:
    inkscape
    关于英语写作词源方面的。。
    ubuntu上配tensorflow
    腾讯面试指南
    使用traceview进行Android性能测试(转)
    Android CTS 测试总结【转】
    JAVA和C++区别
    接口继承
    vim实现全选功能
    C++异常机制的实现方式和开销分析
  • 原文地址:https://www.cnblogs.com/wh4am1/p/7227596.html
Copyright © 2011-2022 走看看