Dynamic blockchain system and method for providing efficient and secure distributed data access, data storage and data transport
20200403778 ยท 2020-12-24
Inventors
- James A. Carson (Riverside, CT, US)
- Ryuta Richard Makino (Greenwich, CT, US)
- Susan H. Glenn-Joseph (Rye Brook, NY, US)
Cpc classification
H04L9/3239
ELECTRICITY
G06F21/64
PHYSICS
H04L9/0637
ELECTRICITY
H04L9/3218
ELECTRICITY
International classification
H04L9/06
ELECTRICITY
G06F21/64
PHYSICS
H04L9/32
ELECTRICITY
Abstract
A dynamic blockchain system includes: at least one complete asset node server, including a complete asset manager and a complete asset storage; a plurality of hash asset node servers, each including a hash asset manager and an asset blockchain and; a dynamic blockchain management server, including a blockchain manager, a representation calculation function, and an asset map with a plurality of map records; and a blockchain management device; such that the dynamic blockchain management server validates a digital asset by lookup in the at least one complete asset node server and by verification of the digital asset by a random sampling in a statistically significant number of hash asset node servers in the plurality of hash asset node servers.
Claims
1. A dynamic blockchain system, comprising: a) at least one complete asset node server, which is configured to store a complete digital asset; b) a plurality of hash asset node servers, wherein each hash asset node server stores a copy of an asset blockchain, which includes a hash of the complete digital asset for secure preservation and validation of the complete digital asset, wherein the copy of the asset blockchain comprises asset blocks; and c) a dynamic blockchain management server, which is configured to validate the complete digital asset; wherein the at least one complete asset node server further comprises: a first processor, a first non-transitory memory, and a first input/output component.
2. The dynamic blockchain system of claim 1, wherein the dynamic blockchain management server is configured to perform an asset validation of the complete digital asset by matching with a lookup asset identifier to retrieve the complete digital asset in the at least one complete asset node server, and by verification of the complete digital asset by a random sampling in a statistically significant number of hash asset node servers in the plurality of hash asset node servers, such that an asset block of the asset blockchain matches the lookup asset identifier and a cryptographic hash of the complete digital asset, for each hash asset node server in the statistically significant number of hash asset node servers.
3. The dynamic blockchain system of claim 2, wherein the asset validation of the complete digital asset is successful if at least a minimum validation threshold of hash asset node servers in the statistically significant number of hash asset node servers validate the complete digital asset.
4. The dynamic blockchain system of claim 3, wherein the minimum validation threshold of hash asset node servers is a validation proportion threshold in a range of 50%-99%.
5. The dynamic blockchain system of claim 1, further comprising: a dynamic blockchain management device, which enables a user to interact with the dynamic blockchain management server.
6. The dynamic blockchain system of claim 1, further comprising: a plurality of dynamic blockchain management devices, which each enable a corresponding user to interact with the dynamic blockchain management server; wherein each dynamic blockchain management device in the plurality of dynamic blockchain management devices is associated with a corresponding hash asset node server in the plurality of hash asset node servers.
7. The dynamic blockchain system of claim 1, wherein the at least one complete asset node server further comprises: a) a complete asset manager, which manages processing of the complete digital asset; and b) a complete asset storage, which stores a plurality of records comprising the complete digital asset; all connected via c) a first data bus.
8. The dynamic blockchain system of claim 7, wherein the complete asset storage comprises a plurality of asset records, which each comprises: a) a first asset identifier; b) an asset type; c) a first transaction number; and d) a complete asset object.
9. The dynamic blockchain system of claim 8, wherein the complete asset object further comprises a plurality of asset elements.
10. The dynamic blockchain system of claim 9, wherein each hash asset node server further comprises: a) a second processor; b) a second non-transitory memory; c) a second input/output component; d) the asset blockchain, comprising a linked structure of the asset blocks, wherein each asset block comprises a hash representation of the complete digital asset; and e) a hash asset manager, which manages processing of the asset blockchain; all connected via f) a second data bus.
11. The dynamic blockchain system of claim 10, wherein each asset block in the linked structure of the asset blocks comprises: a) a previous block hash; b) a time stamp; c) a second asset identifier; d) a second transaction number; and e) an asset hash, which is a cryptographic hash of the complete asset object.
12. The dynamic blockchain system of claim 11, wherein the dynamic blockchain management server is configured to perform an asset validation of the complete digital asset by: lookup with a lookup asset identifier to retrieve the complete digital asset in the at least one complete asset node server, such that the lookup asset identifier matches the first asset identifier; and by verification of the complete digital asset by a random sampling in a statistically significant number of hash asset node servers in the plurality of hash asset node servers, such that each asset block matches the lookup asset identifier and a cryptographic hash of the complete digital asset, for each hash asset node server in the statistically significant number of hash asset node servers, such that the lookup asset identifier matches the second asset identifier and a calculated cryptographic hash of the complete digital asset matches the asset hash.
13. The dynamic blockchain system of claim 11, wherein each asset block in the linked structure of the asset blocks further comprises: a plurality of asset element hashes, which are cryptographic hashes of the plurality of asset elements.
14. The dynamic blockchain system of claim 11, wherein each asset block in the linked structure of the asset blocks further comprises: a cryptographic proof.
15. The dynamic blockchain system of claim 14, wherein the cryptographic proof is selected from the group consisting of: a proof of work; a proof of stake; and a combination of these.
16. The dynamic blockchain system of claim 2, wherein the dynamic blockchain management server further comprises: a) a processor; b) a non-transitory memory; c) an input/output component; d) a blockchain manager; and e) an asset map, which is configured to allow lookup of corresponding complete asset node servers and corresponding hash asset node servers that correspond to the complete digital asset; all connected via f) a data bus.
17. The dynamic blockchain system of claim 16, wherein the asset map comprises a plurality of map records, which each comprise: a) a map asset identifier; b) a map transaction number; c) a complete node identifier; d) a complete node internet address; e) a hash node identifier; and f) a hash node internet address.
18. The dynamic blockchain system of claim 17, wherein the complete node internet address and the hash node internet address are uniform resource locators.
19. The dynamic blockchain system of claim 17, wherein the at least one complete asset node server is located by lookup of the complete node identifier in the asset map, such that the lookup asset identifier matches the map asset identifier and wherein the statistically significant number of hash asset node servers are located by lookup of corresponding hash node identifiers in the asset map, such that the lookup asset identifier matches the map asset identifier.
20. The dynamic blockchain system of claim 16, wherein the dynamic blockchain management server further comprises: a representation calculation function, for calculating the statistically significant number of hash asset node servers in the plurality of hash asset node servers based on a function input of a total number of hash asset node servers in the plurality of hash asset node servers.
21. A dynamic blockchain system, comprising: a) at least one complete asset node, which is configured to store a complete digital asset; b) a plurality of hash asset nodes, wherein each hash asset node stores a copy of an asset blockchain, which includes a hash of the complete digital asset for secure preservation and validation of the complete digital asset; and c) a blockchain manager, which is configured to validate the complete digital asset; wherein the at least one complete asset node further comprises: a first processor; a first non-transitory memory; and a first input/output component.
22. The dynamic blockchain system of claim 21, wherein the blockchain manager is configured to perform an asset validation of the complete digital asset by matching with a lookup asset identifier to retrieve the complete digital asset in the at least one complete asset node, and by verification of the complete digital asset by a random sampling in a statistically significant number of hash asset nodes in the plurality of hash asset nodes, such that a blockchain asset of the asset blockchain matches the lookup asset identifier and a cryptographic hash of the complete digital asset, for each hash asset node in the statistically significant number of hash asset nodes.
23. A dynamic blockchain method, comprising: provisioning a dynamic blockchain system, wherein the dynamic blockchain system comprises: at least one complete asset node server, which is configured to store a complete digital asset, wherein the at least one complete asset node server further comprises: a first processor; a first non-transitory memory; and a first input/output component; a plurality of hash asset node servers, wherein each hash asset node server stores a copy of an asset blockchain, which includes a cryptographic hash of the complete digital asset for secure preservation and validation of the complete digital asset; and a dynamic blockchain management server, which is configured to validate the complete digital asset.
24. The dynamic blockchain method of claim 23, further comprising: selecting a statistically significant number of hash asset node servers, by using a representation calculation function to calculate the statistically significant number of hash asset node servers in the plurality of hash asset node servers based on a function input of a total number of hash asset node servers in the plurality of hash asset node servers.
25. The dynamic blockchain method of claim 24, further comprising: validating the complete digital asset, wherein the complete digital asset is validated by a random sampling in the statistically significant number of hash asset node servers in the plurality of hash asset node servers, such that the validation of the complete digital asset is successful if at least a predetermined minimum validation threshold of hash asset node servers in the statistically significant number of hash asset node servers validate the complete digital asset.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0017]
[0018]
[0019]
[0020]
[0021]
[0022]
[0023]
[0024]
[0025]
[0026]
[0027]
[0028]
[0029]
[0030]
[0031]
DETAILED DESCRIPTION
[0032] Before describing the invention in detail, it should be observed that the present invention resides primarily in a novel and non-obvious combination of elements and process steps. So as not to obscure the disclosure with details that will readily be apparent to those skilled in the art, certain conventional elements and steps have been presented with lesser detail, while the drawings and specification describe in greater detail other elements and steps pertinent to understanding the invention.
[0033] The following embodiments are not intended to define limits as to the structure or method of the invention, but only to provide exemplary constructions. The embodiments are permissive rather than mandatory and illustrative rather than exhaustive.
[0034] In the following, we describe the structure of an embodiment of a dynamic blockchain system 1100 with reference to
[0035] In various embodiments, the dynamic blockchain system 1100 provides a distributed storage methodology that allows for broadly distributed storage of data assets composed of single and/or multiple identify components or variables. The integrity of the blockchain object constructed is maintained, such that a entire plurality of nodes contain data-information with a first plurality of nodes holding full perfect copies of such information, while an additional second (typically larger) plurality of nodes contain perfect hash representations of the base information. This allows the dynamic blockchain system 1100 to always contain greater than a single copy of the base information, while limiting the number of nodes containing such information in-order to reduce storage use and processing lag. The remaining information can be stored as hash representations of the base information and some combination of full base documents and hash representations can be polled on a random basis determined by statistical significance and a method of random number generation. All information, complete or hashed, is stored encrypted at each node.
[0036] In an embodiment, as shown in
[0042] In a related embodiment, the dynamic blockchain management server 1102 can perform an asset validation of the complete digital asset 1248 by lookup with a lookup asset identifier 1241 to retrieve a corresponding version of the digital asset 1248 in the at least one complete asset node server 1112 and by verification of the digital asset by a random sampling in a statistically significant/representative number of hash asset node servers 1122 in the plurality of hash asset node servers 1122, such that an asset block 1330 of the asset blockchain 1312 matches the lookup asset identifier 1241 and a cryptographic hash of the digital asset 1248, for each hash asset node server 1122 in the statistically significant/representative number of hash asset node servers 1122; wherein the validation of the digital asset 1248 is successful if at least a predetermined minimum validation threshold of hash asset node servers 1122 in the statistically significant/representative number of hash asset node servers 1122 validate the digital asset 1248.
[0043] Thus, in a related embodiment, as shown in
[0050] In a related embodiment, the dynamic blockchain management server 1102 can perform an asset validation of the complete digital asset 1248 by lookup with a lookup asset identifier 1241 to retrieve a corresponding version of the digital asset 1248 in the at least one complete asset node server 1112 and by verification of the digital asset by a random sampling in a statistically significant/representative number of hash asset node servers 1122 in the plurality of hash asset node servers 1122, such that an asset block 1330 of the asset blockchain 1312 matches the lookup asset identifier 1241 and a cryptographic hash of the digital asset 1248, for each hash asset node server 1122 in the statistically significant/representative number of hash asset node servers 1122; wherein the validation of the digital asset 1248 is successful if at least a predetermined minimum validation threshold of hash asset node servers 1122 in the statistically significant/representative number of hash asset node servers 1122 validate the digital asset 1248.
[0051] In a related embodiment, the minimum validation threshold of hash asset node servers 1122 can be a validation proportion threshold in a range of 50%-99%.
[0052] In a related embodiment, as shown in
[0059] In a further related embodiment, as shown in
[0070] A complete asset object 1248 can for example be an identification document 1248, which includes a plurality of asset elements 1252, including name 1252, date of birth 1252, driver's license number 1252, passport number 1252, social security number 1252, etc. In another example embodiment, a complete asset object 1248 can be a MICROSOFT WORD or other type of document, and the asset elements 1252 can be metainformation associated with the document, such as timestamp, author, etc.
[0071] In a yet further related embodiment, all or at least some fields 1241, 1242, 1243, 1244, 1245, 1246, 1247, 1248, 1249, 1252 of the asset record 1232 can be encrypted.
[0072] In various embodiments, the complete asset storage 1212 can be implemented as a database table 1212, a linked structure 1212, or other data structure 1212, or combination of data structures 1212. The plurality of asset elements 1352, can be a fixed number of optional elements, or can be implemented as a variable length/number structure, for example in the form of a linked list.
[0073] In a related embodiment, as shown in
[0080] In a further related embodiment, as shown in
[0093] In a yet further related embodiment, the dynamic blockchain management server can be configured to perform an asset validation of the digital asset by: [0094] lookup with a lookup asset identifier and a lookup version number to retrieve a corresponding version of the digital asset in the at least one complete asset node server, such that the lookup asset identifier matches the first asset identifier and the lookup version number matches the first version number; and [0095] by verification of the digital asset by a random sampling in a statistically significant/representative number of hash asset node servers in the plurality of hash asset node servers, such that each asset block matches the lookup asset identifier, the lookup version number, and a cryptographic hash of the digital asset, for each hash asset node server in the statistically significant/representative number of hash asset node servers, [0096] such that the lookup asset identifier matches the second asset identifier, the lookup version number matches the second version number, and a calculated cryptographic hash of the version of the digital asset matches the asset hash.
[0097] In another yet further related embodiment, all or at least some fields 1362, 1364, 1366, 1341, 1342, 1343, 1344, 1345, 1346, 1347, 1348, 1352 of the asset block 1330 can be encrypted.
[0098] In a related embodiment, as shown in
[0107] In a further related embodiment, the statistically significant/representative number can be a function of the size of the blockchain and the number of nodes. The only minimum for the statistically significant/representative number will be that it meets generally accepted minimums for providing a statistically significant result. The statistically significant/representative number can be any number greater than that based on rules of the blockchain which can be adjusted based on the importance or failure risk of the stored information.
[0108] In a further related embodiment, the representation calculation function 1414 can be configured to use well-known methods from the field of sample size determination, and can for example be implemented as a lookup table, which can be based on Mead's resource equation, cumulative distribution functions, or other methods; or can be a linear or non-linear function, such as a ratio/proportion of the total number of hash asset node servers 1122, for example in a range of less than 10%, 1%-10%, or 0.1%-10% of the total number of hash asset node servers 1122, such that the statistically significant/representative number of hash asset node servers is at most 10% of the total number of hash asset node servers 1122, or alternatively at most 15%, 20%, or 25% of the total number of hash asset node servers 1122.
[0109] In a further related embodiment, as shown in
[0119] In a yet further related embodiment, the at least one complete asset node server can be located by lookup of the complete node identifier in the asset map, such that the lookup asset identifier matches the map asset identifier and the lookup version number matches the map version number; and wherein the statistically significant/representative number of hash asset node servers are located by lookup of corresponding hash node identifiers in the asset map, such that the lookup asset identifier matches the map asset identifier and the lookup version number matches the map version number.
[0120] In another yet further related embodiment, all or at least some fields 1441, 1442, 1443, 1444, 1445, 1446, 1447, 1448, 1449 of a map record 1432 can be encrypted.
[0121] In a yet further related embodiment, the complete node internet address 1447 and the hash node internet address 1449 can be uniform resource locators.
[0122] In a yet further related embodiment, the dynamic blockchain management server 1102 can further include: [0123] an artificial intelligence engine 1418, which can enable the dynamic blockchain system 1100 to utilize machine learning and artificial intelligence to dynamically manage process execution, including dynamic data storage, multiple storage states, tiered security, hash functions, cryptographic methodology, and transport, storage, and communications functions, in order to deliver efficient processing. Such efficient processing having variable considerations for speed of each transaction, levels of validation needed for each transaction, optimized transport channels, and transport and storage security. The artificial intelligence engine 1418 can include certain minimal and maximal parameters for various transactions types and the AI engine can learn and adjust through the execution of transactions for optimal execution in a variable environment that often includes rapidly changing execution criteria.
[0124] In a related embodiment, as shown in
[0130] In a related embodiment, the dynamic blockchain system 1100 provides the ability for real-time transactions by implementing a n>1 sampling technique, wherein at least one of the full document information nodes can be sampled and an additional number of nodes (can be a combination of full or hash representation noes) can be sampled at a numeric frequency providing a statistically significant sample rate.
[0131] Transactions as used herein refer to an action that checks existing information to validate that that the information is true, wherein the information for example can be an account balance, persons age, address, property title, etc. A complex transaction can include a validation and a new input to the database that modifies existing information.
[0132] In related embodiments, writing to the database follows the general rules of Blockchain in that information must be recorded as new documents at each node, such that the existing complete or hash documents are maintained, and new information inputs are deposited at each node in the format previously held by that node (complete or hash). The dynamic blockchain system 1100 can function with either a serial or parallel read write depending on the system configuration, though classic blockchain implementation operates via serial read/write.
[0133] In a further related embodiment, in order to accommodate multiple reads and writes updating the dynamic blockchain system 1100 writes to (i.e. updates) nodes on the blockchain object and maintains a record of the locations of a statistically significant number of nodes. These nodes become the base nodes for additional rapid transactions made against the same transaction account or transaction records, until such time as all nodes on the chain have been updated.
[0134] While the subset of control nodes creates the basis for additional transaction verification in the blockchain the process of writing information to all nodes on the chain continues in the background. A new sample of nodes can be taken from those nodes with up to date information periodically or a new sample can be taken for the first transaction after all nodes are confirmed updated on the blockchain. In either event the nodes for new samples follow the process of sampling a statistically significant number of nodes using the random process and other criteria detailed throughout the Dynamic Blockchains process.
[0135] Information=Confirm and validate information: [0136] a) Request to confirm information is made [0137] b) Statistically significant number of nodes to be queried is determined [0138] c) Node locations to be queried are randomly determined [0139] d) Selected random nodes are queried [0140] e) Results are returned to determine if information matches [0141] f) Information return is either true or false [0142] g) Information from a predetermined minimum number of nodes (but not less than 50%+1) [0143] i. Is returned true and validated [0144] ii. Is returned false and not validated [0145] h) Results are reported, as either positive/true or negative/false [0146] i) The process may be looped for several passes depending on the system rules and level of confirmation desired by the parties to the transaction.
[0147] The above can be used as the process for validating any document or subset of information contained within the blockchain in a highly secure and highly efficient manner.
[0148] This information can be personal, property or the precursor to recording a new transaction:
[0149] Information is validated/confirmed, and a new transaction is now recorded, such that: [0150] a) Above steps undertaken; [0151] b) New Transaction is input and ready to write to the blockchain; [0152] c) Statistically significant number of nodes to write to is determined; [0153] d) Node locations to write to are randomly determined; [0154] e) Nonpersistent record of initial nodes to write to is created; [0155] f) New recorded is written to initial locations; [0156] g) New information continues to write to all nodes; [0157] h) Once all nodes have recorded the new information/document the nonpersistent record of initial writes is destroyed; [0158] i) If a transaction occurs that requires a write prior to all nodes being updated: [0159] i. The record of initial write nodes and queried to validate the information existing; [0160] ii. The initial write nodes are updated with the new record and a second or x processes is created to update all nodes with the newest transaction; [0161] iii. Additionally, the initial node write can be expanded during the updated process and upon a new statistically significant number of nodes be updated, such that a random process can run to create a new validation and new set of initial nodes interim to all nodes being updated.
[0162] In related embodiments, dynamic blockchain systems and methods disclosed herein provide a highly efficient and secure infrastructure for acquiring and managing digital assets 1248 for distributed data access, data storage and data transport across public and private networks, such that assets can be updated to record all transactions, and wherein any member of the blockchain can verify assets and their elements and easily validate those verifications. The dynamic blockchain system 1100 uses random selection as guided by minimum requirements determined using statistical significance with a combination of asset types, complete assets (entire documents or records), predefined elements (subset of complete assets for specific information verification) and mathematically derived hash representations of those complete and element records for broad distribution across nodes of the network.
[0163] In related embodiments, assets can be digital representations of: [0164] a) documents; [0165] b) recordings; [0166] c) financial transactions; real property records; or [0167] d) any type of digital representation of a physical asset or information about that asset, including pictorial and graphical representations.
[0168] In a related embodiment, an element can be a predefined attribute or combination of subsets to the primary asset. Elements can be included with the complete asset in a parent folder with each element being assigned metadata that identifies it to the complete asset, while allowing it to be independently verified. Complete hash and element hash files can be constructed in the same parent file format and can provide verification as to the complete parent files. Examples of an element can include: [0169] a) an identity element, which can include first and last name, date of birth, residence state and city, address information, citizenship, etc.; and [0170] b) medical records information: vaccination records, insurance, blood type, identity information, test results, active and historic diagnoses, etc.; [0171] c) Financial information: Asset list, Asset loans and encumbrances, Earned Income; [0172] d) Dividend income, expenses; [0173] e) Financial Transactions and Payments; and [0174] f) Real Property: Property Title, Taxes, Assessments, Loans, Liens, etc.
[0175] In a further related embodiment, digital assets may be created within the blockchain itself, imported from specific programs directly interfacing with the blockchain and/or be submitted by those having privilege of access to the blockchain. Digital assets can be newly created or legacy assets.
[0176] In another related embodiment, the dynamic blockchain system 1100 can allow for the management of numerous asset types and via use of elements can allow for owners of those assets to divulge and allow for the verification of discreet elements of their person, business, financial, medical, or other records, without requiring that the complete document be released or verified. This method allows for the owners of these digital assets to control the release of asset related information more granularly, thus providing increased security and privacy for individuals and businesses in a highly scalable and efficient environment.
[0177] In a further related embodiment, complete document and element files number relatively few, such that primarily those who own or have regulatory requirements or are granted those rights by the owner will have complete parent document files available to them within the dynamic blockchain. These special complete files provide additional ability to verify and validate assets, particularly in the instance where assets are corrupted. Limiting the number of these special nodes builds a highly efficient and easily scalable dynamic blockchain.
[0178] In a related embodiment, parent hash files can be broadly distributed across nodes within the blockchain. These light weight highly efficient hash files provide a very quick and secure way to verify an asset and/or to verify and element, such as: age, ownership, vaccination, and citizenship
[0179] In another related embodiment, transactions within the dynamic blockchain system 1100 refer to any change of the complete asset or any element of the asset, including: financial or payment transactions, record updates, asset transfer, etc. The initial transaction for the system is the submission of the asset to the Blockchain, regardless if the asset was created within the Blockchain itself or imported. This initial Asset and its elements, if any, are processed to create representative Hash files and prepared for distribution across nodes of the blockchain. The nodes for distribution in the blockchain can be to all registered nodes or to some subset of nodes. As noted above, it is anticipated that complete assets can be distributed to a limited number of nodes, while hash files are distributed broadly to many nodes, with minimum distribution being determined by principles of statistical significance.
[0180] In a further related embodiment, if distribution is to be to a limited subset of nodes, the dynamic blockchain system 1100 can allow for a random number generator to determine those nodes that will be used for storage of each asset type and a dynamic blockchain management server 1102 can record the location of those nodes.
[0181] In another further related embodiment, future transactions can either update all nodes where the asset has been stored in the last transaction or use the random number generator with predetermined parameters to assign the transaction update to a new series of nodes, while maintaining recorded information for all previous transactions and their complete and hash parent files. The Random assignment of node locations provides additional security to the files reducing the probability that files can be tracked, accessed, deleted or in some other way corrupted. All previous files remain and can be accessed as needed to provide further verification of validation.
[0182] In another related embodiment, verification and validation functions in the instant invention are performed using random sampling according to predetermined parameters and using the random Number generator functions of the Blockchain Manager. Using predetermined upper and lower limits for the number of nodes to be checked when a verification request is received the Blockchain Manager Generates the processes for randomly selecting those nodes to be sampled, which can be as simple as a random skip function or a more complex random determination algorithm. Once the process selecting the nodes is determined the random generator using Monte Carlo theory, or other types of proven random selection methods, determines the number of nodes to be selected. Using the sampling method of the instant invention regardless of the file type to be verified the process will be significantly faster and due to the random selection of nodes that are to be sampled significantly more secure from tracking and data hacking and corruption. An additional benefit of the invention is the highly efficient nature of the system allowing for multiple iteration of the process to validate the initial verification and if needed determine those system nodes that have been corrupted.
[0183] In yet another related embodiment, transaction information in its encrypted state can be copied and returned to the blockchain manager xxx for comparison and verification according to predetermined rules; or, a comparison file can be provided or randomly accessed with that file, such that the encryption keys used to compare each file at the node, report a positive or negative result and re encrypt the node file while destroying the caparison file when complete. All assets on the blockchain can be stored fully encrypted, regardless if they are complete parent files or hash parent files.
[0184] In a related embodiment,
[0190] In another related embodiment,
[0191] In a further related embodiment, each Parent file and each of the parent files primary and subfiles (elements) can be stored at the assigned node 240, 250, 260, 270, 280, 290, 300, 310 fully encrypted.
[0192] In yet a related embodiment,
[0193] In a further related embodiment, creating a new asset follows those procedures as described above in relation to
[0196] In a yet further related embodiment, the updated parent files and their elements can be stored at the node locations with additional metadata to identify the updated files as primary. Existing files can be maintained intact at all locations, for use if additional verification of an asset or any transaction against that asset is needed.
[0197] In a yet further related embodiment, alternatively, to the process described above, a second transaction can pass through all processes, as described for
[0198] In yet another related embodiment,
[0204] In a further related embodiment, on request for verification 910 the blockchain manager 1410 queries an internal random number generator of the cryptography manager 1416, using a mathematical algorithm random number generation, such as Monte Carlo simulation, to generate the number of nodes that will be sampled and for that number of nodes, the specific nodes that will be sampled. The number of nodes to be sampled can be a predetermined range of fewest to most that balances the need for minimum number of nodes that need to be sampled for statistical an system integrity and the efficiency of the system. A request for verification can be for a complete asset or can be for all or some asset elements, or a combination of these.
[0205] In another further related embodiment, the process of verification for each request can be performed a single time or multiple times, each using random selection with the additional verifications providing validation to the previous verification function and further limiting corruption within the data stream. Verification can be performed prior to recording a new transaction, and/or after recording a new transaction to verify recording of the transaction and/or Independently of a specific transaction or update to verify a file or certain element(s) (piece(s) of information).
[0206] In another related embodiment,
[0207] In related embodiments, the nodes of
[0208] In a related embodiment, the dynamic blockchain system 1100 can include two or more primary asset types: [0209] a) complete assets and their complete elements that comprise full detail of the assets and all transaction records related to that asset; and [0210] b) complete asset elements that contain some predefined piece of information that can be verified independently, and mathematical hash representations of each stored independently of the complete file and element information, providing highly efficient verification of assets or element information verification and/or validation.
[0211] In a related embodiment, location maps and asset type maps are logical constructs that can be predefined based on the number and types of members 1150 within the dynamic blockchain system 1100. Access to the asset maps can be granted according to the rules of the public or private blockchain. Files remain hashed and encrypted.
[0212] While the dynamic blockchain system 1100 has been described in terms of particular embodiments and applications, in both summarized and detailed forms, it is not intended that these descriptions in any way limit its scope to any such embodiments and applications, and it will be understood that many substitutions, changes and variations in the described embodiments, applications and details of the method and system illustrated herein and of their operation can be made by those skilled in the art without departing from the spirit of this invention.
[0213] In various related embodiments, the dynamic blockchain system 1100 provides a system, methods, and procedures that allows a dynamic blockchain to store simple and complex digital assets, transactions related to those assets and transactional and independent request for verification and validation of the assets in total or some subset or combination of subset elements. The introduction and utilization of parent assets composed of complete asset records and defined assets elements coupled with the use of random assignment and random sampling create a highly efficient and scalable system that can be readily adapted to handle various types of digital assets and asset requests.
[0214] In an alternative related embodiment, an asset block 1330 can include the following metadata Information: [0215] a) Transaction/version numbering; [0216] b) Identifying information to determine if Hash or Full [0217] i. Identifying element Hash; and [0218] ii. Identifying element full; [0219] c) IP/URL location information; [0220] d) Encrypted New Hash information (for encrypted nodes); [0221] e) Encrypted Element Hash Information (update of variable fields); [0222] f) Encrypted Full Document information (for limited number of full doc fields); [0223] g) Additional network transport information; and/or [0224] h) Secure access information to access the blockchain manager, which can be variable depending on the particular blockchain.
[0225] In a related embodiment, a workflow for using the dynamic blockchain system 1100 can include: [0226] a) A person or entity access the transactional platform (bank, business, government ngo, etc), including: [0227] i. Proper credentials are presented to the platform accessed; [0228] ii. Document (standardized) is accessed; [0229] iii. Request for verification of document elements is made (Balance, age, address, etc); [0230] iv. Transaction is entered (if desired) representing change of elements (variable fields); [0231] v. Transaction is securely transmitted to blockchain manager; [0232] vi. Including meta data and the appropriate blockchain(s) to store information; [0233] vii. If a new user document is version 1; [0234] viii. If updating a document version is revised to the successor number; [0235] b) The blockchain manager (BCM) 1410 performs processing, including: [0236] i. Blockchain managers confirms valid access and transaction; [0237] ii. Blockchain manager References data map for blockchain location of original; [0238] iii. Or if new Assigns assets to nodes on the appropriate blockchain [0239] iv. All nodes of the blockchain being written to will be recorded as a new document; [0240] v. Or update and old document; [0241] vi. BCM will send full documents and full elements to that node or nodes that are predesignated for full documents; [0242] vii. And, Hash to those nodes designated as hash; [0243] c) Verification before update: [0244] i. BCM determines that blockchain(s) to be queried for verification; [0245] ii. BCM reads information to be verified; [0246] iii. BCM accesses and runs algorithm to select statistically significant N to be sampled for verification; [0247] iv. BCM Random number generator is accessed and random selection node identifier numbers to select nodes to be sampled; [0248] v. A full document node (at least 1 must exist) is select to access first [0249] 1) The full access node is queried for the information to be confirmed (element); [0250] 2) The relevant information is retrieved; [0251] 3) Unencrypted and a hash is created; [0252] 4) This is the reference hash; [0253] vi. BCM queries nodes selected randomly [0254] 1) Nodes are queried until the determined stat significant number is achieved; [0255] 2) Nodes can be queried in serial or parallel; [0256] vii. Hash stored on the nodes can either be retrieved to the BCM where they are [0257] 1) Unencrypted and compared to the reference hash (created from full element); [0258] 2) Or, the reference can be encrypted and travel to each queried node; [0259] 3) Both decrypted and compared with a positive or negative result returned; [0260] viii. Verification is achieved positive or negative according to consensus rules: [0261] 1) At last 50%+1 of those nodes queried positive to confirm; [0262] 2) BCM can set high levels according to rules; [0263] ix. Verification can either return a positive or negative confirmation; [0264] x. Or, if negative turn away the transaction or; [0265] xi. If positive confirmation moves to recording a new transaction; [0266] xii. This result in a very fast secure result from a complex blockchain with the benefit of the system increasing with as the number of nodes or number of blockchains grows; [0267] d) Recording a new (update to transaction) [0268] i. After positive confirmation; [0269] ii. BCM selects new set of random nodes to write the updated information to; [0270] iii. Number of nodes Selected follow rules of statistically significant; [0271] iv. At least one node must be a full document node; [0272] v. The full document node(s) is updated: [0273] 1) With new full document; [0274] 2) With each updated element; [0275] vi. Statistically significant number of hash nodes are updated: [0276] 3) With Hash of Full Document; [0277] 4) And Hash of updated element(s); [0278] vii. BCM creates a none persistent record of all updated nodes from step 5 and 6; [0279] viii. Non persistent record is held until all nodes on the chain(s) have been updated; [0280] ix. The new data blocks are added to every node of the blockchain(s) that are included in that Blockchain; [0281] e) Multiple transactions during full Blockchain update: [0282] x. BCM maintains the record of nodes selected and written to according to E-6 until all nodes have been updated; [0283] xi. Transactions that occur while the remaining nodes are being updated use the BCM randomly selected reference nodes to verify additional transactions; [0284] xii. Non persistent file from E-6 is maintained until or nodes are updated to latest or; [0285] xiii. Until a new second set of statistically significant number of nodes including at least 1 full document node have been updated, such that: [0286] 1) This updated non-persistent file is created and used to verify subsegment transaction during that time that the entire blockchain is still updating. (This can be for very high volume where we do not have all nodes updated with all new transaction for a long time period); [0287] 2) None persistent nodes maintain full meta data including version control for each update; [0288] 3) Verification is always done using the most recent version within non persistent recorded nodes or; [0289] 4) Using a new random sample if all nodes have been updated prior to a new transaction being received; [0290] 5) Logic and meta data control version numbering and version writing, such that: [0291] BCM always knows the reference address for each non-persistent verification record; and [0292] BCM manages the writing of those record to the blockchain in version order oldest to newest; and [0293] f) Proof of work or proof of stake can be used downstream to use classic blockchain validation techniques after when writing to the blockchains after the non-persistent nodes.
[0294] In related embodiments, the dynamic blockchain management device 1104 can include configurations as: [0295] a) A web application, executing in a Web browser; [0296] b) A tablet app, executing on a tablet device, such as for example an ANDROID or IOS tablet device; [0297] c) A mobile app, executing on a mobile device, such as for example an ANDROID phone or IPHONE, or any wearable mobile device; [0298] d) A desktop application, executing on a personal computer, or similar device; [0299] e) An embedded application, executing on a processing device, such as for example a smart TV, a game console or other system.
[0300] It shall be understood that an executing instance of an embodiment of the dynamic blockchain system 1100, as shown in
[0301] An executing instance of an embodiment of the dynamic blockchain system 1100, as shown in
[0302] In an embodiment, as illustrated in
[0310]
[0311] In this regard,
[0312]
[0313] It shall be understood that the above-mentioned components of the at least one complete asset node server 1112, the plurality of hash asset node servers 1122, the dynamic blockchain management server 1102, and the dynamic blockchain management device 1104 are to be interpreted in the most general manner.
[0314] For example, the processors 1202, 1302, 1402, 1502 can each respectively include a single physical microprocessor or microcontroller, a cluster of processors, a datacenter or a cluster of datacenters, a computing cloud service, and the like.
[0315] In a further example, the non-transitory memories 1204, 1304, 1404, 1504 can each respectively include various forms of non-transitory storage media, including random access memory and other forms of dynamic storage, and hard disks, hard disk clusters, cloud storage services, and other forms of long-term storage. Similarly, the input/outputs 1206, 1306, 1406, 1506 can each respectively include a plurality of well-known input/output devices, such as screens, keyboards, pointing devices, motion trackers, communication ports, and so forth.
[0316] Furthermore, it shall be understood that the at least one complete asset node server 1112, the plurality of hash asset node servers 1122, the dynamic blockchain management server 1102, and the dynamic blockchain management device 1104 can each respectively include a number of other components that are well known in the art of general computer devices, and therefore shall not be further described herein. This can include system access to common functions and hardware, such as for example via operating system layers such as WINDOWS, LINUX, and similar operating system software, but can also include configurations wherein application services are executing directly on server hardware or via a hardware abstraction layer other than a complete operating system.
[0317] An embodiment of the present invention can also include one or more input or output components, such as a mouse, keyboard, monitor, and the like. A display can be provided for viewing text and graphical data, as well as a user interface to allow a user to request specific operations. Furthermore, an embodiment of the present invention may be connected to one or more remote computers via a network interface. The connection may be over a local area network (LAN) wide area network (WAN), and can include all of the necessary circuitry for such a connection.
[0318] In a related embodiment, the dynamic blockchain management server 1102, communicates with the at least one complete asset node server 1112, the plurality of hash asset node servers 1122, and the dynamic blockchain management device 1104 over a network, which can be configured as a public or private cloud, which can include the general Internet, a Wide Area Network or a Local Area Network, or another form of communication network, transmitted on wired or wireless connections. Wireless networks can for example include Ethernet, Wi-Fi, BLUETOOTH, ZIGBEE, and NFC. The communication can be transferred via a secure, encrypted communication protocol.
[0319] Typically, computer program instructions may be loaded onto the computer or other general-purpose programmable machine to produce a specialized machine, such that the instructions that execute on the computer or other programmable machine create means for implementing the functions specified in the block diagrams, schematic diagrams or flowcharts. Such computer program instructions may also be stored in a computer-readable medium that when loaded into a computer or other programmable machine can direct the machine to function in a particular manner, such that the instructions stored in the computer-readable medium produce an article of manufacture including instruction means that implement the function specified in the block diagrams, schematic diagrams or flowcharts.
[0320] In addition, the computer program instructions may be loaded into a computer or other programmable machine to cause a series of operational steps to be performed by the computer or other programmable machine to produce a computer-implemented process, such that the instructions that execute on the computer or other programmable machine provide steps for implementing the functions specified in the block diagram, schematic diagram, flowchart block or step.
[0321] Accordingly, blocks or steps of the block diagram, flowchart or control flow illustrations support combinations of means for performing the specified functions, combinations of steps for performing the specified functions and program instruction means for performing the specified functions. It will also be understood that each block or step of the block diagrams, schematic diagrams or flowcharts, as well as combinations of blocks or steps, can be implemented by special purpose hardware-based computer systems, or combinations of special purpose hardware and computer instructions, that perform the specified functions or steps.
[0322] As an example, provided for purposes of illustration only, a data input software tool of a search engine application can be a representative means for receiving a query including one or more search terms. Similar software tools of applications, or implementations of embodiments of the present invention, can be means for performing the specified functions. For example, an embodiment of the present invention may include computer software for interfacing a processing element with a user-controlled input device, such as a mouse, keyboard, touch screen display, scanner, or the like. Similarly, an output of an embodiment of the present invention may include, for example, a combination of display software, video card hardware, and display hardware. A processing element may include, for example, a controller or microprocessor, such as a central processing unit (CPU), arithmetic logic unit (ALU), or control unit.
[0323] Here has thus been described a multitude of embodiments of the . . . device, and methods related thereto, which can be employed in numerous modes of usage.
[0324] The many features and advantages of the invention are apparent from the detailed specification, and thus, it is intended by the appended claims to cover all such features and advantages of the invention, which fall within the true spirit and scope of the invention.
[0325] For example, alternative embodiments can reconfigure or combine the components of the dynamic blockchain management server 1102 and the dynamic blockchain management device 1104. The components of the dynamic blockchain management server 1102 can be distributed over a plurality of physical, logical, or virtual servers. Parts or all of the components of the dynamic blockchain management device 1104 can be configured to operate in the dynamic blockchain management server 1102, whereby the dynamic blockchain management device 1104 for example can function as a thin client, performing only graphical user interface presentation and input/output functions. Alternatively, parts or all of the components of the dynamic blockchain management server 1102 can be configured to operate in the dynamic blockchain management device 1104.
[0326] Many such alternative configurations are readily apparent, and should be considered fully included in this specification and the claims appended hereto. Accordingly, since numerous modifications and variations will readily occur to those skilled in the art, the invention is not limited to the exact construction and operation illustrated and described, and thus, all suitable modifications and equivalents may be resorted to, falling within the scope of the invention.