COVID-19の接触フェーズを追跡する技術たち


コロナウイルス感染者が潜伏期間中に接触した可能性のある人を追跡することは感染症蔓延を防ぐために有効な手段であり、スマホなどのデバイスを用いてテクノロジー的に追跡技術を活用することで、より効率的にかつ正確に実現するための取り組みが多く発足している。
このような接触情報を直接扱うことの代表的な問題としてプライバシーがあげられ、ユーザーの位置情報などのセンシティブなデータが第三者に知られないようにする必要がある。

以下で紹介するプロジェクトはどれもベースの仕組みとしては同様で、ユーザーが所有しているスマホデバイスを使ったBluetoothのブロードキャストを利用する。Bluetoothを介して短期間のみ利用可能な擬似乱数値をブロードキャストし、近くのスマホデバイスはそれを保存する。
これはあくまでも擬似乱数なのでユーザーのアイデンティティや位置情報などのセンシティブな情報には一切関係しない。

その後、コロナウイルスの感染が発覚したユーザーはサーバーに生成した擬似乱数値を含めたレポートを送信する。一方で、ユーザーは過去に接触したデバイスから受け取った擬似乱数値がサーバーにアップロードしていないかチェックを定常的に行う。
この際の擬似乱数値の生成方法、鍵導出方法、レポートに対する署名の有無などの部分で技術的差異が見られる。

# DP-3T(Decentralized Privacy-Preserving Proximity Tracing)
欧州のアカデミックグループを中心に進められているプロジェクト

* [White Paper](https://github.com/DP-3T/documents)
* [Analysis of DP3T](https://eprint.iacr.org/2020/399.pdf)
* [Delayed Authentication Replay and Relay Attacks on DP-3T](https://eprint.iacr.org/2020/418.pdf)
* [Privacy-Preserving Contact Tracing: current solutions and open questions](https://eprint.iacr.org/2020/426.pdf)

# CEN Protocol(TCN)
[CoEpi](https://www.coepi.org/)、[Covid-Watch](https://www.covid-watch.org/)、Zcash Foundationのジョイントプロジェクト

CEN Protocolの仕組みについては以前記事を書いたのでご参考ください。

* [コロナ対策へ向けプライバシーを保護したデバイス追跡技術CEN Protocol](https://qiita.com/Osuke/items/3c9b5341c86d01738b91)
* [実装：Specification and reference implementation of the CEN Protocol for decentralized, privacy-preserving contact tracing.](https://github.com/TCNCoalition/TCN)

# MITによるPACT Protocol

* [The PACT protocol specification version 0.1](https://pact.mit.edu/wp-content/uploads/2020/04/The-PACT-protocol-specification-ver-0.1.pdf)
* [MIT develops privacy-preserving COVID-19 contact tracing inspired by Apple’s ‘Find My’ feature](https://techcrunch.com/2020/04/09/mit-develops-privacy-preserving-covid-19-contact-tracing-inspired-by-apples-find-my-feature/)

# Apple/GoogleのContact Tracingプロトコル

* [概略スライド：Privacy-safe contact tracing using Bluetooth Low Energy](https://blog.google/documents/57/Overview_of_COVID-19_Contact_Tracing_Using_BLE.pdf)
* [Framework Documentation(API)](https://covid19-static.cdn-apple.com/applications/covid19/current/static/contact-tracing/pdf/ContactTracing-FrameworkDocumentation.pdf)
* [Bluetooth Specification](https://covid19-static.cdn-apple.com/applications/covid19/current/static/contact-tracing/pdf/ContactTracing-BluetoothSpecificationv1.1.pdf)
* [Cryptography Specification](https://covid19-static.cdn-apple.com/applications/covid19/current/static/contact-tracing/pdf/ContactTracing-CryptographySpecification.pdf)
* [SECURITY ANALYSIS OF THE COVID-19 CONTACT TRACING SPECIFICATIONS BY APPLE INC. AND GOOGLE INC.](https://eprint.iacr.org/2020/428.pdf)


ツイートスレ

* Moxie Marlinspike (Signal CEO)

<blockquote class="twitter-tweet"><p lang="en" dir="ltr">First look at Apple/Google contact tracing framework:<br><br>1) Once a day, your device derives a new key (&quot;daily tracing key&quot;).<br><br>2) It uses that to derive a new &quot;proximity ID&quot; every time your device&#39;s bluetooth address changes (15min), which is broadcast to nearby BT sensors.<br><br>1/10</p>&mdash; Moxie Marlinspike (@moxie) <a href="https://twitter.com/moxie/status/1248707315626201088?ref_src=twsrc%5Etfw">April 10, 2020</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

* Henry de Valence (Zcash Foundation)：CEN Protocolの実装者

<blockquote class="twitter-tweet"><p lang="en" dir="ltr">Cryptography specifications for Apple/Google&#39;s Bluetooth contact tracing system: <a href="https://t.co/GKRVAm5q4B">https://t.co/GKRVAm5q4B</a></p>&mdash; \u221e (@hdevalence) <a href="https://twitter.com/hdevalence/status/1248661056622186496?ref_src=twsrc%5Etfw">April 10, 2020</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

# Epione

* [Epione: Lightweight Contact Tracing with Strong Privacy](https://sunblaze-ucb.github.io/privacy/projects/epione.html)
* [A better way to contact trace](https://medium.com/oasislabs/a-better-way-to-contact-trace-7beb12889017)