Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

TCN Protocol

From Wikipedia, the free encyclopedia
Proximity contact tracing protocol
Temporary Contact Numbers Protocol
Developed byTCN Coalition, incl.Covid Watch[1] and CoEpi[2]
IntroducedMarch 17, 2020 (2020-03-17)[3]
IndustryExposure Notification
Physical range~10 m (33 ft)[4]

TheTemporary Contact Numbers Protocol, orTCN Protocol, is anopen source,decentralized, anonymousexposure alert protocol developed byCovid Watch[1] in response to theCOVID-19 pandemic.[5][6][7][8] The Covid Watch team, started as an independent research collaboration betweenStanford University and theUniversity of Waterloo was the first in the world to publish awhite paper,[9] develop,[3] and open source[10] fully anonymous Bluetooth exposure alert technology in collaboration with CoEpi[2] after writing a blog post[11] on the topic in early March.

Covid Watch's TCN Protocol received significant news coverage[12] and was followed by similar decentralized protocols in early April 2020 likeDP-3T, PACT,[13] and Google/AppleExposure Notificationframework. Covid Watch then helped other groups like theTCN Coalition and MIT SafePaths[14] implement the TCN Protocol within their open source projects to further the development of decentralized technology and foster global interoperability of contact tracing and exposure alerting apps, a key aspect of achieving widespread adoption.[15] Covid Watch volunteers and nonprofit staff also built a fully open source mobile app for sending anonymous exposure alerts first using the TCN Protocol[16] and later using the very similar Google/Apple Exposure Notification Framework (ENF).[17][18]

The protocol, likeBlueTrace and theGoogle / Apple contact tracing project, useBluetooth Low Energy to track and log encounters with other users.[19][20][21] The major distinction between TCN and protocols like BlueTrace is the fact the central reporting server never has access to contact logs nor is it responsible for processing and informing clients of contact.[22][23] Because contact logs are never transmitted to third parties, it has major privacy benefits over approaches like the one used in BlueTrace.[24][25][26] This approach however, by its very nature, does not allow for human-in-the-loop reporting, potentially leading to false positives if the reports are not verified by public health agencies.[19]: p. 6 

The TCN protocol received notoriety as one of the first widely released digital contact tracing protocols[15][27][28] alongside BlueTrace,[29] the Exposure Notification framework, and thePan-European Privacy-Preserving Proximity Tracing (PEPP-PT) project.[30][31] It also stood out for its incorporation ofblockchain technology,[32] and its influence over the Google/Apple project.[33][20][34][35][36]

Overview

[edit]

The TCN protocol works off the basis of Temporary Contact Numbers (TCN), semi-random identifiers derived from a seed.[37] When two clients encounter each other, a unique TCN is generated, exchanged, and then locally stored in a contact log.[38] Then, once a user tests positive for infection, a report is sent to a central server. Each client on the network then collects the reports from the server and independently checks their local contact logs for a TCN contained in the report. If a matching TCN is found, then the user has come in close contact with an infected patient, and is warned by the client. Since each device locally verifies contact logs, and thus contact logs are never transmitted to third parties, the central reporting server cannot by itself ascertain the identity or contact log of any client in the network. This is in contrast to competing protocols like BlueTrace, where the central reporting server receives and processes client contact logs.[39]

Temporary contact numbers

[edit]

The entire protocol is based on the principle oftemporary contact numbers (TCN), a unique and anonymous 128-bit identifier generated deterministically from a seed value on a client device. TCNs are used to identify people with which a user has come in contact, and the seed is used to compactly report infection to a central reporting server. TCN reports are authenticated to be genuine by a secret held only by the client.

Generation

[edit]

To generate a TCN, first areport authorization key (RAK) andreport verification key (RVK) are created as the signing and verification keys of a signature scheme (RAK-RVK pair). In the reference implementation this pair is created using theEd25519 signature scheme.[40]: line. 13  Then, using the RAK an initialtemporary contact key (TCK) is generated using the algorithmtck0=H_tck(rak){\displaystyle tck_{0}=H\_tck(rak)}, whereH_tck(){\displaystyle H\_tck()} is theSHA-256hash function asH_tck(s)=SHA256(b'H_TCK'||s){\displaystyle H\_tck(s)=SHA256({\text{b'H}}\_{\text{TCK'}}||s)}. This TCK is not used to generate any TCNs, but is used in the next TCK; where all future TCKs are calculated using the algorithmtcki=H_tck(rvk||tcki1){\displaystyle tck_{i}=H\_tck(rvk||tck_{i-1})}. A 128 bit TCN is then generated from a given TCK using the algorithmtcni>0=H_tcn(le_u16(i)||tcki){\displaystyle tcn_{i>0}=H\_tcn(le\_u16(i)||tck_{i})}, wherele_u16(){\displaystyle le\_u16()} formats a supplied number as alittle endian unsigned 2 byte integer,[41] andH_tcn(){\displaystyle H\_tcn()} is the SHA-256 hash function asH_tcn(s)=SHA256(b'H_TCN'||s)[0:128]{\displaystyle H\_tcn(s)=SHA256({\text{b'H}}\_{\text{TCN'}}||s)[0:128]}. The following diagram demonstrates the key derivation process:

TCNs are unique to each device encounter, and RAK-RVK pairs are cycled at regular intervals to allow a client to report only specific periods of contact.

Reporting

[edit]

When a client wishes to submit a report for the TCN indicess>0{\displaystyle s>0} toe{\displaystyle e}, it structures the report asreport=rvk||tcks1||le_u16(s)||le_u16(e)||memo{\displaystyle report=rvk||tck_{s-1}||le\_u16(s)||le\_u16(e)||memo}. A signature is then calculated using the RAK, and it is transmitted to the server ass_report=report||sig{\displaystyle s\_report=report||sig}.

Because any given TCK can only be used to derive an equal or higher indexed TCNs, by submittingtcks1{\displaystyle tck_{s-1}} no encounters prior totcns1{\displaystyle tcn_{s-1}} can be calculated. However, there is no upper limit to encounters calculated using the same RAK-RVK pair, which is why they are cycled often. To prevent clients calculating unused TCNs,e{\displaystyle e} indicates the last TCN index generated with the given RVK.[42]: lines. 49–61  Additionally, since the RVK is used to calculate a TCK, andtcks1{\displaystyle tck_{s-1}} is provided, no valid TCNs in the reporting period can be derived from an illegitimate report. The only correct TCN calculable from a mismatched RVK andtcks1{\displaystyle tck_{s-1}} istcns1{\displaystyle tcn_{s-1}}, the TCN before the start of the reporting period.

Once a report is received, clients individually recalculate TCKs and TCNs for a given period using the original algorithms:tcks=H_tck(rvk||tcks1)tcns=H_tcn(le_u16(s)||tcks)tcks+1=H_tck(rvk||tcks)tcns+1=H_tcn(le_u16(s+1)||tcks+1)...tcke=H_tck(rvk||tcke1)tcne=H_tcn(le_u16(e)||tcke){\displaystyle {\begin{array}{lcr}tck_{s}=H\_tck(rvk||tck_{s-1})\\tcn_{s}=H\_tcn(le\_u16(s)||tck_{s})\\tck_{s+1}=H\_tck(rvk||tck_{s})\\tcn_{s+1}=H\_tcn(le\_u16(s+1)||tck_{s+1})\\...\\tck_{e}=H\_tck(rvk||tck_{e-1})\\tcn_{e}=H\_tcn(le\_u16(e)||tck_{e})\end{array}}}This is used by client devices to check their local contact logs for potential encounters with the infected patient, but has the dual benefit of verifying reports since false reports will never produce matching TCNs.

Memo

[edit]

In the report structure, the memo is a space for freeform messages that differ between TCN implementations. The section is between 2 and 257 bytes, and made up of a tag identifying the specific implementation, as well as a data and data length pair. It is formatted asmemo=tag||len(data)||data{\displaystyle memo=tag||len(data)||data}. The data is standardized for different tags, and can be as follows:

TagData standard
0x0CoEpi symptom report v1
0x1Covid Watch test result v1
0x2itoArchived 2020-04-13 at theWayback Machine report v1
0x3-0xfeAllocated for future official TCN apps or versions
0xffReserved (can be used to add more than 256 types later)

Technical specification

[edit]

The protocol can be divided into two responsibilities: an encounter between two devices running TCN apps, and the notification of potential infection to users that came in contact with a patient. For the purposes of this specification, these areas are named theencounter handshake, andinfection reporting. Theencounter handshake runs on Bluetooth LE and defines how two devices acknowledge each other's presence. Theinfection reporting is built onHTTPS and defines how infection notices are distributed among clients.

Encounter handshake

[edit]

When two devices come within range of each other, they exchange a handshake containing TCNs. In order to achieve this the encounter handshake operates in two modes (both with two sub-modes), broadcast oriented and connection oriented. Broadcast oriented operates using the modes broadcaster and observer, while connection oriented operates using peripheral and central. The two modes are used to circumvent certain device limitations, particularly in regard to iOS restrictions in place before version 13.4.[43] In both modes the protocol is identified with the 16 bitUUID0xC019.

In broadcast mode, a broadcaster advertises a 16-byte TCN using the service data field of the advertisement data. The observer reads the TCN from this field. In connection-oriented mode, the peripheral advertises using the UUID. The service exposes a read and writeable packet for sharing TCNs. After sharing a TCN, the central disconnects from the peripheral.

Infection reporting

[edit]

When a user tests positive for infection, they upload a signed report, allowing the past 14 days of encounters to be calculated, to a central server. On a regular basis, client devices download reports from the server and check their local contact logs using the verification algorithm. If there is a matching record, the app notifies the user to potential infection.

TCN Coalition

[edit]

On 5 April 2020, the globalTCN Coalition was founded by Covid Watch and other groups that had coalesced around what was essentially the same approach and largely overlapping protocols, with the goal to reduce fragmentation, and enable global interoperability of tracing and alerting apps, a key aspect of achieving widespread adoption.[44] The TCN Coalition also helped establish theData Rights for Digital Contact Tracing and Alerting framework, which functions as a bill of rights for users of such apps.[45]

Currently the protocol is used by TCN Coalition membersCoEpi[46][47] andCovid Watch,[48][22] and was likely a source of inspiration for the similarGoogle / Apple contact tracing project.[35][34]

See also

[edit]

References

[edit]
  1. ^ab"Covid Watch".Covid Watch. 2020-02-19. Archived fromthe original on 2020-08-06. Retrieved2020-06-02.
  2. ^ab"CoEpi website".CoEpi. 2020-03-17. Archived from the original on June 27, 2011. Retrieved2020-03-17.
  3. ^ab"First implementation of anonymous exposure alert protocol".GitHub. Retrieved2020-03-17.
  4. ^Sponås, Jon Gunnar."Things You Should Know About Bluetooth Range".blog.nordicsemi.com. Retrieved2020-04-18.
  5. ^University, Stanford (2020-04-09)."Stanford researchers help develop privacy-focused coronavirus alert app".Stanford News. Retrieved2020-04-22.
  6. ^"One victim of COVID-19 pandemic may be privacy rights".JapanTimes. 2020-03-31. Archived fromthe original on 2020-03-30. Retrieved2020-03-31.
  7. ^"What privacy-preserving coronavirus tracing apps need to succeed".VentureBeat. 2020-04-13. Archived fromthe original on 2020-04-16. Retrieved2020-04-18.
  8. ^Shendruk, Amrita Khalid, Amanda (16 April 2020)."How Bluetooth could bring digital contact tracing for Covid-19 to billions".Quartz. Retrieved2020-04-19.{{cite web}}: CS1 maint: multiple names: authors list (link)
  9. ^"Covid Watch White Paper".Covid Watch. 2020-03-20. Archived fromthe original on 2021-10-15. Retrieved2020-03-20.
  10. ^"Covid Watch Github".Github. 2020-03-17. Retrieved2020-03-17.
  11. ^"Covid Watch Bluetooth Primer Blog Post".Internet Archive. 2020-03-07. Archived fromthe original on 2020-04-10. Retrieved2020-03-07.
  12. ^"Covid Watch News Coverage".Covid Watch. 2020-06-02. Archived fromthe original on 2020-08-03. Retrieved2020-06-02.
  13. ^"First MIT PACT paper"(PDF).PACT MIT. 2020-04-08. Archived fromthe original on 2020-04-09. Retrieved2020-04-08.
  14. ^"Bluetooth signals from your smartphone could automate Covid-19 contact tracing while preserving privacy".MIT News. 2020-04-08. Retrieved2020-04-08.
  15. ^ab"Initial TCN Coalition commit · TCNCoalition/TCN@1b68b92".GitHub. Retrieved2020-04-18.
  16. ^"Covid Watch open source iOS TCN app".Github. 2020-03-17. Retrieved2020-03-17.
  17. ^"Covid Watch iOS G/A EN Github Repo".Github. 2020-06-02. Retrieved2020-06-02.
  18. ^"Covid Watch Github Repo".Github. 2020-03-07. Retrieved2020-03-07.
  19. ^abJason Bay, Joel Kek, Alvin Tan, Chai Sheng Hau, Lai Yongquan, Janice Tan, Tang Anh Quy."BlueTrace: A privacy-preserving protocol for community-driven contact tracing across borders"(PDF).Government Technology Agency. Archived fromthe original(PDF) on 2020-04-20. Retrieved2020-04-12.{{cite web}}: CS1 maint: multiple names: authors list (link)
  20. ^ab"Is Apple and Google's Covid-19 Contact Tracing a Privacy Risk?".Wired.ISSN 1059-1028. Retrieved2020-04-18.
  21. ^"ZCash Privacy Preserving Contact Tracing App on Blockchain the Temporary Contact Number TCN Coalition".Cryptocurrency News - TCAT. 2020-04-12. Retrieved2020-04-18.
  22. ^abTCNCoalition/TCN, TCN Coalition, 2020-04-18, retrieved2020-04-18
  23. ^"The PACT protocol specification"(PDF).PACT MIT. Archived fromthe original(PDF) on 2020-04-18. Retrieved2020-04-23.
  24. ^"Aisshwarya Tiwar: COVID-19: Zcash (ZEC) and TCN Developing Privacy-Preserving Contact Tracing App | IoT Council".www.theinternetofthings.eu. Archived fromthe original on 2020-05-14. Retrieved2020-04-19.
  25. ^Nabben, Kelsie (2020-04-14).Trustless Approaches to Digital Infrastructure in the Crisis of COVID-19.
  26. ^Lorenz Cuno Klopfenstein; Saverio Delpriori; Gian Marco Di Francesco; Riccardo Maldini; Brendan Dominic Paolini; Alessandro Bogliolo (2020).Digital Ariadne: Citizen Empowerment for Epidemic Control.arXiv:2004.07717.Bibcode:2020arXiv200407717C.
  27. ^"Stanford researchers help develop privacy-focused coronavirus alert app".techxplore.com. Retrieved2020-04-19.
  28. ^"Will Smartphones Help Us Keep COVID-19 Under Control?".www.news.gatech.edu. Archived fromthe original on 2020-04-20. Retrieved2020-04-20.
  29. ^"Singapore launches TraceTogether mobile app to boost COVID-19 contact tracing efforts".CNA. Archived fromthe original on 2020-03-20. Retrieved2020-04-20.
  30. ^"COVID-19 Apps and Websites - The "Pan-European Privacy Preserving Proximity Tracing Initiative" and Guidance by Supervisory Authorities".Inside Privacy. 2020-04-02. Retrieved2020-04-20.
  31. ^Valence, Henry de (6 April 2020)."Private Contact Tracing Protocols Compared: DP-3T and CEN".The Zcash Foundation. Retrieved2020-04-22.
  32. ^"ZCash Privacy Preserving Contact Tracing App on Blockchain the Temporary Contact Number TCN Coalition".Cryptocurrency News - TCAT. 2020-04-12. Retrieved2020-04-19.
  33. ^"Demonstrating 15 contact tracing and other tools built to mitigate the impact of COVID-19".TechCrunch. 5 June 2020. Retrieved2020-10-31.
  34. ^ab"Apple and Google partner on Covid-19 contact tracing technology | Hacker News".news.ycombinator.com. Retrieved2020-04-20.
  35. ^ab"Covid Watch Celebrates Apple and Google's COVID-19 Contact Tracing Announcement".www.covid-watch.org. Archived fromthe original on 2020-04-19. Retrieved2020-04-18.
  36. ^"Contact Tracing in the Real World | Light Blue Touchpaper". 12 April 2020. Retrieved2020-04-20.
  37. ^"Temporary Contact Number based Contact Tracing".lucumr.pocoo.org. Retrieved2020-04-19.
  38. ^"Protecting Lives & Liberty: How Contact Tracing Can Foil COVID-19 & Big Brother".ncase.me. Retrieved2020-04-19.
  39. ^Liauw, 🇸🇬 Frank (2020-04-09)."TraceTogether: under the hood".Medium. Retrieved2020-04-18.
  40. ^"TCNCoalition/TCN/src/keys.rs".GitHub. Retrieved2020-04-19.
  41. ^"nom::le_u16 - Rust".docs.rs. Retrieved2020-04-18.
  42. ^"TCNCoalition/tcn-client-android/src/main/java/org/tcncoalition/tcnclient/TcnKeys.kt".GitHub. Retrieved2020-04-19.
  43. ^"r/iOSBeta - [Feature] IOS 13.4 beta enables BLE long range support (iPhone 11/11 Pro only)".reddit. 3 March 2020. Retrieved2020-04-18.
  44. ^"TCN Coalition · A Global Coalition for Privacy-First Digital Contact Tracing Protocols to Fight COVID-19".tcn-coalition.org. Archived fromthe original on 2021-07-04. Retrieved2020-04-16.
  45. ^Reed <questions@dcta-datarights.org>, Harper."Data Rights for Digital Contact Tracing and Alerting · Overview".dcta-datarights.com. Retrieved2020-04-16.[permanent dead link]
  46. ^"Will Smartphones Help Us Keep COVID-19 Under Control? | Mirage News".Mirage News. 2020-04-15. Retrieved2020-04-19.
  47. ^Co-Epi/app-android, CoEpi, 2020-04-19, retrieved2020-04-19
  48. ^"Covid Watch".www.covid-watch.org. Archived fromthe original on 2020-08-06. Retrieved2020-04-19.

External links

[edit]
Pre-pandemic
2020
2021
2022
2023
Africa
Northern
Eastern
Southern
Central
Western
Asia
Central/North
East
Mainland China
South
India
By location
Southeast
Malaysia
Philippines
West
Europe
United Kingdom
By location
Eastern
Western Balkans
European Union
EFTA countries
Microstates
North
America
Atlantic
Canada
Caribbean
Countries
British Overseas Territories
Caribbean Netherlands
French West Indies
US insular areas
Central America
United States
responses
By location
Oceania
Australia
New Zealand
South
America
Others
Culture and
entertainment
Arts and
cultural heritage
Education
By country
Sports
By country
By sport
Society
and rights
Social impact
Labor
Human rights
Legal
Minority
Religion
Economic
By country
By industry
Supply and trade
Financial markets
Information
Misinformation
Politics
Political impact
Protests
International relations
Language
Others
Health issues
Medical topics
Testing and
epidemiology
Apps
Prevention
Vaccines
Topics
Authorized
DNA
Inactivated
mRNA
Subunit
Viral vector
Virus-like particles
In trials
Attenuated
DNA
Inactivated
RNA
Subunit
Viral vector
Virus-like particles
Deployment
by location
Africa
Asia
Europe
North America
Oceania
South America
Others
Treatment
Monoclonal antibodies
Small molecule antivirals
Specific
General
Institutions
Hospitals and
medical clinics
Mainland China
Others
Organizations
Health
institutes
Pandemic
institutes
Relief funds
People
Medical
professionals
Researchers
Officials
WHO
By location
Others
Data (templates)
Global
Africa
Americas
Asia
Europe
Oceania
Others
General
Software
packages
Community
Organisations
Licenses
Types and
standards
Challenges
Related
topics
Retrieved from "https://en.wikipedia.org/w/index.php?title=TCN_Protocol&oldid=1320619095"
Categories:
Hidden categories:

[8]ページ先頭

©2009-2025 Movatter.jp