【LSB】图片隐写主体函数

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/weixin_43560272/article/details/101051903

关于图像隐写

图像隐写是一种有效的方式来交换隐藏的消息,而不会引起怀疑。它的工作原理是用lbs算法将消息编码为图像像素的颜色值。
这种功能基于浏览器的最新特性比如File API和Canvas,如果你的浏览器不支持该该功能,请下载最新的浏览器。

解析函数以及其功能

解析index.html中的js:

图片的加载

传统的图片加载需要将图片上传到服务器,再由服务器加载出来,而现在可以使用FileReader对象将图像加载到DOM中而无需往返服务器,这样就大大提高了隐私性。
在这里插入图片描述

再将我们读取到的数据加载在一个 Image对象中,然后我们将其输入到我们的 canvas画布中以进行像素操作。
canvas包含了我们图像的所有信心
在这里插入图片描述

再使用FileReader对象的readAsDataURL方法可以将读取到的文件编码成Data URL。Data URL是一项特殊的技术,可以将资料(例如图片)内嵌在网页之中,不用放到外部文件。使用Data URL的好处是,您不需要额外再发出一个HTTP 请求到服务器端取得额外的资料。
在这里插入图片描述
这样我们就获取了该图片的url,方便后面的下载

文本的预编码

主对象

可以看到这里有个对象的函数,里面传入的参数是图像和文本信息
可知我们最核心的加密方式就是在这个函数里
在这里插入图片描述
让我们看一下imagemask.js里的hideText函数
在这里插入图片描述
这里有用到新的对象
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_43560272/article/details/101051903