如果你认为将密码或其他私密文本数据像素化就能保护它们不被窥见,那你真是太天真了,你的信息并没有你想象的那么安全。像素化(也称为马赛克)是一种常用的手段,可以大幅降低图像敏感区域的分辨率来隐藏信息。
近年来马赛克这项技术被广泛使用,但它的好日子已经不多了,最近一个新型的人工智能工具“Depix”横空出世,短短时间就在Github上标星15.5K(Github地址:https://github.com/beurtschipper/)
Depix的开发人员Sipke Mellema是一个信息安全顾问,他表示:“我见过一些公司把内部文件中的密码像素化,没有工具可以从这些图像中恢复密码,于是我创建了一个。”该工具适用于使用线性方框滤波器(linear box filter)创建的像素化图像。
Depix的使用
要准备一个用于Depix处理的像素化文本序列,首先以单个矩形格式从截图图像中剪切相关的像素化块,然后将带有预期字符的De Bruijn序列粘贴到具有相同字体(文本大小、字体、颜色等)编辑器中。接下来,对序列进行截图,最好使用之前的序列截图,尽可能使用和像素化图像相同的截图工具。
最后,简单地运行 python depix.py -p [pixelated rectangle image] -s [search sequence image] -o output.png
恢复之后的效果和原图的对比结果:
但是,项目作者没有选择创建潜在字体的查找表,只是简单使用待处理字符的德布鲁因序列,将其粘贴到相同的编辑器中,然后截图。该截图可以用作相似 block 的查找图像,例如:
德布鲁因序列包括待处理字符的所有双字符组合。在以下测试图像中,Depix算法无法找到(o)的一部分。这是因为在搜索图像中,搜索block还包含下一个字母(「d」)的一部分,但在原始图像中这里有个空格。
不过对于大多数像素化的图像,Depix都可以找个单个的匹配结果,它假定这些都是正确的。然后将周围的多个匹配块匹配,然后再与马赛克图像相同的几何距离进行比较。这些匹配也被认为是正确的。
当正确的块没有更多的几何匹配后,它将直接输出所有正确的块。对于多匹配块,它输出所有匹配的平均值。它的输出还远远不够完美,但它的性能相当好。下图显示了一个带有随机字符的测试图像,大多数字符都可以正确破解出来。
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)
![img](https://img-blog.csdnimg.cn/img_convert/99303b0933fc9283b62ffce5721dd7a9.jpeg)
总结
虽然我个人也经常自嘲,十年之后要去成为外卖专员,但实际上依靠自身的努力,是能够减少三十五岁之后的焦虑的,毕竟好的架构师并不多。
架构师,是我们大部分技术人的职业目标,一名好的架构师来源于机遇(公司)、个人努力(吃得苦、肯钻研)、天分(真的热爱)的三者协作的结果,实践+机遇+努力才能助你成为优秀的架构师。
如果你也想成为一名好的架构师,那或许这份Java成长笔记你需要阅读阅读,希望能够对你的职业发展有所帮助。
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
视频、实战项目源码讲义》点击传送门即可获取!**