学生快乐编程之轻轻松松将代码隐藏在图片背后,Steganography(隐写术)入门

论坛 期权论坛 期权     
学生快乐编程   2019-7-27 13:21   5661   0
Stegano第一次出现可以追溯到2014年,但是从今年10月初开始演变成了如今这种利用banner广告在各大型网站传播的方式。

Stegano这个名字衍生于Steganography(隐写术)这个词,这门技术其实是通过一些技术手段将信息或内容隐藏在一些数字图像之中,因为肉眼不可见而实现所谓的隐形效果。




上图是“学生快乐编程”的公众号图像,使用EmEdit打开图像,一切正常,看不到其它JS代码,如下:



准备工作
下面是一段我们写一段JavaScript代码,保存成write.js文件

   function writerJSToImage(){
      alert('hello 学生快乐编程公众号!');
   }




那么如何把这段代码写入该图片呢,其实只要用二进制模式下的拷贝就可以了,按照如下步骤:
1. 将准备好的 my.jpg 文件与需要植入的write.js文件放在C盘根目录下.

2. 打开CMD进入my.jpg和write.js所在的文件目录,执行 copy/b my.jpg+write.js new.jpg,如下图(/b参数为以二进制方式拷贝)


new.jpg是生成的新文件。

再次检查



我们用"EmEdit"打开“new.jpg”,在文件底部有刚才的javascript代码。注意:因为每种格式的文件类型,都有一定的规则,所以不能破坏描述文件格式的文件头部分,所以write.js文件只能放到拷贝命令的后面。

各位同学可以参照上面的逻辑试着写一遍,新生成的文件比原来的文件大0.1KB,根本不容易被发现。
好了,各位同学今天的课程就先到这里了。如果有什么疑问记得给我留言哦。



R2机器人小学普及系列套装:第一课:开始使用micro:bit


R2机器人小学普及系列套装:第二课如何导入程序


R2机器人小学普及系列套装:第三课学会数数


R2机器人小学普及系列套装:第四课屏幕橡皮擦


R2机器人小学普及系列套装:第五课:聪明的micro:bit


R2机器人小学普及系列套装:第六课:记录运动轨迹

R2机器人小学普及系列套装:第七课:智能夜灯

R2机器人小学普及系列套装:第八课:温度计

R2机器人小学普及系列套装:第九课:指南针(一)


R2机器人小学普及系列套装:第十课指南针(二)


R2机器人小学普及系列套装:第十一课:骰子游戏

R2机器人小学普及系列套装:第十二课:流动的沙子


R2机器人小学普及系列套装:第十三课:状态指示器

R2机器人小学普及系列套装:第十四课:超小型电报机




分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:5
帖子:1
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP