合天安全实验室CTF之解密200
来源:互联网 发布:seo每天一贴 编辑:程序博客网 时间:2024/04/28 12:18
下载文件后,发现是两张一样的图片(至少我肉眼看不出来)
得益于刚刚做过那个颜色RGB的题目,马上就决定用计算机来进行比对(JAVA代码写得不好真是惭愧-_-!),代码如下:
import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.io.InputStreamReader;import javax.imageio.ImageIO;import java.awt.image.BufferedImage;public class PicTest2 {public static void main(String[] args) throws IOException {int i,j;int rgb1[] = new int[3];int rgb2[] = new int[3];File file1 = new File("G:\\1.png");// 实例化file对象,并设置读取图片路径File file2 = new File("G:\\2.png");File file3 = new File("G:\\3.png");BufferedImage bi1 = null; // 像素缓冲区开始为空BufferedImage bi2 = null;BufferedImage bi3 = null;bi1 = ImageIO.read(file1);bi2 = ImageIO.read(file2);bi3 = ImageIO.read(file3);int width = bi1.getWidth();int height = bi1.getHeight();for (i = 0; i < width; i++) {for (j = 0; j < height; j++) {int pixel1 = bi1.getRGB(i, j);rgb1[0] = (pixel1 & 0xff0000) >> 16;rgb1[1] = (pixel1 & 0xff00) >> 8;rgb1[2] = (pixel1 & 0xff);int pixel2 = bi2.getRGB(i, j);rgb2[0] = (pixel2 & 0xff0000) >> 16;rgb2[1] = (pixel2 & 0xff00) >> 8;rgb2[2] = (pixel2 & 0xff);bi3.setRGB(i, j, Integer.parseInt(Integer.toHexString(rgb1[0]^rgb2[0])+Integer.toHexString(rgb1[1]^rgb2[1])+Integer.toHexString(rgb1[2]^rgb2[2]),16));}}ImageIO.write(bi3, "PNG", file3); //写入文件}}好了,运行一下,出来了一张3.png
仔细看,中间有个二维码,不过手机扫不出来,看来还要处理一下,加几行代码
for (i = 0; i < width; i++) {for (j = 0; j < height; j++) {//System.out.println(bi3.getRGB(i, j));if(bi3.getRGB(i, j)==-16777216) bi3.setRGB(i, j, -1);}}ImageIO.write(bi3, "PNG", file3); //写入文件OK,图片出来了
用手机扫描一下,出来了flag{#justdiffit}
提交,通过!
1 0
- 合天安全实验室CTF之解密200
- 合天安全实验室CTF之解密100
- 合天安全实验室CTF之Steg150
- 合天安全实验室CTF之Web100
- 合天安全实验室CTF之基础50
- 合天安全实验室CTF之基础100
- 合天网安实验室CTF练习赛之逆向题
- 合天网安实验室CTF练习赛之RE300
- 合天网安实验室:CTF-MISC练习
- CTF密码学之凯撒解密
- CTF之加解密总结
- CTF/合天网安实验室-web100题解【eval与alert的利用】
- CTF writeup 0_IDF实验室
- ctf IDF实验室摩斯密码
- 网络安全实验室 CTF 脚本关
- CTF-base64加解密
- ctf编码,解密总结
- 合天网安ctf练习
- NULL是什么
- 第2周项目1课后实践,阅读程序
- Java 内部类
- Jsoup模拟登陆小例子
- CentOS下torque集群配置(四)温馨提示
- 合天安全实验室CTF之解密200
- 提升UITableView性能-复杂页面的优化
- SQL数据库比较存储过程
- struts2 上传图片
- 字符串包含
- 【android】安卓的3d动画效果
- linux 磁盘挂载
- 如何让应用程序只有一个实例
- 二叉排序树及其C代码