前言:

  Morse电码(Morsecode)是大家耳熟能详的编码方式,很多人都误认为它是一种加密方式,但其实它是一种编码,因为它并不存在密钥。在只能使用电报长短音传递信息的条件下,使用摩斯电码是为了方便信息传输。

Morse:

  题目给出:11 111 010 000 0 1010 111 100 0 00 000 000 111 00 10 1 0 010 0 000 1 00 10 110

根据题目提示,该方式为摩斯电报,所以我们可以先将1和0转换成 . - ,我们可以通过编写代码将01替换,下面给出python代码

思路:

1.读取文本

2.做0和1换成 . - 的处理

3.利用正则匹配,将以空格为划分的摩斯电报提取出来

4.然后匹配Morse密码字典

5.由于我用的字典是大写的,提交flag是小写的,所以我将其转换成小写

6.字符串拼接,拼出flag

 1 import re
 2 
 3 with open(r'F:\桌面\tmp\d622fe4aa5c645e8912acdfec1515803.txt','r') as f:
 4     data=f.read()
 5     print(data)
 6     data1 = data.replace('1','.')
 7     data1 = data1.replace('0','-')
 8     
 9     data2 = data.replace('1','-')
10     data2 = data2.replace('0','.')
11     print(data1)
12     print(data2)
13 
14 code_dict = {'A': '.-', 'B': '-...', 'C': '-.-.', 'D': '-..', 'E': '.', 'F': '..-.', 'G': '--.', 'H': '....',
15              'I': '..', 'J': '.---', 'K': '-.-', 'L': '.-..', 'M': '--', 'N': '-.', 'O': '---', 'P': '.--.',
16              'Q': '--.-', 'R': '.-.', 'S': '...', 'T': '-', 'U': '..-', 'V': '...-', 'W': '.--', 'X': '-..-',
17              'Y': '-.--', 'Z': '--..', '0': '-----', '1': '.----', '2': '..---', '3': '...--', '4': '....-',
18              '5': '.....', '6': '-....', '7': '--...', '8': '---..', '9': '----.', '.': '.-.-.-', ':': '---...',
19              ',': '--..--', ';': '-.-.-.', '?': '..--..', '=': '-...-', "'": '.----.', '/': '-..-.', '!': '-.-.--',
20              '——': '-....-', '-': '..--.-', '"': '.-..-.', '(': '-.--.', ')': '-.--.-'}
21 def Morsedecode(data):
22     
23     m = ''
24     pattern = re.compile('[.-]{1,4}')
25     result = pattern.findall(data)
26     
27     for i in result:
28         for j in code_dict:
29             if code_dict[j] == i:
30                 m += j
31     return m
32 
33 str = Morsedecode(data2).lower()
34 print('cyberpeace{'+str+'}')

下面给出最后代码运行的结果:

 通过运行结果可以看出,会解成两种形式morse电报,然后选取一个解出来有语义的

>> 11 111 010 000 0 1010 111 100 0 00 000 000 111 00 10 1 0 010 0 000 1 00 10 110

>> .. ... -.- --- - .-.- ... .-- - -- --- --- ... -- .- . - -.- - --- . -- .- ..- 
 
>> -- --- .-. ... . -.-. --- -.. . .. ... ... --- .. -. - . .-. . ... - .. -. --.

>> cyberpeace{morsecodeissointeresting}

 

 参考链接:

https://blog.csdn.net/dark_cy/article/details/102485043?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-3.channel_param&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-3.channel_param

 posted on 2020-08-12 18:50  缘初  阅读(420)  评论(0编辑  收藏  举报