# US 12,602,255 B2 · Transaction method and apparatus with fixed execution order

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

- Number: US 12,602,255 B2
- Document ID: US12602255B2
- Status: Granted
- Kind: B2
- Application number: 18/276,714
- Filed: 2022-02-10
- Published: 2024-04-11
- Granted: 2026-04-14
- Earliest claimed: 2021-02-10
- Assignees: Digital Currency Institute, the People's Bank of China
- Applicants: Digital Currency Institute, The People's Bank of China
- Inventors: Kaikai Feng
- Web page: https://patentgrep.com/patent/US12602255B2

## CPC

- G06F 9/5038: {considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration (scheduling strategies G06F9/4881 and subgroups)}
- G06Q 40/04: Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
- G06Q 20/065: {using e-cash}
- G06Q 20/389: {Keeping log of transactions for guaranteeing non-repudiation of a transaction}
- G06Q 20/405: {Establishing or using transaction specific rules}
- G06F 2209/5011: Pool
- G06Q 2220/00: Business processing using cryptography
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR

## Abstract

Provided are a transaction method and apparatus with a fixed execution order, and relates to the technical field of computers. According to one alternative implementation, the method includes: transactions to be executed are received, generating an assembled transaction is generated with the transactions having a same identifier based on an assembly rule, and the assembled transaction to a transaction pool is sent; parsing, in response to acquiring a transaction from the transaction pool, the assembled transaction which is acquired to obtain a transaction list; and transaction execution is performed based on an execution order of each transaction in the transaction list.

## Claims

### Claim 1

A transaction method with a fixed execution order, comprising:
receiving transactions to be executed, generating an assembled transaction with the transactions having a same identifier based on an assembly rule, and sending the assembled transaction to a transaction pool;
parsing, in response to acquiring a transaction from the transaction pool, the assembled transaction which is acquired to obtain a transaction list; and
performing transaction execution based on an execution order of each transaction in the transaction list;
before the receiving transactions to be executed, further comprising:
adding a reserved field for a transaction, the reserved field comprising a transaction identifier, a total number of transactions in a current batch, a transaction serial number of the transaction in the current batch, and a transaction serial number of a subsequent transaction;
wherein the generating an assembled transaction with the transactions having a same identifier comprises:
acquiring a plurality of transactions having the same identifier based on the reserved field of the transaction, and sequencing the plurality of transactions based on the transaction serial number of the transaction in the current batch and the transaction serial number of the transaction after the transaction;
judging the plurality of the acquired transactions based on the total number of the transactions in the current batch, and assembling, upon completion of receiving the transactions in the current batch, data of the plurality of the acquired transactions into a data part; and
generating the assembled transaction by setting a transaction recipient of the data part to a set special address and adding an assembly identifier to the data part.

### Claim 2 (depends on 1)

The transaction method with the fixed execution order according to claim 1, wherein the generating an assembled transaction with the transactions having a same identifier comprises:
storing a transaction locally, and storing a mapping relationship between the transaction serial number or a hash signature of the transaction in the current batch and transaction data;
acquiring a plurality of transactions having the same identifier based on the reserved field of the transaction, and sequencing transaction serial numbers or hash signatures based on the transaction serial number of the transaction in the current batch and a transaction serial number of a subsequent transaction; and
judging the plurality of the acquired transactions based on the total number of the transactions in the current batch, and assembling, upon completion of receiving the transactions in the current batch, the transaction serial numbers or the hash signatures of the plurality of the acquired transactions in the current batch into a data part; and
generating the assembled transaction by setting a transaction recipient of the data part to a set special address and adding an assembly identifier to the data part.

### Claim 3 (depends on 1)

The transaction method with the fixed execution order according to claim 1, before the parsing the assembled transaction which is acquired to obtain a transaction list, further comprising:
judging, by means of a hook function, a transaction recipient of a transaction acquired from the transaction pool;
acquiring, in a case that the transaction recipient is a predefined special address, an identifier of the transaction; and
determining, in a case that the identifier of the transaction is an assembly identifier, that the transaction acquired from the transaction pool is the assembled transaction.

### Claim 4 (depends on 1)

The transaction method with the fixed execution order according to claim 1, wherein the parsing an assembled transaction which is acquired to obtain a transaction list comprises:
parsing the assembled transaction which is acquired based on the assembly rule to obtain the transaction list corresponding to the assembled transaction; or
parsing the assembled transaction which is acquired based on the assembly rule to obtain a transaction serial number list or a hash signature list corresponding to the assembled transaction, and obtaining the transaction list corresponding to the assembled transaction based on the transaction serial number list or the hash signature list.

### Claim 5 (depends on 1)

The transaction method with the fixed execution order according to claim 1, before the generating an assembled transaction with the transactions having a same identifier, further comprising:
verifying the validity of the received transactions by checking signatures of the received transactions.

### Claim 6

An electronic device comprising:
at least one processor; and
a storage apparatus, configured to store one or more programs, wherein the one or more programs, when executed by the one or more processors, cause the one or more processors to implement following actions:
receiving transactions to be executed, generating an assembled transaction with the transactions having a same identifier based on an assembly rule, and sending the assembled transaction to a transaction pool;
parsing, in response to acquiring a transaction from the transaction pool, the assembled transaction which is acquired to obtain a transaction list; and
performing transaction execution based on an execution order of each transaction in the transaction list;
before the receiving transactions to be executed, further comprising:
adding a reserved field for a transaction, the reserved field comprising a transaction identifier, a total number of transactions in a current batch, a transaction serial number of the transaction in the current batch, and a transaction serial number of a subsequent transaction;
wherein the generating an assembled transaction with the transactions having a same identifier comprises:
acquiring a plurality of transactions having the same identifier based on the reserved field of the transaction, and sequencing the plurality of transactions based on the transaction serial number of the transaction in the current batch and the transaction serial number of the transaction after the transaction;
judging the plurality of the acquired transactions based on the total number of the transactions in the current batch, and assembling, upon completion of receiving the transactions in the current batch, data of the plurality of the acquired transactions into a data part; and
generating the assembled transaction by setting a transaction recipient of the data part to a set special address and adding an assembly identifier to the data part.

### Claim 7 (depends on 6)

The electronic device as claimed in claim 6, before the parsing the assembled transaction which is acquired to obtain a transaction list, further comprising:
judging, by means of a hook function, a transaction recipient of a transaction acquired from the transaction pool;
acquiring, in a case that the transaction recipient is a predefined special address, an identifier of the transaction; and
determining, in a case that the identifier of the transaction is an assembly identifier, that the transaction acquired from the transaction pool is the assembled transaction.

### Claim 8 (depends on 6)

The electronic device as claimed in claim 6, wherein the parsing an assembled transaction which is acquired to obtain a transaction list comprises:
parsing the assembled transaction which is acquired based on the assembly rule to obtain the transaction list corresponding to the assembled transaction; or
parsing the assembled transaction which is acquired based on the assembly rule to obtain a transaction serial number list or a hash signature list corresponding to the assembled transaction, and obtaining the transaction list corresponding to the assembled transaction based on the transaction serial number list or the hash signature list.

### Claim 9 (depends on 6)

The electronic device as claimed in claim 6, before the generating an assembled transaction with the transactions having a same identifier, further comprising:
verifying validity of the received transactions by checking signatures of the received transactions.

### Claim 10

A non-transitory computer-readable medium, wherein the computer-readable medium stores a program computer program, the program computer is executable by a processor, implements following actions:
receiving transactions to be executed, generating an assembled transaction with the transactions having a same identifier based on an assembly rule, and sending the assembled transaction to a transaction pool;
parsing, in response to acquiring a transaction from the transaction pool, the assembled transaction which is acquired to obtain a transaction list; and
performing transaction execution based on an execution order of each transaction in the transaction list;
before the receiving transactions to be executed, further comprising:
adding a reserved field for a transaction, the reserved field comprising a transaction identifier, a total number of transactions in a current batch, a transaction serial number of the transaction in the current batch, and a transaction serial number of a subsequent transaction;
wherein the generating an assembled transaction with the transactions having a same identifier comprises:
acquiring a plurality of transactions having the same identifier based on the reserved field of the transaction, and sequencing the plurality of transactions based on the transaction serial number of the transaction in the current batch and the transaction serial number of the transaction after the transaction;
judging the plurality of the acquired transactions based on the total number of the transactions in the current batch, and assembling, upon completion of receiving the transactions in the current batch, data of the plurality of the acquired transactions into a data part; and
generating the assembled transaction by setting a transaction recipient of the data part to a set special address and adding an assembly identifier to the data part.

### Claim 11 (depends on 10)

The electronic device as claimed in claim 10, wherein the generating an assembled transaction with the transactions having a same identifier comprises:
storing a transaction locally, and storing a mapping relationship between the transaction serial number or a hash signature of the transaction in the current batch and transaction data;
acquiring a plurality of transactions having the same identifier based on the reserved field of the transaction, and sequencing transaction serial numbers or hash signatures based on the transaction serial number of the transaction in the current batch and a transaction serial number of a subsequent transaction; and
judging the plurality of the acquired transactions based on the total number of the transactions in the current batch, and assembling, upon completion of receiving the transactions in the current batch, the transaction serial numbers or the hash signatures of the plurality of the acquired transactions in the current batch into a data part; and
generating the assembled transaction by setting a transaction recipient of the data part to a set special address and adding an assembly identifier to the data part.

### Claim 12 (depends on 10)

The non-transitory computer-readable medium as claimed in claim 10, wherein the generating an assembled transaction with the transactions having a same identifier comprises:
storing a transaction locally, and storing a mapping relationship between the transaction serial number or a hash signature of the transaction in the current batch and transaction data;
acquiring a plurality of transactions having the same identifier based on the reserved field of the transaction, and sequencing transaction serial numbers or hash signatures based on the transaction serial number of the transaction in the current batch and a transaction serial number of a subsequent transaction; and
judging the plurality of the acquired transactions based on the total number of the transactions in the current batch, and assembling, upon completion of receiving the transactions in the current batch, the transaction serial numbers or the hash signatures of the plurality of the acquired transactions in the current batch into a data part; and
generating the assembled transaction by setting a transaction recipient of the data part to a set special address and adding an assembly identifier to the data part.

### Claim 13 (depends on 10)

The non-transitory computer-readable medium as claimed in claim 10, before the parsing the assembled transaction which is acquired to obtain a transaction list, further comprising:
judging, by means of a hook function, a transaction recipient of a transaction acquired from the transaction pool;
acquiring, in a case that the transaction recipient is a predefined special address, an identifier of the transaction; and
determining, in a case that the identifier of the transaction is an assembly identifier, that the transaction acquired from the transaction pool is the assembled transaction.

### Claim 14 (depends on 10)

The non-transitory computer-readable medium as claimed in claim 10, wherein the parsing an assembled transaction which is acquired to obtain a transaction list comprises:
parsing the assembled transaction which is acquired based on the assembly rule to obtain the transaction list corresponding to the assembled transaction; or
parsing the assembled transaction which is acquired based on the assembly rule to obtain a transaction serial number list or a hash signature list corresponding to the assembled transaction, and obtaining the transaction list corresponding to the assembled transaction based on the transaction serial number list or the hash signature list.
