Apple照片〖pian〗扫描的AI演《yan》算法『fa』被逆向工程,Intel工程师发《fa》现破绽

新2网址

www.22223388.com)实时更新发布最新最快的新2代理线路、新2会员线路、新2备用登录网址、新2手机版登录{lu}网址、新{xin}2皇冠登【deng】录网址。

,

ADVERTISEMENT

月初,苹果示意将在iOS 15、macOS 12中加入对使用者照片的检测,目的是(shi)停止儿童色情与虐童照片的流传。 苹果还一再强调这项手艺的平安性和准确性。 

现在〖zai〗,不到半个月的时间,苹果的这项手艺已经被一位名为Asuhariet Ygvar程式师「破解」了。 

他乐成将这个尚未正式宣布的AI模子逆向工程,并在GitHub上提供转化成Python的教程。 几个小时后,另一位来自Intel的工‘gong’程师就发现了该模子的一个bug。 这让苹果十分尴尬。 

Ygvar发现,实在早 zao[在iOS 11.3、macOS 11.4最先,就已经在系统中加入「ru」了照片检测模子NeuralHash,只不外尚未启用。 

因此任何可以下载到苹果系统韧体的人,都可以(yi)轻松将NeuralHash模子提取出来。 

若何提取NeuralHash模子

对于macOS用户或者已经越狱的iOS使用者来说,找到NeuralHash模子档异《yi》常利便,就在以下路径中: 

/System/Library/Frameworks/Vision.framework/Resources/ (macOS)

/System/Library/Frameworks/Vision.framework/ (iOS) 

你会发现neuralhash开头的4个文件〖jian〗:

至于『yu』未越狱的用户,可以下载ipsw花样刷机档案,找到其中最大的dmg档,从这个镜像中找到模子。 

由于步骤较多,在此不再赘述,详细操作看参照文末GitHub说明操作。 

若何逆向工程

在这4个档中,net和shape末尾的档《dang》都是json花样,使用苹果开源手艺LZFSE压缩(suo);weights保留的是权重。 

解压前首先需安【an】装LZFSE解压工具:

brew install lzfse

将net和shape解压,和权重档案放在一个资料夹中:

dd if=NeuralHashv3b-current.espresso.net bs=4 skip=7 | lzfse -decode -o model.espresso.net
dd if=NeuralHashv3b-current.espresso.shape bs=4 skip=7 | lzfse -decode -o model.espresso.shape
cp NeuralHashv3b-current.espresso.weights model.espresso.weights

为了把模子转换为ONNX花样,还要安装以下依赖项: 

欧博注册

欢迎进入欧博注册(www.aLLbetgame.us),欧博官网是欧博集团的官方网站。欧博官网〖wang〗开放Allbet注册、Allbe代理、Allbet电脑客户端、Allbet手机版下载等业务。

pip install onnx coremltools

转换模子时,Ygvar使用了腾讯优图实验室的TNN,这是一款可以转换多种【zhong】AI模子的开源工具,可以将苹果的Core ML转为ONNX花样。

cd ..
git clone https://github.com/AsuharietYgvar/TNN.git
cd TNN
python3 tools/onnx2tnn/onnx-coreml/coreml2onnx.py ../NeuralHash

模子转化为ONNX花样后,就可以‘yi’算出任何图片的96bit神经杂凑值。

 

ab14febaa837b6c1484c35e6

NeuralHash若何事情

说到这里,苹果的NeuralHash详细是若何发生图片杂凑值的? 

NeuralHash是一种基于神经(jing)网路的图像感知杂凑(perceptual hashing)方式,详细步骤如下: 

  1. 将图像转换为RGB;
  2. 将图像巨细调整为360x360;
  3. 将{jiang}RGB值归一‘yi’化到[-1, 1]局‘ju’限;
  4. 用NeuralHash模子举行推理;
  5. 将运算获得128个浮点数的向量与96x128矩阵相乘;
  6. 对发生的96个浮点向量使用单元阶跃函数;
  7. 将1.0和0.0的向量转换为 wei[位,发生96位二进位资料。

这项手艺保证图像被压缩或者巨细被调整的情形下,杂凑(cou)值依旧稳固。

经由是非处置的图《tu》片和原图片具有相同杂凑值

几 ji[小时后就被找到bug

然则Ygvar发现,虽然NeuralHash可以遭受图像巨细调整和压缩,但若是图像遭裁剪或旋转,杂凑值则会发(fa)生改变。 

这也意味着,造孽分子可以透事后两种编辑图片的方式,逃过图片审核。 

在Ygvar宣布逆向工程的模子几个小时【shi】后,另一位能「neng」手就发现了NeuralHash的一个〖ge〗bug。 

Intel工程师Cory Cornelius发现其中存在杂凑值冲突破绽,请看下面两张图:

只能说二者绝不相关,然则用NeuralHash模子盘算一下却「que」发现,二者的杂凑值完全一样。 

$ python3 nnhash.py NeuralHash/model.onnx neuralhash_128x96_seed1.dat beagle360.png
59a34eabe31910abfb06f308
$ python3 nnhash.py NeuralHash/model.onnx neuralhash_128x96_seed1.dat collision.png
59a34eabe31910abfb06f308

实在早在11天前,另一位名叫unrealwill的GitHub使用者就上传了杂凑值冲〖chong〗突攻击的程式{shi}码,用来发生和原图杂凑值一样的图片。 

外媒TechCrunch针对这个破绽询问了苹果。苹果还示意,现在被逆向工程的NeuralHash是早期版本,而不是即将推出的完整版本。 

但苹果回避了杂凑值冲突问题,强调有人工审核防(fang)止该功效被滥用。 

破解NeuralHash的Ygvar示意,他的目的是希望说明我们更好地领会该演算法,在所有iOS装备上启用之前发现潜在的问题。 

不知下个月{yue}的iOS 15正式版是否真有重大《da》改善。 

资料泉源:

添加回复:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。