System architecture and method of processing data therein
Abstract
A software architecture encoded on a non-transitory computer readable medium, where the software architecture includes a first protocol, wherein the first protocol is configured to form a plurality of groups, wherein each group of the plurality of groups comprises a set of randomly selected nodes from a network. The software architecture further includes a second protocol, wherein the second protocol is configured to randomly select a first group from the plurality of groups formed by the first protocol. Additionally, the software architecture includes a third protocol, wherein the third protocol is configured to designate the first group to sign a first message by generating a first group signature. Furthermore, the software architecture includes a hash function, wherein the hash function is configured to generate a hash value from the first group signature.
Claims
exact text as granted — not AI-modified1 . A non-transitory computer-readable medium encoded with a computer-readable program, when executed by a processor, will cause a computer to execute a method of processing data, wherein the method comprises:
forming a plurality of groups, wherein each group of the plurality of groups comprises a set of randomly selected nodes from a network; randomly selecting a first group from the plurality of groups formed by the first protocol; designating the first group to sign a first message by generating a first group signature; and generating a hash value from the first group signature.
2 . The method of claim 1 , wherein the hash value is selects a second group, wherein the second group comprises a node from the network.
3 . The method of claim 1 , wherein a size of the each group of the plurality of groups is a system parameter.
4 . The method of claim 1 , wherein the first group signature is generated by a threshold set of the first group, wherein a size of the threshold set is smaller than or equal to a size of the first group.
5 . The method of claim 1 , wherein the first message comprises a value derived from a preceding group signature.
6 . The method of claim 1 , wherein the first message is a system parameter.
7 . The method of claim 1 , further comprising interacting each node of a universal network with each other via a communication channel.
8 . The method of claim 7 , wherein the communication channel comprises at least one of a peer-to-peer network, a broadcast network, or a gossip network.
9 . The method of claim 1 , wherein the randomly selecting the first group from the plurality of groups formed by the first protocol comprises:
selecting the first group from the plurality of groups based on a seed.
10 . The method of claim 9 , wherein the seed is derived from a preceding group signature produced by the third protocol.
11 . The method of claim 10 , wherein the derivation of the seed from the preceding signature is by the hash function.
12 . The method of claim 1 , further comprising establishing a group public key, by a setup protocol, for the first group of the plurality of groups formed by the first protocol, wherein the first group signature is validated by the group public key.
13 . The method of claim 12 , wherein the first group signature is unique to the group public key and the first message.
14 . The method of claim 13 , wherein the first group signature is based on at least one of bilinear pairings, bilinear pairings on elliptic curves, Gap Diffie-Hellman groups (GDH) or Boneh-Lynn-Shacham (BLS) signature scheme.
15 . The method of claim 12 , wherein the setup protocol establishes an individual private key share for each node of the each group of the plurality of groups formed by the first protocol.
16 . The method of claim 15 , wherein the individual private key shares of each of the nodes of a threshold set of the first group are used for generating the first group signature, wherein a size of the threshold set is smaller than or equal to a size of the first group.
17 . The method of claim 1 , further comprising nominating a plurality of nodes, wherein the set of randomly selected nodes are part of the plurality of nodes.
18 . The method of claim 17 , wherein the nominating the plurality of nodes is performed by adapting a methodology for nominating the plurality of nodes, wherein the methodology comprises at least one of a proof-of-work puzzle, an external third-party endorsement, or a validation of computational resources.
19 . The method of claim 17 , wherein the nominating the plurality of nodes is performed by assessing a monetary value associated with each node of the plurality of nodes.
20 . The method of claim 17 , further comprising detecting misbehavior of a select node of the set of randomly selected nodes.
21 . The method of claim 20 , wherein the detecting misbehavior of the select node of the set of randomly selected nodes is followed by penalizing the select node.
22 . The method of claim 20 , wherein the detecting misbehavior of the select node of the set of randomly selected nodes is followed by revoking a nomination of the select node.
23 . The method of claim 1 , wherein the hash value selects a plurality of block makers.
24 . The method of claim 23 , further comprising prioritizing each block among a plurality of blocks available for timestamping; and
designating the first group to timestamp a prioritized block of the plurality of blocks.
25 . The method of claim 23 , further comprising designating the first group to timestamp a first block of a plurality of blocks.
26 . The method of claim 25 , wherein generating the timestamp by a threshold set of the first group, wherein a size of the threshold set is smaller than or equal to a size of the first group.
27 . The method of claim 25 , further comprising broadcasting at least one of the timestamp or a timestamped first block to the network.
28 . The method of claim 23 , further comprising designating the first group to validate a first block of a plurality of blocks.
29 . The method of claim 28 , further comprising broadcasting a notarization or a notarized first block.
30 . The method of claim 23 , wherein each block maker of the plurality of block makers creates a plurality of blocks, wherein a block of the plurality of blocks references another block of the plurality of blocks.
31 . The method of claim 30 , wherein the another block is at least one of timestamped or notarized.
32 . The method of claim 30 , wherein the block comprises transactions collected by a block maker of the plurality of block makers.
33 . The method of claim 23 , further comprising prioritizing each block maker of the plurality of block makers based on a ranking system.
34 . The method of claim 33 , wherein the ranking system comprises:
deriving a rank for the each block maker of the plurality of block makers, wherein the rank is derived from the first group signature; assigning a plurality of first weights, to each block associated with a respective block maker of the plurality of block makers, wherein each first weight of the plurality of first weights of the each block is based on the rank of the respective block maker of the plurality of block makers; and assigning a second weight to at least one chain of blocks, wherein the second weight of the at least one chain of blocks is based on the each first weight of the each block in the at least one chain of blocks, wherein a block of the at least one chain of blocks references another block of the at least one chain of blocks.
35 . The method of claim 34 , further comprising selecting a preceding block of a chain of blocks of the at least one chain of blocks based on a factor, wherein the factor comprises the first weight of the preceding block of the chain of blocks or the second weight of the chain of blocks.
36 . A non-transitory computer-readable medium encoded with a computer-readable program, when executed by a processor, will cause a computer to execute a method of processing data, wherein the method comprises:
forming a plurality of groups, wherein each group of the plurality of groups comprises a set of randomly selected nodes from a network; randomly selecting a first group from the plurality of groups formed by the first protocol; and designating the first group to sign a first message by generating a first group signature.
37 . The method of claim 36 , further comprising generating a hash value from the first group signature.
38 . The method of claim 36 , further comprising nominating a plurality of nodes, wherein the set of randomly selected nodes are part of the plurality of nodes.
39 . The method of claim 36 , further comprising establishing a group public key for the first group of the plurality of groups formed by the first protocol, wherein the first group signature is validated by the group public key.
40 . The method of claim 39 , wherein the first group signature is unique to the group public key and the first message.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.