最近国外一家技术公司的大佬 Dan Petro 发布的一条帖子 , 在国外的程序员圈子里引起了不小的轰动 。
并且这条帖子应该可以说和各位息息相关了 ,他在自己的帖子中告诫网友们 ,用像素化给图片打码 , 是一个非常不好并且不安全的方法 。
你打码的信息 , 很容易被修复 , 然后造成隐私泄露 。
文章图片
主要原因呢 , 就是这位大佬开发了一个用于破解像素打码的小工具 , 并且作为一款开源软件 , 上传到了 GitHub 上 。
每个用户都可以免费下载到这个小工具 , 用来破译网上打了马赛克的图片 。
文章图片
我知道你们看到这种传播“ 火种 ”的行为 , 都要激动的立马去 GitHub 下载这个工具 , 然后掏出自己珍藏的学习资料 。
文章图片
但是很遗憾 , 这玩意不是用来去除静态图像马赛克的 。
目前的去除图片上马赛克的技术 , 都是通过 AI 去数据库中模拟对比相似的内容 , 再拼凑出像素运动的规律模拟还原 。
也就是让 AI 来 “ 画 ” , 再压缩回马赛克状态跟原图比一比 , 最后把相似的版本拿出来展示 。
但 Dan 开发的这个工具 ,主要是用来破译打在英文字母上的马赛克的 , 而且成功率贼高 。
并且 Dan 还在自己的帖子中 , 详细的讲明白了 , 自己开发这款 Unredacter 解码工具的原理 。
文章图片
其实吧 , 这个破解马赛克的过程并没有差友们想象中的这么神秘 。
【字符|打码图片也能破解?这位大佬做的解码工具太暴力了!】差友们随便打开一个打码工具 , 然后给下面这串英文打上马赛克 , 大概就能够得到这么一张普通至极的“ 低清打码图片 ”了 。
文章图片
在你打码的过程中 , 算法会把图像划分为一个个固定像素大小的色块 , 再把每一小块的像素块 ,进行一个“ 涂抹 ”处理 。
让一张清晰的图片 , 变成很多个深浅不同的黑白灰色块 。
就拿下面这张图片举个例子吧:如果大家要给下面这张图片打码 , 算法会把图像分为多个由 8×8 个像素组成的方块 , 然后把方块里所有像素的颜色匀一匀 , 涂抹成不同灰度 。
虽然说码是打上了吧 , 但是这种常规的方式 ,却依旧在打码后的图片上 , 留下足够破译图片信息的线索 。
因为马赛克打码的算法 , 就是固定的这么两步操作:首先分割图片 , 然后用一个平均值“ 涂抹 ”每一个方块 。
所以理论上 , 只要我们了解打码这种简单粗糙的算法逻辑 ,就能够倒推过来 , 破译打码的图片 。
只要判断出每个方块的大小 , 再逐个对比键盘上所有字符打码前后的效果 , 就可以找个那个字符 。
直接来看看这款强大的解码工具的效果吧:
文章图片
其实早在 Dan 开发 Unredacter 解码工具之前 , 市面上早就有用这种逻辑解码的工具了 , 但是由于一些技术问题 ,这些解码工具的正确率并不高 。
比如像字符溢出的问题:在解码的过程中 , 是不能保证文本字符和这些像素块 1:1 完全对齐的 , 比如这种字符正好卡在了两个方块中间的尴尬情况 。
而这也给解码工作造成了很多困扰 。
文章图片
还有字体不一致问题 , 虽然这些在电脑上的英文字母 , 用肉眼看起来都一样 , 但是由于不同的渲染引擎 , 会让这些显示在电脑屏幕上的字母 , 都会略有不同 。
上面两个字体就是由两种不同的渲染引擎生成的 , 他们在字符长度上有一些细小的区别 ,这些区别在打码过程中会产生一个连锁反应 。
但是如果你要做解码破解 , 它们会带来无穷的麻烦 。 类似的技术问题还有很多 。
Depix 这个解码工具 , 在这些技术细节上并没有给出一个很好的解决方案 。
所以效果嘛 , 也就只能算是马马虎虎了 。
我唱出来了 。。。▼
文章图片
由于 Depix 解析出来的字母 , 实在是太过模糊 ,所以网上有很多程序员怀疑用这种思路设计出来的解码工具是否可靠 。
甚至还有一位叫做 Jumpsec Lab 的程序员更是跳出来质疑 , 并且向全网发起了一项挑战:
他给出了一张已经被码到面目前非的图片 , 说只要有人能够破译这张图片 , 就可以联系他 。
而 Dan 正是看到了这个挑战 , 才决定自己开发一个解码工具 , 在 Depix 的基础上做一些技术细节上的修正 。
Dan 在自己开发的 Unredacter 解码工具中把这些问题都解决了 , 他也成功破译了 Jumpsec Lab 的这个挑战 , 解析出来的字母可以说是非常清晰了 。
可以说放到今天 ,用马赛克打码是极其的不靠谱 。
聊了这么多用马赛克打码的漏洞 , 相信一定会有好奇的小朋友要问了:
那么有没有更加安全的打码方式呢?
当然有了 ,就是直接用大黑条 , 或者是一道“ 圣光 ”给糊上就可以了 , 保证不会有任何多余的信息泄露!
文章图片
以上就是 Dan 在自己的帖子中分享的关于马赛克不安全的一些论证和技术 , 反正世超看完之后是大受震撼 。
其实马赛克这项技术已经被我们使用了很多年了 。
互联网技术的发展 , 其实很大程度上都是靠着:出现新技术 , 然后破解技术 。这种无休止的攻防对抗下前进的 。
而现在也已经有越来越多破译马赛克的手段了 , 谁知道会不会在未来的某一天 , 即使打在静态图片上的马赛克可能被去除呢?
希望大家在给自己的图片打码时也能多个心眼 , 以防隐私泄露带来不必要的麻烦 。
撰文:小花编辑:面线
图片和信息来源:
Never, Ever, Ever Use Pixelation for Redacting Text
https://github.com/bishopfox/unredacter
谷歌图片
推荐阅读
- 创事记|美团外卖,难降佣金
- |冰墩墩离打折促销不远了
- 中国|智通云联入选《2021“新基建”背景下中国工业互联网与工业智能研究报告》
- 证件|微信新功能!开启图片搜索模式
- 苹果|小米「二次创业」
- 图片|微信又迎大更新!网友:也太方便了
- 机构|编程教育普及,止步少儿?
- 浏览器|台积电代工新骁龙曝光,微信已支持聊天图片搜索,三星解释虚标刷新率规格,Chrome存在零日漏洞,这就是今天的其他大新闻!
- 图片|微信又出新功能了?网友:这功能香
- Adobe|无需插件 Photoshop最新版本23.2正式支持WebP图片格式
