zoukankan      html  css  js  c++  java
  • Bugku-CTF加密篇之easy_crypto(0010 0100 01 110 1111011 11 11111 010 000 0 001101 1010 111 100 0 001101 01111 000 001101 00 10 1 0 010 0 000 1 01111 10 11110 101011 1111101)

    easy_crypto

     

    0010 0100 01 110 1111011 11 11111 010 000 0 001101 1010 111 100 0 001101 01111 000 001101 00 10 1 0 010 0 000 1 01111 10 11110 101011 1111101
     
     
     
    本题要点:摩斯密码
     
     
    首先看到这些0、 1 组合,首先想到了二进制~
     
    但是观察一下..........发现这些0 、 1 长度没有规律......
     
    对照一下ASCII码表......
    (表来自于百度百科)
     
    由这个表对应....很明显不是提交答案的传统格式...........
     
    于是......经过查阅资料........
     
    找到了 摩斯密码和ASCII码表的对照表
     
     
     
     
     
    找了好久都没有找到摩斯和ASCII码转换的解码网站.............
     
    如果 有找到的大佬,麻烦分享一下......
     
    有一个笨的办法.....一个一个对照.........得到答案............
     
    再有就是.......写一个脚本~
     
    参考一位大佬写的py脚本~
     
    from __future__ import print_function
    a = input("input the string:")
    s = a.split(" ")
     
     
    dict = {'01': 'A',
            '1000': 'B',
            '1010': 'C',
            '100':'D',
            '0':'E',
            '0010':'F',
            '110': 'G',
            '0000': 'H',
            '00': 'I',
            '0111':'J',
            '101': 'K',
            '0100': 'L',
            '11': 'M',
            '10': 'N',
            '111': 'O',
            '0110': 'P',
            '1101': 'Q',
            '010': 'R',
            '000': 'S',
            '1': 'T',
            '001': 'U',
            '0001': 'V',
            '011': 'W',
            '1001': 'X',
            '1011': 'Y',
            '1100': 'Z',
            '01111': '1',
            '00111': '2',
            '00011': '3',
            '00001': '4',
            '00000': '5',
            '10000': '6',
            '11000': '7',
            '11100': '8',
            '11110': '9',
            '11111': '0',
            '001100': '?',
            '10010': '/',
            '101101': '()',
            '100001': '-',
            '010101': '.',
            '110011':',',
            '011010':'@',
            '111000':':',
            '101010':':',
            '10001':'=',
            '011110':"'",
            '101011':'!',
            '001101':'_',
            '010010':'"',
            '10110':'(',
            '1111011':'{',
            '1111101':'}'
            };
    for item in s:
        print (dict[item],end='')
    #print (s)
     
     
     
    运行结果~
     
     
     
     
    得到~~~~
     
    FLAG{M0RSE_CODE_1S_INTEREST1N9!}
     
    终于得到答案了~
     
    开心~~!!!!! 开...................心的有点早...............
     
    居然提交错误.......
     
    啊哦~ 
     
    全部改成小写..........(提交答案格式的锅.......)
     
     
    bingo~
     
     
     
    参考资料:
     
    https://github.com/FrancisQiu/pw_bugku_crypto/blob/easy_crypto/easy_crypto.py
     
    https://wenku.baidu.com/view/ff10353482c4bb4cf7ec4afe04a1b0717fd5b397.html
     
     
     
     
     
     
  • 相关阅读:
    windows10 中 svn 代码统计工具 StatSVN 使用详解
    Windows 10 安装 JDK14 Java 环境,没有 jre 包
    GET和POST两种基本请求方法的区别
    图解HTTP学习笔记(一)WEB基础
    【LinuxShell】cp 用法详解
    博客陆续迁移中...
    显示git忽略文件
    字符串遍历
    SDWebImage源码分析(二)
    其他
  • 原文地址:https://www.cnblogs.com/0yst3r-2046/p/11684003.html
Copyright © 2011-2022 走看看