Systems and methods for hash chain migration

US11296867B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11296867-B2
Application numberUS-201916400783-A
CountryUS
Kind codeB2
Filing dateMay 1, 2019
Priority dateMay 1, 2019
Publication dateApr 5, 2022
Grant dateApr 5, 2022

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A method for hash chain migration includes detecting a version update of an object that includes a hash chain that stores fields of the object. Sub chains are identified from the hash chain. Migration sub chains are generated from the plurality of sub chains using a plurality of processes. Container blocks are generated from the plurality of migration sub chains. A migration chain is generated from the plurality of container blocks. The object is accessed using the migration chain.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: detecting a version update from a first version of an object to a second version of the object, wherein the object is a programming object that includes a hash chain that stores a plurality of fields of the object using the first version of the object; identifying a plurality of sub chains from the hash chain; generating a plurality of migration sub chains, using the second version of the object, from the plurality of sub chains using a plurality of processes; generating a plurality of container blocks including the plurality of migration sub chains; generating a migration chain from the plurality of container blocks; and accessing the second version of the object using the migration chain. 2. The method of claim 1 , wherein the plurality of sub chains includes a sub chain, wherein the plurality of migration sub chains includes a migration sub chain, wherein the plurality of processes includes a process and includes a plurality of stacks, wherein the plurality of stacks includes a stack, and wherein the plurality of container blocks includes a container block. 3. The method of claim 2 , further comprising: generating the migration sub chain from the sub chain by: traversing the sub chain and storing blocks from the sub chain in the stack, wherein an order of the sub chain with respect to the plurality of sub chains is identified with a serial number of a plurality of serial numbers; creating the migration sub chain when a front of the sub chain is reached; creating a migration block from a top block of the stack; and adding the migration block to the migration sub chain and removing the top block from the stack. 4. The method of claim 3 , further comprising: when the stack includes a next block, setting the next block as the top block and repeating the steps of creating the migration block from the top block and adding the migration block to the migration sub chain. 5. The method of claim 3 , further comprising: sending the migration sub chain to a priority queue with the serial number. 6. The method of claim 2 , further comprising: generating the migration chain by: creating the container block, wherein the container block includes the migration sub chain from the priority queue; and adding the container block to the migration chain. 7. The method of claim 1 , further comprising: locking the object after detecting the version update of the object; receiving a write request to the object after locking the object; processing the write request by generating and adding a current block to a current sub chain; generating an end container block from the current sub chain; adding the end container block to the migration chain; unlocking the object; and appending a subsequent block from a subsequent write request to the end container block. 8. A system comprising: a memory coupled to a computer processor; the memory comprising: an object that includes a hash chain; the object executes on the computer processor, uses the memory, and is configured for: detecting a version update from a first version of the object to a second version of the object, wherein the object is a programming object that includes the hash chain that stores a plurality of fields of the object using the first version of the object; identifying a plurality of sub chains from the hash chain; generating a plurality of migration sub chains, using the second version of the object, from the plurality of sub chains using a plurality of processes; generating a plurality of container blocks including the plurality of migration sub chains; generating a migration chain from the plurality of container blocks; and accessing the second version of the object using the migration chain. 9. The system of claim 8 , wherein the plurality of sub chains includes a sub chain, wherein the plurality of migration sub chains includes a migration sub chain, wherein the plurality of processes includes a process and includes a plurality of stacks, wherein the plurality of stacks includes a stack, and wherein the plurality of container blocks includes a container block. 10. The system of claim 9 , wherein the object is further configured for: generating the migration sub chain from the sub chain by: traversing the sub chain and storing blocks from the sub chain in the stack, wherein an order of the sub chain with respect to the plurality of sub chains is identified with a serial number of a plurality of serial numbers; creating the migration sub chain when a front of the sub chain is reached; creating a migration block from a top block of the stack; and adding the migration block to the migration sub chain and removing the top block from the stack. 11. The system of claim 10 , wherein the object is further configured for: when the stack includes a next block, setting the next block as the top block and repeating the steps of creating the migration block from the top block and adding the migration block to the migration sub chain. 12. The system of claim 10 , wherein the object is further configured for: sending the migration sub chain to a priority queue with the serial number. 13. The system of claim 9 , wherein the object is further configured for: generating the migration chain by: creating the container block, wherein the container block includes the migration sub chain from the priority queue; and adding the container block to the migration chain. 14. The system of claim 8 , wherein the object is further configured for: locking the object after detecting the version update of the object; receiving a write request to the object after locking the object; processing the write request by generating and adding a current block to a current sub chain; generating an end container block from the current sub chain; adding the end container block to the migration chain; unlocking the object; and appending a subsequent block from a subsequent write request to the end container block. 15. A system comprising: a memory coupled to a computer processor; the memory comprising: an object that includes a hash chain; the object executes on the computer processor, uses the memory, and is configured for: detecting a version update from a first version of the object to a second version of the object, wherein the object is a programming object that includes the hash chain that stores a plurality of fields of the object using the first version of the object; locking the object after detecting the version update of the object; identifying a plurality of sub chains from the hash chain; generating a plurality of migration sub chains, using the second version of the object, from the plurality of sub chains using a plurality of processes; generating a plurality of container blocks including the plurality of migration sub chains; generating a migration chain from the plurality of container blocks; unlocking the object; and accessing the second version of the object using the migration chain. 16. The system of claim 15 , wherein the plurality of sub chains includes a sub chain, wherein the plurality of migration sub chains includes a migration sub chain, wherein the plurality of processes includes a process and includes a plurality of stacks, wherein the plurality of stacks includes a stack, and wherein the plurality of container blocks includes a container block. 17. The system of claim 16 , wherein the object is further configured for: generating the migration sub chain from the su

Assignees

Inventors

Classifications

  • using hash chains, e.g. blockchains or hash trees · CPC title

  • H04L9/3239Primary

    involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD · CPC title

  • H04L9/0643Primary

    Hash functions, e.g. MD5, SHA, HMAC or f9 MAC · CPC title

  • Protecting data integrity, e.g. using checksums, certificates or signatures · CPC title

  • Electricity · mapped topic

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11296867B2 cover?
A method for hash chain migration includes detecting a version update of an object that includes a hash chain that stores fields of the object. Sub chains are identified from the hash chain. Migration sub chains are generated from the plurality of sub chains using a plurality of processes. Container blocks are generated from the plurality of migration sub chains. A migration chain is generated …
Who is the assignee on this patent?
Intuit Inc
What technology area does this patent fall under?
Primary CPC classification H04L9/3239. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Apr 05 2022 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 9 related publications on this page (citations in our corpus or others sharing the same primary CPC).