WeChall_Enlightment (Encoding)

解题:
刚开始一看这题就蒙逼了,完全没思路,过了几天后再仔细去想想,应该是二进制的ascii码,但是原来的三张图虽然都是8的倍数,但完全转换不成有用的东西,题目的意思能否找到光,百度了一下关于三原色的知识,有如下图。

有点思路了,三种颜色刚好对应数字的颜色,于是便想,将三个颜色的二进制数相同的位置统计1的数量,只要数量大于0,这点便取1,然后写了个python程序生成处理后的二进制串。
a = ''
b = ''
c = '' for i in range(len(a)):
if int(a[i])+int(b[i])+int(c[i]) > 0:
print('',end = '')
else:
print('',end = '')
得到的结果为:
01000001011010000110000100100001001000000100100101110100001000000111001101100101011001010110110101110011001000000111100101101111011101010010000001100111011011110111010000100000011100110110111101101101011001010111010001101000011010010110111001100111001000000110100101101110011101000110010101110010011001010111001101110100011010010110111001100111001000010000110100001010010101110110010101101100011011000010000001110100011011110010000001100111011011110010000001110100011011110010000001110100011010000110010100100000011011100110010101111000011101000010000001110011011101000110000101100111011001010010110000100000011001110110111100100000011101000110100001100101011100100110010100111010000011010000101000110000001100010011000000110000001100010011000100110000001100000011000000110001001100010011000000110001001100000011000000110001001100000011000100110001001100000011000000110001001100010011000100110000001100010011000100110000001100010011000000110000001100000000110100001010001100000011000000110001001100010011000000110001001100010011000100110000001100010011000000110001001100010011000100110001001100010011000000110001001100000011000000110001001100010011000000110000001100000011000100110001001100000011000000110001001100000011000100001101000010100011000000110001001100010011000100110000001100010011000100110000001100000011000100110001001100000011000000110001001100000011000100110000001100010011000100110000001100010011000100110000001100000011000000110000001100010011000100110000001100000011000100110000000011010000101000110000001100000011000100110000001100010011000100110001001100000011000000110001001100010011000100110000001100000011000000110000001100000011000100110001001100000011000100110000001100000011000000110000001100010011000100110001001100000011000000110000001100000000110100001010
在将串数放入JPocketKnife v4.06a软件将串按8位分组,然后用acsii解码,卧槽,hhh。
得到如下信息:
Aha! It seems you got something interesting!
Well to go to the next stage, go there:
01001100011010010110011101101000
00110111010111110100110001100101
01110110011001010110110000110010
00101110011100000110100001110000
再将解出的二进制串做相同处理。
得到:Ligh7_Level2.php
于是打开http://www.wechall.net/challenge/anto/enlightment/Ligh7_Level2.php

卧槽,居然还藏着第二个页面,这次字符串的颜色变了,再去找相关资料。

心里想着应该是一样的套路,看图的话,应该是三个加起来<3,用python输出后发现结果不对,试了下 and ,结果也不对,又试了下^ 符号,结果看起来挺正常的,用JPocketKnife v4.06a软件处理后,果然出来了结果。
a = ''
b = ''
c = '' for i in range(len(a)):
if int(a[i])^int(b[i])^int(c[i]):
print('',end = '')
else:
print('',end = '')
结果:
01010100011100100110100101110000011011000110010100101101010110000010110101001111010100100010110000100000011100100110100101100111011010000111010000111111000011010000101001000111011100100110010101100001011101000010000100100000010010000110010101110010011001010010000001101001011100110010000001110111011010000110000101110100001000000111100101101111011101010010000001110011011010000110111101110101011011000110010000100000011000100110010100100000011011000110111101101111011010110110100101101110011001110010000001100110011011110111001000101110001011100010111000001101000010100010001001000111011010010110110101101101011001010101111101000100011000010101111101001100011010010110011101101000011101000010001000001101000010100110010101101110011101000110010101110010001000000111010001101000011010010111001100100000011000010111001100100000011100000110000101110011011100110111011101101111011100100110010000100001
处理后得到:
Triple-X-OR, right?
Great! Here is what you should be looking for...
"Gimme_Da_Light"
hhh,问题解决了,至于为什么是异或,我也想不出原因= =!
WeChall_Enlightment (Encoding)的更多相关文章
- javac -encoding utf8 in linux
由于另外负责编码的同事用的是utf-8,我用的默认的编码格式gbk,在提交代码时,为了迁就他,我打算把格式用工具转成utf-8. 转化成果后,然后在make一下,发现javac -encoding u ...
- 创建Odoo8数据库时的“new encoding (UTF8) is incompatible with the encoding of the template database (SQL_ASCII)“问题
Odoo8创建数据库时,显示如下错误信息: DataError: new encoding (UTF8) is incompatible with the encoding of the templa ...
- Node.js Base64 Encoding和Decoding
如何在Node.js中encode一个字符串呢?是否也像在PHP中使用base64_encode()一样简单? 在Node.js中有许多encoding字符串的方法,而不用像在JavaScript中那 ...
- java Properties异常:Malformed \uxxxx encoding.
昨天项目中遇到一个 java.lang.IllegalArgumentException: Malformed \uxxxx encoding.这样的一个异常,debug了一下发现是读取propert ...
- svn: Can't convert string from 'UTF-8' to native encoding 的解决办法(转)
http://www.cnblogs.com/xuxm2007/archive/2010/10/26/1861223.html svn 版本库中有文件是以中文字符命名的,在 Linux 下 check ...
- C# 字符编码类Encoding
在网络通信中,很多情况下都是将字符信息转成字节序列进行传输.将字符序列转为字节序列的过程称为编码.当这些字节传送到接收方,接收方需要逆向将字节序列转为字符序列.这个过程就是解码. 常见编码有ASCII ...
- 字符集和字符编码(Charset & Encoding)
字符集和字符编码(Charset & Encoding)[转] 1.基础知识 计算机中储存的信息都是用二进制数表示的:而我们在屏幕上看到的英文.汉字等字符是二进制数转换之后的结果.通俗的说,按 ...
- 使用英文版eclipse保存代码,出现some characters cannot be mapped using "Cp1251" character encoding.
some characters cannot be mapped using "Cp1251" character encoding. 解决办法:方案一: eclipse-> ...
- <?xml version="1.0" encoding="UTF-8"?> 的作用?
version="1.0" 声明用的xml版本是1.0 encoding="UTF-8" 声明用xml传输数据的时候的字符编码,假如文档里面有中文,编码方式不是 ...
随机推荐
- Prometheus基础应用
简介 Prometheus使用扫盲,包含基础的概念和操作说明,基于官网和个人测试. versoin: 2.14 官网 GitHub 安装 prometheus安装运行非常方便,下载后解压,运行根目录下 ...
- 虚拟机安装LEDE旁路由实现软路由功能
如何在虚拟上安装LEDE软路由,接下来我们一步一步操作. 1.首先到https://firmware.koolshare.cn/ 下载虚拟机下专用盘如图标记均可 2.虚拟机创建 选择下载好的文件 保持 ...
- Ncverilog 仿真quartus generate IP的要点
Ncverilog 仿真quartus generate IP的要点 最近利用quartus II 生成plll 的IP,利用nclaunch 仿真的时候老是报错, 提示unresolved in w ...
- 学会python正则表达式就是这么简单
一前言 本篇文章带大家快速入门正则表达式的使用,正则表达式的规则不仅适用python语言,基本大多数编程语言都适用,在日常使用中极为广泛,读者们有必要学好正则表达式.看完这篇文章,读者们要理解什么是正 ...
- Sample Code之Web scene-slides
这是我的第一篇随笔,在开始正文前说几句. 这个系列会记录我学习Arcgis js API 4.10的全过程,希望能对自己也对其他有需要的人有帮助.很多时候上网看一些大神的帖子会感到一头雾水,一是自己水 ...
- Java之String类用法总结
String类概述: 1.String类代表字符串.Java 程序中的所有字符串字面值(如"abc")都作为此类的实例实现. 2.String是一个final类,代表不可变的字符序 ...
- Java 利用Map集合计算一个字符串中每个字符出现的次数
步骤分析 1.给出一串字符串,字符串中可以包含字母.数字.符号等等. 2.创建一个Map集合,key是字符串中的字符,value是字符的个数. 3.遍历字符串,获取每一个字符. 5.使用获取到的字符, ...
- Java多线程的创建(二)
前言: 虽然java的API中说创建多线程的方式只有两种(There are two ways to create a new thread of execution),分别是继承Thread类创建和 ...
- 60 个让程序员崩溃的瞬间,太TM真实了
前方高能!笑死人不偿命系列~ 表演即将开始,吃东西的请停下来,不然你会后悔的 1. 公司实习生找 Bug 2. 在调试时,将断点设置在错误的位置 3. 当我有一个很棒的调试想法时 4. 偶然间看到自己 ...
- Ubuntu中部署Django项目的配置与链接MySQL
Django的简介 MVT模式的介绍创建项目的虚拟环境 本次使用的是pip安装 一.更新 sudo apt update 二.安装pip sudo apt install python3-pip 三. ...