3
在Cat中隐藏信息
您是试图与祖国沟通的秘密特工。当然,信息需要隐藏,因此没人会掉落您的信息。有什么比猫更合适的呢?每个人都喜欢猫的有趣图片[需要引用],因此他们不会怀疑其中隐藏着秘密信息! 受到摩纳哥用来保存共享关卡的关卡信息的算法的启发,编写一个程序将信息编码为图像颜色的最低有效位是您的任务。 编码格式: 前24位确定剩余编码字节串的长度(以位为单位) 从左到右和从上到下读取图像,显然从左上像素开始 从红色到绿色到蓝色读取通道 读取每个通道的最低有效位 位按大端顺序保存 规则: 您的程序需要对单个字节字符串进行编码,并对基本映像使用单个映像文件名 生成的图像必须作为真彩色PNG文件输出 您可以使用任意形式的I / O(ARGV,STDIN,STDOUT,从文件写入/读取),只要您声明如何使用程序即可 您必须随机选择一个有趣的猫咪图片并将其编码到其中,以表明您的程序可以正常工作 您可以假设只提供了有效的输入,如果位数不足,图像不是真彩色格式,图像不存在或类似的问题,您可以做自己想做的事情 您可以假定所提供的图像不包含任何Alpha通道 长度以不带BOM的UTF-8字节计数 您可以使用此PHP脚本来测试您的解决方案,并提供PNG文件的名称作为第一个命令行参数: <?php if ($argc === 1) die('Provide the filename of the PNG to read from'); $imageSize = @getimagesize($argv[1]); if ($imageSize === false) die('Not a PNG file'); list($width, $height) = $imageSize; $image = …