本文学习文章:“浅析数据安全之密态化计算”
数据安全应保证数据产生、存储、传输、访问、使用、销毁、公开等全生命周期安全,并且需要做到保证数据处理过程的保密性、完整性、可用性。如何安全采集用户数据,并且实现安全地对用户数据进行使用,主要包括在整个数据周期中保证安全,即在数据的生产、传输、存储、访问、销毁等全生命周期的数据安全。
数据安全在整个社会发展中不可忽略,随着网络技术的发展,越来越多的网民开始关注个人的数据隐私,大型企业也因为担心数据被窃取导致泄漏事件发生,对企业造成负面的影响,并且企业之间很难进行数据元素的流通,从而导致“数据孤岛”现状。
随着国家对数据安全的重视,各企业告别数据明文时代,启程数据密态时代,根据专家判断,数据密态时代大致发展为三个阶段,计算密态化、大数据密态化以及数据要素密态化,考虑到目前大多数企业正在进行明文计算向密文计算转换的初始阶段,即:计算密态化。目前各行业在计算密态化阶段主要应用在较为基础和经典的场景,采用“隐私计算”的相关技术。
“隐私计算”一系列技术的提出,主要用于解决海量数据之间的安全流动,既需要保证数据发挥价值,又需要保护数据隐私安全,防止数据信息泄漏。隐私计算主要是指在数据全生命周期中,实现数据的“可用不可见”,兼顾数据流通与隐私保护两大方面,目前隐私计算想要实现的功能主要涵盖为两点:数据可用不可见,数据不动模型动。
隐私计算的技术主要分为三类:
百万富翁问题:,在没有可信第三方的前提下,两个百万富翁如何不泄露自己的真实财产状况来比较谁更有钱。
姚提到使用混淆电路构造比较函数\(f(a,b)\),参与比较的两方分别输入\(a\)和\(b\),经过混淆电路构造的函数\(f(a,b)\)的计算,根据输入值\(a\)与\(b\)的大小关系,输出\(0\)或\(1\)。
为了实现安全计算,姚提出在电路计算过程中对所有门电路上的计算值进行加密,针对每条线路,随机选取两个“混淆密钥\((k_{\alpha},k_{\beta})\)”来对线路\(\alpha\)和线路\(\beta\)的比特值进行加密,使用“双重加密”的方式,对于输出线路\(\gamma\),保证电路的计算安全。下图所示为“或”门的双重加密过程:
使用GC构造一个“与门”计算电路,具体参考:https://www.cnblogs.com/pam-sh/p/16869838.html
针对不同电路门运算,生成对应的电路加密表,并且需要保证电路加密表经过置换顺序后进行排列(混淆),防止由于位置导致泄露电路的输入信息,同时需要保存随机混淆值与对应真实值之间的映射关系,即“解密运算表”,用于在解密时,将电路的拓扑每层解密,实现电路的完整计算。
安全多方计算作为隐私计算的核心技术,其主要功能简述为:在无可信第三方的前提下,多个计算节点在分布式计算环境中,各自输入数据,共同完成某个功能函数的计算,并不泄漏各个参与方的输入,并且所有参与方可以共享功能函数的输出函数值。
上述过程中,各个参与方是将各自数据加密后再进行计算的,其中参与方在将数据分布式加密后再输入到功能函数的计算模块,充分保证明文的安全性。
安全多方计算本质上为功能函数的设计与计算结果的输出,在该过程,需要考虑到异地通讯部署计算节点的网络带宽问题,并且需要考虑待计算数据库的量级,以及功能函数计算时的性能和安全性,目前常用秘密共享、同态加密、不经意传输以及混淆电路这四类技术混合使用来完成多方计算函数的构造,其中秘密共享和同态加密技术将计算任务看作是函数;使用不经意传输构造的计算任务可以看作是查询功能;使用混淆电路构造的计算任务主要是电路的构造。上述四类技术在构造多方安全计算函数时,均有利弊,通常在构造时,混合使用上述几类技术。
安全多方计算技术主要基于各类底层密码学原语及协议,并且可以实现无可信第三方的可证安全性;但是由于底层技术大多为密码学技术,构造功能计算函数的通信复杂度以及计算复杂度而言,平衡优化为设计方案的难点。通用安全多方计算技术最早由图灵奖获得者华裔计算机科学家姚期智于1982年提出,经过30多年的发展变化,经历效率较优的专用安全多方计算算法时代,并且在2010年左右,各类安全多方计算的通用编译器的设计出炉,各类算法的改进以及硬件性能的稳定增长,使得安全多方计算具备更优的通用性。目前ABY3、MP-SPDZ、CrypTen、Obliv-C、TF-Encrypted MPC等安全多方计算的开源框架在科研以及产业界具备重要的意义,具备较强的借鉴意义。
安全多方计算作为隐私计算非常典型的技术工具,其可以达到“输入隐私性、计算正确性、去中心化”的特性,在数据融合场景以及数据资产化场景中,实现数据集的查询、统计分析、建模预测以及可信存储等功能,在6G技术兴起后,高带宽、低延时的网络特性使得安全多方计算的可信计算功能更显优势;并且安全多方计算技术可以利于实现数据的确权,保障数据所有者的权益,将数据交易的本质由数据所有权转换为数据使用权。安全多方计算技术不仅作为隐私计算的一类重要技术,该技术也被用在区块链领域,主要应用在隐私智能合约、密钥管理以及随机数生成等应用场景。
安全多方计算的开销依旧远大于明文计算,因此优化模型框架,提升算法效率以及正确率是目前研究者的重要工作任务。安全多方计算技术作为一类重要核心技术,依旧需要与可信硬件技术、联邦学习技术以及区块链技术进行合作,实现在可信环境中联合建模、统计分析,以及上链下链的一系列技术,共同保证完成数据安全,为隐私数据护航。随着目前算法的优化,可以做到支持更为复杂的运算任务,隐私计算技术将作为必备的技术,在数据的完整生命周期中,达到保护用户数据隐私保护的效果。
安全多方计算技术在一些特定的应用场景,可以实现计算逻辑,数据大小比较以及两方集合求交等场景,可以采用几种不同的密码学技术设计协议;针对通用的场景,理论上可以使用混淆电路、同态加密以及不经意传输协议实现各类计算,由于可扩展性质的限制,在产业界应用之前依旧需要优化。
安全多方计算技术主要用在需要秘密共享以及隐私保护的数据计算场景,主要包括可信交换、安全查询以及联合分析等。
主要用于解决“数据孤岛”问题,适用于不同企业机构间实现数据的可信互通,通过使用安全多方计算技术,保证数据的安全性以及隐私性问题,降低数据信息交易的成本,为数据拥有方和需求方之间提供安全交互服务的网络技术。
数据存储在云端服务器,出于合规要求,需要对数据分级并加密,用户在查询数据时,使用安全多方计算技术,保证数据查询方用户仅能得到自己需要的信息,密文状态下实现查询,本地用户解密,并且服务器端对于用户的查询的具体内容不知情,该类技术可以实现数据的安全查询,保障查询方用户与服务器的两方隐私。【匿踪查询】
目前的企业以及各类机构的数据分析主要聚集在自己内部应用产生数据进行分析,属于传统数据分析种类,随着跨机构以及跨国公司的经营运转,需要对各类数据进行联合分析,安全多方计算技术可以用于改进传统的数据分析算法,创建多个节点,多方参与者之间可以进行数据源协同分析,保护数据以及各方参与者。
随着大数据时代的发展,各大企业以及各类用户群体更加看重数据安全,实现密态化计算已经成为趋势,云端进行密文的相关计算,使用隐私计算技术来完成云端数据的函数计算功能,切实保护用户数据的数据安全,提高企业影响力。隐私计算技术助力企业管理亿万级用户的数据安全,为企业级用户提供数据安全保障。
[1] 罗克研."企业数据在“裸奔”学习通数据泄露事件背后难题和隐忧." 中国质量万里行 .07(2022):92-93.
[2] 陈晨, 李鸣烨, 李解."日本富士通信息共享平台数据泄露事件分析." 工业信息安全 .07(2022):61-66.
[3] 张捷.安卓应用敏感数据泄露及敏感行为检测方法研究[D].西安电子科技大学,2021.
[4] 苏丽洁. 2015-2020年中国数据泄露事件与对策分析[D].河南大学,2021.
[5] 钟诚,李建彬,么秀君,艾龙. 能源行业数据防泄露解决方案[A]. 中国网络安全产业联盟.2022年网络安全优秀创新成果大赛论文集[C].中国网络安全产业联盟:《信息安全研究》杂志社,2022:133-136.
[6] 刘蓓琳,王一凡,何家兴."大数据时代网络用户个人隐私保护研究." 物流工程与管理 39.06(2017):176-178.
[7] 韦韬,潘无穷,李婷婷,卫振强. 可信隐私计算:破解数据密态时代“技术困局”[J]. 信息通信技术与政策,2022,(05):15-24.
[8] 魏凯,闫树,吕艾临.数据要素市场化进展综述[J].信息通信技术与政策,2022(08):59-64.
[9] 贾轩,白玉真,马智华.隐私计算应用场景综述[J].信息通信技术与政策,2022(05):45-52.
[10] Yao A C. Protocols for secure computations[C]//23rd annual symposium on foundations of computer science (sfcs 1982). IEEE, 1982: 160-164.
[11] 李乃权.基于区块链的隐私数据安全综述[J].网络安全技术与应用,2022(01):19-21.
[12] 尹紫荆. 基于区块链的安全多方计算隐私保护技术研究[D].电子科技大学,2022.
[13] 冯琦.基于安全多方计算的数据隐私保护技术研究[D].武汉大学,2021.
[14] Beaver, Donald. "Correlated pseudorandomness and the complexity of private computations." Proceedings of the twenty-eighth annual ACM symposium on Theory of computing. 1996.