HotNets 2022 阅读评述(一)

05 Dec 2022

第21届HotNets于2022年11月14日-11月15日在美国得克萨斯州奥斯汀召开。本次会议共收到104篇投稿,接收32篇论文,录取率为30.77%。

SNG的同学们按照会议日程对论文内容进行了分期评述,本期介绍session1的论文。

Session 1: Web Next - decentralized, privacy-preserving, and resilient

Global Content Revocation on the Internet: A Case Study in Technology Ecosystem Transformation

Narek Galstyan (UC Berkeley and ICSI); James McCauley (Mount Holyoke College); Hany Farid, Sylvia Ratnasamy (UC Berkeley); Scott Shenker (ICSI and UC Berkeley)

这篇文章提出了一种名为TET (Technology Ecosystem Transformation)的范式与IRS(Internet Revocation System)的系统,旨在通过实现数据撤销操作以防止数据被其他用户滥用,帮助网络用户保护自己的数据隐私。该论文来自UC Berkeley的NetSys团队,合作机构还有Mount Holyoke College。

背景

在当前的网络环境下,无论图片拥有者的意愿如何,被发布出去的图片能够被任意用户随意适用与传播。某些情况下,图片被恶意分享可能只会造成尴尬;但是,某些情况下会对人造成心理影响甚至因为不堪羞辱而最终自杀,例如年轻人被胁迫拍摄图片后并被迫分享到互联网中,并被广泛传播。该网络现状未被改变的原因不是因为技术问题,而是因为网络生态的失败,网络社区的执行者由于金钱刺激并不愿意改变这种现状。因此,本文旨在呼吁网络社区改变这种现状,并且提出了TET范式与IRS系统用于指导社区实现转型。

系统目标

总的来说,文中提出的TET范式与IRS系统旨在实现5个目标:(1)给予用户内容控制权,用户可以在分享内容之后选择撤回内容以及所有被分享的副本,且不会透露用户身份给第三方;(2)撤回机制依然能够保护观看用户的隐私;(3)系统或用户应该被禁止查看违背拥有者意愿的图片,或在拥有者允许的情况下查看;(4)该机制的实现应该是轻量级的,不会额外影响网络的运行效率;(5)具有足够的健壮性,在图片经过转码等转换操作后仍然保持用户的撤回能力。为保证系统的可行性,该机制没有考虑部分实现目标,例如在有意攻击的情况下完成隐私保护,保护恶意分享图片的用户隐私,自动检测经过少量修改后的图片的所有权等。

系统方案

IRS需要多方系统写作实现,例如相机、浏览器、网站或应用,主要包括声明、标记、撤回和验证四个基本操作。其中,声明是指用户使用加密算法对照片进行所有权声明;标记是指在照片上添加对应的所有权标记信息;撤回是指图片上拥有一个标识符,用户可以通过改变该标识符撤回图片的查看权限;验证是指在照片被查看、下载与分享之前,首先验证该照片是否被所有者撤销,只有在没有撤销的情况下操作才被允许。作者的最终目标是,网络社区广泛采用该机制以实现用户的数据隐私保护。不过,该机制也面临一定的挑战,例如声明过程是否会暴露所有者的隐私,攻击者通过修改图片的少量的信息然后重新声明分享等。第一个挑战的解决方法是所有者在声明所有权时不把个人身份联系进去,第二个挑战的解决方法是提供一个申诉机制,用户可以对恶意分享的副本提起申诉,然后网络平台进行审核,不过该步骤带来额外的效率负担。

作者指出,上述最终目标的实现只需要网络内容聚合者进行合理的调整即可实现,不过目前他们并没有理由推动这一改变,因为他们更需要参与而不是隐私。因此,需要一个合理的方案来推动TET的发展,如首先在浏览器上实现该机制,使得在不改变内容聚合者行为的情况下完成隐私保护,这是因为目前几个主要的浏览器已经在积极研究隐私保护功能,可能有意愿推动实现TET。在浏览器上进行实现时,同样会遇到用户隐私、浏览延迟、图片负载增加等挑战,文中都给出了对应的解决方案,例如代理访问、提前渲染、布隆过滤器筛选。

个人观点

总的来说,文中提出了一种内容撤回范式与系统帮助用户保护数据隐私。如文中指出,该范式只是一个初步设想,最终实现需要面临许多挑战,例如需要多方协作、内容聚合商没有动力改变现状、机制存在的隐私与安全挑战等。虽然该范式或系统并不一定能保证成功,但显然这是一个正确且合理的发展方向,值得网络社区朝着这个方向进行改变与发展。

The Decoupling Principle: A Practical Privacy Framework

Paul Schmitt (University of Hawaii/INVISV); Jana Iyengar (Fastly); Christopher Wood (Cloudflare); Barath Raghavan (USC/INVISV)

背景

作者指出,当下几乎所有人都处于被监视的状态,而这种被监视的程度恰恰随着网络技术的发展而更为严重。事实上隐私的泄露已经成为一个几十亿美元规模的产业,甚至成为一些商业模式的核心。尽管我们有TLS等协议保护传输中的数据,但是大数据层面的的隐私信息仍然在传输中(如IP地址、DNS信息)和在内容提供者处被泄露。这个问题数十年来一直是学界关注的问题,但是解决此类问题的一种可复用的设计思路仍然尚未被提出。

主要贡献

在本篇文章中,作者提出了一种全新的“解耦原则”(Decoupling Principle)即:“为保证隐私,信息应该在架构上和制度上被分割,使得每一个体都只获得足够他们完成相关任务的信息。” 这种架构上的划分使得系统需要将许多基本的功能进行进一步的划分,例如将认证过程和建立会话的过程划分。而制度上的解耦则规定了在相互独立的个体之间(如具体的公司和网络运营商之间)有哪些信息可以相互分享。这种设计使得内容提供者的隐私泄露变得不再危险,因为他们几乎不再持有关键的隐私信息。简单来说,这个原则是将“who you are“ 和 “what you do” 区分开的手段。

在具体描述中,作者采用实心三角形指代敏感的用户身份信息, 指代非敏感的用户身份信息;指代敏感的用户数据, 指代非敏感的用户数据。当一个系统中只有User自身可以同时持有敏感的用户身份信息以及敏感的用户数据时,我们认为它是符合解耦原则的。

接下来作者通过一些实际系统的应用来说明解耦原则的正确性:

1.对于David Chaum 提出的盲签名技术,它实现了签名者对发送者的消息进行签名,却不能知道发送者消息的具体内容。而随后的验证者可以访问用户的敏感信息,却无法得知用户具体身份。

2.对于Privacy Pass系统,用户需要提供身份敏感信息以向issuer获取token,再通过非身份敏感的token向服务提供者(origin)发送具体数据。这样的设计也符合解耦原则。

个人观点

本文主要提出了一种保护用户隐私的方法,即”解耦原则“。该原则的核心内容————在系统中只有用户可以同时持有敏感用户信息和敏感用户数据,这一点在很多现实的隐私保护系统中得到了印证。本原则的提出也体现了作者对于相关领域充分的了解和调研。当然我们也需要意识到解耦原则并不可以解决所有隐私问题,对于具体的设计方案都还需要进行严密的安全性证明。除此之外本文还没有提出用确定的数值指标来衡量一个系统”解耦“的具体程度,因此我们暂时还无法利用此原则比较两系统的安全性。

Reflections on trusting distributed trust

Emma Dauterman, Vivian Fang, Natacha Crooks, Raluca Popa (UC Berkeley)

背景

许多系统将重要信息分布给多个参与者,以保证在出现恶意参与者的情况下,整个系统仍然是安全的。近年来学界和工业界很多研究致力于构建这样的分布式信任系统(distributed trust),其中就包括了诸多安全多方计算应用(如数据的私有分析(private analytics)、隐私数据的机器学习(secure learning)和密钥的恢复(private key recovery)),以及区块链技术。但是当具体构建一个分布式信任系统时,开发者往往面临这样一些问题:1)如何合理的选择参与者,并赋予其中一些控制权;2)如何说服潜在的参与者参与到系统中来 3)当控制放/开发者方受到渗透时,可能会对用户隐私产生较大威胁。

为此作者提出了一种使得所有参与者能够检测系统是否以预期方式运行的设计,同时对于所有违背安全性的行为,参与者可以额外给出可验证的证据。

系统实现

该系统实现的两个基石分别是安全硬件(Secure hardware)和仅附加日志 (Append-only log):安全硬件是指可验证其中运行代码的硬件。具体来说,通过安全硬件每个用户都应当可以验证自己是否在和一个配置正常的参与者通信。这种验证可以简单通过计算运行代码的哈希值来进行。除此之外安全硬件应该额外包括内存隔离、内存加密和检测篡改的功能。仅附加日志需要满足不可删改的性质,在运行过程中每个TEE(trusted execution environments)都会维护一个相应的仅附加日志。

在总体的系统实现层面作者设想了一个具有n个信任域的系统。每个信任域中有一台配有安全硬件的服务器。在理想情况下每个信任域会采用不同规格的安全硬件以避免其特定性质受到攻击。该系统具有以下性质:1)可验证性:客户机可以获取一份所有信任域中正在运行的代码的摘要以评估其安全性 2)易用性:开发者不需要人为进行不同域之间的同步 3)支持代码更新:开发者可以对代码进行更新,且用户可以验证每个信任域是否正确同步了更新。

在具体的系统实现层面: 系统的开发者需要将代码在每个信任域的TEE中进行封装. 此后客户端会利用TEE的验证机制对封装代码的has值进行逐一验证. 如果所有hash值均一致,则代表系统完全可信。如果≥t(t为安全门限)个信任域是可信的,则客户端可以检视各个信任域中的代码,并选择合适的秘密分布方案以避开不可信的参与者。

个人观点

这篇文章来自UC Berkeley的四位研究者,主要目的是通过安全硬件和仅附加日志等技术,实现每个参与者可监控系统是否处于安全运行状态的分布式信任系统。可以很大程度上解决恶意的应用开发者/应用开发者留有后门等问题,具有较高的创新型。存在的问题是系统设计上较为依赖安全硬件的性质,且理想状态下要求每个信任域采用不同的安全硬件,在厂商有限的情况下较难实现。整篇文章叙述的角度有些宽泛,缺少具体的代码描述和流程图展示,理解难度较高。

Ayush Goel(University of Michigan); Jingyuan Zhu(University of Michigan);Harsha V. Madhyastha (University of MichiganNarek)

背景

这篇文章来自密歇根州立大学的三位研究者,他们设计了一个草图,意在解决网页链接内容动态过程。

在网站上,一个页面可以包含许多指向其他外部页面的链接,当人们点击很久都不再更新的链接,很有可能发现其链接已不再工作或者链接内容已被更改。于是,人们提出了现有的解决方案——在链接创建时留存网页快照,并呈现给用户。但这也存在着缺陷,它将会不具备可能原始页面存在的交互功能,且也会存在内容过时的问题。

设计

为了解决链接失效或者内容漂移的问题并克服当前快照造成的静态的限制,本文提出了DuraLink的愿景。

他表示,只有在为了防止出现链接失效和内容漂移的错误时,才会提供快照服务。此外确定了实现DuraLink的三项能力。

(1)重复扫描链接的页面。在网页不再存在时,只能提供给用户快照来防止页面漂移。同时为了确保可以获得最新的页面,需要每隔一段时间重复捕获快照。

(2)当链接停止工作,确定该页面是否仍存在于备用URL。

(3)查看链接的意图以及识别链接内容的类别来判断是否发生内容漂移。作者通过数据库统计,分为了三个类别:信息页面,导航页面,事务页面。并对不同种类的页面进行了相应的分析,例如事务页面和导航页面用快照会不正常(会使交互功能无法工作),信息页面也不是静态(发生信息更新)。

具体的步骤如上图,用户点击链接后,需要检测链接是否失效,若失效查找链接别名,否则检查是否发生页面漂移,没有漂移的话,将用户重定向到链接别名。如果不存在别名或者发生了页面漂移,只能提供给用户之前在链接上最新捕获的快照。

挑战与可能的解决方案

1、发现URL别名

问题:不同于图,视频等,页面的内容,哈希不是其唯一标识符,它会随着时间变化;即使我们查找的内容与捕获的快照相似也可能与原来链接的指向内容不同;抓取所有地址来查找页面新的URL不现实。

解决:DuraLink使用爬取成功的快照的关键词,在搜索引擎搜索找到与原始URL链接相同的地址,设置为URL别名。关键词选取:信息页使用内容前N个单词,导航页使用标题。另外,DuraLink可以用题目或者内容在上次成功取得的快照中或者转换函数产生许多候选别名。

2、检测不同页面类型的内容是否漂移

问题:只对比原始快照和当前页面不充分,需要准确理解作者引用链接的意图。

解决:存在两种漂移:soft-404和预期会随时间改变的页面。使用二进制分类器,分类器会将链接周围的文本作为输入来判断是否违背了意图。

3、无缝集成到网站

问题:实现链接弹性,最小化网站提供者的负担并优化用户体验。

解决:与现代web堆栈集成。当网页作者希望连接到URL,他们会将URL u提交给perma.cc。perma.cc的工作是抓取链接上的页面并且返回一个同类链接给perma.cc/u。用户在未来点击链接时,浏览器会捕获并提供在perma.cc上u的快照。

当用户访问一个链接时,DuraLink将使用图中(a)的逻辑来确定引导用户到哪里;DuraLink希望将用户指向别名或快照的链接可以被适当地重写,如图(b)所示,使用动态重写HTMLs,当用户访问页面上的链接时,他们只需要与DuraLink交互,以获取页面快照。

问题:但问题是这样的架构在可用性和隐私方面都不理想。

解决:动态重写HTMLs。现代的web服务器已经生成了动态的HTML响应。每个页面都有一个HTML模板,根据服务器端状态(例如,页面的访问者数)、用户的cookie等响应用户请求填充。这种动态生成的HTML响应促进了DuraLink的服务器端集成。当web服务器接收到客户端对页面的请求时,除了查询其后端数据库的服务器端状态外,服务器还可以查询DuraLink想要如何处理页面上的每个外部链接。

个人观点

由于本文是一篇设想,提出的是作者的观点,并没有付诸于实践,具有局限性;但是也在一定程度上开拓了解决思路,也关注到了现下生活中常见的链接失效的问题,对当下的解决方案进行了完善,使得网页链接灵活性和准确性得以提高,或许之后做出DuraLink这样的工具使得人们在网络世界中无论何时都能获得想要的结果,让链接也能够长久的正常访问。

版权声明和个人见解说明

本文中所有的图片截取自论文正文,版权属于作者与ACM。

对每篇论文的“个人观点”仅仅是一人之见,希望能抛砖引玉,请大家多多发表意见。