图灵奖得主、Algorand 创始人 Silvio Micali 认为追踪新冠肺炎要在现有技术的帮助下兼顾安全与隐私,并提出用非许可型区块链增强 Google-Apple 蓝牙解决方案。

推荐阅读:《链闻精选好文|疫情下的区块链行业行动与思考

原文标题:《Algorand 创始人 Silvio Micali 教授提出基于区块链的新冠肺炎追踪方法》
撰文:Silvio Micali,Algorand 创始人

新冠肺炎疫情已经扰乱了全球各地的商业运作和个人生活。新冠病毒的病毒性和传染性极强,各国政府不得不在经济活动和民众安全之间做出权衡。在疫情的传播和严重程度得到控制之前,这种情况都会持续下去。

延缓疫情蔓延的最有效手段是大规模接种有效疫苗。接种疫苗不仅能保护个人,也能保护整个人群。由此产生的群体免疫将极大减少病毒的可感染宿主,有望切断病毒传播链。对免疫低下者、新生儿等不能接种疫苗的人群而言,群体免疫至关重要。我们相信疫苗研发正在迅速推进当中,因为当前全球医学界都万众一心、专注于此。然而,让大多数人群都完成疫苗接种可能需要很长时间。

要对抗尚无疫苗可用的传染病,我们可以运用其他手段。几个世纪以来,隔离和接触者追踪一直是控制疫病的常用辅助方法(回想下 1348 年黑死病爆发时的威尼斯隔离)。实际上,通过隔离或治疗发现并阻断传播链,是非常有效的疾病蔓延控制方法。

当然,无论设计得有多好,接触者追踪应用也替代不了能检测每个人的完善医疗系统。但即使所有其他措施都已到位,接触者追踪仍旧十分重要。事实上,鉴于此疾病甚至能通过无症状感染者传播,在可以开展广泛检测的情况下,接触者追踪是最有用的。

追踪新冠肺炎如何兼顾安全与隐私?Algorand 创始人提出区块链解决方案

采用哪种接触者追踪方法?

最近业界提出了几种自动化接触者追踪方法,利用几乎无处不在的智能手机助力数据收集。如果不考虑隐私问题,这些方法能够很容易地生成详细的社交互动图表。

我们不认同那种紧急情况下隐私和安全不能两全的想法:在现有技术的帮助下,完全能做到两者兼顾。我们所考虑的新冠肺炎追踪解决方案既要行之有效,也要尊重基本自由。

蓝牙方法

利用手机的蓝牙(低功耗)技术,是全世界范围内广受青睐的一类方法。意大利政府已决定支持此种方法;而 Google 和 Apple 则提出了另一种方法。如果说意大利的方法是「以政府为中心」,那么 Google 和 Apple 的方法则是「以个人为中心」。

Google-Apple 方法可高度概括如下。每部手机都持续扫描附近的其他蓝牙设备,并生成一系列临时「假名」。[1] 两部手机如果近距离接触(例如彼此距离小于 1 码)达到至少几分钟,便会交换当前假名,并各自生成此次接触的记录,记录内容包括对方提供的假名。如果一个手机主人检测出新冠肺炎阳性,那么从概念上讲,他 / 她的手机会在中央数据库发布过去 14 天中用过的所有假名。每部手机 X 定期查询此中央数据库,下载与过去 14 天期间相关的假名,检查其中有无同一时期出现在其接触记录中的假名。如果找到这样的记录,手机 X 就会警示用户,其最近接触过新冠肺炎阳性个体。收到警示的用户即可要求检测并暂时自我隔离。

蓝牙方法受人青睐的地方有很多。事实上,这些方法不仅自动运行,还非常高效。人们很难回忆起过去 14 天来可能接触过的每一个人。因此,要一一找出一个新确诊新冠肺炎患者的近期接触人群,可能需要相当复杂的问询过程。此外,联系所有接触者也是一项非常繁重的工作。

蓝牙方法针对个体对自身数据的可控性方面可能各不相同。就 Google-Apple 提案来说,他们非常尊重个人隐私,接触记录仅存储于个人手机,不会外泄,所有超出 14 天的接触记录会被永久删除。

意大利方法中,收集到的个人接触数据发往政府机构,由政府机构计算每个人的传染风险水平,再向风险较高的人发出警示。接触数据的传输是加密的(且经过数字签名)。这一步很重要,可防止个人数据被不当利用。不过必要时,相关机构能够使用这些数据。

诚然,可利用零知识证明和复杂加密来协调隐私与正确性。但此处很关键的一点是简单性。原因有二:首先,大国的国家级解决方案规模庞大;其次,相比依赖密码学家,只要能让公众理解一个方案的有效性,他们就更易采纳并使用这个方法,从而实现大规模推广!

缺失要素:通用全局视图

然而,两种蓝牙方法都缺失了一些东西。也就是显示一天中密切接触者数量的通用全国视图。

Google-Apple 方法中,无论政府还是个人,都不具备任何此类全国视图。事实上,该方法中唯一的国家数据库含有给定日期新冠肺炎检测呈阳性的人员数量,而不是当天该国出现的密切接触次数。

意大利方法中,唯一具有全国视图的是该国政府:公民个人仅有自己的个人视图,无法确定政府掌握的全国视图是否真的是「他们各自个人视图的汇总」。

Algorand 认为应该创建一份全国视图。实际上,如果能准确高效地了解国家当前社交互动程度,将有利于政府决定如何选择新政策或调整旧政策。我们还认为,此视图不仅应是全国性的,还应是通用的。事实上,

如果要求所有公民保持社交隔离,那么他们都应有权获得政府用于决策的那些信息。

通用全国视图可使公民理解政府决策背后的原因,这是民主的关键要素。仅仅让政府与公众「共享」其决策依据是不够的。更好的做法是向公众保证,共享的信息确实是事实真相。因此我们认为,真正去中心化的非许可型公有区块链所提供的透明度是成功的新冠肺炎追踪解决方案的重要组成部分:因为数据的验证和不变性(以及由此确立的真相)是该系统本身的关键元素。

当然,为了通用,全国视图不应牺牲公民的个人数据隐私。下一章中,我们将描述生成密切接触者通用全国视图的具体方法,该方法既尊重个人隐私,又有助于做出良好决策。

不同的国家 / 地区在社会权益与公民权利之间的权衡各不相同。愿意为了公共利益而披露更多个人数据的国家 / 地区,可能会选用比我们设想的更为详细的通用全国视图。

这些国家 / 地区还可能会另外重构一套完全不公开的全国视图,仅供适当的政府机构使用。然而,拥有通用全国视图总是有好处的。下面我们就来看看如何生成这样的视图。

Algorand 的方法

我们建议用非许可型区块链增强 Google-Apple 蓝牙解决方案。这个增强的概念非常简单,且该增强方案是自愿的。

区块链

区块链本质上是一个去中心化的数据库,可保证以下三个属性:

  1. 任何人都可以在数据库中写入条目。
  2. 任何人都可以读取数据库中的任何条目。
  3. 任何人都无法删除、修改数据库条目,也无法更改条目的顺序。

如果某一方可获得所有人的信任,就可以很容易地保证以上属性。该受信任方 (a) 可以在收到写入请求后立即执行请求;(b) 可以在收到读取请求后立即返回正确的条目;并且 (c) 不会擦除、修改所维护数据库的条目,也不会打乱条目的顺序。但遗憾的是,让所有人都信任的一方很难找到,甚至很可能并不存在。因此,完全去中心化的区块链非常有价值,因为它无需任何受信任方就可以保证上述三个属性。

总体构想

选择加入该计划的一位公民用其手机 X 下载合适的应用程序。

手机 X 选择了自己的假名 Px。(为简单起见,我们暂时假设每部手机只生成一个假名。临时假名可用于 Google-Apple 方案。)

手机 X 将自己的假名发送给与其有密切接触的另外一部手机 Y,反之亦然。

当存在符合条件的接触情况(即手机 X 与至少另一部手机密切接触的时间达到预定义时间)时,X 会生成 (1) 个人记录和 (2) 编辑后接触记录。个人记录仅在 X 内部存储,并且会注明接触的时间、时长和距离,以及所涉及的全部手机的假名。[1] 编辑后接触记录则可以采用以下简化格式:「假名为 P x 的手机的用户与至少一位假名手机用户发生符合条件的接触」。

每天结束时,手机 X

(a) 将所有编辑后接触记录的列表发送至一个或多个运营中心 (OC),并
(b) 在区块链上发布该列表的哈希值(即加密压缩形式)。

运营中心会在可公开访问的网站上发布收到的所有上述列表。任何人都可以从运营中心的网站上获取上述列表,对列表进行哈希处理并将所获得的哈希值与手机在区块链上发布的哈希值进行比较,来验证其真实性。

如果手机 X 的用户新冠肺炎检测结果呈阳性,则该用户会指示 X 在 (1) 区块链和 (2) 运营中心网站上发布以下信息:「假名为 Px 的手机用户新冠肺炎检测结果呈阳性」。

手机 Y 每天都会访问运营中心网站,以了解当天报告的新冠肺炎检测呈阳性的所有用户的手机假名。手机 Y 会检查每个这样的假名 Px 是否出现在其最近 14 天符合条件的接触个人记录中。如果曾出现过,Y 会警示其用户接受测试,并进行自我隔离以保护他人安全。

注意事项

  • 选择加入计划时,公民可指定共同居住人员或日常交互人员的手机号码。与上述手机的接触不会被视为符合条件的接触。
  • 如果编辑后记录始终采用我们所提出的简化格式,那么手机 X 的编辑后记录列表内容可替换为仅包含 X 在给定的某一天中经历的符合条件的接触数量。当然,编辑后记录可以包含更多信息(例如,接触的大致持续时间),但采用上述简化格式的记录已经足以得出有价值的通用全国视图。
  • 除采用简化格式的编辑后接触记录列表外,如果在每天结束时,手机会报告前述应用程序保持打开状态的时长,可能会有很大帮助。这将有助于评估通用全国视图的意义。
  • 手机每天发布一次编辑后接触列表(的哈希值),以避免发布次数过多导致区块链拥挤。这一点非常重要,因为随着对社交互动的限制逐渐放松,符合条件的接触数量也会越来越多。由于到运营中心的带宽可由政府或适当的私营企业进行任意设置,因此手机可在相应的接触发生时立刻向运营中心发送编辑后记录。但是,若每天将所有编辑后记录一起发送,则手机将能够隐藏符合条件的接触发生的时间。
  • 符合条件的接触的编辑后记录属于极其隐私的信息。每部手机 X 都由假名 Px 代替,并且由手机自行选择假名。此外,每条有关 Px 的编辑后记录均不包含任何其他假名。因此,即使手机 X 和手机 Y 之间发生了符合条件的接触,也没有人能够从 X 和 Y 的编辑后记录中推断出这一结论。
  • 准确而有效地了解每天选择加入系统的公民数量以及每天发生符合条件的接触数量,对于政府制定有关放开经济的决策来说至关重要。此类信息还非常有助于评估近距离社交互动的次数是否因新实施的政策或新发布的官方信息发生了变化,以及发生了怎样的变化。
  • 查看国内的社交互动信息并非政府的特权。任何人都可以访问运营中心的网站并分析所有编辑后接触记录列表。外国政府、国际学者和所有公民都可以研究和分析这些编辑后记录,并给出自己的结论和建议。实际上,随着技术的发展和新的数据挖掘方法出现,人们将能够更好地理解这些记录。编辑后记录甚至可以成为重要的知识来源,在未来发生疫情时帮助制定相关行动决策。
  • 在上述系统中,手机 X 的用户最多有两次给出明确同意。第一次发生在用户最初选择加入系统时。第二次只有在用户发现自己的新冠肺炎检测结果呈阳性后才会发生,此时用户会再次选择加入系统并指示其手机在区块链上发布以下信息:「假名为 Px 的手机用户新冠肺炎检测结果呈阳性」,其余全部操作将由其手机自动完成。这种方式无疑是可取的,因为它可以为用户节省很多宝贵时间,但前提是用户可以随时选择退出。
  • 区块链能够保证所有编辑后记录的真实性。任何运营中心都无法以任何方式更改报告的编辑后接触记录而不被发现,因为发布在区块链上的数据具有不可更改性,而且手机会将自己的编辑后接触记录的哈希值直接发布在区块链上。
  • 为确保运营中心如实发布其接收的所有数据,可以考虑使用多个运营中心。实际上,最好的方法是允许任何有意愿成为运营中心的一方进行自荐。一天结束时,任何手机在将其新的和编辑后的接触记录列表的哈希值发布在区块链上后,都会将该列表发送至「官方」运营中心,以及其信任的另外一个或多个运营中心,以公开发布其列表。在这种情况下,如果官方运营中心没有发布给定手机的列表,则用户自己选择的另一个运营中心将进行发布。这样可保证上述全国通用列表 (1) 不会被伪造,并且 (2) 将全部可用。
  • 将编辑后记录发布在运营中心的网站上,并且仅将其哈希值发布在区块链上,可以确保在社会同意将额外信息纳入编辑后记录时,区块链不会变得拥挤。实际上,无论列表本身有多长,编辑后记录列表的哈希值长度始终为 32 字节。
  • 任何像 Algorand 这样安全、可扩展、去中心化的区块链都可以用于此方案。[1] 安全性保证了数据的不可更改性。可扩展性保证了区块链可以处理一个非常大的国家 / 地区中所有手机的哈希值。去中心化保证了任何政府以及任何一方都无法审查或影响区块链将发布哪些经过哈希处理的记录。
  • 有些区块链具备了安全和去中心化特性,但无法满足本应用场景所需的可扩展性要求,由 Algorand 率先开发的密码抽签技术将有效赋能此类区块链。从本质上讲,利用 Algorand 的密码抽签技术,能使该系统以确保公平的方式获得编辑后记录的随机样本(例如 1% 的记录)。无论拥有多大的权限,任何人都无法影响系统选择给定编辑后记录的概率。发布在区块链上的每条编辑后记录均可证明其经过公平选择,而且任何人都可以轻松核查该证明的正确性。只将经过加密处理的公平选择的编辑后记录发布到区块链,能够减少可发布的记录数量,从而防止区块链发生拥挤。但是,由于选择每条编辑后记录的概率都是预先确定的并且是众所周知的,因此任何人都可以仅通过发布在区块链上的记录反推出编辑后记录的实际数量。

重要系统细节

数字签名

上述方案的安全性可通过数字签名来保证。在数字签名方案中,用户 X 生成两个单独的密钥:验证密钥 Px 和与之匹配的签名密钥 Sx。用户 X 使用密钥 Sx 对消息进行数字签名。知道 Px 的任何人都可以验证 X 通过 Sx 生成的数字签名,但只有知道 Sx 的人可以代表 X 生成数字签名。而且,这两个秘钥不会相互造成泄露。也就是说,仅凭借 Px 无法找出 Sx。因此,为保障自身利益,X 应公开 Px,从而使任何人都可以验证 X 生成的数字签名,但 X 需要对 Sx 保密,以防止其他任何人伪造 X 的数字签名。Px 通常被称为 X 的公钥,而 Sx 通常被称为 X 的私钥。

将签名验证密钥作为假名

对于手机 X 而言,较有利的做法是同时生成验证密钥 Px 和与之匹配的签名密钥 Sx,并把假名用作 Px。在将其当日符合条件的接触列表发送到运营中心时,以及在将该列表的哈希值发布到区块链上时,X 还可以发送并发布相应数量的数字签名,以防止有人冒名顶替 X 发送并发布虚假信息。(即使假名频繁变更,仍然可以将假名继续用作验证密钥。)

认证验证秘钥

当手机 X 下载加入系统所必须的应用程序并生成一个验证签名对(Px,Sx)时,该应用程序将对 Px 进行数字签名,以向所有人证明假名 Px 是由适当的手机使用适当的软件生成的。该应用程序对 Px 的签名实际上是 Px 的证书,可证明 Px 的真实性,进而证明有关 Px 的任何数字签名信息的真实性。

洋葱路由

洋葱路由是一种人们所熟知的信息传递方式,能够隐藏信息发送者的身份和 / 或位置。手机使用洋葱路由技术向运营中心发送自己的编辑后接触记录列表,并将这些列表的哈希值发布在区块链上。

交错发布

为防止区块链拥挤,每部手机将每隔 24 小时发布一次自己的编辑后接触记录列表的哈希值,但不一定要在同一天结束时与所有其他手机同时发布。

安全硬件

手机不会以明文形式存储其用户的个人记录,而是存储在自己的安全计算机芯片中。如果没有用户的密码或指纹,任何人都无法获取存储在该安全区域的任何数据。因此,丢失手机不会导致个人记录的丢失。

不断变化的假名

如上所述,系统中的每部手机都有自己的单个假名。但是,系统可允许定期变更假名,Google-Apple 方案也是如此。

系统增强

刚刚专注于讨论如何生成全局视图,现在我们提一下另外两个不同的挑战。挑战其一,我们需要确保没有恶意公民上传自己确证阳性的错误信息;其二,专家意见——即能让公民与权威医生 / 自动医疗服务分享自己的个人信息,以基于他的健康史来选择最佳应对方案。而其实无需区块链,只要基于纯粹的密码学协议,就能在不暴露任何系统参与者身份的情况下,解决这两个挑战。

协力合作

应当明确的是,如果没有行业、技术提供商和政府之间的快速协调,就无法成功发布我们基于区块链的跟踪系统。面对此次疫情,我们的行动或许已经为时已晚,但我们必须开发准确的接触者追踪技术,以便在未来出现某种新病毒时,能在采取极端措施之前及时阻止病毒的传播。

在此次疫情期间,区块链的实用性已在其他领域中得到证实。特别值得一提的是,Algorand 基金会成功开发了 一款应用程序,能让用户收集自我报告的诊断信息。

区块链的社会潜力

区块链具有改善民主并将其提升至一个全新高度的潜力。它将帮助我们建立信任、确立共同的事实,并在必要时达成社会共识。

区块链能够以高效直接的方式形成通用全局视图,同时避免传统中心化方法所固有的审查和篡改风险,堪称人类前所未有的强大工具,并将在我们实现共同抱负的道路上发挥至关重要的作用。

来源链接:mp.weixin.qq.com