# US 11,030,161 B2 · Blockchain scaling method and blockchain scaling apparatus

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,030,161 B2
- Document ID: US11030161B2
- Status: Granted
- Kind: B2
- Application number: 16/357,568
- Filed: 2019-03-19
- Published: 2019-10-03
- Granted: 2021-06-08
- Earliest claimed: 2018-03-28
- Assignees: Exosite LLC
- Applicants: Exosite LLC
- Inventors: Dominic Immanuel Letz; Samuel Stuart Webster; Hans Aaron Rempel
- Web page: https://patentgrep.com/patent/US11030161B2

## CPC

- G06F 16/137: {Hash-based (content-based indexing of textual data G06F16/31)}
- G06F 16/1824: {implemented using Network-attached Storage [NAS] architecture (distributed or networked storage systems G06F3/067; protocols for distributed storage of data in a network H04L67/1097)}
- G06F 16/1834: {implemented based on peer-to-peer networks, e.g. gnutella (p2p communication protocols H04L67/104)}
- H04L 9/0643: {Hash functions, e.g. MD5, SHA, HMAC or f9 MAC}
- H04L 9/3239: {involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD}
- H04L 9/50: {using hash chains, e.g. blockchains or hash trees}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A blockchain scaling method includes the following operations: determining whether a transaction parameter of a block generating process in an original chain of blocks exceeds a first threshold; and forking the original chain into two sub-chains when the transaction parameter exceeds the threshold, wherein each of the two sub-chains comprises same previous block information corresponding to the original chain and a sub-chain identification.

## Claims

### Claim 1

A blockchain scaling method, comprising:
determining, by a processor, whether a transaction parameter of a block generating process in an original chain exceeds a threshold, wherein the transaction parameter is a block fill rate being a ratio of a current block size of the original chain and a maximum block size of the original chain;
stopping, by the processor, the original chain when the transaction parameter exceeds the threshold; and
generating, by the processor, a pair of sub-chains when the original chain is stopped, wherein each of the two sub-chains comprises same previous block information corresponding to the original chain and a sub-chain identification.

### Claim 2 (depends on 1)

The method of claim 1, comprising:
determining whether the transaction parameter of the block generating process in the two sub-chains exceeds he threshold; and
stopping the pair of sub-chains to continue the original chain when he transaction parameter fails to exceed the threshold.

### Claim 3 (depends on 2)

The method of claim 2, wherein stopping the pair of the two sub-chains to continue the original chain further comprising:
in response to the transaction parameter failing to exceed the threshold, stopping the pair of sub-chains to continue the original chain alter a first number of blocks being generated in the block generating process, wherein the first number is an allowable block height difference between the two sub-chains.

### Claim 4 (depends on 1)

The method of claim 1, wherein the transaction parameter is a moving average of the block fill rate of the block generating process.

### Claim 5 (depends on 1)

The method of claim 1, wherein the sub-chain identification is a binary digit indicating one of the two sub-chains.

### Claim 6 (depends on 5)

The method of claim 5, further comprising:
creating a block in one of the sub-chains, wherein the block comprises a plurality of transactions issued by network nodes having identity addresses matching the sub-chain identification of one of the sub-chains.

### Claim 7 (depends on 6)

The method of claim 6, wherein when any of the plurality of transactions is a cross-chain referenced transaction, the block corresponding to such transaction comprises reference information of the blocks in the other sub-chains.

### Claim 8 (depends on 7)

The method of claim 7, wherein a number of the sub-chains being referenced is N, the reference information comprises information of at least log N of the blocks.

### Claim 9 (depends on 1)

The method of claim 1, wherein a block in one of the sub-chains and a reference block thereof in another sub-chain are not away from a predetermined distance.

### Claim 10

A blockchain scaling apparatus, comprising:
memory configured to store computer readable instructions; and
a processor electrically coupled to the memory and configured to retrieve the computer readable instructions to execute a blockchain scaling method that comprises:
determining whether a transaction parameter of a block generating process in an original chain exceeds a threshold, wherein the transaction parameter is a block fill rate being a ratio of a current block size of the original chain and a maximum block size of the original chain;
stopping the original chain when the transaction parameter exceeds the threshold; and
generating a pair of sub-chains when the original chain is stopped, wherein each of the two sub-chains comprises same previous block information corresponding to the original chain and a sub-chain identification.

### Claim 11 (depends on 10)

The apparatus of claim 10, the blockchain scaling method executed by the processor further comprises:
determining whether the transaction parameter of the block generating process in the two sub-chains exceeds he threshold; and
stopping the pair of the two sub-chains to continue the original chain when the transaction parameter fails to exceed the threshold.

### Claim 12 (depends on 11)

The apparatus of claim 11, wherein stopping the pair of the two sub-chains to continue the original chain further comprising:
in response to the transaction parameter failing to exceed the threshold, stopping the pair of the two sub-chains to continue the original chain alter a first number of blocks being generated in the block generating process, wherein the first number is an allowable block height difference between the two sub-chains.

### Claim 13 (depends on 10)

The apparatus of claim 10, wherein the transaction parameter is a moving average of the block fill rate of the block generating process.

### Claim 14 (depends on 10)

The apparatus of claim 10, wherein the sub-chain identification is a binary digit.

### Claim 15 (depends on 14)

The apparatus of claim 14, wherein the blockchain scaling method further comprises:
creating a block in one of the sub-chains wherein the block comprises a plurality of transactions issued by network nodes having identity addresses matching the sub-chain identification of one of the sub-chains.

### Claim 16 (depends on 15)

The apparatus of claim 15, wherein when any of the plurality of transactions is a cross-chain referenced transaction, the block corresponding to such transaction comprises reference information of the blocks in the other sub-chains.

### Claim 17 (depends on 16)

The apparatus of claim 16, wherein a number of the sub-chains being referenced is N, the reference information comprises information of at least log N of the blocks.

### Claim 18 (depends on 14)

The apparatus of claim 14, wherein a block in one of the sub-chains and a reference block thereof in another sub-chain are not away from a predetermined distance.
