Event ledger
First Claim
1. A method implemented by at least one hardware processor comprising:
- receiving a request from a first party to publish an event occurrence to an event ledger, the event comprising;
a first event data indicating a name of the publisher who can attest that said event occurred, said publisher identified by that publisher'"'"'s domain name;
a second event data indicating a date and time at which the event occurred;
a third event data indicating a description of the event and an event type; and
acryptographic signature of a string resulting from encoding a result of a hash function applied to the first, second and third event data, said first, second and third event data being formatted according to an event ledger requirement prior to applying the hash function, the string of the event signed using a private key of the publisher;
receiving a certificate from an Internet address associated with the publisher domain name, the certificate comprising a public key of the publisher;
verifying the cryptographic signature of the event using the received certificate;
publishing the event to the event ledger, said event ledger comprising;
a database shared by multiple computing nodes participating in a system based on a blockchain protocol, the database storing event data associated with events already occurred and published by publishers in a blockchain data structure and storing the certificate with the event to subsequently verify the identity of the publisher;
subsequently receiving a query from a second party to search for an event in said event ledger; and
in response,accessing said blockchain data structure of said database to obtain said event data for said searched event;
providing to the second party said obtained event data from said ledger, andextracting said first, second and third event data from the obtained event data,removing said cryptographic signature from the event;
reformatting said first, second and third event fields according to the event ledger requirement, andapplying said hash function to the reformatted said first, second and third event data to obtain a further resulting string and encoding said further resulting string, said second party using said public key from said stored publisher certificate to sign the encoded further resulting string, said signed further resulting string used to verify validity of the cryptographic signature and event data authenticity, andusing said verified authentic event as triggering condition to achieve fulfillment of a smart contract for said second party on a smart contract network.
1 Assignment
0 Petitions
Accused Products
Abstract
The present disclosure provides a globally accessible, un-forgeable, and permanent repository of published events in the form of an event ledger. A method according to the present disclosure includes receiving a request from a publisher to publish to an event ledger an event including a name of the publisher, a date and time at which the event occurred, a description of the event, and a cryptographic signature of the event signed using a private key of the publisher, receiving a certificate from the publisher including a public key of the publisher, validating the cryptographic signature of the event using the received certificate, and publishing the event to the event ledger.
76 Citations
18 Claims
-
1. A method implemented by at least one hardware processor comprising:
-
receiving a request from a first party to publish an event occurrence to an event ledger, the event comprising; a first event data indicating a name of the publisher who can attest that said event occurred, said publisher identified by that publisher'"'"'s domain name; a second event data indicating a date and time at which the event occurred; a third event data indicating a description of the event and an event type; and
acryptographic signature of a string resulting from encoding a result of a hash function applied to the first, second and third event data, said first, second and third event data being formatted according to an event ledger requirement prior to applying the hash function, the string of the event signed using a private key of the publisher; receiving a certificate from an Internet address associated with the publisher domain name, the certificate comprising a public key of the publisher; verifying the cryptographic signature of the event using the received certificate; publishing the event to the event ledger, said event ledger comprising;
a database shared by multiple computing nodes participating in a system based on a blockchain protocol, the database storing event data associated with events already occurred and published by publishers in a blockchain data structure and storing the certificate with the event to subsequently verify the identity of the publisher;subsequently receiving a query from a second party to search for an event in said event ledger; and
in response,accessing said blockchain data structure of said database to obtain said event data for said searched event; providing to the second party said obtained event data from said ledger, and extracting said first, second and third event data from the obtained event data, removing said cryptographic signature from the event; reformatting said first, second and third event fields according to the event ledger requirement, and applying said hash function to the reformatted said first, second and third event data to obtain a further resulting string and encoding said further resulting string, said second party using said public key from said stored publisher certificate to sign the encoded further resulting string, said signed further resulting string used to verify validity of the cryptographic signature and event data authenticity, and using said verified authentic event as triggering condition to achieve fulfillment of a smart contract for said second party on a smart contract network. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A system comprising:
-
at least one hardware processor configured to; receive a request from a first party to publish an event occurrence to an event ledger, the event comprising; a first event data indicating a name of a publisher who can attest that said event occurred, said publisher identified by that publisher'"'"'s domain name; a second event data indicating a date and time at which the event occurred; a third event data indicating a description of the event and an event type; and a cryptographic signature of a string resulting from encoding a result of a hash function applied to the first, second and third event data, said first, second and third event data being formatted according to an event ledger requirement prior to applying the hash function, the string of the event signed using a private key of the publisher; receive a certificate from an address associated with the publisher domain name, the certificate comprising a public key of the publisher; verify the cryptographic signature of the event using the received certificate; publish the event to the event ledger, said event ledger comprising;
a database shared by multiple computing nodes participating in a system based on a blockchain protocol, the database storing event data associated with events already occurred and published by publishers in a blockchain data structure and storing the certificate with the event to subsequently verify the identity of the publisher;subsequently receive a query from a second party to search for an event in said event ledger; and
in response,access said blockchain data structure of said database to obtain said event data for said searched event; provide to the second party said obtained event data from said ledger, and extract said first, second and third event data from the obtained event data, remove said cryptographic signature from the event; reformat said first, second and third event fields according to the event ledger requirement, and apply said hash function to the reformatted said first, second and third event data to obtain a further resulting string and encoding said further resulting string, said second party using said public key from said stored publisher certificate to sign the encoded further resulting string, said signed further resulting string used to verify validity of the cryptographic signature and event data authenticity, and use said verified authentic event as triggering condition to achieve fulfillment of a smart contract for said second party on a smart contract network. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A non-transitory computer readable medium comprising instructions that when executed by at least one hardware processor, configure the at least one hardware processor to:
-
receive a request from a first party to publish an event occurrence to an event ledger, the event comprising; a first event data indicating a name of a publisher who can attest that said event occurred, said publisher identified by that publisher'"'"'s domain name; a second event data indicating a date and time at which the event occurred; a third event data indicating a description of the event and an event type; and a cryptographic signature of a string resulting from encoding a result of a hash function applied to the first, second and third event data, said first, second and third event data being formatted according to an event ledger requirement prior to applying the hash function, the string of the event signed using a private key of the publisher; receive a certificate from an address associated with the publisher domain name, the certificate comprising a public key of the publisher; verify the cryptographic signature of the event using the received certificate; publish the event to the event ledger, said event ledger comprising;
a database shared by multiple computing nodes participating in a system based on a blockchain protocol, the database storing event data associated with events already occurred and published by publishers in a blockchain data structure and store the certificate with the event to subsequently verify the identity of the publisher;subsequently receive a query from a second party to search for an event in said event ledger; and in response, access said blockchain data structure of said database to obtain said event data for said searched event; provide to the second party said obtained event data from said ledger, and extract said first, second and third event data from the obtained event data, remove said cryptographic signature from the event; reformat said first, second and third event fields according to the event ledger requirement, and apply said hash function to the reformatted said first, second and third event data to obtain a further resulting string and encoding said further resulting string, said second party using said public key from said stored publisher certificate to sign the encoded further resulting string, said signed further resulting string used to verify validity of the cryptographic signature and event data authenticity, and use said verified authentic event as triggering condition to achieve fulfillment of a smart contract for said second party on a smart contract network. - View Dependent Claims (18)
-
Specification