US 11,914,712 B1
Blockchain based secure naming and update verification
Raouf Boutaba, Waterloo (CA); Woojung Kim, Waterloo (CA); and Yuhao Dong, Waterloo (CA)
Filed by Raouf Boutaba, Waterloo (CA); Woojung Kim, Waterloo (CA); and Yuhao Dong, Waterloo (CA)
Filed on Jul. 28, 2022, as Appl. No. 17/876,482.
Application 17/876,482 is a division of application No. 16/270,534, filed on Feb. 7, 2019, granted, now 11,428,139.
Int. Cl. G06F 21/57 (2013.01); G06F 21/64 (2013.01); H04L 9/00 (2022.01)
CPC G06F 21/57 (2013.01) [G06F 21/64 (2013.01); H04L 9/50 (2022.05)] 6 Claims
OG exemplary drawing
 
1. A method of providing a secure naming system, the method comprising:
receiving, by a namespace administrator, a name registration;
registering a name-binding associated with the name registration in an initial specific node of an index tree, the name-binding comprising an index and a hash of the name registration;
the initial specific node of the index tree spending an unspent transaction output from a previous node of the index tree, wherein the unspent transaction originates from a publicly accessible transaction log;
wherein each node of the index tree represents a registration of a different, separate unit of digital information and a different, separate verifiable key derived therefrom, each separate unit of digital information originating from a separate source, the index tree providing secure access of specific digital information originating from a specific source by the end-point device, wherein the endpoint devices trusts the specific source while avoiding trusting the server;
computing a verifiable random function of the name registration, the verifiable random function using a private key to compute and wherein the verifiable random function can be publicly verified;
determining a proof of existence of the name-binding in the initial specific node of the index tree, the proof of existence represented as a path of transaction from a root node of the index tree to the initial specific node of the index tree;
receiving a query of the name registration from an end-point device; and
providing the verifiable random function, the proof of existence, and the name-binding to the end-point device and wherein the end-point device derives the index of the initial specific node of the index tree using the verifiable random function, verifies the proof of existence, and determines whether the name-binding hashes to a value matching in the proof of existence.