CN113836585A - 一种针对用户数据的全自动数据隐私保护系统 - Google Patents

一种针对用户数据的全自动数据隐私保护系统 Download PDF

Info

Publication number
CN113836585A
CN113836585A CN202111409364.1A CN202111409364A CN113836585A CN 113836585 A CN113836585 A CN 113836585A CN 202111409364 A CN202111409364 A CN 202111409364A CN 113836585 A CN113836585 A CN 113836585A
Authority
CN
China
Prior art keywords
data
user
protection
protector
intelligent
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202111409364.1A
Other languages
English (en)
Other versions
CN113836585B (zh
Inventor
许封元
吴昊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing University
Original Assignee
Nanjing University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nanjing University filed Critical Nanjing University
Priority to CN202111409364.1A priority Critical patent/CN113836585B/zh
Publication of CN113836585A publication Critical patent/CN113836585A/zh
Application granted granted Critical
Publication of CN113836585B publication Critical patent/CN113836585B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Medical Informatics (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种针对用户数据的全自动数据隐私保护系统,该系统能够对用户指定的智能应用程序进行智能模块的查找、切分并将其重新打包成可独立运行测试的智能应用,同时针对此重新打包的智能应用适应性地生成IM专属的数据保护器,从而有效地为不同的智能应用生成可以平衡用户数据权益保护和深度学习推理质量的数据保护方案。该系统所提供的数据保护对App DL服务质量几乎没有影响,即IM在受保护用户输入上的推断结果与在未受保护图像上的推断结果几乎相同,但可以使用户数据免于受到如大规模人脸匹配而造成的隐私泄漏的危害。

Description

一种针对用户数据的全自动数据隐私保护系统
技术领域
本发明涉及一种针对用户数据的全自动数据隐私保护系统,属于数据隐私保护技术领域。
背景技术
配备了功能强大的深度学习(DL)服务的移动智能应用(Intelligent App)近年来迅速流行了起来。这些智能应用通过将深度学习模型部署在智能手机本地或远程云平台上,提供各种高质量的智能推断服务,例如照片美颜、增强现实和视频裁剪。用户在享受这些移动智能应用对工作和生活带来的改善的同时,也深切关注自己提供给智能应用的数据的权益保障问题。例如,当用户把家人团聚或朋友聚会的照片提交给贪婪的智能应用提供商时,这些应用提供商们可能通过使用先进的人脸匹配算法,很容易地从用户提供的数据中推断出用户的社交关系。
目前,即使用户主观上不愿意通过牺牲个人数据权益来换取智能服务的便利,用户自己也几乎无能为力。他们不得不强迫自己相信其所面对的智能应用程序提供商都是善意的,希望这些服务商不会滥用自己用于特定服务的个人数据。用户们只能等待应用程序提供商向他们提供任何数据权限选项,无论这些数据权限选项多么荒谬和过时,用户只要想使用这些智能应用便只能选择同意。例如,从一些应用程序提供商的角度来看,保护隐私等用户数据权益等价于减少其秘密收集的数据量或明确要求用户在使用其服务之前放弃数据权益。用户要想让自己的数据权益得到真正的保护,大多数情况下唯一能做的就是停止使用这些应用程序。
目前,针对DL推理场景,学术界已经提出了一些隐私解决方案。现有方案都需要DL模型所有者的合作,也需要部署此方案的参与者有着深度学习的相关专业知识和大量的计算资源。这些条件对于想要积极主动保护自身数据权利的普通用户来说,基本无法满足。因此,用户们希望找到一个技术方案,帮助他们实现自主的数据权益保护,比如在其将数据发送给智能应用前,可以先对自己的数据进行保护,这样无论服务提供商是否是恶意、贪婪的,用户都能尽最大可能保护自己的权益。
在使用应用程序时,虽然说用户在客户端侧对输入数据的控制在法律上是合规的、在设计上也是合理的,但是在现实中真正实现自主的输入数据控制是具有挑战的。这是因为在用户端评估应如何将数据提供给智能应用时,用户希望在尽可能少的向智能应用提供数据访问权限的同时,对所用DL应用的服务质量影响做到最小,具体来说挑战如下:首先,用户没有智能应用的源代码和任何来自智能应用提供商的帮助,因此很难在App的智能应用程序中找到DL模型及其相关使用代码,以进行数据权益保护分析;其次,即使定位到应用程序中的深度学习模型和相关代码,这些模型对用户来说也是黑盒的,因此无法利用反向传播等技术搜索合适的数据权限控制方法,更不用说用户通常是不具有深度学习和黑客技术的。最后,用户所拥有的用于生成数据权益保护方案的资源是有限的,大多数用户家里没有GPU 服务器,也未必愿意花费大量的时间寻找权益保护方案。
发明内容
发明目的:针对现有技术所存在的问题,本发明提供一种针对用户数据的全自动数据隐私保护系统,利用其新颖的静态程序切片技术和面向深度学习推断的数据保护技术,在现有的移动智能应用场景下,完全自动化的实现数据权利保护方案的生成和部署。
技术方案:为实现上述目的,本发明提供一种针对用户数据的全自动数据隐私保护系统,包括以下模块:
IM打包模块:用于根据用户提供的智能应用程序进行IM提取,并将其重新打包为可执行的智能应用;
保护器生成模块:用于针对所打包的智能应用自适应地生成数据保护器,并通过将该保护器嵌入到原始智能应用程序中的方式来自动增强该智能应用。
进一步的,所述IM打包模块包括以下组件:
IM Finder组件:通过静态程序分析技术查找原始智能应用程序中标志IM的关键特征,并输出IM调用接口,即IM协议接口;
IM Slicer组件:从输出的IM调用接口开始,通过静态程序切片技术提取出与IM相关的全部代码,即用户输入的预处理代码和推断结果的后处理代码;
IM Repacker组件:用于对切分出的程序代码进行语句翻译和排列,并自动打包成可独立运行的智能应用。
进一步的,所述IM Finder组件会根据系统预设的DL计算特征,对原始智能应用程序所包含的资源文件、本地计算库和字节码进行分析查找,并根据查找结果实现IM协议接口的追踪,其追踪机制包括以下情况:
Ⅰ、如果直接在字节码中找到了DL计算特征,则提取相应的API作为IM协议接口;
Ⅱ、如果在本地计算库中找到了DL计算特征,则提取对应本地库中的JNI,进行翻译,并将字节码中这些JNI的调用点所在函数,作为IM协议接口;
Ⅲ、如果在资源文件中找到了DL模型文件,则进一步在本地计算库或字节码中搜索DL模型的加载点,若模型加载点在本地库中,则继续按照情况Ⅱ提取JNI并完成后续操作,若模型加载点在字节码中,则提取加载点的返回值,作为预期的IM协议接口。
进一步的,所述IM Slicer组件通过后向静态切片技术找到所有用于确定IM协议接口中参数的程序代码,并通过前向静态切片技术找到所有用于解码IM协议返回值的程序代码;具体切片过程包括:首先,IM Slicer组件会构造一个PDG,PDG的节点是程序语句,边是语句间数据依赖或控制依赖,包括四种类型,即常规执行路径、函数调用路径、函数返回路径和全局变量访问路径;PDG构建完成之后,IM Slicer组件会从IM协议接口开始,沿着其构建的PDG进行切片。
进一步的,所述IM Repacker组件对语句的排序过程具体包括:
首先将语句以函数为单位组织进行整理,并根据这些函数之间是否存在调用关系来对函数进行分组;而后把每个函数组中没有任何调用者的函数计作头函数,基于“先写后读”的原则编排头函数的调用顺序。
进一步的,所述保护器生成模块的工作步骤具体包括:
1)利用数据保护器对系统预设或用户提供的测试数据集进行隐私保护数据转换,并将转换后的数据发送到重新打包的智能应用以执行智能推理;
2)优化器收集智能推理结果并评估转换后数据的IM推理准确性和隐私保护有效性,进而根据评估结果对数据保护器进行IM专属的微调;
3)重复上述步骤1)、2),直到评估结果达到预设阈值或者重复步骤达到预设步数上限,以生成IM专属的数据保护器;
4)通过程序插桩技术将优化后的数据保护器作为图片过滤器透明地嵌入到用户提供的智能应用程序中,实现后续用户输入数据的隐私保护。
进一步的,所述步骤1)中,初始的数据保护器首先通过语义保留图像风格转换来去除测试数据集中与IM任务无关的信息。
进一步的,所述步骤2)中,优化器采用基于信息删减的数据增强技术作为IM专属的微调方案,其微调过程具体包括:将原始数据、保护数据和IM在保护数据上的推理结果作为输入,通过评估隐私保护的有效性和IM推理准确率来启发式地搜索一组新配置,并据此指导数据保护器更新其数据转换策略。
进一步的,所述步骤2)中,优化器分别通过可用性指数UI和保护指数PI来衡量IM在保护数据上的推理准确性以及保护数据的隐私保护有效性,其中UI是使用IM在保护数据上得到的推理准确度除以其在原始数据上的推断准确度计算而来,PI是将保护前后图像中未匹配的人脸数除以总人脸数计算而来。
本发明利用其新颖的静态程序切片技术和面向深度学习推断的数据保护技术,在已经发布在应用市场中的应用上,完全自动化实现了数据权利保护方案的生成和部署,整个端到端的数据权益保护方案生成和部署过程可以在只配备有CPU的笔记本电脑和个人智能手机上完成。整个数据隐私保护过程无需应用程序供应商提供任何帮助,也不需要用户具有任何与应用程序和深度学习模型相关的知识,系统在自动化地生成数据权益保护方案(如面部或其他隐私保护)之后,会将其生成的保护方案透明地嵌入到原始智能应用程序中。在用户后续使用此被增强过的应用程序时,用户可以在几乎不影响应用程序内应用服务质量的前提下,实现对个人数据权利的保护。
有益效果:本发明提供的一种针对用户数据的全自动数据隐私保护系统,相对于现有技术,具有以下优点:
1、该系统在移动智能应用场景下实现了用户侧的全自动输入数据权利保护,且该数据权利保护策略的生成和部署无需应用提供商的任何协助;
2、设计了一个移动智能应用的静态切片和再打包工具,它可以同时解决智能应用程序切片所面临的细粒度和高精度的挑战,且被切分打包的DL模型及其使用代码,可以被用于后续的DL模型模糊测试。
3、提出了一种面向灰盒DL推理服务的用户数据权利保护技术,该技术采用具有轻资源需求且无需用户参与的方法,在充分考虑用户输入的数据分布和目标模型特定的情况下,自适应地搜索合适的数据权利保护方案。
附图说明
图1a、1b分别为本发明实施例在准备阶段和使用阶段的工作流程图;
图2为本发明实施例中IM打包模块的工作流程图;
图3为本发明实施例中IM Slicer组件所构建的程序依赖图(PDG);
图4为YoloV3和SSD在原始图片和针对YoloV3保护图像上的检测结果对比图;
图5为本发明实施例中保护器生成模块的工作流程图;
图6为本发明实施例中数据保护器的参数搜索算法;
图7a、7b分别为YoloV3和SSD在原始图片和专属保护图像上的检测结果对比图;
图8a、8b为本发明实施例在IM推理可用性与隐私保护有效性方面的评估结果图;
图9为本发明实施例进行每轮参数迭代所花费的时间参数对比图。
具体实施方式
下面将结合附图对本发明的优选实施方式进行描述,更加清楚、完整地阐述本发明的技术方案。
图1a、1b演示了本发明实施例的工作流程,该流程包括(a)准备阶段和(b)使用阶段。在准备阶段,用户先提供一个她想要进行隐私控制的智能应用APK(Android应用程序包),系统会提取智能应用中的IM模块,并将其重新打包为可执行的APK;接着利用此打包的APK生成个性化数据保护器,并通过将此保护器嵌入到智能应用当中的形式来自动增强该APK。
该系统的准备过程无需应用开发者的帮助,也不需要大量的计算训练,APK的增强可以在只配备有CPU的笔记本电脑上自动完成。当增强完成时,隐私增强后的APK就可以像从应用市场下载的版本一样使用了。被增强后的APK与应用市场中下载的APK的不同之处在于,用户可以自主选择使用受保护的图像来享受智能应用的推理服务,而不是非得提供自己的原始图像。
本发明主要解决的问题来自于两个方面:一是从指定的智能应用程序中切分出智能服务模块(IM),并将其打包成可独立运行的智能应用;二是自动地针对前述切分出的智能服务模块生成数据保护器,并将此数据保护器嵌入到用户指定的智能应用当中。下面就分两个方面进行问题分析:
1、IM的切分和打包
如图2所示,智能应用的核心组件是一个用于提供深度学习推理服务的智能模块(Intelligent Module,IM)。IM通常包括一个DL模型、与模型相关的本地计算库和执行用户输入预处理与推断结果后处理的应用程序代码。为了自适应地针对不同IM生成数据保护器,需要使用正确格式的输入迭代地对IM进行模糊测试,并获得可评估的推断结果。但是,作为智能应用内的一个服务,IM并没有独立的可调用接口,以供用户对其进行自由测试。此外,不同的智能应用使用了不同的移动DL计算框架,在对输入数据和推理结果进行预处理和后处理时,采用了不同的方法和参数,很难通过提供预设模板打包来自不同应用中的智能模块。
具体来说,IM打包面临着如下两个挑战:
1)细粒度:IM切片是一种服务级Android程序切片,在切片前没有独立或约定俗成的可调用接口,例如Android Activity的生命周期管理接口,这也就意味着无法通过自动触发这些接口来动态收集IM的执行信息;
2)高精度:IM打包的目标是生成一个调用接口清晰的可独立执行App,同时该重新打包的App可以产生与用户指定App相同的IM推理结果,完整的IM调用协议是保证IM推理正确性的关键。
本发明通过智能模块(IM)打包技术解决了上述两个问题,该技术包含 IM 模块的检测、提取和重新打包三个关键任务,分别通过以下组件实现:
①IM Finder组件
IM Finder通过静态程序分析找出用户指定的APK中是否存在IM,一旦找到标志IM的关键特征,IM Finder将获取IM协议接口(用于调用IM服务的程序接口)并将IM协议接口送至后续组件中分析。
为了在智能程序中准确找到IM,本发明充分考虑了Android程序中各个部分(即资源文件、本地计算库和字节码)可能包含的深度学习计算特性。IM Finder中预设的DL特征不仅涵盖了现有工作中报告的IM服务,还涵盖了潜在的闭源DL计算框架。具体来说,闭源IM 服务也需要使用ARM或Android提供的计算指令来加速DL推理。同时,IM Finder中的DL特征文件是可配置和可扩展的,未来可以持续向组件中添加相关特征。
事实上,现实世界中的智能应用可能不会同时在资源文件、本地计算库和字节码中包含这些深度学习特征,比如基于云的IM并不会包含与DL模型有关的特征。因此,本发明设计了一种追踪(tracking)机制,以便在应用中的任何部分找到DL特征时,IM Finder都可以通过该特征定位到字节码中的IM协议接口。该追踪机制主要涵盖了如下三种情况:
Ⅰ、IM Finder直接在字节码中找到了DL计算特征。例如,发现程序中使用了开源的DL计算框架,例如TFLite。这些框架是通过众所周知的API来调用的,因此可以使用这些众所周知的API作为IM协议接口来开始下述切片过程。
Ⅱ、IM Finder在本地计算库中找到了DL计算特征。这种情况常见于采用了闭源或二次开发的DL计算框架的智能应用。在这种情况下,IM Finder会提取对应本地库中的JNI,进行翻译(lifting)并将字节码中这些JNI的调用点所在函数,作为IM协议接口。
Ⅲ、IM Finder在资源文件中找到了DL模型文件。这种情况下,IM协议接口对DL模型的使用通过两种途径,一个是通过本地计算库对模型进行管理,另外一个是通过字节码直接管理模型。因此IM Finder可以在本地计算库或字节码中搜索模型加载点。如果模型的加载点在本地库中,IM Finder将继续按照情况Ⅱ提取JNI并完成后续操作。如果IM Finder在字节码中找到模型的加载点,则其会提取加载点的返回值。因为模型加载点的返回值通常是实例化的DL模 型,IM Finder将记录对实例化模型操作的所有语句,并将这些语句作为预期的IM协议接口。
②IM Slicer组件
IM Slicer从上一步骤中找到的IM协议接口开始,对智能应用同时进行前向和后向静态程序切片,从而提取出与IM相关的全部代码,即用户输入的预处理代码和推断结果的后处理代码。
IM Slicer的核心设计是一套上下文敏感的前向和后向静态程序切片技术,即通过后向静态切片技术找到所有用于确定IM协议接口中参数的程序代码,并通过前向静态切片技术找到所有用于解码IM协议返回值的程序代码。具体切片过程包括:
首先,IM Slicer会构造一个程序依赖图PDG(如图3所示),PDG的节点是程序语句,边是语句间数据依赖或控制依赖。PDG是一个有向图,其边有四种类型,即常规执行路径、函数调用路径、函数返回路径和全局变量访问。常规执行路径表示函数内的语句执行流,调用路径和返回路径记录了函数间的调用关系。请注意,为了同时满足分析的准确性和高效性,调用路径和返回路径是按需构建的。当IM Slicer需要处理 invoke语句时,它会构建从调用者到被调用者的调用路径;当IM Slicer处理return语句时,它会检查该语句所在函数是否属于已经存在的某条调用路径的目的节点。如果这样的调用路径存在,IM Slicer会在该语句和其所在函数的调用者之间添加一条返回路径;否则,IM Slicer将在该语句与该语句所在函数的所有调用者之间构建返回路径。全局变量访问路径表示语句与全局变量的数据依赖(即读写关系)。具体来说,IM Slicer会为定义全局变量的语句添加一条指向读该变量的语句的边,同时为写此全局变量的语句添加一条指向该全局变量的边。PDG构建完成之后,IM Slicer会从IM协议接口开始,沿着其构建的 PDG 进行切片。
③IM Repacker组件
IM Repacker负责将切片后的IM代码打包成可独立部署执行的APK,以供后续数据保护器生成。由于IM Slicer工作在中间语言上,因此IM repacker应首先将中间语言表示的程序代码翻译成可编译的语言,例如Java。IM repacker的另一个重要作用是将对提取出的语句进行排序。由于很多语句之间只有隐式的数据依赖关系,缺少显式的控制依赖,而这些语句以不同的先后顺序执行时会产生不同的IM推断结果,其中最多只有一个推断结果是正确的。因此,IM repacker需要对切分出的语句进行正确的排列,以保证最终打包IM的正确性。
A、语句翻译。用于Android程序分析的中间语言和与可编译的Java的语句之间没有一一对应的关系,因此IM Repacker通过预设的翻译规则对全部中间语言进行了翻译。
B、语句排列。围绕IM进行切片时,IM Slicer充分考虑了应用程序中语句之间的数据依赖和控制依赖。控制依赖可以明确地表示语句之间的先后关系(happen-before),而数据依赖关系,特别是对于全局变量读写关系的语句之间缺乏这种显式先后关系,需要IMrepacker对其重新排列。
对此,IM Repacker通过“先写后读(Write-before-Read)”原则来对语句进行排序。具体来说,首先将IM Slicer提取的语句按函数为单位组织,因为原本存在于同一个函数内的语句之间的先后关系是明确的。之后,根据这些函数之间是否存在(显式)调用关系来对函数进行分组,并把每个函数组中没有任何调用者的函数计作头函数。需要注意的是,对函数进行排列时只需要编排头函数的调用顺序即可,因为函数组中的其余函数会因头函数的调用而自动执行。
2、数据保护器的生成
一旦将重新打包成可独立运行的IM部署到用户设备上,系统就会开始针对该IM生成专属的数据保护器。数据保护器应该能够同时做到保护用户隐私且不(或几乎不)损害IM质量和精度。从信息熵的角度来看,本发明所生成的保护器需要能够从用户数据中去除尽可能多的目标IM服务所不需要的信息,仅保留用于IM服务正确地完成推断的信息。但是,构建这样的数据保护器存在如下三个挑战:
1)灰盒的模型。智能应用中的IM不具备供进行反向传播的条件,即使IM中所封装的DL模型被部署在用户设备上,其通常采用的是优化压缩过的存储与计算友好的模式,故仅能采取基于查询的保护策略生成方式。
2)个性化需求。如图4所示,YoloV3在针对YoloV3保护的数据上可以有效检测,而SSD在针对YoloV3保护的数据上无法正常工作,因此需要为每个用户指定的智能应用适应性地生成数据保护方案。不仅如此,用户需要保护的数据可能具有独特的分布但缺少标注,他们希望针对其未标注的特殊数据个性化地制作数据保护器。
3)有限的资源。普通用户通常不具有丰富的计算资源,如GPU服务器或工作站,他们可以提供给数据保护方案的计算资源十分受限,大多数情况下,可能只包含一台家用CPU笔记本电脑与一部智能手机。
基于上述需求,本发明提出了一种用户友好且计算高效的模糊测试方法,以针对智能应用中的灰盒IM适应地生成数据保护器。本系统默认提供了由20张图片组成的测试数据集,并利用初始数据保护器对测试数据集或用户提供的数据集进行不可逆的隐私保护数据转换,然后将转换后的数据发送到重新打包的IM以执行智能推理;优化器(Optimizer)将收集IM推理结果并评估转换后数据的可用性和隐私保护的有效性,进而根据评估结果启发式搜索新配置,并据此指导数据保护器更新其数据转换策略;重复上述步骤,直到评估结果达到预设阈值或者重复步骤达到预设步数上限;最后系统会通过Android程序插桩技术,将调优后的数据保护器作为图片过滤器(filter),透明地嵌入到用户提供的APK中,实现后续用户输入数据隐私保护。
具体来说,为了保证数据保护器的有效性和高效性,本发明设计了隐私信息分层删除策略。如图5所示,数据保护器首先尽可能的去除用户输入中与目标IM任务无关的信息。例如,对于物体检测任务,数据保护器可以去除实例级别(instance-level)的物体细节并保留物体的类别级别(category-level)和空间位置信息。这一步隐私信息去除可以通过选择适当样式的语义保留图像风格转换来完成,此步骤称为面向任务的转换(task-oriented transformation)。
但请注意,由于场景的差异,仅利用隐私风格转换无法提供足够的保护。基于转换的保护器只能在固定的保护粒度下工作。因此,在数据分布和后端分析任务都可预见的视频分析场景中,基于隐私风格变换的解决方案是有效的。但是由于用户对于其瞄准的 IM服务的先验知识很少,更不用说用户还可能有保护自己具有特殊分布的数据的需求。所以必须充分考虑对IM执行一个更好的保护,进而提出一个IM专属的微调(IM-specificfine-tuning)来自适应地去除数据中的隐私信息。实验表明,专属于IM的保护可以在数据可用性和隐私之间找到更好的平衡点。
IM 专属的微调方案的核心设计受基于信息删除(information-dropping)的数据增强(data augmentation)技术启发。数据增强技术目前已广泛用于DL模型的训练之中,其存在的主要目的是扩展训练数据的数量和数据分布,以最终提高模型的鲁棒性和泛化能力。基于信息删减的数据增强技术,例如随机擦除(random erasing)和网格遮挡(gridmask),是广泛使用的增强方法之一。大量的实验已经表明这类方法可以执行不可逆的语义保留的信息约减。
本实施例中选择 grid mask作为IM专属的微调方案。因为与其他信息删除方法相比,它会尽可能保留图像中的连续区域,不易于删除图像中的小对象,从而能够做到更好的图像语义保留。请注意,只要是数据增强方法均可以用于此步骤的微调方案。由于 gridmask有很多可配置的参数,系统需要为目标IM寻找一组合适的grid mask 配置。因此,本发明设计了一个优化器来指导保护器的微调过程。如图5所示,优化器将原始数据、保护数据和IM在保护数据的推理结果作为输入,通过度量隐私保护的有效性(通过人脸匹配)和IM推理准确率,来启发式地搜索一组新配置用于下一次数据保护器的迭代。本实施例中选择贝叶斯优化(BO)作为优化器的配置搜索算法,因为它可以通过充分考虑历史试验来获得更好的参数搜索效果。图6所展示的算法描述了整个数据保护器的具体生成过程。
用户可能希望提供自己独特的数据分布以生成个性化的数据保护器。在这种情况下,用户通常仅能提供一些大小不确定且没有标注的图片。为了能够满足这种灵活的数据替换需求,本发明采用基于蜕变测试(metamorphic testing)的评估方法来指导IM专属的微调过程。具体来说,优化器可以根据IM在保护之前和之后数据上的IM执行准确度来衡量保护器的可用性。
本实施例中,该系统定义了可用性指数(Usability Index,UI)来衡量IM服务在被保护数据上执行推理的准确性,以及保护指数(Protection Index,PI)来衡量被保护数据的隐私保护有效性。其中,可用性指数(UI)是使用 IM 在受保护数据上得到的推理准确度除以其在原始数据上的推断准确度计算而来;保护指数(PI)是通过将保护前后图像中未匹配的人脸数除以总人脸数计算而来。
数据保护器的生成过程可以仅使用个人笔记本电脑的CPU来完成。鉴于模拟的移动GPU的性能落后于真实移动设备上的GPU,在搜索过程中,每一轮被保护的数据将发送到用户的智能手机上进行IM推理。生成过程当中,移动设备与笔记本电脑通过数据线相连。系统通过程序插桩技术使用最终生成的数据保护器来增强用户提供的APK,即在所有获取图像的语句前以过滤器的形式插入个性化数据保护器,以提供防止用户隐私泄露的选项。
请注意,该过滤器不会强制保护用户的所有数据,而是通过添加一个弹出窗口供用户选择是否保护当前输入。用户可以选择只保护那些包含敏感信息的输入,例如人脸图像,而不保护一些其认为不包含敏感信息的图像,例如动物照片。
综上所述,本发明在准备阶段包含两项关键技术:
1. 智能模块打包技术。该技术包含IM模块的检测、提取和重新打包三个关键任务。通过使用该技术,系统可以将智能应用中的DL模型和相关代码变为一个可独立测试的可执行APK,并部署到用户的智能手机上。
2. 数据保护器生成技术。该技术从一个相对通用数据隐私保护策略开始,然后通过对重新打包的IM进行测试来迭代地调整数据保护策略以生成 IM 专属的数据保护器,最后,系统会将生成好的数据保护器透明地插入到原始APK中隐私增强的APK。
实验表明,对于各种主流的DL模型,本发明可以在用户数据可用性和数据权利保护(特别是数据隐私权)之间找到一个很好的平衡点。图7a、7b展示了本系统针对YoloV3和SSD的保护结果,即使是使用最先进的智能人脸匹配算法,攻击者也无法成功匹配受系统保护图像上的人脸和原始图像上的人脸。实验结果表明,本系统可以做到面对被广泛使用的YoloV3目标检测服务时,用mAP值下降0.03换来97%的人脸保护效果。请注意,这里以人脸识别匹配为例来展示本系统对用户数据权益的保护能力。需要强调的是,本发明所提供的保护方法是十分通用的,除了人脸隐私保护还可以提供其他数据权利保护能力。下面将给出对本系统的部分评估方案。
(一)可用性与安全性:
通过本系统为10个不同的深度学习推理服务IM1~IM10生成相应的数据保护器。图8a、8b展示了IM1~IM10专属的数据保护器在UI和PI方面的实验结果以及所带来的mAP损失(其中mAP是在物体检测场景中最常用的检测精度度量指标)。
其中,IM1~IM5是本系统从Google Play下载的应用程序中发现、切分和重新打包的智能服务。如图8a所示,IM3~IM5专属的数据保护器在保护隐私和保持准确性方面表现良好。当保证 PI 值大于85%时,mAP值仅下降 0.02。
IM1和IM2打包自两个不同开发者在2018年前后发布的不同智能应用。通过手动确认发现,IM1和IM2都是使用相同且较旧版本的 SSD 模型提供推理服务,其天然的糟糕性能阻碍了本系统为其生成更好的数据保护器,因为在搜索时微小的精度下降会带来严重的UI值降低。具体来说,mAP值减少0.028会被换算为UI值减少30%。请注意,对于同样采用了新版本的SSD的检测器 IM9,本系统生成的数据保护器效果要好很多。
为了更全面、更公平地评估本系统的有效性,还选择了当今广泛使用的DL模型来模拟部署在移动设备上和云端的IM服务IM6~IM10来进行实验。实验表明,本系统可以有效地为这些IM服务适应性地生成数据保护器,做到UI和PI的平衡。
(二)系统性能:
分为两部分来评估本系统的系统性能,即 IM 打包时间和数据保护器生成时间。首先在笔记本电脑上对IM打包过程进行了评估:IM1~IM5的打包阶段分别花费了 25s、18s、20s、22s和17s。在个人笔记本电脑上完成IM查找、切片、重新打包平均只需20秒,这个时间对于用户来说是可以接受的。
而后使用IM1~IM10和COCO评估了数据保护器生成过程的系统性能。图9展示了本系统每进行一次参数迭代所花费的时间。由图可知,本系统进行一次参数搜索和数据保护器更新大约需要花费8.5秒,其余时间是由IM推断而产生的。请注意,为了模拟基于云的IM服务,IM6~IM10是在通过无线网络连接到笔记本电脑的PC机上执行的。此外,经统计,增强后的APK只占用5MB的额外存储空间,其在用户的智能手机上的保护过程不到1s。
本发明提出了一种全自动的用户可控的数据权益保护系统,它赋予了用户通过牺牲很小的智能推断质量,来保护他们自己的数据权利的能力。该系统对用户输入的保护对App DL服务质量几乎没有影响,即IM在受保护用户输入上的推断结果与在未受保护图像上的推断结果几乎相同,但可以使用户数据免于受到如大规模人脸匹配而造成的隐私泄漏的危害。
该系统能够对用户指定的智能应用程序进行智能模块的查找、切分并将其重新打包成可独立运行测试的智能应用,同时针对此重新打包的智能应用适应性地生成IM专属的数据保护器,从而有效地为不同的智能应用生成可以平衡用户数据权益保护和深度学习推理质量的数据保护方案。
上述具体实施方式仅仅对本发明的优选实施方式进行描述,而并非对本发明的保护范围进行限定。在不脱离本发明设计构思和精神范畴的前提下,本领域的普通技术人员根据本发明所提供的文字描述、附图对本发明的技术方案所作出的各种变形、替代和改进,均应属于本发明的保护范畴。

Claims (9)

1.一种针对用户数据的全自动数据隐私保护系统,其特征在于,包括以下模块:
IM打包模块:用于根据用户提供的智能应用程序进行IM提取,并将其重新打包为可执行的智能应用;
保护器生成模块:用于针对所打包的智能应用自适应地生成数据保护器,并通过将该保护器嵌入到原始智能应用程序中的方式来自动增强该智能应用。
2.根据权利要求1所述的一种针对用户数据的全自动数据隐私保护系统,其特征在于,所述IM打包模块包括以下组件:
IM Finder组件:通过静态程序分析技术查找原始智能应用程序中标志IM的关键特征,并输出IM调用接口,即IM协议接口;
IM Slicer组件:从输出的IM调用接口开始,通过静态程序切片技术提取出与IM相关的全部代码,即用户输入的预处理代码和推断结果的后处理代码;
IM Repacker组件:用于对切分出的程序代码进行语句翻译和排列,并自动打包成可独立运行的智能应用。
3.根据权利要求2所述的一种针对用户数据的全自动数据隐私保护系统,其特征在于,所述IM Finder组件会根据系统预设的DL计算特征,对原始智能应用程序所包含的资源文件、本地计算库和字节码进行分析查找,并根据查找结果实现IM协议接口的追踪,其追踪机制包括以下情况:
Ⅰ、如果直接在字节码中找到了DL计算特征,则提取相应的API作为IM协议接口;
Ⅱ、如果在本地计算库中找到了DL计算特征,则提取对应本地库中的JNI,进行翻译,并将字节码中这些JNI的调用点所在函数,作为IM协议接口;
Ⅲ、如果在资源文件中找到了DL模型文件,则进一步在本地计算库或字节码中搜索DL模型的加载点,若模型加载点在本地库中,则继续按照情况Ⅱ提取JNI并完成后续操作,若模型加载点在字节码中,则提取加载点的返回值,作为预期的IM协议接口。
4.根据权利要求2所述的一种针对用户数据的全自动数据隐私保护系统,其特征在于,所述IM Slicer组件通过后向静态切片技术找到所有用于确定IM协议接口中参数的程序代码,并通过前向静态切片技术找到所有用于解码IM协议返回值的程序代码;具体切片过程包括:
首先,IM Slicer组件会构造一个PDG,PDG的节点是程序语句,边是语句间数据依赖或控制依赖,包括四种类型,即常规执行路径、函数调用路径、函数返回路径和全局变量访问路径;PDG构建完成之后,IM Slicer组件会从IM协议接口开始,沿着其构建的PDG进行切片。
5.根据权利要求2所述的一种针对用户数据的全自动数据隐私保护系统,其特征在于,所述IM Repacker组件对语句的排序过程具体包括:首先将语句以函数为单位组织进行整理,并根据这些函数之间是否存在调用关系来对函数进行分组;而后把每个函数组中没有任何调用者的函数计作头函数,并基于“先写后读”的原则编排头函数的调用顺序。
6.根据权利要求1所述的一种针对用户数据的全自动数据隐私保护系统,其特征在于,所述保护器生成模块的工作步骤具体包括:
1)利用数据保护器对系统预设或用户提供的测试数据集进行隐私保护数据转换,并将转换后的数据发送到重新打包的智能应用以执行智能推理;
2)优化器收集智能推理结果并评估转换后数据的IM推理准确性和隐私保护有效性,进而根据评估结果对数据保护器进行IM专属的微调;
3)重复上述步骤1)、2),直到评估结果达到预设阈值或者重复步骤达到预设步数上限,以生成IM专属的数据保护器;
4)通过程序插桩技术将优化后的数据保护器作为图片过滤器透明地嵌入到用户提供的智能应用程序中,实现后续用户输入数据的隐私保护。
7.根据权利要求6所述的一种针对用户数据的全自动数据隐私保护系统,其特征在于,所述步骤1)中,初始的数据保护器首先通过语义保留图像风格转换来去除测试数据集中与IM任务无关的信息。
8.根据权利要求6所述的一种针对用户数据的全自动数据隐私保护系统,其特征在于,所述步骤2)中,优化器采用基于信息删减的数据增强技术作为IM专属的微调方案,其微调过程具体包括:将原始数据、保护数据和IM在保护数据上的推理结果作为输入,通过评估隐私保护的有效性和IM推理准确率来启发式地搜索一组新配置,并据此指导数据保护器更新其数据转换策略。
9.根据权利要求6所述的一种针对用户数据的全自动数据隐私保护系统,其特征在于,所述步骤2)中,优化器分别通过可用性指数UI和保护指数PI来衡量IM在保护数据上的推理准确性以及保护数据的隐私保护有效性,其中UI是使用IM在保护数据上得到的推理准确度除以其在原始数据上的推断准确度计算而来,PI是将保护前后图像中未匹配的人脸数除以总人脸数计算而来。
CN202111409364.1A 2021-11-25 2021-11-25 一种针对用户数据的全自动数据隐私保护系统 Active CN113836585B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111409364.1A CN113836585B (zh) 2021-11-25 2021-11-25 一种针对用户数据的全自动数据隐私保护系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111409364.1A CN113836585B (zh) 2021-11-25 2021-11-25 一种针对用户数据的全自动数据隐私保护系统

Publications (2)

Publication Number Publication Date
CN113836585A true CN113836585A (zh) 2021-12-24
CN113836585B CN113836585B (zh) 2022-04-22

Family

ID=78971733

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111409364.1A Active CN113836585B (zh) 2021-11-25 2021-11-25 一种针对用户数据的全自动数据隐私保护系统

Country Status (1)

Country Link
CN (1) CN113836585B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104200155A (zh) * 2014-08-12 2014-12-10 中国科学院信息工程研究所 基于苹果手机操作系统iOS保护用户隐私的监测装置和方法
US20150178477A1 (en) * 2013-12-25 2015-06-25 Carrier Iq, Inc. Data Collection Privacy Agent to Ensure, Absent an Agreement, that Only Public Standards are Collected, and to Package Private Data Exclusively for Intended Recipients
CN106203113A (zh) * 2016-07-08 2016-12-07 西安电子科技大学 安卓应用文件的隐私泄露监控方法
CN110110544A (zh) * 2019-03-25 2019-08-09 中国科学院信息工程研究所 Android智能终端隐私保护方法及装置
CN110661790A (zh) * 2019-09-10 2020-01-07 连连银通电子支付有限公司 一种区块链隐私数据的保护方法、装置、设备和介质
US20200034566A1 (en) * 2018-07-24 2020-01-30 Arizona Board Of Regents On Behalf Of Arizona State University Systems, Methods, and Apparatuses for Implementing a Privacy-Preserving Social Media Data Outsourcing Model
CN112333158A (zh) * 2020-10-20 2021-02-05 杭州云象网络技术有限公司 一种基于区块链一体机的隐私保护方法及系统

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150178477A1 (en) * 2013-12-25 2015-06-25 Carrier Iq, Inc. Data Collection Privacy Agent to Ensure, Absent an Agreement, that Only Public Standards are Collected, and to Package Private Data Exclusively for Intended Recipients
CN104200155A (zh) * 2014-08-12 2014-12-10 中国科学院信息工程研究所 基于苹果手机操作系统iOS保护用户隐私的监测装置和方法
CN106203113A (zh) * 2016-07-08 2016-12-07 西安电子科技大学 安卓应用文件的隐私泄露监控方法
US20200034566A1 (en) * 2018-07-24 2020-01-30 Arizona Board Of Regents On Behalf Of Arizona State University Systems, Methods, and Apparatuses for Implementing a Privacy-Preserving Social Media Data Outsourcing Model
CN110110544A (zh) * 2019-03-25 2019-08-09 中国科学院信息工程研究所 Android智能终端隐私保护方法及装置
CN110661790A (zh) * 2019-09-10 2020-01-07 连连银通电子支付有限公司 一种区块链隐私数据的保护方法、装置、设备和介质
CN112333158A (zh) * 2020-10-20 2021-02-05 杭州云象网络技术有限公司 一种基于区块链一体机的隐私保护方法及系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
彭智俊等: "用静态信息流分析检测Android应用中的日志隐患", 《小型微型计算机系统》 *
树雅倩等: "基于云平台的移动支付类恶意软件检测系统的设计与实现", 《信息网络安全》 *

Also Published As

Publication number Publication date
CN113836585B (zh) 2022-04-22

Similar Documents

Publication Publication Date Title
US10540350B2 (en) Source code search engine
US20220318945A1 (en) Optimizing compilation of shaders
US10268549B2 (en) Heuristic process for inferring resource dependencies for recovery planning
US11816456B2 (en) Notebook for navigating code using machine learning and flow analysis
US11816234B2 (en) Fine-grained privacy enforcement and policy-based data access control at scale
US20180025162A1 (en) Application program analysis apparatus and method
US9569213B1 (en) Semantic visual hash injection into user activity streams
Mann et al. RADAR: Data protection in cloud-based computer systems at run time
US11651013B2 (en) Context-based text searching
Ahmad et al. Reproducible notebook containers using application virtualization
CN113836585B (zh) 一种针对用户数据的全自动数据隐私保护系统
US11349908B2 (en) Generating templates for deployment of system services
CN113138797A (zh) 面向Intel SGX的程序自动化移植系统
US8825589B2 (en) Rule correlation to rules input attributes according to disparate distribution analysis
CN115268847A (zh) 区块链智能合约的生成方法、装置及电子设备
US11119760B2 (en) Identifying and deleting unnecessary code lines
Ahmed et al. Analysis of cloud digital evidence
CN117828618B (zh) 许可链智能合约漏洞的检测方法、装置、设备及存储介质
US20220291964A1 (en) Workflow memoization
CN112817663B (zh) 一种应用程序的seccomp规则获取方法和装置
US20240119093A1 (en) Enhanced document ingestion using natural language processing
Engelen et al. Checking property preservation of refining transformations for model-driven development
CN116701017A (zh) 安卓系统内非公开api的调用方法、装置、设备及介质
CN118092923A (zh) 基于云服务的代码生成方法及装置
Shuktel App Doppelganger Detection via Artificial Neural Network

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant