WO2020024474A1 - Method and apparatus for supporting digital certificate transaction - Google Patents
Method and apparatus for supporting digital certificate transaction Download PDFInfo
- Publication number
- WO2020024474A1 WO2020024474A1 PCT/CN2018/113977 CN2018113977W WO2020024474A1 WO 2020024474 A1 WO2020024474 A1 WO 2020024474A1 CN 2018113977 W CN2018113977 W CN 2018113977W WO 2020024474 A1 WO2020024474 A1 WO 2020024474A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- transaction
- integrated
- records
- record
- funds
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- 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
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- 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
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3825—Use of electronic signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- 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
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/389—Keeping log of transactions for guaranteeing non-repudiation of a transaction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- 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
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/405—Establishing or using transaction specific rules
Definitions
- the present application relates to the field of data processing technology, for example, to a method and device for supporting digital voucher transactions.
- UTXO Unspent Transaction Output
- An embodiment of the present disclosure provides a method for supporting digital voucher transactions, including:
- Integrate available transaction records of a user and obtain an integrated transaction record of the user according to a result of the integration
- the transaction records to be integrated are regarded as the transaction records to be integrated.
- Performing the integration may include: merging funds in the transaction records to be integrated to obtain integrated funds.
- the determining a transaction record to be integrated may include:
- a limit transaction record that does not exceed the theoretical maximum number of transaction records acceptable for the transaction is used as a to-be-integrated transaction record for obtaining an integrated transaction record of the user;
- the theoretical maximum number of transaction records acceptable for the transaction is taken as the theoretical limit of the transaction records.
- the determining a transaction record to be integrated may include:
- the combined non-limit transaction records in which the total funds satisfy the difference are taken as an integrated transaction record for obtaining the user Record of pending transactions;
- the theoretical maximum number of transaction records acceptable for the transaction is taken as the theoretical limit of the transaction records.
- the determining a transaction record to be integrated may include:
- a temporary transaction record is obtained by merging transaction records that do not exceed the theoretical maximum number of transaction record acceptable transactions; wherein, the theoretical maximum number of transaction transaction acceptable transactions is used as the theoretical limit of transaction records;
- selecting a transaction record that meets the funds to be traded and does not exceed the theoretical limit of the transaction record is used to obtain the A pending transaction record for the user's integrated transaction record.
- Obtaining the integrated transaction record may include: constructing a transaction including the integrated transaction record according to the integrated funds.
- Constructing the transaction may include using the to-be-integrated transaction record as a transaction input, taking the integrated transaction record as a transaction output, and carrying the integrated funds in the integrated transaction record to generate the transaction including the transaction
- the data format of the input and transaction output is used as the transaction.
- the data format may include a character string.
- the method may further include the following operation: a transactoin error occurs.
- It may also include the operation of determining the validity of the result of the integration according to a reserve value for avoiding insufficient funds.
- Determining the validity of the integration result may include: adding the reserved value to the integration result to obtain a reference fund; and determining that the integration result is invalid when the reference fund exceeds a funding limit.
- the funding limit usually does not exceed the total funds of the user.
- the transaction records to be integrated may include at least one of the following:
- the transaction record may be UTXO.
- An embodiment of the present disclosure further provides a device supporting digital voucher transactions, including:
- Available transaction record integration module for integrating available transaction records of users
- An integrated transaction record generating module configured to obtain an integrated transaction record of the user according to a result of the integration
- the transaction records to be integrated are regarded as the transaction records to be integrated.
- the available transaction record integration module may be used to: merge funds in the transaction records to be integrated to obtain integrated funds.
- the available transaction record integration module may be further configured to determine the transaction record to be integrated.
- the available transaction record integration module determines a transaction record to be integrated, it may be used to:
- a limit transaction record that does not exceed the theoretical maximum number of transaction records acceptable for the transaction is used as a to-be-integrated transaction record for obtaining an integrated transaction record of the user;
- the theoretical maximum number of transaction records acceptable for the transaction is taken as the theoretical limit of the transaction records.
- the available transaction record integration module determines a transaction record to be integrated, it may be used to:
- the combined non-limit transaction records in which the total funds satisfy the difference are taken as an integrated transaction record for obtaining the user Record of pending transactions;
- the theoretical maximum number of transaction records acceptable for the transaction is taken as the theoretical limit of the transaction records.
- the available transaction record integration module determines a transaction record to be integrated, it may be used to:
- a temporary transaction record is obtained by merging transaction records that do not exceed the theoretical maximum number of transaction record acceptable transactions; wherein, the theoretical maximum number of transaction transaction acceptable transactions is used as the theoretical limit of transaction records;
- selecting a transaction record that meets the funds to be traded and does not exceed the theoretical limit of the transaction record is used to obtain the A pending transaction record for the user's integrated transaction record.
- the integrated transaction record generating module may be configured to construct a transaction including the integrated transaction record according to the integrated funds.
- the integrated transaction record generating module may be configured to: use the transaction record to be integrated as a transaction input, use the integrated transaction record as a transaction output, and carry the integrated transaction record in the integrated transaction record.
- a data format including the transaction input and transaction output is generated as the transaction.
- the data format may include a character string.
- the integrated transaction record generating module may be further configured to generate an address pointed to by the integrated funds and carry the address in the transaction output.
- the integrated transaction record generating module may be further configured to: sign the transaction.
- the integrated transaction record generating module may be further configured to: send the signed transaction.
- the integrated transaction record generating module may be further configured to perform transaction verification on the transaction before sending the signed transaction.
- the available transaction record integration module may be further configured to generate a transaction fee corresponding to the transaction before the integrated transaction record generation module constructs the transaction, and update the integrated funds according to the transaction fee.
- the available transaction record integration module may be further configured to be triggered by an excessive transaction abnormality that occurs before the integration.
- the available transaction record integration module may be further configured to determine the validity of the result of the integration according to a reserved value for avoiding insufficient funds.
- the available transaction record integration module may be used to: add the reserved value to the result of the integration to obtain a reference fund; determine when the reference fund exceeds a funding limit The result of the integration is invalid.
- the available transaction record integration module may be further configured to: when it is determined that the result of the integration is invalid, return to perform the integration.
- the funding limit usually does not exceed the total funds of the user.
- the available transaction record integration module may be further configured to: lock the transaction record to be integrated.
- the available transaction record integration module may be further configured to: after the integrated transaction record generation module obtains the integrated transaction record, unlock the transaction record to be integrated.
- the transaction records to be integrated may include at least one of the following:
- the transaction record may be UTXO.
- An embodiment of the present disclosure further provides a digital voucher client, which includes the device for supporting digital voucher transactions in the foregoing embodiment.
- An embodiment of the present disclosure further provides a computer-readable storage medium storing computer-executable instructions configured to execute the method for supporting digital voucher transactions of the foregoing embodiment.
- An embodiment of the present disclosure also provides a computer program product.
- the computer program product includes a computer program stored on a computer-readable storage medium, and the computer program includes program instructions.
- the program instructions When the program instructions are executed by a computer, The computer executes the method for supporting digital voucher transactions in the above embodiment.
- An embodiment of the present disclosure further provides an electronic device, including:
- At least one processor At least one processor
- a memory connected in communication with the at least one processor; wherein,
- the memory stores instructions executable by the at least one processor, and when the instructions are executed by the at least one processor, causes the at least one processor to execute the method for supporting digital voucher transactions in the foregoing embodiment.
- FIG. 1 is a schematic diagram of a method for supporting digital voucher transactions according to an embodiment of the present disclosure
- FIG. 2 is a schematic diagram of a method for integrating funds according to an embodiment of the present disclosure
- FIG. 3 is a schematic diagram of a method for implementing integration of digital voucher transaction records according to an embodiment of the present disclosure
- FIG. 4 is a schematic diagram of a method for selecting a limit transaction record according to an embodiment of the present disclosure
- FIG. 5 is a schematic diagram of a method for implementing integration of digital voucher transaction records according to another embodiment of the present disclosure
- FIG. 6 is a schematic diagram of a method for selecting an unlimited transaction record according to an embodiment of the present disclosure
- FIG. 7 is a schematic diagram of a method for implementing integration of digital voucher transaction records according to another embodiment of the present disclosure.
- FIG. 8 is a schematic diagram of a method for obtaining a temporary transaction record according to an embodiment of the present disclosure
- FIG. 9 is a schematic diagram of a method for reselecting a transaction record according to an embodiment of the present disclosure.
- FIG. 10 is a schematic diagram of a method for constructing a transaction according to an embodiment of the present disclosure
- FIG. 11 is a schematic diagram of a method for constructing a transaction according to another embodiment of the present disclosure.
- FIG. 12 is a schematic diagram of a method for updating integrated funds according to an embodiment of the present disclosure.
- FIG. 13 is a schematic diagram of a method for determining validity of an integration result according to an embodiment of the present disclosure
- FIG. 14 is a schematic diagram of a device supporting digital voucher transactions according to an embodiment of the present disclosure.
- 15 is a schematic diagram of an apparatus for integrating funds according to an embodiment of the present disclosure.
- 16 is a schematic diagram of an apparatus for implementing integration of digital voucher transaction records according to an embodiment of the present disclosure
- 17 is a schematic diagram of an apparatus for selecting a limit transaction record according to an embodiment of the present disclosure.
- FIG. 18 is a schematic diagram of a device for implementing integration of digital voucher transaction records according to another embodiment of the present disclosure.
- 19 is a schematic diagram of an apparatus for selecting an unlimited transaction record according to an embodiment of the present disclosure.
- FIG. 20 is a schematic diagram of a device for implementing integration of digital voucher transaction records according to still another embodiment of the present disclosure
- 21 is a schematic diagram of an apparatus for obtaining a temporary transaction record according to an embodiment of the present disclosure.
- 22 is a schematic diagram of an apparatus for reselecting a transaction record according to an embodiment of the present disclosure
- FIG. 23 is a schematic diagram of a device for constructing a transaction according to an embodiment of the present disclosure.
- 24 is a schematic diagram of a device for constructing a transaction according to another embodiment of the present disclosure.
- 25 is a schematic diagram of an apparatus for updating integrated funds according to an embodiment of the present disclosure.
- FIG. 26 is a schematic diagram of an apparatus for determining validity of an integration result according to an embodiment of the present disclosure.
- FIG. 27 is a schematic structural diagram of an electronic device according to an embodiment of the present disclosure.
- 110 available transaction record integration module
- 120 integrated transaction record generation module
- 1101 acquisition unit; 1102: determination unit; 1103: integration unit;
- 2700 electronic device; 2701: processor; 2702: memory; 2703: communication interface; 2704: bus.
- an embodiment of the present disclosure provides a method for supporting digital voucher transactions.
- the digital voucher can be exemplarily understood as a digital currency
- the digital currency can be exemplarily understood as a cryptocurrency such as Bitcoin.
- S10 Integrate available transaction records of users; wherein the available transaction records include the integrated transaction records as the transaction records to be integrated;
- the above method can be implemented by the available transaction record manager of the user, for example: a full node in a blockchain network, the user's wallet client, and the like.
- performing the integration may include: merging funds in the transaction records to be integrated to obtain integrated funds.
- the transaction records to be integrated may also be determined.
- the determining a transaction record to be integrated may include:
- the listunspent interface in the user's wallet client is called to obtain the available transaction records of the user.
- the obtained available transaction records of the user may include at least one of the following:
- S102 In the available transaction records, use a limit transaction record that does not exceed the theoretical maximum number of transaction records acceptable for the transaction as a transaction record to be integrated for obtaining an integrated transaction record of the user;
- the theoretical maximum number of transaction records acceptable for the transaction is taken as the theoretical limit of the transaction records.
- the quantitative relationship between all available transaction records of the user and the theoretical limit of the transaction records is not limited.
- the number of all available transaction records of the user is less than or equal to two of the theoretical limits of the transaction records. Times.
- the theoretical maximum number of transaction records that can be accepted by a transaction is usually within a certain range, for example: 600 to 650, or 550 to 600. In general, you can also set the theoretical maximum number of transaction records acceptable for a transaction to a specific value, for example: 600.
- the selection of limit transaction records can also be performed, for example, including:
- S1021 Sort the available transaction records according to funds; the funds are funds included in the available transaction records;
- S1022 Select the limit transaction record from the available transaction records according to the ranking.
- the sorting may be sorting according to funds from large to small;
- the method for selecting the limit transaction record may be: selecting the limit transaction record from the available transaction records according to the funds from large to small.
- the manner of selecting the limit transaction record may be:
- the number of the limit transaction records may be equal to the theoretical limit of the transaction records.
- the number of the limit transaction records may also be smaller than the theoretical limit of the transaction records.
- the number of the limit transaction record may also be slightly larger than the theoretical limit of the transaction record.
- the number of the limit transaction records is larger than the theoretical limit of the transaction records by a certain percentage, for example: within 5%, within 10%, or within 5% to 10%, and so on.
- the funds can also be sorted from small to large; the way to select the limit transaction records can be: according to funds from small to large in the available The transaction records are selected from the transaction records.
- the available transaction records may not be sorted, and a corresponding manner of selecting the limit transaction records may be: randomly selecting the limit transaction records among the available transaction records.
- determining the transaction records to be integrated may include:
- the listunspent interface in the user's wallet client is called to obtain the available transaction records of the user.
- the obtained available transaction records of the user may include at least one of the following:
- S112 In the available transaction records, merge the funds in the transaction records that do not exceed the theoretical maximum number of transaction records acceptable for the transaction to obtain the limit funds, and obtain the difference between the limit funds and the funds to be traded;
- the theoretical maximum number of transaction records acceptable for the transaction is taken as the theoretical limit of the transaction records.
- the limit funds may be subtracted from the funds to be traded to obtain the difference.
- the funds in a certain amount of unlimited transaction records may be combined to obtain the combined total funds, and when the combined total funds are greater than or equal to the difference, the non-limits of the funds are combined
- the transaction record is used as the transaction record to be integrated.
- the quantitative relationship between all available transaction records of the user and the theoretical limit of the transaction records is not limited.
- the number of all available transaction records of the user is less than or equal to two of the theoretical limits of the transaction records. Times.
- the theoretical maximum number of transaction records that can be accepted by a transaction is usually within a certain range, for example: 600 to 650, or 550 to 600. In general, you can also set the theoretical maximum number of transaction records acceptable for a transaction to a specific value, for example: 600.
- the selection of unlimited transaction records can also be performed, for example, including:
- S1131 Sort the unlimited transaction records according to funds; the funds are funds included in the unlimited transaction records;
- S1132 Select the non-limit transaction record as the transaction record to be integrated according to the ranking.
- the sorting may be sorting according to funds from large to small;
- the method for selecting the non-limit transaction record may be: selecting the non-limit transaction record as the transaction record to be integrated according to the funds from large to small.
- the manner of selecting the unlimited transaction record may be:
- the non-limit transaction records when the non-limit transaction records are sorted according to funds, the funds can also be sorted from small to large; the corresponding selection of the non-limit transaction records can be as follows: The unlimited transaction records to be integrated with the transaction records.
- the non-limit transaction records may not be sorted, and the corresponding manner of selecting the non-limit transaction records may be: randomly selecting the non-limit transaction records as the transaction records to be integrated.
- related operations such as the selection of the limit transaction record shown in FIG. 4 described above may also be performed, for example, including:
- S1021 Sort the available transaction records according to funds; the funds are funds included in the available transaction records;
- S1022 Select the limit transaction record from the available transaction records according to the ranking.
- the sorting may be sorting according to funds from large to small;
- the method for selecting the limit transaction record may be: selecting the limit transaction record from the available transaction records according to the funds from large to small.
- the manner of selecting the limit transaction record may be:
- the number of the limit transaction records may be equal to the theoretical limit of the transaction records.
- the number of the limit transaction records may also be smaller than the theoretical limit of the transaction records.
- the number of the limit transaction record may also be slightly larger than the theoretical limit of the transaction record.
- the number of the limit transaction records is larger than the theoretical limit of the transaction records by a certain percentage, for example: within 5%, within 10%, or within 5% to 10%, and so on.
- the funds can also be sorted from small to large; the way to select the limit transaction records can be: according to funds from small to large in the available The transaction records are selected from the transaction records.
- the available transaction records may not be sorted, and a corresponding manner of selecting the limit transaction records may be: randomly selecting the limit transaction records among the available transaction records.
- S112 In the available transaction records, merge the funds in the transaction records that do not exceed the theoretical maximum number of transaction records acceptable for the transaction to obtain the limit funds, and obtain the difference between the limit funds and the funds to be traded;
- the limit funds may be subtracted from the funds to be traded to obtain the difference.
- the funds in a certain amount of unlimited transaction records may be combined to obtain the combined total funds, and when the combined total funds are greater than or equal to the difference, the non-limits of the funds are combined
- the transaction record is used as the transaction record to be integrated.
- the theoretical maximum number of transaction records that can be accepted by a transaction is usually within a certain range, for example: 600 to 650, or 550 to 600. In general, you can also set the theoretical maximum number of transaction records acceptable for a transaction to a specific value, for example: 600.
- selecting an unlimited transaction record may include:
- S1131 Sort the unlimited transaction records according to funds; the funds are funds included in the unlimited transaction records;
- S1132 Select the non-limit transaction record as the transaction record to be integrated according to the ranking.
- the sorting may be sorting according to funds from large to small;
- the method for selecting the non-limit transaction record may be: selecting the non-limit transaction record as the transaction record to be integrated according to the funds from large to small.
- the manner of selecting the unlimited transaction record may be:
- the non-limit transaction records when the non-limit transaction records are sorted according to funds, the funds can also be sorted from small to large; the corresponding selection of the non-limit transaction records can be as follows: The unlimited transaction records to be integrated with the transaction records.
- the non-limit transaction records may not be sorted, and the corresponding manner of selecting the non-limit transaction records may be: randomly selecting the non-limit transaction records as the transaction records to be integrated.
- the determining a transaction record to be integrated may include:
- the listunspent interface in the user's wallet client is called to obtain the available transaction records of the user.
- the obtained available transaction records of the user may include at least one of the following:
- S122 In the available transaction records, merge the transaction records that do not exceed the limit of the theoretical maximum number of transaction records that can be accepted by the transaction to obtain a temporary transaction record; wherein, the theoretical maximum number of transaction records that can be accepted by the transaction is the theoretical limit of transaction records ;
- S123 Based on the temporary transaction record and non-limit transaction records other than the limit transaction record in the available transaction records, selecting a transaction record that satisfies the funds to be traded and does not exceed the theoretical limit of the transaction record is used to obtain A to-be-integrated transaction record of an integrated transaction record of the user.
- selecting the to-be-integrated transaction records using a two-step traversal random method may include:
- the transaction record selected for the first traversal meets the funds to be traded and does not exceed the theoretical limit of the transaction record, then the transaction record selected for the first traversal is used as the transaction record to be integrated;
- the transaction records selected through two traversals meet the funds to be traded and do not exceed the theoretical limit of the transaction records, then the transaction records selected through two traversals are used as the transaction records to be integrated.
- all transaction records may be arranged in descending order of funds, and the traversal starts from the transaction record containing the largest funds.
- a true or false random method can be used to select transaction records.
- the two-pass traversal random method may be performed multiple times, for example, 1000 times, to select a transaction record that satisfies the funds to be traded and does not exceed the theoretical limit of the transaction record as the to-be-integrated transaction record.
- a scheme with the least number of transaction records to be integrated can be determined.
- the quantitative relationship between all available transaction records of the user and the theoretical limit of the transaction records is not limited.
- the number of all available transaction records of the user is greater than or equal to two of the theoretical limits of the transaction records. Times.
- the theoretical maximum number of transaction records that can be accepted by a transaction is usually within a certain range, for example: 600 to 650, or 550 to 600. In general, you can also set the theoretical maximum number of transaction records acceptable for a transaction to a specific value, for example: 600.
- related operations such as the selection of the limit transaction record shown in FIG. 4 described above may also be performed, for example, including:
- S1021 Sort the available transaction records according to funds; the funds are funds included in the available transaction records;
- S1022 Select the limit transaction record from the available transaction records according to the ranking.
- the sorting may be sorting according to funds from small to large;
- the method for selecting the limit transaction record may be: selecting the limit transaction record from the available transaction records according to the funds from small to large.
- the manner of selecting the limit transaction record may be:
- the initial number of the limit transaction records may be greater than one.
- the funds can also be sorted from large to small; the way to select the limit transaction records can be: according to the funds from large to small
- the limit transaction record is selected from the available transaction records.
- the available transaction records may not be sorted, and a corresponding manner of selecting the limit transaction records may be: randomly selecting the limit transaction records among the available transaction records.
- obtaining the temporary transaction record may include:
- the temporary transaction record is an additional generated transaction record; it may be generated in advance and reserved, or it may be newly generated.
- the above-mentioned operation involving the temporary transaction record can merge the funds in a certain amount of transaction records to obtain the consolidated funds and temporarily generate a transaction containing the consolidated funds before obtaining the consolidated transaction records. Record, that is, the temporary transaction record.
- an operation of reselecting a transaction record may also be performed, for example, when the selected transaction record exceeds the theoretical limit of the transaction record, increasing the number of merged transaction records of the limit and returning to perform the selection.
- the number of the selected transaction record may also be slightly larger than the theoretical limit of the transaction record.
- the number of the selected transaction records is larger than the theoretical limit of the transaction records by a certain percentage, for example, within 5%, within 10%, or within 5% to 10%.
- increasing the number of the combined limit transaction records may include: increasing the number of the combined limit transaction records by one.
- the number of the combined limit transaction records when the number of the combined limit transaction records is increased, the number of the combined limit transaction records may be increased by 2 or 3 other than 1 or the like.
- the available transaction records may also be updated by using the temporary transaction records and unlimited transaction records.
- the temporary transaction record and the unlimited transaction record are combined into a set, and the transaction records in the set are used as the available transaction records.
- a transaction including the integrated transaction record may be constructed according to the integrated funds.
- constructing the transaction may include:
- the transaction record to be integrated is used as a transaction input, the integrated transaction record is used as a transaction output, and the integrated funds are carried in the integrated transaction record;
- S220 Generate a data format including the transaction input and transaction output as the transaction.
- the createrawtransaction interface in the user's wallet client is called to construct the transaction.
- the data format may include a character string.
- the character string may be hexadecimal.
- address-related processing can also be performed when constructing a transaction, for example, including:
- S30 Generate an address pointed to by the integrated funds; for example, call the getnewaddress interface in the wallet client of the user to obtain the address;
- the transaction may also be signed.
- the signature may be a private key signature, and the like.
- the signed transaction may also be sent.
- the sendrawtransaction interface in the user's wallet client is called to send the transaction to a local node and a connected network (such as a blockchain network).
- a connected network such as a blockchain network
- the transaction verification may be performed on the transaction before the signed transaction is sent.
- calling the decoderawtransaction interface in the user's wallet client to decode the signed transaction and based on the decoded transaction information (which may include the integrated funds, transaction input, transaction output, etc.) May include the following transaction fees) for transaction verification.
- the operation of updating the integrated funds can also be performed, for example, including:
- S201 Generate a transaction fee corresponding to the transaction based on the transaction to be constructed
- the estimatefee interface in the wallet client of the user is called to obtain the transaction fee.
- the difference in funds may be directly used as the value of the new integrated funds.
- the transaction fee may also be carried in the integrated transaction record.
- the method may further include the following operation: an excessive transaction abnormality occurs.
- an excessive transaction abnormality occurs.
- the integration may be triggered by the excessive transaction anomaly that occurs.
- the validity of the integration result may also be determined, for example, including: determining the validity of the integration result according to a reserved value for avoiding insufficient funds.
- determining the validity of the result of the integration may include:
- the integration may be returned.
- the funding limit generally does not exceed the total funds of the user.
- the funding limit may be less than the total funds of the user.
- the funding limit is equal to 80% or 90% of the total funding or other proportion.
- the funding limit may be equal to the total funds of the user.
- the reserved value may be a predetermined value, and the predetermined value may be customized, for example, the reserved value is equal to 10% of the funds to be traded or other proportions.
- the transaction records to be integrated may also be locked.
- the lockunspent interface in the user's wallet client is called to lock the transaction record to be integrated, which can prevent the transaction record to be integrated from being used for other transactions.
- the transaction record to be integrated may also be unlocked after the integrated transaction record is obtained.
- all available transaction records of the user may be acquired.
- the transaction record to be integrated may include at least one of the following:
- the transaction record may be UTXO.
- the method for supporting digital voucher transactions provided by the embodiments of the present disclosure can integrate the available transaction records of users, and obtain an integrated transaction record of the users according to the result of the integration, and therefore can effectively reduce The number of available transaction records for the user.
- the constructed transaction will not contain available transaction records that exceed the capacity limit, ensuring the successful completion of the transaction.
- the effective reduction of the number of available transaction records of the user enables the available transaction records included in the constructed transaction to be effectively reduced when a subsequent transaction is required to be constructed, thereby effectively reducing transaction fees.
- the method for integrating transaction records provided in the embodiment of the present disclosure (see FIGS. 3 to 9 and related descriptions) can effectively determine the transaction records to be integrated among the available transaction records of the user, and therefore can The integrated transaction records are integrated to obtain an integrated transaction record of the user, so the number of available transaction records of the user can be effectively reduced.
- the effective reduction of the number of available transaction records of the user enables the available transaction records included in the constructed transaction to be effectively reduced when a subsequent transaction is required to be constructed, thereby effectively reducing transaction fees.
- an embodiment of the present disclosure further provides a device 10 for supporting digital voucher transactions, including:
- Available transaction record integration module 110 for integrating available transaction records of users
- the integrated transaction record generating module 120 is configured to obtain an integrated transaction record of the user according to a result of the integration
- the transaction records to be integrated are regarded as the transaction records to be integrated.
- the device 10 supporting digital voucher transactions can be implemented by the user's available transaction record manager, such as: a full node in a blockchain network, the user's wallet client, and the like.
- the available transaction record integration module 110 may include an integration unit 1103 configured to: when integrating the transaction records to be integrated, merge funds in the transaction records to be integrated to obtain integrated funds.
- the available transaction record integration module 110 may be configured to determine the transaction records to be integrated.
- the available transaction record integration module 110 may be used to:
- the theoretical maximum number of transaction records acceptable for the transaction is taken as the theoretical limit of the transaction records.
- the available transaction record integration module 110 may include: an obtaining unit 1101 and a determining unit 1102;
- the obtaining unit 1101 may be used to obtain an available transaction record of a user
- the listunspent interface in the user's wallet client is called to obtain the available transaction records of the user.
- the obtained available transaction records of the user may include at least one of the following:
- the determining unit 1102 may be configured to use, in the available transaction records, a limit transaction record that does not exceed a theoretical maximum number of transaction records acceptable for the transaction as a transaction record to be integrated for obtaining an integrated transaction record of the user.
- the quantitative relationship between all available transaction records of the user and the theoretical limit of the transaction records is not limited.
- the number of all available transaction records of the user is less than or equal to two of the theoretical limits of the transaction records. Times.
- the theoretical maximum number of transaction records that can be accepted by a transaction is usually within a certain range, for example: 600 to 650, or 550 to 600. In general, you can also set the theoretical maximum number of transaction records acceptable for a transaction to a specific value, for example: 600.
- the determining unit 1102 may be further configured to:
- the available transaction records are sorted according to funds; the limit transaction records are selected from the available transaction records according to the ranking.
- the funds are funds contained in the available transaction records.
- the sorting may be sorting according to funds from large to small;
- the determining unit 1102 may be configured to select the limit transaction record from the available transaction records in accordance with the funds from large to small.
- the determining unit 1102 when determining the limit transaction record, may be configured to:
- the number of the limit transaction records may be equal to the theoretical limit of the transaction records.
- the number of the limit transaction records may also be smaller than the theoretical limit of the transaction records.
- the number of the limit transaction record may also be slightly larger than the theoretical limit of the transaction record.
- the number of the limit transaction records is larger than the theoretical limit of the transaction records by a certain percentage, for example: within 5%, within 10%, or within 5% to 10%, and so on.
- the funds can also be sorted from small to large; the way to select the limit transaction records can be: according to funds from small to large in the available The transaction records are selected from the transaction records.
- the available transaction records may not be sorted, and a corresponding manner of selecting the limit transaction records may be: randomly selecting the limit transaction records among the available transaction records.
- the available transaction record integration module 110 may be used to:
- the combined non-limit transaction records in which the total funds satisfy the difference are taken as an integrated transaction record for obtaining the user Record of pending transactions;
- the theoretical maximum number of transaction records acceptable for the transaction is taken as the theoretical limit of the transaction records.
- the available transaction record integration module 110 may include: an obtaining unit 1101 and a determining unit 1102;
- the obtaining unit 1101 may be used to obtain an available transaction record of a user
- the listunspent interface in the user's wallet client is called to obtain the available transaction records of the user.
- the obtained available transaction records of the user may include at least one of the following:
- a determining unit 1102 may be used to merge the funds in the available transaction records to the limit of the theoretical maximum number of transaction records that can be accepted by the transaction to obtain the limit funds, and obtain the difference between the limit funds and the funds to be traded ; Wherein the theoretical maximum number of transaction records acceptable for the transaction is the theoretical limit of the transaction records; and
- the combined non-limit transaction records in which the total funds satisfy the difference are taken as an integrated transaction record for obtaining the user Of pending transaction records.
- the limit funds may be subtracted from the funds to be traded to obtain the difference.
- the funds in a certain amount of unlimited transaction records may be combined to obtain the combined total funds, and when the combined total funds are greater than or equal to the difference, the non-limits of the funds are combined
- the transaction record is used as the transaction record to be integrated.
- the quantitative relationship between all available transaction records of the user and the theoretical limit of the transaction records is not limited.
- the number of all available transaction records of the user is less than or equal to two of the theoretical limits of the transaction records. Times.
- the theoretical maximum number of transaction records that can be accepted by a transaction is usually within a certain range, for example: 600 to 650, or 550 to 600. In general, you can also set the theoretical maximum number of transaction records acceptable for a transaction to a specific value, for example: 600.
- the determining unit 1102 may be further configured to:
- Sort the unlimited transaction records according to funds select the unlimited transaction records as the transaction records to be integrated according to the ranking.
- the funds are the funds included in the unlimited transaction record.
- the sorting may be sorting according to funds from large to small;
- the determining unit 1102 selects the non-limit transaction record, it can be used to select the non-limit transaction record to be integrated as the transaction record to be integrated according to the funds from large to small.
- the determining unit 1102 when determining the non-limit transaction record, the determining unit 1102 may be configured to:
- the non-limit transaction records when the non-limit transaction records are sorted according to funds, the funds can also be sorted from small to large; the corresponding selection of the non-limit transaction records can be as follows: The unlimited transaction records to be integrated with the transaction records.
- the non-limit transaction records may not be sorted, and the corresponding manner of selecting the non-limit transaction records may be: randomly selecting the non-limit transaction records as the transaction records to be integrated.
- the foregoing setting shown in FIG. 17 may also be adopted, for example:
- the determining unit 1102 sorts the available transaction records according to funds, wherein the funds are funds included in the available transaction records; and selecting the limit transaction records from the available transaction records according to the ranking.
- the sorting may be sorting according to funds from large to small;
- the determining unit 1102 may be configured to select the limit transaction record from the available transaction records in accordance with the funds from large to small.
- the determining unit 1102 when determining the limit transaction record, may be configured to:
- the number of the limit transaction records may be equal to the theoretical limit of the transaction records.
- the number of the limit transaction records may also be smaller than the theoretical limit of the transaction records.
- the number of the limit transaction record may also be slightly larger than the theoretical limit of the transaction record.
- the number of the limit transaction records is larger than the theoretical limit of the transaction records by a certain percentage, for example: within 5%, within 10%, or within 5% to 10%, and so on.
- the funds can also be sorted from small to large; the way to select the limit transaction records can be: according to funds from small to large in the available The transaction records are selected from the transaction records.
- the available transaction records may not be sorted, and a corresponding manner of selecting the limit transaction records may be: randomly selecting the limit transaction records among the available transaction records.
- the settings shown in FIGS. 18 and 19 may also be adopted, for example:
- the determining unit 1102 combines the funds in the available transaction records with the funds in the limit transaction records that do not exceed the theoretical maximum number of transaction records acceptable for the transaction to obtain the limit funds, and obtains the difference between the limit funds and funds to be traded; Among the available transaction records other than the limit transaction records, the combined non-limit transaction records in which the total funds satisfy the difference are used as the integrated transaction records for obtaining the user. To be consolidated transaction records.
- the limit funds may be subtracted from the funds to be traded to obtain the difference.
- the funds in a certain amount of unlimited transaction records may be combined to obtain the combined total funds, and when the combined total funds are greater than or equal to the difference, the non-limits of the funds are combined
- the transaction record is used as the transaction record to be integrated.
- the theoretical maximum number of transaction records that can be accepted by a transaction is usually within a certain range, for example: 600 to 650, or 550 to 600. In general, you can also set the theoretical maximum number of transaction records acceptable for a transaction to a specific value, for example: 600.
- the determining unit 1102 may be used to sort the unlimited transaction records according to funds when selecting the unlimited transaction records, where the funds include the unlimited transaction records.
- the funds selected according to the ranking are selected as the unlimited transaction records to be integrated transaction records.
- the sorting may be sorting according to funds from large to small;
- the determining unit 1102 selects the non-limit transaction record, it may be used to select the non-limit transaction record to be integrated as the transaction record to be integrated according to the funds from large to small.
- the determining unit 1102 when determining the non-limit transaction record, the determining unit 1102 may be configured to:
- the non-limit transaction records when the non-limit transaction records are sorted according to funds, the funds can also be sorted from small to large; the corresponding selection of the non-limit transaction records can be as follows: The unlimited transaction records to be integrated with the transaction records.
- the non-limit transaction records may not be sorted, and the corresponding manner of selecting the non-limit transaction records may be: randomly selecting the non-limit transaction records as the transaction records to be integrated.
- the available transaction record integration module 110 may be used to:
- selecting a transaction record that meets the funds to be traded and does not exceed the theoretical limit of the transaction record is used to obtain the A pending transaction record for the user's integrated transaction record.
- the available transaction record integration module 110 may include: an obtaining unit 1101 and a determining unit 1102;
- the obtaining unit 1101 may be used to obtain an available transaction record of a user
- the listunspent interface in the user's wallet client is called to obtain the available transaction records of the user.
- the obtained available transaction records of the user may include at least one of the following:
- the determining unit 1102 may be configured to combine, within the available transaction records, a transaction record that does not exceed a theoretical maximum transaction record acceptable number of transactions to obtain a temporary transaction record; wherein, the theoretical maximum transaction record acceptable number of transactions As the theoretical limit of transaction records; and
- selecting a transaction record that meets the funds to be traded and does not exceed the theoretical limit of the transaction record is used to obtain the A pending transaction record for the user's integrated transaction record.
- selecting the to-be-integrated transaction records using a two-step traversal random method may include:
- the transaction record selected for the first traversal meets the funds to be traded and does not exceed the theoretical limit of the transaction record, then the transaction record selected for the first traversal is used as the transaction record to be integrated;
- the transaction records selected through two traversals meet the funds to be traded and do not exceed the theoretical limit of the transaction records, then the transaction records selected through two traversals are used as the transaction records to be integrated.
- all transaction records may be arranged in descending order of funds, and the traversal starts from the transaction record containing the largest funds.
- a true or false random method can be used to select transaction records.
- the two-pass traversal random method may be performed multiple times, for example, 1000 times, to select a transaction record that satisfies the funds to be traded and does not exceed the theoretical limit of the transaction record as the to-be-integrated transaction record.
- a scheme with the least number of transaction records to be integrated can be determined.
- the quantitative relationship between all available transaction records of the user and the theoretical limit of the transaction records is not limited.
- the number of all available transaction records of the user is greater than or equal to two of the theoretical limits of the transaction records. Times.
- the theoretical maximum number of transaction records that can be accepted by a transaction is usually within a certain range, for example: 600 to 650, or 550 to 600. In general, you can also set the theoretical maximum number of transaction records acceptable for a transaction to a specific value, for example: 600.
- the setting shown in FIG. 17 may also be adopted, for example:
- the determining unit 1102 sorts the available transaction records according to funds, wherein the funds are funds included in the available transaction records; and selecting the limit transaction records from the available transaction records according to the ranking.
- the sorting may be sorting according to funds from small to large;
- the determining unit 1102 may be configured to select the limit transaction record from the available transaction records according to the funds from small to large.
- the determining unit 1102 when determining the limit transaction record, may be configured to:
- the initial number of the limit transaction records may be greater than one.
- the funds can also be sorted from large to small; the way to select the limit transaction records can be: according to the funds from large to small
- the limit transaction record is selected from the available transaction records.
- the available transaction records may not be sorted, and a corresponding manner of selecting the limit transaction records may be: randomly selecting the limit transaction records among the available transaction records.
- the determining unit 1102 when obtaining the temporary transaction record, the determining unit 1102 may be configured to:
- the funds in the limit transaction record are combined to obtain a combined fund, and the combined fund is included in the newly generated temporary transaction record.
- the temporary transaction record is an additional generated transaction record; it may be generated in advance and reserved, or it may be newly generated.
- the above-mentioned operation involving the temporary transaction record can merge the funds in a certain amount of transaction records to obtain the consolidated funds and temporarily generate a transaction containing the consolidated funds before obtaining the consolidated transaction records. Record, that is, the temporary transaction record.
- the determining unit 1102 may be further configured to:
- the number of merged transaction records of the limit is increased and the selection is returned.
- the number of the selected transaction record may also be slightly larger than the theoretical limit of the transaction record.
- the number of the selected transaction records is larger than the theoretical limit of the transaction records by a certain percentage, for example, within 5%, within 10%, or within 5% to 10%.
- the determining unit 1102 when the determining unit 1102 increases the number of the combined limit transaction records, it may be configured to add 1 to the number of the combined limit transaction records.
- the number of the combined limit transaction records when the number of the combined limit transaction records is increased, the number of the combined limit transaction records may be increased by 2 or 3 other than 1 or the like.
- the determining unit 1102 may be further configured to:
- the temporary transaction record and the unlimited transaction record are combined into a set, and the transaction records in the set are used as the available transaction records.
- the integrated transaction record generating module 120 may be configured to construct a transaction including the integrated transaction record according to the integrated funds.
- the integrated transaction record generating module 120 may include a constructing unit 1201.
- the constructing unit 1201 may be configured to: use the transaction record to be integrated as a transaction input, An integrated transaction record is used as a transaction output and the integrated funds are carried in the integrated transaction record, and a data format including the transaction input and transaction output is generated as the transaction.
- the createrawtransaction interface in the user's wallet client is called to construct the transaction.
- the data format may include a character string.
- the character string may be hexadecimal.
- the integrated transaction record generating module 120 may also be used for:
- Generating the address pointed to by the integrated funds for example, calling the getnewaddress interface in the user's wallet client to obtain the address;
- the address is carried in the transaction output.
- the integrated transaction record generating module 120 may be further configured to: sign the transaction.
- the signature may be a private key signature, and the like.
- the integrated transaction record generating module 120 may be further configured to: send the signed transaction.
- the sendrawtransaction interface in the user's wallet client is called to send the transaction to a local node and a connected network (such as a blockchain network).
- a connected network such as a blockchain network
- the integrated transaction record generating module 120 may be further configured to perform transaction verification on the transaction before sending the signed transaction.
- calling the decoderawtransaction interface in the user's wallet client to decode the signed transaction and based on the decoded transaction information (which may include the integrated funds, transaction input, transaction output, etc.) May include the following transaction fees) for transaction verification.
- the available transaction record integration module 110 can also be used to update the integrated funds, for example, generating a transaction corresponding to the transaction based on the transaction to be constructed by the integrated transaction record generation module 120 Fee, updating the integrated funds according to the transaction fee.
- the estimatedfee interface in the wallet client of the user may be called to obtain the transaction fee based on the signed transaction.
- the integrated fund when the integrated funds are updated according to the transaction fee, the integrated fund may be subtracted from the transaction fee to obtain a difference in funds, and the integrated transaction record may be updated using the difference in funds.
- the difference in funds may be directly used as the value of the new integrated funds.
- the transaction fee may also be carried in the integrated transaction record.
- the available transaction record integration module 110 may be further configured to be triggered by an excessive transaction abnormality that occurs before performing the integration.
- the available transaction record integration module 110 may also be used to determine the validity of the integration result, for example, determining the validity of the integration result according to a reserved value for avoiding insufficient funds.
- the available transaction record integration module 110 may be used to: add the reserved value to the integration result to obtain a reference fund; When the funding limit is exceeded, it is determined that the result of the integration is invalid.
- the available transaction record integration module 110 may be further configured to: when it is determined that the result of the integration is invalid, return to perform the integration.
- the funding limit generally does not exceed the total funds of the user.
- the funding limit may be less than the total funds of the user.
- the funding limit is equal to 80% or 90% of the total funding or other proportion.
- the funding limit may be equal to the total funds of the user.
- the reserved value may be a predetermined value, and the predetermined value may be customized, for example, the reserved value is equal to 10% of the funds to be traded or other proportions.
- the available transaction record integration module 110 may be further configured to: lock the transaction record to be integrated.
- the lockunspent interface in the user's wallet client is called to lock the transaction record to be integrated, which can prevent the transaction record to be integrated from being used for other transactions.
- the available transaction record integration module 110 may be further configured to: after the integrated transaction record generation module 120 obtains the integrated transaction record, unlock the transaction record to be integrated.
- the obtaining unit 1101 may be configured to obtain all available transaction records of the user.
- the transaction record to be integrated may include at least one of the following:
- the transaction record may be UTXO.
- the device supporting digital voucher transactions provided by the embodiments of the present disclosure can integrate the available transaction records of users, and obtain an integrated transaction record of the user according to the result of the integration, and therefore can effectively reduce The number of available transaction records for the user.
- the effective reduction of the number of available transaction records of the user enables the available transaction records included in the constructed transaction to be effectively reduced when a subsequent transaction is required to be constructed, thereby effectively reducing transaction fees.
- the device for implementing transaction record integration provided by the embodiment of the present disclosure (see FIGS. 16 to 22 and related descriptions) can effectively determine a transaction record to be integrated among a user's available transaction records, and therefore can The integrated transaction records are integrated to obtain an integrated transaction record of the user, so the number of available transaction records of the user can be effectively reduced.
- the effective reduction of the number of available transaction records of the user enables the available transaction records included in the constructed transaction to be effectively reduced when a subsequent transaction is required to be constructed, thereby effectively reducing transaction fees.
- An embodiment of the present disclosure further provides a digital voucher client, which includes the device for supporting digital voucher transactions in the foregoing embodiment.
- the digital voucher client may also include the device for integrating digital voucher transaction records in the foregoing embodiment.
- An embodiment of the present disclosure further provides a computer-readable storage medium storing computer-executable instructions configured to execute the method for supporting digital voucher transactions of the foregoing embodiment.
- the computer-executable instructions may also be configured to execute the method for implementing integration of digital voucher transaction records in the foregoing embodiment.
- An embodiment of the present disclosure also provides a computer program product.
- the computer program product includes a computer program stored on a computer-readable storage medium, and the computer program includes program instructions.
- the program instructions When the program instructions are executed by a computer, The computer executes the method for supporting digital voucher transactions in the above embodiment.
- the program instructions may also cause the computer to execute the method for implementing integration of digital voucher transaction records in the foregoing embodiment.
- the computer-readable storage medium described above may be a transitory computer-readable storage medium or a non-transitory computer-readable storage medium.
- An embodiment of the present disclosure further provides an electronic device, including:
- At least one processor At least one processor
- a memory connected in communication with the at least one processor; wherein,
- the memory stores instructions executable by the at least one processor, and when the instructions are executed by the at least one processor, causes the at least one processor to execute the method for supporting digital voucher transactions in the foregoing embodiment.
- the electronic device may be as shown in FIG. 27, and the structure of the electronic device 2700 in FIG. 27 may include:
- At least one processor 2701, and a processor 2701 is taken as an example in FIG. 27; and the memory 2702 may further include a communication interface 2703 and a bus 2704. Among them, the processor 2701, the communication interface 2703, and the memory 2702 can complete communication with each other through the bus 2704. The communication interface 2703 can be used for information transmission.
- the processor 2701 may call a logic instruction in the memory 2702 to execute the method for supporting digital voucher transactions in the foregoing embodiment.
- logic instructions in the memory 2702 may be implemented in the form of software functional units and sold or used as independent products, and may be stored in a computer-readable storage medium.
- the memory 2702 is a computer-readable storage medium and can be used to store software programs and computer-executable programs, such as program instructions / modules / units corresponding to the methods in the embodiments of the present disclosure.
- the processor 2701 executes functional applications and data processing by running software programs, instructions, modules, and units stored in the memory 2702, that is, implementing the method for supporting digital voucher transactions in the foregoing method embodiments.
- the memory 2702 may include a storage program area and a storage data area, where the storage program area may store an operating system and application programs required for at least one function; the storage data area may store data created according to the use of the terminal device, and the like.
- the memory 2702 may include a high-speed random access memory, and may further include a non-volatile memory.
- the instruction may also cause the at least one processor to execute the method for implementing integration of digital voucher transaction records in the foregoing embodiment.
- the technical solution of the embodiment of the present disclosure may be embodied in the form of a software product.
- the computer software product is stored in a storage medium and includes one or more instructions for making a computer device (which may be a personal computer, a server, or a network) Equipment, etc.) perform all or part of the steps of the method described in the embodiments of the present disclosure.
- the foregoing storage medium may be a non-transitory storage medium, including: a U disk, a mobile hard disk, a read-only memory (ROM, Read-Only Memory), a random access memory (RAM, Random Access Memory), a magnetic disk or an optical disk, etc.
- first, second, etc. may be used in this application to describe various elements, these elements should not be limited by these terms. These terms are only used to distinguish one element from another.
- the first element may be called the second element, and likewise, the second element may be called the first element, as long as all occurrences of the "first element” are consistently renamed and all occurrences
- the “second component” can be renamed consistently.
- the first element and the second element are both elements, but may not be the same element.
- the aspects, implementations, implementations or features in the described embodiments can be used individually or in any combination.
- Various aspects in the described embodiments may be implemented by software, hardware, or a combination of software and hardware.
- the described embodiments may also be embodied by a computer-readable medium storing computer-readable code, the computer-readable code including instructions executable by at least one computing device.
- the computer-readable medium can be associated with any data storage device capable of storing data, which can be read by a computer system.
- Computer-readable media for example may include read-only memory, random-access memory, CD-ROM, HDD, DVD, magnetic tape, and optical data storage devices.
- the computer-readable medium may also be distributed among computer systems connected through a network, so that the computer-readable code can be stored and executed in a distributed manner.
Landscapes
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Engineering & Computer Science (AREA)
- Finance (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Economics (AREA)
- Development Economics (AREA)
- Marketing (AREA)
- Technology Law (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
A method and apparatus for supporting a digital certificate transaction, a digital certificate client, a computer readable storage medium, a computer program product, and an electronic device. The method comprises: integrating available transaction records of a user, transaction records to be integrated in the available transaction records being taken as to-be-integrated transaction records (S10); and obtaining an integrated transaction record of the user according to a result of the integration (S20).
Description
本申请涉及数据处理技术领域,例如涉及一种支持数字凭证交易的方法和装置。The present application relates to the field of data processing technology, for example, to a method and device for supporting digital voucher transactions.
目前,在用户进行数字凭证交易时,通常需要选取一定数量的可用交易记录,例如UTXO(未花费的交易输出),以构建满足待交易资金的交易。At present, when users conduct digital voucher transactions, they usually need to select a certain number of available transaction records, such as UTXO (Unspent Transaction Output) to construct a transaction that meets the funds to be traded.
当用户的可用交易记录中的资金较小时,需要选取大量的可用交易记录以构建满足待交易资金的交易,这导致构建的交易中包含了超过容量上限的可用交易记录,使得交易无法完成,严重影响数字凭证交易的实现。When the funds available in the user's available transaction records are small, a large number of available transaction records need to be selected to construct a transaction that meets the funds to be traded, which results in the constructed transaction containing available transaction records exceeding the capacity limit, making the transaction impossible to complete. Affect the realization of digital voucher transactions.
发明内容Summary of the invention
本公开实施例提供了一种支持数字凭证交易的方法,包括:An embodiment of the present disclosure provides a method for supporting digital voucher transactions, including:
对用户的可用交易记录进行整合,根据所述整合的结果得到所述用户的一个已整合交易记录;Integrate available transaction records of a user, and obtain an integrated transaction record of the user according to a result of the integration;
其中,所述可用交易记录中将进行整合的交易记录作为待整合交易记录。Among the available transaction records, the transaction records to be integrated are regarded as the transaction records to be integrated.
进行所述整合可以包括:合并所述待整合交易记录中的资金,得到已整合资金。Performing the integration may include: merging funds in the transaction records to be integrated to obtain integrated funds.
还可以包括如下操作:确定所述待整合交易记录。It may also include the following operation: determining the transaction records to be integrated.
所述确定待整合交易记录,可以包括:The determining a transaction record to be integrated may include:
在所述可用交易记录中,将不超过交易可接受的理论最大交易记录数量的限度交易记录作为用于得到所述用户的一个已整合交易记录的待整合交易记录;In the available transaction records, a limit transaction record that does not exceed the theoretical maximum number of transaction records acceptable for the transaction is used as a to-be-integrated transaction record for obtaining an integrated transaction record of the user;
其中,所述交易可接受的理论最大交易记录数量作为交易记录理论限度。Wherein, the theoretical maximum number of transaction records acceptable for the transaction is taken as the theoretical limit of the transaction records.
所述确定待整合交易记录,可以包括:The determining a transaction record to be integrated may include:
在所述可用交易记录中,合并不超过交易可接受的理论最大交易记录数量的限度交易记录中的资金得到限度资金,得到所述限度资金与待交易资金 的差值;In the available transaction records, combining the funds in the transaction records that do not exceed the theoretical maximum number of transaction records acceptable for the transaction to obtain the limit funds, and obtaining the difference between the limit funds and the funds to be traded;
在所述可用交易记录中除所述限度交易记录以外的非限度交易记录中,将合并后的总资金满足所述差值的非限度交易记录作为用于得到所述用户的一个已整合交易记录的待整合交易记录;In the non-limit transaction records other than the limit transaction records in the available transaction records, the combined non-limit transaction records in which the total funds satisfy the difference are taken as an integrated transaction record for obtaining the user Record of pending transactions;
其中,所述交易可接受的理论最大交易记录数量作为交易记录理论限度。Wherein, the theoretical maximum number of transaction records acceptable for the transaction is taken as the theoretical limit of the transaction records.
所述确定待整合交易记录,可以包括:The determining a transaction record to be integrated may include:
在所述可用交易记录中,合并不超过交易可接受的理论最大交易记录数量的限度交易记录得到一个临时交易记录;其中,所述交易可接受的理论最大交易记录数量作为交易记录理论限度;In the available transaction records, a temporary transaction record is obtained by merging transaction records that do not exceed the theoretical maximum number of transaction record acceptable transactions; wherein, the theoretical maximum number of transaction transaction acceptable transactions is used as the theoretical limit of transaction records;
基于所述临时交易记录以及在所述可用交易记录中除所述限度交易记录以外的非限度交易记录,选择满足待交易资金并且不超过所述交易记录理论限度的交易记录作为用于得到所述用户的一个已整合交易记录的待整合交易记录。Based on the temporary transaction record and non-limit transaction records other than the limit transaction record in the available transaction records, selecting a transaction record that meets the funds to be traded and does not exceed the theoretical limit of the transaction record is used to obtain the A pending transaction record for the user's integrated transaction record.
得到所述已整合交易记录,可以包括:根据所述已整合资金,构建包括所述已整合交易记录的交易。Obtaining the integrated transaction record may include: constructing a transaction including the integrated transaction record according to the integrated funds.
构建所述交易,可以包括:将所述待整合交易记录作为交易输入,将所述已整合交易记录作为交易输出并在所述已整合交易记录中携带所述已整合资金,生成包含所述交易输入、交易输出的数据格式作为所述交易。Constructing the transaction may include using the to-be-integrated transaction record as a transaction input, taking the integrated transaction record as a transaction output, and carrying the integrated funds in the integrated transaction record to generate the transaction including the transaction The data format of the input and transaction output is used as the transaction.
所述数据格式可以包括字符串。The data format may include a character string.
还可以包括如下操作:生成所述已整合资金所指向的地址,将该地址携带于所述交易输出中。It may also include the following operations: generating an address pointed to by the integrated funds, and carrying the address in the transaction output.
还可以包括如下操作:对所述交易进行签名。It may also include the following operations: signing the transaction.
还可以包括如下操作:发送签名后的所述交易。It may also include the following operations: sending the signed transaction.
还可以包括如下操作:在发送签名后的所述交易之前对所述交易进行交易校验。It may also include the following operation: performing transaction verification on the transaction before sending the signed transaction.
还可以包括如下操作:在构建所述交易之前生成所述交易对应的交易费,根据所述交易费更新所述已整合资金。It may also include the following operations: generating a transaction fee corresponding to the transaction before constructing the transaction, and updating the integrated funds according to the transaction fee.
进行所述整合之前,还可以包括如下操作:发生交易过大异常(transactoin too large)。Before performing the integration, the method may further include the following operation: a transactoin error occurs.
还可以包括如下操作:根据用于避免资金不足的预留值,确定所述整合 的结果的有效性。It may also include the operation of determining the validity of the result of the integration according to a reserve value for avoiding insufficient funds.
确定所述整合的结果的有效性,可以包括:为所述整合的结果添加所述预留值,得到参考资金;在所述参考资金超过资金限额时确定所述整合的结果无效。Determining the validity of the integration result may include: adding the reserved value to the integration result to obtain a reference fund; and determining that the integration result is invalid when the reference fund exceeds a funding limit.
还可以包括如下操作:确定所述整合的结果无效时,返回进行所述整合。It may also include the following operation: when it is determined that the result of the integration is invalid, return to perform the integration.
所述资金限额通常不超过所述用户的总资金。The funding limit usually does not exceed the total funds of the user.
还可以包括如下操作:锁定所述待整合交易记录。It may also include the following operation: locking the transaction record to be integrated.
还可以包括如下操作:在得到所述已整合交易记录之后,解锁所述待整合交易记录。It may also include the following operation: after obtaining the integrated transaction record, unlocking the transaction record to be integrated.
所述待整合交易记录可以包括以下至少之一:The transaction records to be integrated may include at least one of the following:
未确认的交易记录;Unconfirmed transaction records;
已确认的交易记录。Confirmed transaction records.
所述交易记录可以为UTXO。The transaction record may be UTXO.
本公开实施例还提供了一种支持数字凭证交易的装置,包括:An embodiment of the present disclosure further provides a device supporting digital voucher transactions, including:
可用交易记录整合模块,用于对用户的可用交易记录进行整合;Available transaction record integration module for integrating available transaction records of users;
已整合交易记录生成模块,用于根据所述整合的结果得到所述用户的一个已整合交易记录;An integrated transaction record generating module, configured to obtain an integrated transaction record of the user according to a result of the integration;
其中,所述可用交易记录中将进行整合的交易记录作为待整合交易记录。Among the available transaction records, the transaction records to be integrated are regarded as the transaction records to be integrated.
所述可用交易记录整合模块,可以用于:合并所述待整合交易记录中的资金,得到已整合资金。The available transaction record integration module may be used to: merge funds in the transaction records to be integrated to obtain integrated funds.
所述可用交易记录整合模块,还可以用于:确定所述待整合交易记录。The available transaction record integration module may be further configured to determine the transaction record to be integrated.
所述可用交易记录整合模块在确定待整合交易记录时,可以用于:When the available transaction record integration module determines a transaction record to be integrated, it may be used to:
在所述可用交易记录中,将不超过交易可接受的理论最大交易记录数量的限度交易记录作为用于得到所述用户的一个已整合交易记录的待整合交易记录;In the available transaction records, a limit transaction record that does not exceed the theoretical maximum number of transaction records acceptable for the transaction is used as a to-be-integrated transaction record for obtaining an integrated transaction record of the user;
其中,所述交易可接受的理论最大交易记录数量作为交易记录理论限度。Wherein, the theoretical maximum number of transaction records acceptable for the transaction is taken as the theoretical limit of the transaction records.
所述可用交易记录整合模块在确定待整合交易记录时,可以用于:When the available transaction record integration module determines a transaction record to be integrated, it may be used to:
在所述可用交易记录中,合并不超过交易可接受的理论最大交易记录数量的限度交易记录中的资金得到限度资金,得到所述限度资金与待交易资金的差值;In the available transaction records, combining the funds in the transaction records that do not exceed the theoretical maximum number of transaction records acceptable for the transaction to obtain the limit funds, and obtaining the difference between the limit funds and the funds to be traded;
在所述可用交易记录中除所述限度交易记录以外的非限度交易记录中,将合并后的总资金满足所述差值的非限度交易记录作为用于得到所述用户的一个已整合交易记录的待整合交易记录;In the non-limit transaction records other than the limit transaction records in the available transaction records, the combined non-limit transaction records in which the total funds satisfy the difference are taken as an integrated transaction record for obtaining the user Record of pending transactions;
其中,所述交易可接受的理论最大交易记录数量作为交易记录理论限度。Wherein, the theoretical maximum number of transaction records acceptable for the transaction is taken as the theoretical limit of the transaction records.
所述可用交易记录整合模块在确定待整合交易记录时,可以用于:When the available transaction record integration module determines a transaction record to be integrated, it may be used to:
在所述可用交易记录中,合并不超过交易可接受的理论最大交易记录数量的限度交易记录得到一个临时交易记录;其中,所述交易可接受的理论最大交易记录数量作为交易记录理论限度;In the available transaction records, a temporary transaction record is obtained by merging transaction records that do not exceed the theoretical maximum number of transaction record acceptable transactions; wherein, the theoretical maximum number of transaction transaction acceptable transactions is used as the theoretical limit of transaction records;
基于所述临时交易记录以及在所述可用交易记录中除所述限度交易记录以外的非限度交易记录,选择满足待交易资金并且不超过所述交易记录理论限度的交易记录作为用于得到所述用户的一个已整合交易记录的待整合交易记录。Based on the temporary transaction record and non-limit transaction records other than the limit transaction record in the available transaction records, selecting a transaction record that meets the funds to be traded and does not exceed the theoretical limit of the transaction record is used to obtain the A pending transaction record for the user's integrated transaction record.
所述已整合交易记录生成模块,可以用于:根据所述已整合资金,构建包括所述已整合交易记录的交易。The integrated transaction record generating module may be configured to construct a transaction including the integrated transaction record according to the integrated funds.
所述已整合交易记录生成模块在构建所述交易时,可以用于:将所述待整合交易记录作为交易输入,将所述已整合交易记录作为交易输出并在所述已整合交易记录中携带所述已整合资金,生成包含所述交易输入、交易输出的数据格式作为所述交易。When constructing the transaction, the integrated transaction record generating module may be configured to: use the transaction record to be integrated as a transaction input, use the integrated transaction record as a transaction output, and carry the integrated transaction record in the integrated transaction record. For the integrated funds, a data format including the transaction input and transaction output is generated as the transaction.
所述数据格式可以包括字符串。The data format may include a character string.
所述已整合交易记录生成模块,还可以用于:生成所述已整合资金所指向的地址,将该地址携带于所述交易输出中。The integrated transaction record generating module may be further configured to generate an address pointed to by the integrated funds and carry the address in the transaction output.
所述已整合交易记录生成模块,还可以用于:对所述交易进行签名。The integrated transaction record generating module may be further configured to: sign the transaction.
所述已整合交易记录生成模块,还可以用于:发送签名后的所述交易。The integrated transaction record generating module may be further configured to: send the signed transaction.
所述已整合交易记录生成模块,还可以用于:在发送签名后的所述交易之前对所述交易进行交易校验。The integrated transaction record generating module may be further configured to perform transaction verification on the transaction before sending the signed transaction.
所述可用交易记录整合模块,还可以用于:在所述已整合交易记录生成模块构建所述交易之前生成所述交易对应的交易费,根据所述交易费更新所述已整合资金。The available transaction record integration module may be further configured to generate a transaction fee corresponding to the transaction before the integrated transaction record generation module constructs the transaction, and update the integrated funds according to the transaction fee.
所述可用交易记录整合模块,还可以用于:在进行所述整合之前,被发生的交易过大异常所触发。The available transaction record integration module may be further configured to be triggered by an excessive transaction abnormality that occurs before the integration.
所述可用交易记录整合模块,还可以用于:根据用于避免资金不足的预留值,确定所述整合的结果的有效性。The available transaction record integration module may be further configured to determine the validity of the result of the integration according to a reserved value for avoiding insufficient funds.
所述可用交易记录整合模块在确定所述整合的结果的有效性时,可以用于:为所述整合的结果添加所述预留值,得到参考资金;在所述参考资金超过资金限额时确定所述整合的结果无效。When determining the validity of the result of the integration, the available transaction record integration module may be used to: add the reserved value to the result of the integration to obtain a reference fund; determine when the reference fund exceeds a funding limit The result of the integration is invalid.
所述可用交易记录整合模块,还可以用于:确定所述整合的结果无效时,返回进行所述整合。The available transaction record integration module may be further configured to: when it is determined that the result of the integration is invalid, return to perform the integration.
所述资金限额通常不超过所述用户的总资金。The funding limit usually does not exceed the total funds of the user.
所述可用交易记录整合模块,还可以用于:锁定所述待整合交易记录。The available transaction record integration module may be further configured to: lock the transaction record to be integrated.
所述可用交易记录整合模块,还可以用于:在所述已整合交易记录生成模块得到所述已整合交易记录之后,解锁所述待整合交易记录。The available transaction record integration module may be further configured to: after the integrated transaction record generation module obtains the integrated transaction record, unlock the transaction record to be integrated.
所述待整合交易记录可以包括以下至少之一:The transaction records to be integrated may include at least one of the following:
未确认的交易记录;Unconfirmed transaction records;
已确认的交易记录。Confirmed transaction records.
所述交易记录可以为UTXO。The transaction record may be UTXO.
本公开实施例还提供了一种数字凭证客户端,包含上述实施例的支持数字凭证交易的装置。An embodiment of the present disclosure further provides a digital voucher client, which includes the device for supporting digital voucher transactions in the foregoing embodiment.
本公开实施例还提供了一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为执行上述实施例的支持数字凭证交易的方法。An embodiment of the present disclosure further provides a computer-readable storage medium storing computer-executable instructions configured to execute the method for supporting digital voucher transactions of the foregoing embodiment.
本公开实施例还提供了一种计算机程序产品,所述计算机程序产品包括存储在计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行上述实施例的支持数字凭证交易的方法。An embodiment of the present disclosure also provides a computer program product. The computer program product includes a computer program stored on a computer-readable storage medium, and the computer program includes program instructions. When the program instructions are executed by a computer, The computer executes the method for supporting digital voucher transactions in the above embodiment.
本公开实施例还提供了一种电子设备,包括:An embodiment of the present disclosure further provides an electronic device, including:
至少一个处理器;以及At least one processor; and
与所述至少一个处理器通信连接的存储器;其中,A memory connected in communication with the at least one processor; wherein,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行时,使所述至少一个处理器执行上述实施例的支持数字凭证交易的方法。The memory stores instructions executable by the at least one processor, and when the instructions are executed by the at least one processor, causes the at least one processor to execute the method for supporting digital voucher transactions in the foregoing embodiment.
一个或多个实施例通过与之对应的附图进行示例性说明,这些示例性说明和附图并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,附图不构成比例限制,并且其中:One or more embodiments are exemplarily described by corresponding drawings. These exemplary descriptions and drawings do not limit the embodiments. Elements with the same reference numerals in the drawings are denoted as similar elements. The drawings do not constitute a scale limitation, and among them:
图1为本公开实施例的支持数字凭证交易的方法示意图;1 is a schematic diagram of a method for supporting digital voucher transactions according to an embodiment of the present disclosure;
图2为本公开实施例的对资金进行整合的方法示意图;2 is a schematic diagram of a method for integrating funds according to an embodiment of the present disclosure;
图3为本公开实施例的实现数字凭证交易记录整合的方法示意图;3 is a schematic diagram of a method for implementing integration of digital voucher transaction records according to an embodiment of the present disclosure;
图4为本公开实施例的选取限度交易记录的方法示意图;4 is a schematic diagram of a method for selecting a limit transaction record according to an embodiment of the present disclosure;
图5为本公开另一实施例的实现数字凭证交易记录整合的方法示意图;5 is a schematic diagram of a method for implementing integration of digital voucher transaction records according to another embodiment of the present disclosure;
图6为本公开实施例的选取非限度交易记录的方法示意图;6 is a schematic diagram of a method for selecting an unlimited transaction record according to an embodiment of the present disclosure;
图7为本公开再一实施例的实现数字凭证交易记录整合的方法示意图;7 is a schematic diagram of a method for implementing integration of digital voucher transaction records according to another embodiment of the present disclosure;
图8为本公开实施例的得到临时交易记录的方法示意图;8 is a schematic diagram of a method for obtaining a temporary transaction record according to an embodiment of the present disclosure;
图9为本公开实施例的进行交易记录重新选择的方法示意图;9 is a schematic diagram of a method for reselecting a transaction record according to an embodiment of the present disclosure;
图10为本公开实施例的构建交易的方法示意图;10 is a schematic diagram of a method for constructing a transaction according to an embodiment of the present disclosure;
图11为本公开另一实施例的构建交易的方法示意图;11 is a schematic diagram of a method for constructing a transaction according to another embodiment of the present disclosure;
图12为本公开实施例的更新已整合资金的方法示意图;12 is a schematic diagram of a method for updating integrated funds according to an embodiment of the present disclosure;
图13为本公开实施例的确定整合结果的有效性的方法示意图;13 is a schematic diagram of a method for determining validity of an integration result according to an embodiment of the present disclosure;
图14为本公开实施例的支持数字凭证交易的装置示意图;14 is a schematic diagram of a device supporting digital voucher transactions according to an embodiment of the present disclosure;
图15为本公开实施例的对资金进行整合的装置示意图;15 is a schematic diagram of an apparatus for integrating funds according to an embodiment of the present disclosure;
图16为本公开实施例的实现数字凭证交易记录整合的装置示意图;16 is a schematic diagram of an apparatus for implementing integration of digital voucher transaction records according to an embodiment of the present disclosure;
图17为本公开实施例的选取限度交易记录的装置示意图;17 is a schematic diagram of an apparatus for selecting a limit transaction record according to an embodiment of the present disclosure;
图18为本公开另一实施例的实现数字凭证交易记录整合的装置示意图;18 is a schematic diagram of a device for implementing integration of digital voucher transaction records according to another embodiment of the present disclosure;
图19为本公开实施例的选取非限度交易记录的装置示意图;19 is a schematic diagram of an apparatus for selecting an unlimited transaction record according to an embodiment of the present disclosure;
图20为本公开再一实施例的实现数字凭证交易记录整合的装置示意图;20 is a schematic diagram of a device for implementing integration of digital voucher transaction records according to still another embodiment of the present disclosure;
图21为本公开实施例的得到临时交易记录的装置示意图;21 is a schematic diagram of an apparatus for obtaining a temporary transaction record according to an embodiment of the present disclosure;
图22为本公开实施例的进行交易记录重新选择的装置示意图;22 is a schematic diagram of an apparatus for reselecting a transaction record according to an embodiment of the present disclosure;
图23为本公开实施例的构建交易的装置示意图;23 is a schematic diagram of a device for constructing a transaction according to an embodiment of the present disclosure;
图24为本公开另一实施例的构建交易的装置示意图;24 is a schematic diagram of a device for constructing a transaction according to another embodiment of the present disclosure;
图25为本公开实施例的更新已整合资金的装置示意图;25 is a schematic diagram of an apparatus for updating integrated funds according to an embodiment of the present disclosure;
图26为本公开实施例的确定整合结果的有效性的装置示意图;以及FIG. 26 is a schematic diagram of an apparatus for determining validity of an integration result according to an embodiment of the present disclosure; and
图27为本公开实施例提供的电子设备的结构示意图。FIG. 27 is a schematic structural diagram of an electronic device according to an embodiment of the present disclosure.
附图标记:Reference signs:
10:支持数字凭证交易的装置;10: Device supporting digital voucher transactions;
110:可用交易记录整合模块;120:已整合交易记录生成模块;110: available transaction record integration module; 120: integrated transaction record generation module;
1101:获取单元;1102:确定单元;1103:整合单元;1101: acquisition unit; 1102: determination unit; 1103: integration unit;
1201:构建单元;1201: building unit;
2700:电子设备;2701:处理器;2702:存储器;2703:通信接口;2704:总线。2700: electronic device; 2701: processor; 2702: memory; 2703: communication interface; 2704: bus.
为了能够更加详尽地了解本公开实施例的特点与技术内容,下面结合附图对本公开实施例的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本公开实施例。在以下的技术描述中,为方便解释起见,通过多个细节以提供对所披露实施例的充分理解。然而,在没有这些细节的情况下,一个或多个实施例仍然可以实施。在其它情况下,为简化附图,熟知的结构和装置可以简化展示。In order to understand the features and technical contents of the embodiments of the present disclosure in more detail, the implementation of the embodiments of the present disclosure will be described in detail with reference to the accompanying drawings. The attached drawings are for reference only and are not intended to limit the embodiments of the present disclosure. In the following technical description, for convenience of explanation, various details are provided to provide a full understanding of the disclosed embodiments. However, without these details, one or more embodiments can still be implemented. In other cases, to simplify the drawings, well-known structures and devices may simplify the display.
参见图1,本公开实施例提供了一种支持数字凭证交易的方法,其中,该数字凭证可以示例性的理解为数字货币,数字货币可以示例性的理解为比特币等加密货币。包括:Referring to FIG. 1, an embodiment of the present disclosure provides a method for supporting digital voucher transactions. The digital voucher can be exemplarily understood as a digital currency, and the digital currency can be exemplarily understood as a cryptocurrency such as Bitcoin. include:
S10:对用户的可用交易记录进行整合;其中,所述可用交易记录中将进行整合的交易记录作为待整合交易记录;S10: Integrate available transaction records of users; wherein the available transaction records include the integrated transaction records as the transaction records to be integrated;
S20:根据所述整合的结果得到所述用户的一个已整合交易记录。S20: Obtain an integrated transaction record of the user according to the result of the integration.
上述方法可以通过所述用户的可用交易记录管理器实现,例如:区块链网络中的全节点、所述用户的钱包客户端等。The above method can be implemented by the available transaction record manager of the user, for example: a full node in a blockchain network, the user's wallet client, and the like.
参见图2,进行所述整合可以包括:合并所述待整合交易记录中的资金,得到已整合资金。Referring to FIG. 2, performing the integration may include: merging funds in the transaction records to be integrated to obtain integrated funds.
参见图3、5、7,还可以确定所述待整合交易记录。Referring to Figs. 3, 5, and 7, the transaction records to be integrated may also be determined.
参见图3,所述确定待整合交易记录,可以包括:Referring to FIG. 3, the determining a transaction record to be integrated may include:
S101:获取所述用户的可用交易记录;S101: Obtain available transaction records of the user;
例如:调用所述用户的钱包客户端中的listunspent接口以获取所述用户 的可用交易记录。For example: the listunspent interface in the user's wallet client is called to obtain the available transaction records of the user.
作为一个实施例,获取到的所述用户的可用交易记录可以包括以下至少之一:As an embodiment, the obtained available transaction records of the user may include at least one of the following:
未确认的可用交易记录;Unconfirmed available transaction records;
已确认的可用交易记录。Confirmed available transaction records.
S102:在所述可用交易记录中,将不超过交易可接受的理论最大交易记录数量的限度交易记录作为用于得到所述用户的一个已整合交易记录的待整合交易记录;S102: In the available transaction records, use a limit transaction record that does not exceed the theoretical maximum number of transaction records acceptable for the transaction as a transaction record to be integrated for obtaining an integrated transaction record of the user;
其中,所述交易可接受的理论最大交易记录数量作为交易记录理论限度。Wherein, the theoretical maximum number of transaction records acceptable for the transaction is taken as the theoretical limit of the transaction records.
作为一个实施例,不限制所述用户的所有可用交易记录与所述交易记录理论限度之间的数量关系。As an embodiment, the quantitative relationship between all available transaction records of the user and the theoretical limit of the transaction records is not limited.
作为一个实施例,所述用户的所有可用交易记录与所述交易记录理论限度之间也可以存在数量关系,例如:所述用户的所有可用交易记录的数量小于等于所述交易记录理论限度的两倍。As an embodiment, there may also be a quantitative relationship between all available transaction records of the user and the theoretical limit of the transaction records. For example, the number of all available transaction records of the user is less than or equal to two of the theoretical limits of the transaction records. Times.
作为一个实施例,交易可接受的理论最大交易记录数量通常在一定范围内,例如:600至650,或550至600等。通常,也可以将交易可接受的理论最大交易记录数量设置为一个特定值,例如:600。As an example, the theoretical maximum number of transaction records that can be accepted by a transaction is usually within a certain range, for example: 600 to 650, or 550 to 600. In general, you can also set the theoretical maximum number of transaction records acceptable for a transaction to a specific value, for example: 600.
参见图4,还可以进行限度交易记录的选取,例如,包括:Referring to FIG. 4, the selection of limit transaction records can also be performed, for example, including:
S1021:按照资金,对所述可用交易记录进行排序;所述资金为所述可用交易记录包含的资金;S1021: Sort the available transaction records according to funds; the funds are funds included in the available transaction records;
S1022:根据所述排序在所述可用交易记录中选取所述限度交易记录。S1022: Select the limit transaction record from the available transaction records according to the ranking.
作为一个实施例,所述排序可以为按照资金从大到小排序;As an embodiment, the sorting may be sorting according to funds from large to small;
选取所述限度交易记录的方式可以为:按照资金从大到小在所述可用交易记录中选取所述限度交易记录。The method for selecting the limit transaction record may be: selecting the limit transaction record from the available transaction records according to the funds from large to small.
作为一个实施例,选取所述限度交易记录的方式可以为:As an embodiment, the manner of selecting the limit transaction record may be:
根据所述排序在所述可用交易记录中顺序选取所述限度交易记录,或Sequentially selecting the limit transaction records among the available transaction records according to the ordering, or
根据所述排序在所述可用交易记录中跳跃选取所述限度交易记录。Jumping to select the limit transaction record among the available transaction records according to the ranking.
作为一个实施例,所述限度交易记录的数量可以等于所述交易记录理论限度。As an embodiment, the number of the limit transaction records may be equal to the theoretical limit of the transaction records.
作为一个实施例,所述限度交易记录的数量也可以小于所述交易记录理 论限度。As an embodiment, the number of the limit transaction records may also be smaller than the theoretical limit of the transaction records.
作为一个实施例,由于所述交易记录理论限度只是一个理论值,有可能与实际操作中的交易记录实际限度存在差异,因此所述限度交易记录的数量也可以略微大于所述交易记录理论限度,例如:所述限度交易记录的数量比所述交易记录理论限度大一定比例,例如:5%之内、10%之内或5%至10%之内等。As an example, since the theoretical limit of the transaction record is only a theoretical value, and may be different from the actual limit of the transaction record in actual operation, the number of the limit transaction record may also be slightly larger than the theoretical limit of the transaction record. For example, the number of the limit transaction records is larger than the theoretical limit of the transaction records by a certain percentage, for example: within 5%, within 10%, or within 5% to 10%, and so on.
作为一个实施例,在按照资金对所述可用交易记录进行排序时,也可以按照资金从小到大进行排序;相应的选取所述限度交易记录的方式可以为:按照资金从小到大在所述可用交易记录中选取所述限度交易记录。As an example, when the available transaction records are sorted according to funds, the funds can also be sorted from small to large; the way to select the limit transaction records can be: according to funds from small to large in the available The transaction records are selected from the transaction records.
作为一个实施例,也可以不对所述可用交易记录进行排序,相应的选取所述限度交易记录的方式可以为:在所述可用交易记录中随机选取所述限度交易记录。As an embodiment, the available transaction records may not be sorted, and a corresponding manner of selecting the limit transaction records may be: randomly selecting the limit transaction records among the available transaction records.
参见图5,所述确定待整合交易记录,可以包括:Referring to FIG. 5, determining the transaction records to be integrated may include:
S111:获取所述用户的可用交易记录;S111: Obtain available transaction records of the user;
例如:调用所述用户的钱包客户端中的listunspent接口以获取所述用户的可用交易记录。For example, the listunspent interface in the user's wallet client is called to obtain the available transaction records of the user.
作为一个实施例,获取到的所述用户的可用交易记录可以包括以下至少之一:As an embodiment, the obtained available transaction records of the user may include at least one of the following:
未确认的可用交易记录;Unconfirmed available transaction records;
已确认的可用交易记录。Confirmed available transaction records.
S112:在所述可用交易记录中,合并不超过交易可接受的理论最大交易记录数量的限度交易记录中的资金得到限度资金,得到所述限度资金与待交易资金的差值;S112: In the available transaction records, merge the funds in the transaction records that do not exceed the theoretical maximum number of transaction records acceptable for the transaction to obtain the limit funds, and obtain the difference between the limit funds and the funds to be traded;
S113:在所述可用交易记录中除所述限度交易记录以外的非限度交易记录中,将合并后的总资金满足所述差值的非限度交易记录作为用于得到所述用户的一个已整合交易记录的待整合交易记录;S113: In the non-limit transaction records other than the limit transaction records in the available transaction records, use the non-limit transaction records in which the combined total funds satisfy the difference as an integrated for obtaining the user Transaction records to be consolidated;
其中,所述交易可接受的理论最大交易记录数量作为交易记录理论限度。Wherein, the theoretical maximum number of transaction records acceptable for the transaction is taken as the theoretical limit of the transaction records.
作为一个实施例,可以用所述待交易资金减去所述限度资金以得到所述差值。As an embodiment, the limit funds may be subtracted from the funds to be traded to obtain the difference.
作为一个实施例,可以合并一定数量的非限度交易记录中的资金以得到 合并后的总资金,并在合并后的总资金大于或等于所述差值时,将合并了资金的所述非限度交易记录作为待整合交易记录。As an example, the funds in a certain amount of unlimited transaction records may be combined to obtain the combined total funds, and when the combined total funds are greater than or equal to the difference, the non-limits of the funds are combined The transaction record is used as the transaction record to be integrated.
作为一个实施例,不限制所述用户的所有可用交易记录与所述交易记录理论限度之间的数量关系。As an embodiment, the quantitative relationship between all available transaction records of the user and the theoretical limit of the transaction records is not limited.
作为一个实施例,所述用户的所有可用交易记录与所述交易记录理论限度之间也可以存在数量关系,例如:所述用户的所有可用交易记录的数量小于等于所述交易记录理论限度的两倍。As an embodiment, there may also be a quantitative relationship between all available transaction records of the user and the theoretical limit of the transaction records. For example, the number of all available transaction records of the user is less than or equal to two of the theoretical limits of the transaction records. Times.
作为一个实施例,交易可接受的理论最大交易记录数量通常在一定范围内,例如:600至650,或550至600等。通常,也可以将交易可接受的理论最大交易记录数量设置为一个特定值,例如:600。As an example, the theoretical maximum number of transaction records that can be accepted by a transaction is usually within a certain range, for example: 600 to 650, or 550 to 600. In general, you can also set the theoretical maximum number of transaction records acceptable for a transaction to a specific value, for example: 600.
参见图6,还可以进行非限度交易记录的选取,例如,包括:Referring to FIG. 6, the selection of unlimited transaction records can also be performed, for example, including:
S1131:按照资金,对所述非限度交易记录进行排序;所述资金为所述非限度交易记录包含的资金;S1131: Sort the unlimited transaction records according to funds; the funds are funds included in the unlimited transaction records;
S1132:根据所述排序选取作为待整合交易记录的所述非限度交易记录。S1132: Select the non-limit transaction record as the transaction record to be integrated according to the ranking.
作为一个实施例,所述排序可以为按照资金从大到小排序;As an embodiment, the sorting may be sorting according to funds from large to small;
选取所述非限度交易记录的方式可以为:按照资金从大到小选取作为待整合交易记录的所述非限度交易记录。The method for selecting the non-limit transaction record may be: selecting the non-limit transaction record as the transaction record to be integrated according to the funds from large to small.
作为一个实施例,选取所述非限度交易记录的方式可以为:As an embodiment, the manner of selecting the unlimited transaction record may be:
根据所述排序顺序选取作为待整合交易记录的所述非限度交易记录,或Selecting the non-limit transaction record as the transaction record to be integrated according to the sorting order, or
根据所述排序跳跃选取作为待整合交易记录的所述非限度交易记录。Selecting the non-limit transaction record as the transaction record to be integrated according to the sort jump.
作为一个实施例,在按照资金对所述非限度交易记录进行排序时,也可以按照资金从小到大进行排序;相应的选取所述非限度交易记录的方式可以为:按照资金从小到大选取作为待整合交易记录的所述非限度交易记录。As an example, when the non-limit transaction records are sorted according to funds, the funds can also be sorted from small to large; the corresponding selection of the non-limit transaction records can be as follows: The unlimited transaction records to be integrated with the transaction records.
作为一个实施例,也可以不对所述非限度交易记录进行排序,相应的选取所述非限度交易记录的方式可以为:随机选取作为待整合交易记录的所述非限度交易记录。As an embodiment, the non-limit transaction records may not be sorted, and the corresponding manner of selecting the non-limit transaction records may be: randomly selecting the non-limit transaction records as the transaction records to be integrated.
作为一个实施例,在执行如图5所示操作的情况下,还可以进行前述的如图4所示的限度交易记录的选取等相关操作,例如,包括:As an embodiment, when the operation shown in FIG. 5 is performed, related operations such as the selection of the limit transaction record shown in FIG. 4 described above may also be performed, for example, including:
S1021:按照资金,对所述可用交易记录进行排序;所述资金为所述可用交易记录包含的资金;S1021: Sort the available transaction records according to funds; the funds are funds included in the available transaction records;
S1022:根据所述排序在所述可用交易记录中选取所述限度交易记录。S1022: Select the limit transaction record from the available transaction records according to the ranking.
作为一个实施例,所述排序可以为按照资金从大到小排序;As an embodiment, the sorting may be sorting according to funds from large to small;
选取所述限度交易记录的方式可以为:按照资金从大到小在所述可用交易记录中选取所述限度交易记录。The method for selecting the limit transaction record may be: selecting the limit transaction record from the available transaction records according to the funds from large to small.
作为一个实施例,选取所述限度交易记录的方式可以为:As an embodiment, the manner of selecting the limit transaction record may be:
根据所述排序在所述可用交易记录中顺序选取所述限度交易记录,或Sequentially selecting the limit transaction records among the available transaction records according to the ordering, or
根据所述排序在所述可用交易记录中跳跃选取所述限度交易记录。Jumping to select the limit transaction record among the available transaction records according to the ranking.
作为一个实施例,所述限度交易记录的数量可以等于所述交易记录理论限度。As an embodiment, the number of the limit transaction records may be equal to the theoretical limit of the transaction records.
作为一个实施例,所述限度交易记录的数量也可以小于所述交易记录理论限度。As an embodiment, the number of the limit transaction records may also be smaller than the theoretical limit of the transaction records.
作为一个实施例,由于所述交易记录理论限度只是一个理论值,有可能与实际操作中的交易记录实际限度存在差异,因此所述限度交易记录的数量也可以略微大于所述交易记录理论限度,例如:所述限度交易记录的数量比所述交易记录理论限度大一定比例,例如:5%之内、10%之内或5%至10%之内等。As an example, since the theoretical limit of the transaction record is only a theoretical value, and may be different from the actual limit of the transaction record in actual operation, the number of the limit transaction record may also be slightly larger than the theoretical limit of the transaction record. For example, the number of the limit transaction records is larger than the theoretical limit of the transaction records by a certain percentage, for example: within 5%, within 10%, or within 5% to 10%, and so on.
作为一个实施例,在按照资金对所述可用交易记录进行排序时,也可以按照资金从小到大进行排序;相应的选取所述限度交易记录的方式可以为:按照资金从小到大在所述可用交易记录中选取所述限度交易记录。As an example, when the available transaction records are sorted according to funds, the funds can also be sorted from small to large; the way to select the limit transaction records can be: according to funds from small to large in the available The transaction records are selected from the transaction records.
作为一个实施例,也可以不对所述可用交易记录进行排序,相应的选取所述限度交易记录的方式可以为:在所述可用交易记录中随机选取所述限度交易记录。As an embodiment, the available transaction records may not be sorted, and a corresponding manner of selecting the limit transaction records may be: randomly selecting the limit transaction records among the available transaction records.
作为一个实施例,在执行如图3所示操作的情况下,还可以进行如图5所示的S112、S113以及如图6所示的非限度交易记录的选取等相关操作,例如,包括:As an embodiment, when the operations shown in FIG. 3 are performed, related operations such as S112 and S113 shown in FIG. 5 and the selection of unlimited transaction records shown in FIG. 6 may be performed, for example, including:
S112:在所述可用交易记录中,合并不超过交易可接受的理论最大交易记录数量的限度交易记录中的资金得到限度资金,得到所述限度资金与待交易资金的差值;S112: In the available transaction records, merge the funds in the transaction records that do not exceed the theoretical maximum number of transaction records acceptable for the transaction to obtain the limit funds, and obtain the difference between the limit funds and the funds to be traded;
S113:在所述可用交易记录中除所述限度交易记录以外的非限度交易记录中,将合并后的总资金满足所述差值的非限度交易记录作为用于得到所述 用户的一个已整合交易记录的待整合交易记录。S113: In the non-limit transaction records other than the limit transaction records in the available transaction records, use the non-limit transaction records in which the combined total funds satisfy the difference as an integrated for obtaining the user Transaction records to be integrated.
作为一个实施例,可以用所述待交易资金减去所述限度资金以得到所述差值。As an embodiment, the limit funds may be subtracted from the funds to be traded to obtain the difference.
作为一个实施例,可以合并一定数量的非限度交易记录中的资金以得到合并后的总资金,并在合并后的总资金大于或等于所述差值时,将合并了资金的所述非限度交易记录作为待整合交易记录。As an example, the funds in a certain amount of unlimited transaction records may be combined to obtain the combined total funds, and when the combined total funds are greater than or equal to the difference, the non-limits of the funds are combined The transaction record is used as the transaction record to be integrated.
作为一个实施例,交易可接受的理论最大交易记录数量通常在一定范围内,例如:600至650,或550至600等。通常,也可以将交易可接受的理论最大交易记录数量设置为一个特定值,例如:600。As an example, the theoretical maximum number of transaction records that can be accepted by a transaction is usually within a certain range, for example: 600 to 650, or 550 to 600. In general, you can also set the theoretical maximum number of transaction records acceptable for a transaction to a specific value, for example: 600.
参见图6,进行非限度交易记录的选取,可以包括:Referring to FIG. 6, selecting an unlimited transaction record may include:
S1131:按照资金,对所述非限度交易记录进行排序;所述资金为所述非限度交易记录包含的资金;S1131: Sort the unlimited transaction records according to funds; the funds are funds included in the unlimited transaction records;
S1132:根据所述排序选取作为待整合交易记录的所述非限度交易记录。S1132: Select the non-limit transaction record as the transaction record to be integrated according to the ranking.
作为一个实施例,所述排序可以为按照资金从大到小排序;As an embodiment, the sorting may be sorting according to funds from large to small;
选取所述非限度交易记录的方式可以为:按照资金从大到小选取作为待整合交易记录的所述非限度交易记录。The method for selecting the non-limit transaction record may be: selecting the non-limit transaction record as the transaction record to be integrated according to the funds from large to small.
作为一个实施例,选取所述非限度交易记录的方式可以为:As an embodiment, the manner of selecting the unlimited transaction record may be:
根据所述排序顺序选取作为待整合交易记录的所述非限度交易记录,或Selecting the non-limit transaction record as the transaction record to be integrated according to the sorting order, or
根据所述排序跳跃选取作为待整合交易记录的所述非限度交易记录。Selecting the non-limit transaction record as the transaction record to be integrated according to the sort jump.
作为一个实施例,在按照资金对所述非限度交易记录进行排序时,也可以按照资金从小到大进行排序;相应的选取所述非限度交易记录的方式可以为:按照资金从小到大选取作为待整合交易记录的所述非限度交易记录。As an example, when the non-limit transaction records are sorted according to funds, the funds can also be sorted from small to large; the corresponding selection of the non-limit transaction records can be as follows: The unlimited transaction records to be integrated with the transaction records.
作为一个实施例,也可以不对所述非限度交易记录进行排序,相应的选取所述非限度交易记录的方式可以为:随机选取作为待整合交易记录的所述非限度交易记录。As an embodiment, the non-limit transaction records may not be sorted, and the corresponding manner of selecting the non-limit transaction records may be: randomly selecting the non-limit transaction records as the transaction records to be integrated.
参见图7,所述确定待整合交易记录,可以包括:Referring to FIG. 7, the determining a transaction record to be integrated may include:
S121:获取所述用户的可用交易记录;S121: Obtain an available transaction record of the user;
例如:调用所述用户的钱包客户端中的listunspent接口以获取所述用户的可用交易记录。For example, the listunspent interface in the user's wallet client is called to obtain the available transaction records of the user.
作为一个实施例,获取到的所述用户的可用交易记录可以包括以下至少 之一:As an embodiment, the obtained available transaction records of the user may include at least one of the following:
未确认的可用交易记录;Unconfirmed available transaction records;
已确认的可用交易记录。Confirmed available transaction records.
S122:在所述可用交易记录中,合并不超过交易可接受的理论最大交易记录数量的限度交易记录得到一个临时交易记录;其中,所述交易可接受的理论最大交易记录数量作为交易记录理论限度;S122: In the available transaction records, merge the transaction records that do not exceed the limit of the theoretical maximum number of transaction records that can be accepted by the transaction to obtain a temporary transaction record; wherein, the theoretical maximum number of transaction records that can be accepted by the transaction is the theoretical limit of transaction records ;
S123:基于所述临时交易记录以及在所述可用交易记录中除所述限度交易记录以外的非限度交易记录,选择满足待交易资金并且不超过所述交易记录理论限度的交易记录作为用于得到所述用户的一个已整合交易记录的待整合交易记录。S123: Based on the temporary transaction record and non-limit transaction records other than the limit transaction record in the available transaction records, selecting a transaction record that satisfies the funds to be traded and does not exceed the theoretical limit of the transaction record is used to obtain A to-be-integrated transaction record of an integrated transaction record of the user.
例如:使用二次遍历随机法选择所述待整合交易记录,可以包括:For example, selecting the to-be-integrated transaction records using a two-step traversal random method may include:
在包括所述临时交易记录以及非限度交易记录的所有交易记录中,对所有交易记录进行第一次遍历来挑选交易记录;In all transaction records including the temporary transaction record and the unlimited transaction record, perform a first traversal on all transaction records to select a transaction record;
如果第一次遍历所挑选出的交易记录满足所述待交易资金并且不超过所述交易记录理论限度,则将第一次遍历所挑选出的交易记录作为所述待整合交易记录;If the transaction record selected for the first traversal meets the funds to be traded and does not exceed the theoretical limit of the transaction record, then the transaction record selected for the first traversal is used as the transaction record to be integrated;
如果第一次遍历所挑选出的交易记录未满足所述待交易资金,则对第一次遍历未挑选出的交易记录进行第二次遍历来挑选交易记录;If the selected transaction record for the first traversal does not satisfy the funds to be traded, perform a second traversal on the transaction records that are not selected for the first traversal to select the transaction records;
如果两次遍历所挑选出的交易记录满足所述待交易资金并且不超过所述交易记录理论限度,则将两次遍历所挑选出的交易记录作为所述待整合交易记录。If the transaction records selected through two traversals meet the funds to be traded and do not exceed the theoretical limit of the transaction records, then the transaction records selected through two traversals are used as the transaction records to be integrated.
作为一个实施例,在进行所述第一次遍历时,可以对所有交易记录按资金降序排列,并从包含资金最大的交易记录开始遍历。第一次遍历时可以采用真假(true or false)随机方式来挑选交易记录。As an embodiment, when performing the first traversal, all transaction records may be arranged in descending order of funds, and the traversal starts from the transaction record containing the largest funds. For the first traversal, a true or false random method can be used to select transaction records.
作为一个实施例,所述二次遍历随机法可以执行多次,例如1000次,以挑选出满足所述待交易资金并且不超过所述交易记录理论限度的交易记录作为所述待整合交易记录。As an embodiment, the two-pass traversal random method may be performed multiple times, for example, 1000 times, to select a transaction record that satisfies the funds to be traded and does not exceed the theoretical limit of the transaction record as the to-be-integrated transaction record.
作为一个实施例,通过执行多次二次遍历随机法,可以确定待整合交易记录数量最少的方案。As an embodiment, by executing the random method of multiple traversal multiple times, a scheme with the least number of transaction records to be integrated can be determined.
作为一个实施例,不限制所述用户的所有可用交易记录与所述交易记录 理论限度之间的数量关系。As an example, the quantitative relationship between all available transaction records of the user and the theoretical limit of the transaction records is not limited.
作为一个实施例,所述用户的所有可用交易记录与所述交易记录理论限度之间也可以存在数量关系,例如:所述用户的所有可用交易记录的数量大于等于所述交易记录理论限度的两倍。As an embodiment, there may also be a quantitative relationship between all available transaction records of the user and the theoretical limit of the transaction records. For example, the number of all available transaction records of the user is greater than or equal to two of the theoretical limits of the transaction records. Times.
作为一个实施例,交易可接受的理论最大交易记录数量通常在一定范围内,例如:600至650,或550至600等。通常,也可以将交易可接受的理论最大交易记录数量设置为一个特定值,例如:600。As an example, the theoretical maximum number of transaction records that can be accepted by a transaction is usually within a certain range, for example: 600 to 650, or 550 to 600. In general, you can also set the theoretical maximum number of transaction records acceptable for a transaction to a specific value, for example: 600.
作为一个实施例,在执行如图7所示操作的情况下,还可以进行前述的如图4所示的限度交易记录的选取等相关操作,例如,包括:As an embodiment, when the operation shown in FIG. 7 is performed, related operations such as the selection of the limit transaction record shown in FIG. 4 described above may also be performed, for example, including:
S1021:按照资金,对所述可用交易记录进行排序;所述资金为所述可用交易记录包含的资金;S1021: Sort the available transaction records according to funds; the funds are funds included in the available transaction records;
S1022:根据所述排序在所述可用交易记录中选取所述限度交易记录。S1022: Select the limit transaction record from the available transaction records according to the ranking.
作为一个实施例,所述排序可以为按照资金从小到大排序;As an embodiment, the sorting may be sorting according to funds from small to large;
选取所述限度交易记录的方式可以为:按照资金从小到大在所述可用交易记录中选取所述限度交易记录。The method for selecting the limit transaction record may be: selecting the limit transaction record from the available transaction records according to the funds from small to large.
作为一个实施例,选取所述限度交易记录的方式可以为:As an embodiment, the manner of selecting the limit transaction record may be:
根据所述排序在所述可用交易记录中顺序选取所述限度交易记录,或Sequentially selecting the limit transaction records among the available transaction records according to the ordering, or
根据所述排序在所述可用交易记录中跳跃选取所述限度交易记录。Jumping to select the limit transaction record among the available transaction records according to the ranking.
作为一个实施例,所述限度交易记录的初始数量可以大于1。As an embodiment, the initial number of the limit transaction records may be greater than one.
作为一个实施例,在按照资金对所述可用交易记录进行排序时,也可以按照资金从大到小进行排序;相应的选取所述限度交易记录的方式可以为:按照资金从大到小在所述可用交易记录中选取所述限度交易记录。As an example, when the available transaction records are sorted according to funds, the funds can also be sorted from large to small; the way to select the limit transaction records can be: according to the funds from large to small The limit transaction record is selected from the available transaction records.
作为一个实施例,也可以不对所述可用交易记录进行排序,相应的选取所述限度交易记录的方式可以为:在所述可用交易记录中随机选取所述限度交易记录。As an embodiment, the available transaction records may not be sorted, and a corresponding manner of selecting the limit transaction records may be: randomly selecting the limit transaction records among the available transaction records.
参见图8,得到所述临时交易记录,可以包括:Referring to FIG. 8, obtaining the temporary transaction record may include:
S122:合并所述限度交易记录中的资金,得到已合并资金;S122: Merging the funds in the limit transaction record to obtain consolidated funds;
S123:将所述已合并资金包含于新生成的所述临时交易记录中。S123: The merged funds are included in the newly generated temporary transaction record.
作为一个实施例,所述临时交易记录是额外生成的交易记录;可以预先生成并预留,也可以新生成。As an embodiment, the temporary transaction record is an additional generated transaction record; it may be generated in advance and reserved, or it may be newly generated.
上述的涉及所述临时交易记录的操作,能够在得到所述已整合交易记录之前合并一定数量的交易记录中的资金得到所述已合并资金并临时性地生成一个包含所述已合并资金的交易记录,即:所述临时交易记录。The above-mentioned operation involving the temporary transaction record can merge the funds in a certain amount of transaction records to obtain the consolidated funds and temporarily generate a transaction containing the consolidated funds before obtaining the consolidated transaction records. Record, that is, the temporary transaction record.
参见图9,还可以进行交易记录重新选择的操作,例如,包括:在选择的交易记录超过所述交易记录理论限度时,增加合并的所述限度交易记录的数量并返回进行所述选择。Referring to FIG. 9, an operation of reselecting a transaction record may also be performed, for example, when the selected transaction record exceeds the theoretical limit of the transaction record, increasing the number of merged transaction records of the limit and returning to perform the selection.
作为一个实施例,由于所述交易记录理论限度只是一个理论值,有可能与实际操作中的交易记录实际限度存在差异,因此选择的所述交易记录的数量也可以略微大于所述交易记录理论限度,例如:选择的所述交易记录的数量比所述交易记录理论限度大一定比例,例如:5%之内、10%之内或5%至10%之内等。As an example, since the theoretical limit of the transaction record is only a theoretical value, and may be different from the actual limit of the transaction record in actual operation, the number of the selected transaction record may also be slightly larger than the theoretical limit of the transaction record. For example, the number of the selected transaction records is larger than the theoretical limit of the transaction records by a certain percentage, for example, within 5%, within 10%, or within 5% to 10%.
作为一个实施例,增加合并的所述限度交易记录的数量,可以包括:将合并的所述限度交易记录的数量加1。As an embodiment, increasing the number of the combined limit transaction records may include: increasing the number of the combined limit transaction records by one.
作为一个实施例,增加合并的所述限度交易记录的数量时,也可以将合并的所述限度交易记录的数量加2或3等除1以外的其它数量。As an example, when the number of the combined limit transaction records is increased, the number of the combined limit transaction records may be increased by 2 or 3 other than 1 or the like.
作为一个实施例,还可以利用所述临时交易记录、非限度交易记录更新所述可用交易记录。As an embodiment, the available transaction records may also be updated by using the temporary transaction records and unlimited transaction records.
例如,将所述临时交易记录、非限度交易记录组成一个集合,将该集合中的交易记录作为所述可用交易记录。For example, the temporary transaction record and the unlimited transaction record are combined into a set, and the transaction records in the set are used as the available transaction records.
作为一个实施例,在得到所述已整合交易记录时,可以根据所述已整合资金,构建包括所述已整合交易记录的交易。As an embodiment, when the integrated transaction record is obtained, a transaction including the integrated transaction record may be constructed according to the integrated funds.
参见图10,构建所述交易,可以包括:Referring to FIG. 10, constructing the transaction may include:
S210:将所述待整合交易记录作为交易输入,将所述已整合交易记录作为交易输出并在所述已整合交易记录中携带所述已整合资金;S210: The transaction record to be integrated is used as a transaction input, the integrated transaction record is used as a transaction output, and the integrated funds are carried in the integrated transaction record;
S220:生成包含所述交易输入、交易输出的数据格式作为所述交易。S220: Generate a data format including the transaction input and transaction output as the transaction.
例如:调用所述用户的钱包客户端中的createrawtransaction接口以构建所述交易。For example: the createrawtransaction interface in the user's wallet client is called to construct the transaction.
作为一个实施例,所述数据格式可以包括字符串。所述字符串可以为16进制。As an embodiment, the data format may include a character string. The character string may be hexadecimal.
参见图11,还可以在构建交易时进行涉及地址的处理,例如:包括:Referring to FIG. 11, address-related processing can also be performed when constructing a transaction, for example, including:
S30:生成所述已整合资金所指向的地址;例如:调用所述用户的钱包客户端中的getnewaddress接口以获取所述地址;S30: Generate an address pointed to by the integrated funds; for example, call the getnewaddress interface in the wallet client of the user to obtain the address;
S40:将该地址携带于所述交易输出中。S40: Carry the address in the transaction output.
作为一个实施例,还可以对所述交易进行签名。As an embodiment, the transaction may also be signed.
例如:调用所述用户的钱包客户端中的signrawtransaction接口以对所述交易进行签名;所述签名可以是私钥签名等。For example: calling the signrawtransaction interface in the user's wallet client to sign the transaction; the signature may be a private key signature, and the like.
作为一个实施例,还可以发送签名后的所述交易。As an embodiment, the signed transaction may also be sent.
例如:调用所述用户的钱包客户端中的sendrawtransaction接口以将所述交易发送到本地节点和连接的网络(如区块链网络)中。For example: the sendrawtransaction interface in the user's wallet client is called to send the transaction to a local node and a connected network (such as a blockchain network).
作为一个实施例,还可以:在发送签名后的所述交易之前对所述交易进行交易校验。As an embodiment, the transaction verification may be performed on the transaction before the signed transaction is sent.
例如:调用所述用户的钱包客户端中的decoderawtransaction接口以对签名后的所述交易进行解码,并基于解码后得到的交易信息(可以包括所述已整合资金、交易输入、交易输出等,还可以包括下述的交易费)进行交易校验。For example: calling the decoderawtransaction interface in the user's wallet client to decode the signed transaction, and based on the decoded transaction information (which may include the integrated funds, transaction input, transaction output, etc.) May include the following transaction fees) for transaction verification.
参见图12,还可以进行更新已整合资金的操作,例如,包括:Referring to FIG. 12, the operation of updating the integrated funds can also be performed, for example, including:
S201:基于要构建的所述交易,生成所述交易对应的交易费;S201: Generate a transaction fee corresponding to the transaction based on the transaction to be constructed;
例如:基于签名后的所述交易,调用所述用户的钱包客户端中的estimatefee接口以得到所述交易费。For example, based on the signed transaction, the estimatefee interface in the wallet client of the user is called to obtain the transaction fee.
S202:根据所述交易费更新所述已整合资金。S202: Update the integrated funds according to the transaction fee.
例如:使用所述已整合资金减去所述交易费得到资金差值,并使用所述资金差值更新所述已整合交易记录中携带的所述已整合资金。For example, subtracting the transaction fee from the integrated funds to obtain a difference in funds, and using the difference in funds to update the integrated funds carried in the integrated transaction record.
作为一个实施例,使用所述资金差值更新所述已整合资金时,可以直接用所述资金差值作为新的已整合资金的值。As an embodiment, when the integrated funds are updated using the difference in funds, the difference in funds may be directly used as the value of the new integrated funds.
作为一个实施例,还可以将所述交易费携带于所述已整合交易记录中。As an embodiment, the transaction fee may also be carried in the integrated transaction record.
作为一个实施例,进行所述整合之前,还可以包括如下操作:发生交易过大异常。这样,所述整合可以被发生的所述交易过大异常所触发。As an embodiment, before performing the integration, the method may further include the following operation: an excessive transaction abnormality occurs. In this way, the integration may be triggered by the excessive transaction anomaly that occurs.
作为一个实施例,还可以确定整合结果的有效性,例如,包括:根据用于避免资金不足的预留值,确定所述整合的结果的有效性。As an embodiment, the validity of the integration result may also be determined, for example, including: determining the validity of the integration result according to a reserved value for avoiding insufficient funds.
参见图13,确定所述整合的结果的有效性,可以包括:Referring to FIG. 13, determining the validity of the result of the integration may include:
S50:为所述整合的结果添加所述预留值,得到参考资金;S50: adding the reserved value to the result of the integration to obtain a reference fund;
S60:在所述参考资金超过资金限额时确定所述整合的结果无效。S60: It is determined that the result of the integration is invalid when the reference fund exceeds a fund limit.
作为一个实施例,还可以在确定所述整合的结果无效时,返回进行所述整合。As an embodiment, when the result of the integration is determined to be invalid, the integration may be returned.
作为一个实施例,所述资金限额通常不超过所述用户的总资金。As an embodiment, the funding limit generally does not exceed the total funds of the user.
作为一个实施例,所述资金限额可以小于所述用户的总资金。例如:所述资金限额等于所述总资金的80%或90%或其它比例。As an embodiment, the funding limit may be less than the total funds of the user. For example: the funding limit is equal to 80% or 90% of the total funding or other proportion.
作为一个实施例,所述资金限额可以等于所述用户的总资金。As an embodiment, the funding limit may be equal to the total funds of the user.
作为一个实施例,所述预留值可以是预定值,该预定值可以是自定义的,例如:所述预留值等于所述待交易资金的10%或其它比例。As an embodiment, the reserved value may be a predetermined value, and the predetermined value may be customized, for example, the reserved value is equal to 10% of the funds to be traded or other proportions.
通过上述涉及预留值的相关操作,可以避免根据所述整合的结果构建的交易因所需资金超过所述总资金而发生资金不足的情况。Through the above-mentioned related operations involving reserved values, it is possible to avoid a situation in which a transaction constructed according to the result of the integration is underfunded because the required funds exceed the total funds.
作为一个实施例,还可以锁定所述待整合交易记录。As an embodiment, the transaction records to be integrated may also be locked.
例如:调用所述用户的钱包客户端中的lockunspent接口以锁定所述待整合交易记录,这样可以防止所述待整合交易记录被用于其它交易。For example: the lockunspent interface in the user's wallet client is called to lock the transaction record to be integrated, which can prevent the transaction record to be integrated from being used for other transactions.
作为一个实施例,还可以在得到所述已整合交易记录之后,解锁所述待整合交易记录。As an embodiment, the transaction record to be integrated may also be unlocked after the integrated transaction record is obtained.
例如:调用所述用户的钱包客户端中的listlockunspent接口以获得被锁定的所述待整合交易记录;之后调用所述用户的钱包客户端中的lockunspent接口以将被锁定的所述待整合交易记录解锁。For example: call the listlockunspent interface in the user's wallet client to obtain the locked transaction record to be integrated; and then call the lockunspent interface in the user's wallet client to lock the locked transaction record to be integrated Unlock.
作为一个实施例,获取所述用户的可用交易记录时,可以获取所述用户的所有可用交易记录。As an embodiment, when obtaining available transaction records of the user, all available transaction records of the user may be acquired.
作为一个实施例,所述待整合交易记录可以包括以下至少之一:As an embodiment, the transaction record to be integrated may include at least one of the following:
未确认的交易记录;Unconfirmed transaction records;
已确认的交易记录。Confirmed transaction records.
作为一个实施例,所述交易记录可以为UTXO。As an embodiment, the transaction record may be UTXO.
由以上描述可见,本公开实施例所提供的支持数字凭证交易的方法,能够对用户的可用交易记录进行整合,根据所述整合的结果得到所述用户的一个已整合交易记录,因此能够有效减少所述用户的可用交易记录数量。It can be seen from the above description that the method for supporting digital voucher transactions provided by the embodiments of the present disclosure can integrate the available transaction records of users, and obtain an integrated transaction record of the users according to the result of the integration, and therefore can effectively reduce The number of available transaction records for the user.
这样,在后续需要构建交易时,构建的交易中不会包含超过容量上限的 可用交易记录,保证了交易的顺利完成。In this way, when a subsequent transaction is required to be constructed, the constructed transaction will not contain available transaction records that exceed the capacity limit, ensuring the successful completion of the transaction.
另外,所述用户的可用交易记录数量的有效减少,使得在后续需要构建交易时,构建的交易中包含的可用交易记录也能有效减少,因此能够有效降低交易费。In addition, the effective reduction of the number of available transaction records of the user enables the available transaction records included in the constructed transaction to be effectively reduced when a subsequent transaction is required to be constructed, thereby effectively reducing transaction fees.
由以上描述可见,本公开实施例所提供的实现交易记录整合的方法(参见图3至图9及相关描述)能够在用户的可用交易记录中有效确定待整合交易记录,因此能够根据确定的待整合交易记录进行整合以得到所述用户的一个已整合交易记录,因此能够有效减少所述用户的可用交易记录数量。It can be seen from the above description that the method for integrating transaction records provided in the embodiment of the present disclosure (see FIGS. 3 to 9 and related descriptions) can effectively determine the transaction records to be integrated among the available transaction records of the user, and therefore can The integrated transaction records are integrated to obtain an integrated transaction record of the user, so the number of available transaction records of the user can be effectively reduced.
这样,在后续需要构建交易时,构建的交易中不会包含超过容量上限的可用交易记录,保证了交易的顺利完成。In this way, when subsequent transactions are required to be constructed, the constructed transactions will not contain available transaction records that exceed the capacity limit, ensuring the successful completion of the transaction.
另外,所述用户的可用交易记录数量的有效减少,使得在后续需要构建交易时,构建的交易中包含的可用交易记录也能有效减少,因此能够有效降低交易费。In addition, the effective reduction of the number of available transaction records of the user enables the available transaction records included in the constructed transaction to be effectively reduced when a subsequent transaction is required to be constructed, thereby effectively reducing transaction fees.
参见图14,本公开实施例还提供了一种支持数字凭证交易的装置10,包括:Referring to FIG. 14, an embodiment of the present disclosure further provides a device 10 for supporting digital voucher transactions, including:
可用交易记录整合模块110,用于对用户的可用交易记录进行整合;Available transaction record integration module 110, for integrating available transaction records of users;
已整合交易记录生成模块120,用于根据所述整合的结果得到所述用户的一个已整合交易记录;The integrated transaction record generating module 120 is configured to obtain an integrated transaction record of the user according to a result of the integration;
其中,所述可用交易记录中将进行整合的交易记录作为待整合交易记录。Among the available transaction records, the transaction records to be integrated are regarded as the transaction records to be integrated.
所述支持数字凭证交易的装置10可以通过所述用户的可用交易记录管理器实现,例如:区块链网络中的全节点、所述用户的钱包客户端等。The device 10 supporting digital voucher transactions can be implemented by the user's available transaction record manager, such as: a full node in a blockchain network, the user's wallet client, and the like.
参见图15,所述可用交易记录整合模块110可以包括整合单元1103,用于:在对所述待整合交易记录进行整合时,合并所述待整合交易记录中的资金,得到已整合资金。Referring to FIG. 15, the available transaction record integration module 110 may include an integration unit 1103 configured to: when integrating the transaction records to be integrated, merge funds in the transaction records to be integrated to obtain integrated funds.
参见图16、18、20,作为实现数字凭证交易记录整合的装置,所述可用交易记录整合模块110,可以用于:确定所述待整合交易记录。Referring to Figs. 16, 18, and 20, as a device for integrating digital voucher transaction records, the available transaction record integration module 110 may be configured to determine the transaction records to be integrated.
作为一个实施例,所述可用交易记录整合模块110在确定待整合交易记录时,可以用于:As an embodiment, when determining the transaction records to be integrated, the available transaction record integration module 110 may be used to:
获取所述用户的可用交易记录;在所述可用交易记录中,将不超过交易可接受的理论最大交易记录数量的限度交易记录作为用于得到所述用户的一 个已整合交易记录的待整合交易记录;Obtain the available transaction records of the user; in the available transaction records, consider the limit transaction records that do not exceed the theoretical maximum number of transaction records acceptable for the transaction as the pending integration transactions to obtain an integrated transaction record for the user recording;
其中,所述交易可接受的理论最大交易记录数量作为交易记录理论限度。Wherein, the theoretical maximum number of transaction records acceptable for the transaction is taken as the theoretical limit of the transaction records.
参见图16,所述可用交易记录整合模块110可以包括:获取单元1101、确定单元1102;其中Referring to FIG. 16, the available transaction record integration module 110 may include: an obtaining unit 1101 and a determining unit 1102;
获取单元1101,可以用于获取用户的可用交易记录;The obtaining unit 1101 may be used to obtain an available transaction record of a user;
例如:调用所述用户的钱包客户端中的listunspent接口以获取所述用户的可用交易记录。For example, the listunspent interface in the user's wallet client is called to obtain the available transaction records of the user.
作为一个实施例,获取到的所述用户的可用交易记录可以包括以下至少之一:As an embodiment, the obtained available transaction records of the user may include at least one of the following:
未确认的可用交易记录;Unconfirmed available transaction records;
已确认的可用交易记录。Confirmed available transaction records.
确定单元1102,可以用于在所述可用交易记录中,将不超过交易可接受的理论最大交易记录数量的限度交易记录作为用于得到所述用户的一个已整合交易记录的待整合交易记录。The determining unit 1102 may be configured to use, in the available transaction records, a limit transaction record that does not exceed a theoretical maximum number of transaction records acceptable for the transaction as a transaction record to be integrated for obtaining an integrated transaction record of the user.
作为一个实施例,不限制所述用户的所有可用交易记录与所述交易记录理论限度之间的数量关系。As an embodiment, the quantitative relationship between all available transaction records of the user and the theoretical limit of the transaction records is not limited.
作为一个实施例,所述用户的所有可用交易记录与所述交易记录理论限度之间也可以存在数量关系,例如:所述用户的所有可用交易记录的数量小于等于所述交易记录理论限度的两倍。As an embodiment, there may also be a quantitative relationship between all available transaction records of the user and the theoretical limit of the transaction records. For example, the number of all available transaction records of the user is less than or equal to two of the theoretical limits of the transaction records. Times.
作为一个实施例,交易可接受的理论最大交易记录数量通常在一定范围内,例如:600至650,或550至600等。通常,也可以将交易可接受的理论最大交易记录数量设置为一个特定值,例如:600。As an example, the theoretical maximum number of transaction records that can be accepted by a transaction is usually within a certain range, for example: 600 to 650, or 550 to 600. In general, you can also set the theoretical maximum number of transaction records acceptable for a transaction to a specific value, for example: 600.
参见图17,所述确定单元1102,还可以用于:Referring to FIG. 17, the determining unit 1102 may be further configured to:
按照资金,对所述可用交易记录进行排序;根据所述排序在所述可用交易记录中选取所述限度交易记录。所述资金为所述可用交易记录包含的资金。The available transaction records are sorted according to funds; the limit transaction records are selected from the available transaction records according to the ranking. The funds are funds contained in the available transaction records.
作为一个实施例,所述排序可以为按照资金从大到小排序;As an embodiment, the sorting may be sorting according to funds from large to small;
所述确定单元1102在选取所述限度交易记录时,可以用于:按照资金从大到小在所述可用交易记录中选取所述限度交易记录。When selecting the limit transaction record, the determining unit 1102 may be configured to select the limit transaction record from the available transaction records in accordance with the funds from large to small.
作为一个实施例,所述确定单元1102在选取所述限度交易记录时,可以用于:As an embodiment, when determining the limit transaction record, the determining unit 1102 may be configured to:
根据所述排序在所述可用交易记录中顺序选取所述限度交易记录,或Sequentially selecting the limit transaction records among the available transaction records according to the ordering, or
根据所述排序在所述可用交易记录中跳跃选取所述限度交易记录。Jumping to select the limit transaction record among the available transaction records according to the ranking.
作为一个实施例,所述限度交易记录的数量可以等于所述交易记录理论限度。As an embodiment, the number of the limit transaction records may be equal to the theoretical limit of the transaction records.
作为一个实施例,所述限度交易记录的数量也可以小于所述交易记录理论限度。As an embodiment, the number of the limit transaction records may also be smaller than the theoretical limit of the transaction records.
作为一个实施例,由于所述交易记录理论限度只是一个理论值,有可能与实际操作中的交易记录实际限度存在差异,因此所述限度交易记录的数量也可以略微大于所述交易记录理论限度,例如:所述限度交易记录的数量比所述交易记录理论限度大一定比例,例如:5%之内、10%之内或5%至10%之内等。As an example, since the theoretical limit of the transaction record is only a theoretical value, and may be different from the actual limit of the transaction record in actual operation, the number of the limit transaction record may also be slightly larger than the theoretical limit of the transaction record. For example, the number of the limit transaction records is larger than the theoretical limit of the transaction records by a certain percentage, for example: within 5%, within 10%, or within 5% to 10%, and so on.
作为一个实施例,在按照资金对所述可用交易记录进行排序时,也可以按照资金从小到大进行排序;相应的选取所述限度交易记录的方式可以为:按照资金从小到大在所述可用交易记录中选取所述限度交易记录。As an example, when the available transaction records are sorted according to funds, the funds can also be sorted from small to large; the way to select the limit transaction records can be: according to funds from small to large in the available The transaction records are selected from the transaction records.
作为一个实施例,也可以不对所述可用交易记录进行排序,相应的选取所述限度交易记录的方式可以为:在所述可用交易记录中随机选取所述限度交易记录。As an embodiment, the available transaction records may not be sorted, and a corresponding manner of selecting the limit transaction records may be: randomly selecting the limit transaction records among the available transaction records.
作为一个实施例,所述可用交易记录整合模块110在确定待整合交易记录时,可以用于:As an embodiment, when determining the transaction records to be integrated, the available transaction record integration module 110 may be used to:
获取所述用户的可用交易记录;在所述可用交易记录中,合并不超过交易可接受的理论最大交易记录数量的限度交易记录中的资金得到限度资金,得到所述限度资金与待交易资金的差值;Obtain the available transaction records of the user; in the available transaction records, merge the funds in the transaction records that do not exceed the theoretical maximum number of transaction records acceptable for the transaction to obtain the limit funds, and obtain the limit funds and the funds to be traded. Difference
在所述可用交易记录中除所述限度交易记录以外的非限度交易记录中,将合并后的总资金满足所述差值的非限度交易记录作为用于得到所述用户的一个已整合交易记录的待整合交易记录;In the non-limit transaction records other than the limit transaction records in the available transaction records, the combined non-limit transaction records in which the total funds satisfy the difference are taken as an integrated transaction record for obtaining the user Record of pending transactions;
其中,所述交易可接受的理论最大交易记录数量作为交易记录理论限度。Wherein, the theoretical maximum number of transaction records acceptable for the transaction is taken as the theoretical limit of the transaction records.
参见图18,所述可用交易记录整合模块110可以包括:获取单元1101、确定单元1102;其中Referring to FIG. 18, the available transaction record integration module 110 may include: an obtaining unit 1101 and a determining unit 1102;
获取单元1101,可以用于获取用户的可用交易记录;The obtaining unit 1101 may be used to obtain an available transaction record of a user;
例如:调用所述用户的钱包客户端中的listunspent接口以获取所述用户 的可用交易记录。For example: the listunspent interface in the user's wallet client is called to obtain the available transaction records of the user.
作为一个实施例,获取到的所述用户的可用交易记录可以包括以下至少之一:As an embodiment, the obtained available transaction records of the user may include at least one of the following:
未确认的可用交易记录;Unconfirmed available transaction records;
已确认的可用交易记录。Confirmed available transaction records.
确定单元1102,可以用于在所述可用交易记录中,合并不超过交易可接受的理论最大交易记录数量的限度交易记录中的资金得到限度资金,得到所述限度资金与待交易资金的差值;其中,所述交易可接受的理论最大交易记录数量作为交易记录理论限度;以及A determining unit 1102 may be used to merge the funds in the available transaction records to the limit of the theoretical maximum number of transaction records that can be accepted by the transaction to obtain the limit funds, and obtain the difference between the limit funds and the funds to be traded ; Wherein the theoretical maximum number of transaction records acceptable for the transaction is the theoretical limit of the transaction records; and
在所述可用交易记录中除所述限度交易记录以外的非限度交易记录中,将合并后的总资金满足所述差值的非限度交易记录作为用于得到所述用户的一个已整合交易记录的待整合交易记录。In the non-limit transaction records other than the limit transaction records in the available transaction records, the combined non-limit transaction records in which the total funds satisfy the difference are taken as an integrated transaction record for obtaining the user Of pending transaction records.
作为一个实施例,可以用所述待交易资金减去所述限度资金以得到所述差值。As an embodiment, the limit funds may be subtracted from the funds to be traded to obtain the difference.
作为一个实施例,可以合并一定数量的非限度交易记录中的资金以得到合并后的总资金,并在合并后的总资金大于或等于所述差值时,将合并了资金的所述非限度交易记录作为待整合交易记录。As an example, the funds in a certain amount of unlimited transaction records may be combined to obtain the combined total funds, and when the combined total funds are greater than or equal to the difference, the non-limits of the funds are combined The transaction record is used as the transaction record to be integrated.
作为一个实施例,不限制所述用户的所有可用交易记录与所述交易记录理论限度之间的数量关系。As an embodiment, the quantitative relationship between all available transaction records of the user and the theoretical limit of the transaction records is not limited.
作为一个实施例,所述用户的所有可用交易记录与所述交易记录理论限度之间也可以存在数量关系,例如:所述用户的所有可用交易记录的数量小于等于所述交易记录理论限度的两倍。As an embodiment, there may also be a quantitative relationship between all available transaction records of the user and the theoretical limit of the transaction records. For example, the number of all available transaction records of the user is less than or equal to two of the theoretical limits of the transaction records. Times.
作为一个实施例,交易可接受的理论最大交易记录数量通常在一定范围内,例如:600至650,或550至600等。通常,也可以将交易可接受的理论最大交易记录数量设置为一个特定值,例如:600。As an example, the theoretical maximum number of transaction records that can be accepted by a transaction is usually within a certain range, for example: 600 to 650, or 550 to 600. In general, you can also set the theoretical maximum number of transaction records acceptable for a transaction to a specific value, for example: 600.
参见图19,所述确定单元1102,还可以用于:Referring to FIG. 19, the determining unit 1102 may be further configured to:
按照资金,对所述非限度交易记录进行排序;根据所述排序选取作为待整合交易记录的所述非限度交易记录。所述资金为所述非限度交易记录包含的资金。Sort the unlimited transaction records according to funds; select the unlimited transaction records as the transaction records to be integrated according to the ranking. The funds are the funds included in the unlimited transaction record.
作为一个实施例,所述排序可以为按照资金从大到小排序;As an embodiment, the sorting may be sorting according to funds from large to small;
所述确定单元1102在选取所述非限度交易记录时,可以用于:按照资金从大到小选取作为待整合交易记录的所述非限度交易记录。When the determining unit 1102 selects the non-limit transaction record, it can be used to select the non-limit transaction record to be integrated as the transaction record to be integrated according to the funds from large to small.
作为一个实施例,所述确定单元1102在选取所述非限度交易记录时,可以用于:As an embodiment, when determining the non-limit transaction record, the determining unit 1102 may be configured to:
根据所述排序顺序选取作为待整合交易记录的所述非限度交易记录,或Selecting the non-limit transaction record as the transaction record to be integrated according to the sorting order, or
根据所述排序跳跃选取作为待整合交易记录的所述非限度交易记录。Selecting the non-limit transaction record as the transaction record to be integrated according to the sort jump.
作为一个实施例,在按照资金对所述非限度交易记录进行排序时,也可以按照资金从小到大进行排序;相应的选取所述非限度交易记录的方式可以为:按照资金从小到大选取作为待整合交易记录的所述非限度交易记录。As an example, when the non-limit transaction records are sorted according to funds, the funds can also be sorted from small to large; the corresponding selection of the non-limit transaction records can be as follows: The unlimited transaction records to be integrated with the transaction records.
作为一个实施例,也可以不对所述非限度交易记录进行排序,相应的选取所述非限度交易记录的方式可以为:随机选取作为待整合交易记录的所述非限度交易记录。As an embodiment, the non-limit transaction records may not be sorted, and the corresponding manner of selecting the non-limit transaction records may be: randomly selecting the non-limit transaction records as the transaction records to be integrated.
作为一个实施例,在采用如图18所示设置的情况下,还可以采用前述的如图17所示的设置,例如:As an embodiment, when the setting shown in FIG. 18 is adopted, the foregoing setting shown in FIG. 17 may also be adopted, for example:
所述确定单元1102按照资金,对所述可用交易记录进行排序,其中,所述资金为所述可用交易记录包含的资金;根据所述排序在所述可用交易记录中选取所述限度交易记录。The determining unit 1102 sorts the available transaction records according to funds, wherein the funds are funds included in the available transaction records; and selecting the limit transaction records from the available transaction records according to the ranking.
作为一个实施例,所述排序可以为按照资金从大到小排序;As an embodiment, the sorting may be sorting according to funds from large to small;
所述确定单元1102在选取所述限度交易记录时,可以用于:按照资金从大到小在所述可用交易记录中选取所述限度交易记录。When selecting the limit transaction record, the determining unit 1102 may be configured to select the limit transaction record from the available transaction records in accordance with the funds from large to small.
作为一个实施例,所述确定单元1102在选取所述限度交易记录时,可以用于:As an embodiment, when determining the limit transaction record, the determining unit 1102 may be configured to:
根据所述排序在所述可用交易记录中顺序选取所述限度交易记录,或Sequentially selecting the limit transaction records among the available transaction records according to the ordering, or
根据所述排序在所述可用交易记录中跳跃选取所述限度交易记录。Jumping to select the limit transaction record among the available transaction records according to the ranking.
作为一个实施例,所述限度交易记录的数量可以等于所述交易记录理论限度。As an embodiment, the number of the limit transaction records may be equal to the theoretical limit of the transaction records.
作为一个实施例,所述限度交易记录的数量也可以小于所述交易记录理论限度。As an embodiment, the number of the limit transaction records may also be smaller than the theoretical limit of the transaction records.
作为一个实施例,由于所述交易记录理论限度只是一个理论值,有可能与实际操作中的交易记录实际限度存在差异,因此所述限度交易记录的数量 也可以略微大于所述交易记录理论限度,例如:所述限度交易记录的数量比所述交易记录理论限度大一定比例,例如:5%之内、10%之内或5%至10%之内等。As an example, since the theoretical limit of the transaction record is only a theoretical value, and may be different from the actual limit of the transaction record in actual operation, the number of the limit transaction record may also be slightly larger than the theoretical limit of the transaction record. For example, the number of the limit transaction records is larger than the theoretical limit of the transaction records by a certain percentage, for example: within 5%, within 10%, or within 5% to 10%, and so on.
作为一个实施例,在按照资金对所述可用交易记录进行排序时,也可以按照资金从小到大进行排序;相应的选取所述限度交易记录的方式可以为:按照资金从小到大在所述可用交易记录中选取所述限度交易记录。As an example, when the available transaction records are sorted according to funds, the funds can also be sorted from small to large; the way to select the limit transaction records can be: according to funds from small to large in the available The transaction records are selected from the transaction records.
作为一个实施例,也可以不对所述可用交易记录进行排序,相应的选取所述限度交易记录的方式可以为:在所述可用交易记录中随机选取所述限度交易记录。As an embodiment, the available transaction records may not be sorted, and a corresponding manner of selecting the limit transaction records may be: randomly selecting the limit transaction records among the available transaction records.
作为一个实施例,在采用如图16所示设置的情况下,还可以采用如图18、19所示的设置,例如:As an embodiment, when the settings shown in FIG. 16 are adopted, the settings shown in FIGS. 18 and 19 may also be adopted, for example:
所述确定单元1102在所述可用交易记录中,合并不超过交易可接受的理论最大交易记录数量的限度交易记录中的资金得到限度资金,得到所述限度资金与待交易资金的差值;在所述可用交易记录中除所述限度交易记录以外的非限度交易记录中,将合并后的总资金满足所述差值的非限度交易记录作为用于得到所述用户的一个已整合交易记录的待整合交易记录。The determining unit 1102 combines the funds in the available transaction records with the funds in the limit transaction records that do not exceed the theoretical maximum number of transaction records acceptable for the transaction to obtain the limit funds, and obtains the difference between the limit funds and funds to be traded; Among the available transaction records other than the limit transaction records, the combined non-limit transaction records in which the total funds satisfy the difference are used as the integrated transaction records for obtaining the user. To be consolidated transaction records.
作为一个实施例,可以用所述待交易资金减去所述限度资金以得到所述差值。As an embodiment, the limit funds may be subtracted from the funds to be traded to obtain the difference.
作为一个实施例,可以合并一定数量的非限度交易记录中的资金以得到合并后的总资金,并在合并后的总资金大于或等于所述差值时,将合并了资金的所述非限度交易记录作为待整合交易记录。As an example, the funds in a certain amount of unlimited transaction records may be combined to obtain the combined total funds, and when the combined total funds are greater than or equal to the difference, the non-limits of the funds are combined The transaction record is used as the transaction record to be integrated.
作为一个实施例,交易可接受的理论最大交易记录数量通常在一定范围内,例如:600至650,或550至600等。通常,也可以将交易可接受的理论最大交易记录数量设置为一个特定值,例如:600。As an example, the theoretical maximum number of transaction records that can be accepted by a transaction is usually within a certain range, for example: 600 to 650, or 550 to 600. In general, you can also set the theoretical maximum number of transaction records acceptable for a transaction to a specific value, for example: 600.
作为一个实施例,所述确定单元1102在进行非限度交易记录的选取时,可以用于:按照资金,对所述非限度交易记录进行排序,其中,所述资金为所述非限度交易记录包含的资金;;根据所述排序选取作为待整合交易记录的所述非限度交易记录。As an embodiment, the determining unit 1102 may be used to sort the unlimited transaction records according to funds when selecting the unlimited transaction records, where the funds include the unlimited transaction records. The funds selected according to the ranking are selected as the unlimited transaction records to be integrated transaction records.
作为一个实施例,所述排序可以为按照资金从大到小排序;As an embodiment, the sorting may be sorting according to funds from large to small;
所述确定单元1102在选取所述非限度交易记录时,可以用于:按照资金 从大到小选取作为待整合交易记录的所述非限度交易记录。When the determining unit 1102 selects the non-limit transaction record, it may be used to select the non-limit transaction record to be integrated as the transaction record to be integrated according to the funds from large to small.
作为一个实施例,所述确定单元1102在选取所述非限度交易记录时,可以用于:As an embodiment, when determining the non-limit transaction record, the determining unit 1102 may be configured to:
根据所述排序顺序选取作为待整合交易记录的所述非限度交易记录,或Selecting the non-limit transaction record as the transaction record to be integrated according to the sorting order, or
根据所述排序跳跃选取作为待整合交易记录的所述非限度交易记录。Selecting the non-limit transaction record as the transaction record to be integrated according to the sort jump.
作为一个实施例,在按照资金对所述非限度交易记录进行排序时,也可以按照资金从小到大进行排序;相应的选取所述非限度交易记录的方式可以为:按照资金从小到大选取作为待整合交易记录的所述非限度交易记录。As an example, when the non-limit transaction records are sorted according to funds, the funds can also be sorted from small to large; the corresponding selection of the non-limit transaction records can be as follows: The unlimited transaction records to be integrated with the transaction records.
作为一个实施例,也可以不对所述非限度交易记录进行排序,相应的选取所述非限度交易记录的方式可以为:随机选取作为待整合交易记录的所述非限度交易记录。As an embodiment, the non-limit transaction records may not be sorted, and the corresponding manner of selecting the non-limit transaction records may be: randomly selecting the non-limit transaction records as the transaction records to be integrated.
作为一个实施例,所述可用交易记录整合模块110在确定待整合交易记录时,可以用于:As an embodiment, when determining the transaction records to be integrated, the available transaction record integration module 110 may be used to:
获取所述用户的可用交易记录;在所述可用交易记录中,合并不超过交易可接受的理论最大交易记录数量的限度交易记录得到一个临时交易记录;其中,所述交易可接受的理论最大交易记录数量作为交易记录理论限度;Obtain the available transaction records of the user; in the available transaction records, merge the transaction records that do not exceed the theoretical maximum number of transaction acceptable transactions to obtain a temporary transaction record; wherein the theoretical maximum transactions acceptable for the transaction Number of records as the theoretical limit of transaction records;
基于所述临时交易记录以及在所述可用交易记录中除所述限度交易记录以外的非限度交易记录,选择满足待交易资金并且不超过所述交易记录理论限度的交易记录作为用于得到所述用户的一个已整合交易记录的待整合交易记录。Based on the temporary transaction record and non-limit transaction records other than the limit transaction record in the available transaction records, selecting a transaction record that meets the funds to be traded and does not exceed the theoretical limit of the transaction record is used to obtain the A pending transaction record for the user's integrated transaction record.
参见图20,所述可用交易记录整合模块110可以包括:获取单元1101、确定单元1102;其中Referring to FIG. 20, the available transaction record integration module 110 may include: an obtaining unit 1101 and a determining unit 1102;
获取单元1101,可以用于获取用户的可用交易记录;The obtaining unit 1101 may be used to obtain an available transaction record of a user;
例如:调用所述用户的钱包客户端中的listunspent接口以获取所述用户的可用交易记录。For example, the listunspent interface in the user's wallet client is called to obtain the available transaction records of the user.
作为一个实施例,获取到的所述用户的可用交易记录可以包括以下至少之一:As an embodiment, the obtained available transaction records of the user may include at least one of the following:
未确认的可用交易记录;Unconfirmed available transaction records;
已确认的可用交易记录。Confirmed available transaction records.
确定单元1102,可以用于在所述可用交易记录中,合并不超过交易可接 受的理论最大交易记录数量的限度交易记录得到一个临时交易记录;其中,所述交易可接受的理论最大交易记录数量作为交易记录理论限度;以及The determining unit 1102 may be configured to combine, within the available transaction records, a transaction record that does not exceed a theoretical maximum transaction record acceptable number of transactions to obtain a temporary transaction record; wherein, the theoretical maximum transaction record acceptable number of transactions As the theoretical limit of transaction records; and
基于所述临时交易记录以及在所述可用交易记录中除所述限度交易记录以外的非限度交易记录,选择满足待交易资金并且不超过所述交易记录理论限度的交易记录作为用于得到所述用户的一个已整合交易记录的待整合交易记录。Based on the temporary transaction record and non-limit transaction records other than the limit transaction record in the available transaction records, selecting a transaction record that meets the funds to be traded and does not exceed the theoretical limit of the transaction record is used to obtain the A pending transaction record for the user's integrated transaction record.
例如:使用二次遍历随机法选择所述待整合交易记录,可以包括:For example, selecting the to-be-integrated transaction records using a two-step traversal random method may include:
在包括所述临时交易记录以及非限度交易记录的所有交易记录中,对所有交易记录进行第一次遍历来挑选交易记录;In all transaction records including the temporary transaction record and the unlimited transaction record, perform a first traversal on all transaction records to select a transaction record;
如果第一次遍历所挑选出的交易记录满足所述待交易资金并且不超过所述交易记录理论限度,则将第一次遍历所挑选出的交易记录作为所述待整合交易记录;If the transaction record selected for the first traversal meets the funds to be traded and does not exceed the theoretical limit of the transaction record, then the transaction record selected for the first traversal is used as the transaction record to be integrated;
如果第一次遍历所挑选出的交易记录未满足所述待交易资金,则对第一次遍历未挑选出的交易记录进行第二次遍历来挑选交易记录;If the selected transaction record for the first traversal does not satisfy the funds to be traded, perform a second traversal on the transaction records that are not selected for the first traversal to select the transaction records;
如果两次遍历所挑选出的交易记录满足所述待交易资金并且不超过所述交易记录理论限度,则将两次遍历所挑选出的交易记录作为所述待整合交易记录。If the transaction records selected through two traversals meet the funds to be traded and do not exceed the theoretical limit of the transaction records, then the transaction records selected through two traversals are used as the transaction records to be integrated.
作为一个实施例,在进行所述第一次遍历时,可以对所有交易记录按资金降序排列,并从包含资金最大的交易记录开始遍历。第一次遍历时可以采用真假(true or false)随机方式来挑选交易记录。As an embodiment, when performing the first traversal, all transaction records may be arranged in descending order of funds, and the traversal starts from the transaction record containing the largest funds. For the first traversal, a true or false random method can be used to select transaction records.
作为一个实施例,所述二次遍历随机法可以执行多次,例如1000次,以挑选出满足所述待交易资金并且不超过所述交易记录理论限度的交易记录作为所述待整合交易记录。As an embodiment, the two-pass traversal random method may be performed multiple times, for example, 1000 times, to select a transaction record that satisfies the funds to be traded and does not exceed the theoretical limit of the transaction record as the to-be-integrated transaction record.
作为一个实施例,通过执行多次二次遍历随机法,可以确定待整合交易记录数量最少的方案。As an embodiment, by executing the random method of multiple traversal multiple times, a scheme with the least number of transaction records to be integrated can be determined.
作为一个实施例,不限制所述用户的所有可用交易记录与所述交易记录理论限度之间的数量关系。As an embodiment, the quantitative relationship between all available transaction records of the user and the theoretical limit of the transaction records is not limited.
作为一个实施例,所述用户的所有可用交易记录与所述交易记录理论限度之间也可以存在数量关系,例如:所述用户的所有可用交易记录的数量大于等于所述交易记录理论限度的两倍。As an embodiment, there may also be a quantitative relationship between all available transaction records of the user and the theoretical limit of the transaction records. For example, the number of all available transaction records of the user is greater than or equal to two of the theoretical limits of the transaction records. Times.
作为一个实施例,交易可接受的理论最大交易记录数量通常在一定范围内,例如:600至650,或550至600等。通常,也可以将交易可接受的理论最大交易记录数量设置为一个特定值,例如:600。As an example, the theoretical maximum number of transaction records that can be accepted by a transaction is usually within a certain range, for example: 600 to 650, or 550 to 600. In general, you can also set the theoretical maximum number of transaction records acceptable for a transaction to a specific value, for example: 600.
作为一个实施例,在采用如图20所示设置的情况下,还可以采用如图17所示的设置,例如:As an embodiment, when the setting shown in FIG. 20 is adopted, the setting shown in FIG. 17 may also be adopted, for example:
所述确定单元1102按照资金,对所述可用交易记录进行排序,其中,所述资金为所述可用交易记录包含的资金;根据所述排序在所述可用交易记录中选取所述限度交易记录。The determining unit 1102 sorts the available transaction records according to funds, wherein the funds are funds included in the available transaction records; and selecting the limit transaction records from the available transaction records according to the ranking.
作为一个实施例,所述排序可以为按照资金从小到大排序;As an embodiment, the sorting may be sorting according to funds from small to large;
所述确定单元1102在选取所述限度交易记录时,可以用于:按照资金从小到大在所述可用交易记录中选取所述限度交易记录。When selecting the limit transaction record, the determining unit 1102 may be configured to select the limit transaction record from the available transaction records according to the funds from small to large.
作为一个实施例,所述确定单元1102在选取所述限度交易记录时,可以用于:As an embodiment, when determining the limit transaction record, the determining unit 1102 may be configured to:
根据所述排序在所述可用交易记录中顺序选取所述限度交易记录,或Sequentially selecting the limit transaction records among the available transaction records according to the ordering, or
根据所述排序在所述可用交易记录中跳跃选取所述限度交易记录。Jumping to select the limit transaction record among the available transaction records according to the ranking.
作为一个实施例,所述限度交易记录的初始数量可以大于1。As an embodiment, the initial number of the limit transaction records may be greater than one.
作为一个实施例,在按照资金对所述可用交易记录进行排序时,也可以按照资金从大到小进行排序;相应的选取所述限度交易记录的方式可以为:按照资金从大到小在所述可用交易记录中选取所述限度交易记录。As an example, when the available transaction records are sorted according to funds, the funds can also be sorted from large to small; the way to select the limit transaction records can be: according to the funds from large to small The limit transaction record is selected from the available transaction records.
作为一个实施例,也可以不对所述可用交易记录进行排序,相应的选取所述限度交易记录的方式可以为:在所述可用交易记录中随机选取所述限度交易记录。As an embodiment, the available transaction records may not be sorted, and a corresponding manner of selecting the limit transaction records may be: randomly selecting the limit transaction records among the available transaction records.
参见图21,所述确定单元1102在得到所述临时交易记录时,可以用于:Referring to FIG. 21, when obtaining the temporary transaction record, the determining unit 1102 may be configured to:
合并所述限度交易记录中的资金,得到已合并资金,将所述已合并资金包含于新生成的所述临时交易记录中。The funds in the limit transaction record are combined to obtain a combined fund, and the combined fund is included in the newly generated temporary transaction record.
作为一个实施例,所述临时交易记录是额外生成的交易记录;可以预先生成并预留,也可以新生成。As an embodiment, the temporary transaction record is an additional generated transaction record; it may be generated in advance and reserved, or it may be newly generated.
上述的涉及所述临时交易记录的操作,能够在得到所述已整合交易记录之前合并一定数量的交易记录中的资金得到所述已合并资金并临时性地生成一个包含所述已合并资金的交易记录,即:所述临时交易记录。The above-mentioned operation involving the temporary transaction record can merge the funds in a certain amount of transaction records to obtain the consolidated funds and temporarily generate a transaction containing the consolidated funds before obtaining the consolidated transaction records. Record, that is, the temporary transaction record.
参见图22,所述确定单元1102,还可以用于:Referring to FIG. 22, the determining unit 1102 may be further configured to:
选择的交易记录超过所述交易记录理论限度时,增加合并的所述限度交易记录的数量并返回进行所述选择。When the selected transaction record exceeds the theoretical limit of the transaction record, the number of merged transaction records of the limit is increased and the selection is returned.
作为一个实施例,由于所述交易记录理论限度只是一个理论值,有可能与实际操作中的交易记录实际限度存在差异,因此选择的所述交易记录的数量也可以略微大于所述交易记录理论限度,例如:选择的所述交易记录的数量比所述交易记录理论限度大一定比例,例如:5%之内、10%之内或5%至10%之内等。As an example, since the theoretical limit of the transaction record is only a theoretical value, and may be different from the actual limit of the transaction record in actual operation, the number of the selected transaction record may also be slightly larger than the theoretical limit of the transaction record. For example, the number of the selected transaction records is larger than the theoretical limit of the transaction records by a certain percentage, for example, within 5%, within 10%, or within 5% to 10%.
作为一个实施例,所述确定单元1102在增加合并的所述限度交易记录的数量时,可以用于:将合并的所述限度交易记录的数量加1。As an embodiment, when the determining unit 1102 increases the number of the combined limit transaction records, it may be configured to add 1 to the number of the combined limit transaction records.
作为一个实施例,增加合并的所述限度交易记录的数量时,也可以将合并的所述限度交易记录的数量加2或3等除1以外的其它数量。As an example, when the number of the combined limit transaction records is increased, the number of the combined limit transaction records may be increased by 2 or 3 other than 1 or the like.
作为一个实施例,所述确定单元1102,还可以用于:As an embodiment, the determining unit 1102 may be further configured to:
利用所述临时交易记录、非限度交易记录更新所述可用交易记录。Update the available transaction records with the temporary transaction records and unlimited transaction records.
例如,将所述临时交易记录、非限度交易记录组成一个集合,将该集合中的交易记录作为所述可用交易记录。For example, the temporary transaction record and the unlimited transaction record are combined into a set, and the transaction records in the set are used as the available transaction records.
作为一个实施例,所述已整合交易记录生成模块120,可以用于:根据所述已整合资金,构建包括所述已整合交易记录的交易。As an embodiment, the integrated transaction record generating module 120 may be configured to construct a transaction including the integrated transaction record according to the integrated funds.
参见图23,所述已整合交易记录生成模块120可以包括构建单元1201,所述构建单元1201在构建所述交易时,可以用于:将所述待整合交易记录作为交易输入,将所述已整合交易记录作为交易输出并在所述已整合交易记录中携带所述已整合资金,生成包含所述交易输入、交易输出的数据格式作为所述交易。Referring to FIG. 23, the integrated transaction record generating module 120 may include a constructing unit 1201. When constructing the transaction, the constructing unit 1201 may be configured to: use the transaction record to be integrated as a transaction input, An integrated transaction record is used as a transaction output and the integrated funds are carried in the integrated transaction record, and a data format including the transaction input and transaction output is generated as the transaction.
例如:调用所述用户的钱包客户端中的createrawtransaction接口以构建所述交易。For example: the createrawtransaction interface in the user's wallet client is called to construct the transaction.
作为一个实施例,所述数据格式可以包括字符串。所述字符串可以为16进制。As an embodiment, the data format may include a character string. The character string may be hexadecimal.
参见图24,所述已整合交易记录生成模块120,还可以用于:Referring to FIG. 24, the integrated transaction record generating module 120 may also be used for:
生成所述已整合资金所指向的地址;例如:调用所述用户的钱包客户端中的getnewaddress接口以获取所述地址;Generating the address pointed to by the integrated funds; for example, calling the getnewaddress interface in the user's wallet client to obtain the address;
将该地址携带于所述交易输出中。The address is carried in the transaction output.
作为一个实施例,所述已整合交易记录生成模块120,还可以用于:对所述交易进行签名。As an embodiment, the integrated transaction record generating module 120 may be further configured to: sign the transaction.
例如:调用所述用户的钱包客户端中的signrawtransaction接口以对所述交易进行签名;所述签名可以是私钥签名等。For example: calling the signrawtransaction interface in the user's wallet client to sign the transaction; the signature may be a private key signature, and the like.
作为一个实施例,所述已整合交易记录生成模块120,还可以用于:发送签名后的所述交易。As an embodiment, the integrated transaction record generating module 120 may be further configured to: send the signed transaction.
例如:调用所述用户的钱包客户端中的sendrawtransaction接口以将所述交易发送到本地节点和连接的网络(如区块链网络)中。For example: the sendrawtransaction interface in the user's wallet client is called to send the transaction to a local node and a connected network (such as a blockchain network).
作为一个实施例,所述已整合交易记录生成模块120,还可以用于:在发送签名后的所述交易之前对所述交易进行交易校验。As an embodiment, the integrated transaction record generating module 120 may be further configured to perform transaction verification on the transaction before sending the signed transaction.
例如:调用所述用户的钱包客户端中的decoderawtransaction接口以对签名后的所述交易进行解码,并基于解码后得到的交易信息(可以包括所述已整合资金、交易输入、交易输出等,还可以包括下述的交易费)进行交易校验。For example: calling the decoderawtransaction interface in the user's wallet client to decode the signed transaction, and based on the decoded transaction information (which may include the integrated funds, transaction input, transaction output, etc.) May include the following transaction fees) for transaction verification.
参见图25,所述可用交易记录整合模块110,还可以用于进行更新已整合资金的操作,例如:基于所述已整合交易记录生成模块120要构建的所述交易生成所述交易对应的交易费,根据所述交易费更新所述已整合资金。Referring to FIG. 25, the available transaction record integration module 110 can also be used to update the integrated funds, for example, generating a transaction corresponding to the transaction based on the transaction to be constructed by the integrated transaction record generation module 120 Fee, updating the integrated funds according to the transaction fee.
作为一个实施例,可以基于签名后的所述交易,调用所述用户的钱包客户端中的estimatefee接口以得到所述交易费。As an embodiment, the estimatedfee interface in the wallet client of the user may be called to obtain the transaction fee based on the signed transaction.
作为一个实施例,根据所述交易费更新所述已整合资金时,可以使用所述已整合资金减去所述交易费得到资金差值,并使用所述资金差值更新所述已整合交易记录中携带的所述已整合资金。As an embodiment, when the integrated funds are updated according to the transaction fee, the integrated fund may be subtracted from the transaction fee to obtain a difference in funds, and the integrated transaction record may be updated using the difference in funds. The integrated funds carried in.
作为一个实施例,使用所述资金差值更新所述已整合资金时,可以直接用所述资金差值作为新的已整合资金的值。As an embodiment, when the integrated funds are updated using the difference in funds, the difference in funds may be directly used as the value of the new integrated funds.
作为一个实施例,还可以将所述交易费携带于所述已整合交易记录中。As an embodiment, the transaction fee may also be carried in the integrated transaction record.
作为一个实施例,所述可用交易记录整合模块110,还可以用于:在进行所述整合之前,被发生的交易过大异常所触发。As an embodiment, the available transaction record integration module 110 may be further configured to be triggered by an excessive transaction abnormality that occurs before performing the integration.
作为一个实施例,所述可用交易记录整合模块110,还可以用于确定整合结果的有效性,例如:根据用于避免资金不足的预留值,确定所述整合的 结果的有效性。As an embodiment, the available transaction record integration module 110 may also be used to determine the validity of the integration result, for example, determining the validity of the integration result according to a reserved value for avoiding insufficient funds.
参见图26,所述可用交易记录整合模块110在确定所述整合的结果的有效性时,可以用于:为所述整合的结果添加所述预留值,得到参考资金;在所述参考资金超过资金限额时确定所述整合的结果无效。Referring to FIG. 26, when determining the validity of the integration result, the available transaction record integration module 110 may be used to: add the reserved value to the integration result to obtain a reference fund; When the funding limit is exceeded, it is determined that the result of the integration is invalid.
作为一个实施例,所述可用交易记录整合模块110,还可以用于:确定所述整合的结果无效时,返回进行所述整合。As an embodiment, the available transaction record integration module 110 may be further configured to: when it is determined that the result of the integration is invalid, return to perform the integration.
作为一个实施例,所述资金限额通常不超过所述用户的总资金。As an embodiment, the funding limit generally does not exceed the total funds of the user.
作为一个实施例,所述资金限额可以小于所述用户的总资金。例如:所述资金限额等于所述总资金的80%或90%或其它比例。As an embodiment, the funding limit may be less than the total funds of the user. For example: the funding limit is equal to 80% or 90% of the total funding or other proportion.
作为一个实施例,所述资金限额可以等于所述用户的总资金。As an embodiment, the funding limit may be equal to the total funds of the user.
作为一个实施例,所述预留值可以是预定值,该预定值可以是自定义的,例如:所述预留值等于所述待交易资金的10%或其它比例。As an embodiment, the reserved value may be a predetermined value, and the predetermined value may be customized, for example, the reserved value is equal to 10% of the funds to be traded or other proportions.
通过上述涉及预留值的相关操作,可以避免根据所述整合的结果构建的交易因所需资金超过所述总资金而发生资金不足的情况。Through the above-mentioned related operations involving reserved values, it is possible to avoid a situation in which a transaction constructed according to the result of the integration is underfunded because the required funds exceed the total funds.
作为一个实施例,所述可用交易记录整合模块110,还可以用于:锁定所述待整合交易记录。As an embodiment, the available transaction record integration module 110 may be further configured to: lock the transaction record to be integrated.
例如:调用所述用户的钱包客户端中的lockunspent接口以锁定所述待整合交易记录,这样可以防止所述待整合交易记录被用于其它交易。For example: the lockunspent interface in the user's wallet client is called to lock the transaction record to be integrated, which can prevent the transaction record to be integrated from being used for other transactions.
作为一个实施例,所述可用交易记录整合模块110,还可以用于:在所述已整合交易记录生成模块120得到所述已整合交易记录之后,解锁所述待整合交易记录。As an embodiment, the available transaction record integration module 110 may be further configured to: after the integrated transaction record generation module 120 obtains the integrated transaction record, unlock the transaction record to be integrated.
例如:调用所述用户的钱包客户端中的listlockunspent接口以获得被锁定的所述待整合交易记录;之后调用所述用户的钱包客户端中的lockunspent接口以将被锁定的所述待整合交易记录解锁。For example: call the listlockunspent interface in the user's wallet client to obtain the locked transaction record to be integrated; and then call the lockunspent interface in the user's wallet client to lock the locked transaction record to be integrated Unlock.
作为一个实施例,所述获取单元1101可以用于:获取所述用户的所有可用交易记录。As an embodiment, the obtaining unit 1101 may be configured to obtain all available transaction records of the user.
作为一个实施例,所述待整合交易记录可以包括以下至少之一:As an embodiment, the transaction record to be integrated may include at least one of the following:
未确认的交易记录;Unconfirmed transaction records;
已确认的交易记录。Confirmed transaction records.
作为一个实施例,所述交易记录可以为UTXO。As an embodiment, the transaction record may be UTXO.
由以上描述可见,本公开实施例所提供的支持数字凭证交易的装置,能够对用户的可用交易记录进行整合,根据所述整合的结果得到所述用户的一个已整合交易记录,因此能够有效减少所述用户的可用交易记录数量。It can be seen from the above description that the device supporting digital voucher transactions provided by the embodiments of the present disclosure can integrate the available transaction records of users, and obtain an integrated transaction record of the user according to the result of the integration, and therefore can effectively reduce The number of available transaction records for the user.
这样,在后续需要构建交易时,构建的交易中不会包含超过容量上限的可用交易记录,保证了交易的顺利完成。In this way, when subsequent transactions are required to be constructed, the constructed transactions will not contain available transaction records that exceed the capacity limit, ensuring the successful completion of the transaction.
另外,所述用户的可用交易记录数量的有效减少,使得在后续需要构建交易时,构建的交易中包含的可用交易记录也能有效减少,因此能够有效降低交易费。In addition, the effective reduction of the number of available transaction records of the user enables the available transaction records included in the constructed transaction to be effectively reduced when a subsequent transaction is required to be constructed, thereby effectively reducing transaction fees.
由以上描述可见,本公开实施例所提供的实现交易记录整合的装置(参见图16至图22及相关描述)能够在用户的可用交易记录中有效确定待整合交易记录,因此能够根据确定的待整合交易记录进行整合以得到所述用户的一个已整合交易记录,因此能够有效减少所述用户的可用交易记录数量。It can be seen from the above description that the device for implementing transaction record integration provided by the embodiment of the present disclosure (see FIGS. 16 to 22 and related descriptions) can effectively determine a transaction record to be integrated among a user's available transaction records, and therefore can The integrated transaction records are integrated to obtain an integrated transaction record of the user, so the number of available transaction records of the user can be effectively reduced.
这样,在后续需要构建交易时,构建的交易中不会包含超过容量上限的可用交易记录,保证了交易的顺利完成。In this way, when subsequent transactions are required to be constructed, the constructed transactions will not contain available transaction records that exceed the capacity limit, ensuring the successful completion of the transaction.
另外,所述用户的可用交易记录数量的有效减少,使得在后续需要构建交易时,构建的交易中包含的可用交易记录也能有效减少,因此能够有效降低交易费。In addition, the effective reduction of the number of available transaction records of the user enables the available transaction records included in the constructed transaction to be effectively reduced when a subsequent transaction is required to be constructed, thereby effectively reducing transaction fees.
本公开实施例还提供了一种数字凭证客户端,包含上述实施例的支持数字凭证交易的装置。An embodiment of the present disclosure further provides a digital voucher client, which includes the device for supporting digital voucher transactions in the foregoing embodiment.
基于上述描述可以理解地,所述数字凭证客户端也可以包含上述实施例的实现数字凭证交易记录整合的装置。Based on the foregoing description, it can be understood that the digital voucher client may also include the device for integrating digital voucher transaction records in the foregoing embodiment.
本公开实施例还提供了一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为执行上述实施例的支持数字凭证交易的方法。An embodiment of the present disclosure further provides a computer-readable storage medium storing computer-executable instructions configured to execute the method for supporting digital voucher transactions of the foregoing embodiment.
基于上述描述可以理解地,所述计算机可读存储介质中,所述计算机可执行指令也可以设置为执行上述实施例的实现数字凭证交易记录整合的方法。Based on the foregoing description, it can be understood that in the computer-readable storage medium, the computer-executable instructions may also be configured to execute the method for implementing integration of digital voucher transaction records in the foregoing embodiment.
本公开实施例还提供了一种计算机程序产品,所述计算机程序产品包括存储在计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行上述实施例的支持数字 凭证交易的方法。An embodiment of the present disclosure also provides a computer program product. The computer program product includes a computer program stored on a computer-readable storage medium, and the computer program includes program instructions. When the program instructions are executed by a computer, The computer executes the method for supporting digital voucher transactions in the above embodiment.
基于上述描述可以理解地,所述计算机程序产品中,所述程序指令也可以使所述计算机执行上述实施例的实现数字凭证交易记录整合的方法。Based on the foregoing description, it can be understood that, in the computer program product, the program instructions may also cause the computer to execute the method for implementing integration of digital voucher transaction records in the foregoing embodiment.
上述的计算机可读存储介质可以是暂态计算机可读存储介质,也可以是非暂态计算机可读存储介质。The computer-readable storage medium described above may be a transitory computer-readable storage medium or a non-transitory computer-readable storage medium.
本公开实施例还提供了一种电子设备,包括:An embodiment of the present disclosure further provides an electronic device, including:
至少一个处理器;以及At least one processor; and
与所述至少一个处理器通信连接的存储器;其中,A memory connected in communication with the at least one processor; wherein,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行时,使所述至少一个处理器执行上述实施例的支持数字凭证交易的方法。The memory stores instructions executable by the at least one processor, and when the instructions are executed by the at least one processor, causes the at least one processor to execute the method for supporting digital voucher transactions in the foregoing embodiment.
所述电子设备可以如图27所示,图27中的电子设备2700的结构可以包括:The electronic device may be as shown in FIG. 27, and the structure of the electronic device 2700 in FIG. 27 may include:
至少一个处理器(processor)2701,图27中以一个处理器2701为例;和存储器(memory)2702,还可以包括通信接口(Communication Interface)2703和总线2704。其中,处理器2701、通信接口2703、存储器2702可以通过总线2704完成相互间的通信。通信接口2703可以用于信息传输。处理器2701可以调用存储器2702中的逻辑指令,以执行上述实施例的支持数字凭证交易的方法。At least one processor 2701, and a processor 2701 is taken as an example in FIG. 27; and the memory 2702 may further include a communication interface 2703 and a bus 2704. Among them, the processor 2701, the communication interface 2703, and the memory 2702 can complete communication with each other through the bus 2704. The communication interface 2703 can be used for information transmission. The processor 2701 may call a logic instruction in the memory 2702 to execute the method for supporting digital voucher transactions in the foregoing embodiment.
此外,上述的存储器2702中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。In addition, the logic instructions in the memory 2702 may be implemented in the form of software functional units and sold or used as independent products, and may be stored in a computer-readable storage medium.
存储器2702作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序,如本公开实施例中的方法对应的程序指令/模块/单元。处理器2701通过运行存储在存储器2702中的软件程序、指令以及模块、单元,从而执行功能应用以及数据处理,即实现上述方法实施例中的支持数字凭证交易的方法。The memory 2702 is a computer-readable storage medium and can be used to store software programs and computer-executable programs, such as program instructions / modules / units corresponding to the methods in the embodiments of the present disclosure. The processor 2701 executes functional applications and data processing by running software programs, instructions, modules, and units stored in the memory 2702, that is, implementing the method for supporting digital voucher transactions in the foregoing method embodiments.
存储器2702可包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序;存储数据区可存储根据终端设备的使用所创建的数据等。此外,存储器2702可以包括高速随机存取存储器, 还可以包括非易失性存储器。The memory 2702 may include a storage program area and a storage data area, where the storage program area may store an operating system and application programs required for at least one function; the storage data area may store data created according to the use of the terminal device, and the like. In addition, the memory 2702 may include a high-speed random access memory, and may further include a non-volatile memory.
基于上述描述可以理解地,所述电子设备中,所述指令也可以使所述至少一个处理器执行上述实施例的实现数字凭证交易记录整合的方法。Based on the foregoing description, it can be understood that, in the electronic device, the instruction may also cause the at least one processor to execute the method for implementing integration of digital voucher transaction records in the foregoing embodiment.
本公开实施例的技术方案可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括一个或多个指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开实施例所述方法的全部或部分步骤。而前述的存储介质可以是非暂态存储介质,包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等多种可以存储程序代码的介质,也可以是暂态存储介质。The technical solution of the embodiment of the present disclosure may be embodied in the form of a software product. The computer software product is stored in a storage medium and includes one or more instructions for making a computer device (which may be a personal computer, a server, or a network) Equipment, etc.) perform all or part of the steps of the method described in the embodiments of the present disclosure. The foregoing storage medium may be a non-transitory storage medium, including: a U disk, a mobile hard disk, a read-only memory (ROM, Read-Only Memory), a random access memory (RAM, Random Access Memory), a magnetic disk or an optical disk, etc. A medium that can store program code, or a transient storage medium.
当用于本申请中时,虽然术语“第一”、“第二”等可能会在本申请中使用以描述各元件,但这些元件不应受到这些术语的限制。这些术语仅用于将一个元件与另一个元件区别开。比如,在不改变描述的含义的情况下,第一元件可以叫做第二元件,并且同样第,第二元件可以叫做第一元件,只要所有出现的“第一元件”一致重命名并且所有出现的“第二元件”一致重命名即可。第一元件和第二元件都是元件,但可以不是相同的元件。When used in this application, although the terms "first", "second", etc. may be used in this application to describe various elements, these elements should not be limited by these terms. These terms are only used to distinguish one element from another. For example, without changing the meaning of the description, the first element may be called the second element, and likewise, the second element may be called the first element, as long as all occurrences of the "first element" are consistently renamed and all occurrences The "second component" can be renamed consistently. The first element and the second element are both elements, but may not be the same element.
本申请中使用的用词仅用于描述实施例并且不用于限制权利要求。如在实施例以及权利要求的描述中使用的,除非上下文清楚地表明,否则单数形式的“一个”(a)、“一个”(an)和“所述”(the)旨在同样包括复数形式。类似地,如在本申请中所使用的术语“和/或”是指包含一个或一个以上相关联的列出的任何以及所有可能的组合。另外,当用于本申请中时,术语“包括”(comprise)及其变型“包括”(comprises)和/或包括(comprising)等指陈述的特征、整体、步骤、操作、元素,和/或组件的存在,但不排除一个或一个以上其它特征、整体、步骤、操作、元素、组件和/或这些的分组的存在或添加。The words used in this application are used to describe embodiments only and not to limit the claims. As used in the description of the embodiments and claims, the singular forms "a" (a), "an" and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise . Similarly, the term "and / or" as used in this application means including any and all possible combinations of one or more associated listings. In addition, the terms "comprise" and variations thereof "comprises" and / or "comprising" when used in this application refer to stated features, wholes, steps, operations, elements, and / or The presence of a component does not exclude the presence or addition of one or more other features, wholes, steps, operations, elements, components, and / or groups of these.
所描述的实施例中的各方面、实施方式、实现或特征能够单独使用或以任意组合的方式使用。所描述的实施例中的各方面可由软件、硬件或软硬件的结合实现。所描述的实施例也可以由存储有计算机可读代码的计算机可读介质体现,该计算机可读代码包括可由至少一个计算装置执行的指令。所述计算机可读介质可与任何能够存储数据的数据存储装置相关联,该数据可由 计算机***读取。用于举例的计算机可读介质可以包括只读存储器、随机存取存储器、CD-ROM、HDD、DVD、磁带以及光数据存储装置等。所述计算机可读介质还可以分布于通过网络联接的计算机***中,这样计算机可读代码就可以分布式存储并执行。The aspects, implementations, implementations or features in the described embodiments can be used individually or in any combination. Various aspects in the described embodiments may be implemented by software, hardware, or a combination of software and hardware. The described embodiments may also be embodied by a computer-readable medium storing computer-readable code, the computer-readable code including instructions executable by at least one computing device. The computer-readable medium can be associated with any data storage device capable of storing data, which can be read by a computer system. Computer-readable media for example may include read-only memory, random-access memory, CD-ROM, HDD, DVD, magnetic tape, and optical data storage devices. The computer-readable medium may also be distributed among computer systems connected through a network, so that the computer-readable code can be stored and executed in a distributed manner.
上述技术描述可参照附图,这些附图形成了本申请的一部分,并且通过描述在附图中示出了依照所描述的实施例的实施方式。虽然这些实施例描述的足够详细以使本领域技术人员能够实现这些实施例,但这些实施例是非限制性的;这样就可以使用其它的实施例,并且在不脱离所描述的实施例的范围的情况下还可以做出变化。比如,流程图中所描述的操作顺序是非限制性的,因此在流程图中阐释并且根据流程图描述的两个或两个以上操作的顺序可以根据若干实施例进行改变。作为另一个例子,在若干实施例中,在流程图中阐释并且根据流程图描述的一个或一个以上操作是可选的,或是可删除的。另外,某些步骤或功能可以添加到所公开的实施例中,或两个以上的步骤顺序被置换。所有这些变化被认为包含在所公开的实施例以及权利要求中。The above technical description can be referred to the accompanying drawings, which form a part of the present application, and show in the drawings an implementation according to the described embodiments. Although the embodiments are described in sufficient detail to enable those skilled in the art to implement the embodiments, the embodiments are non-limiting; thus, other embodiments can be used without departing from the scope of the described embodiments. Situations can also make changes. For example, the sequence of operations described in the flowchart is non-limiting, so the sequence of two or more operations explained in the flowchart and described according to the flowchart can be changed according to several embodiments. As another example, in several embodiments, one or more operations explained in the flowchart and described in accordance with the flowchart are optional or deleteable. In addition, certain steps or functions may be added to the disclosed embodiments, or two or more steps may be sequentially replaced. All of these variations are considered to be included in the disclosed embodiments and the claims.
另外,上述技术描述中使用术语以提供所描述的实施例的透彻理解。然而,并不需要过于详细的细节以实现所描述的实施例。因此,实施例的上述描述是为了阐释和描述而呈现的。上述描述中所呈现的实施例以及根据这些实施例所公开的例子是单独提供的,以添加上下文并有助于理解所描述的实施例。上述说明书不用于做到无遗漏或将所描述的实施例限制到本公开的精确形式。根据上述教导,若干修改、选择适用以及变化是可行的。在某些情况下,没有详细描述为人所熟知的处理步骤以避免不必要地影响所描述的实施例。In addition, terminology is used in the foregoing technical description to provide a thorough understanding of the described embodiments. However, too detailed details are not required to implement the described embodiments. Therefore, the foregoing description of the embodiments has been presented for the purposes of illustration and description. The embodiments presented in the above description and the examples disclosed based on these embodiments are provided separately to add context and help to understand the described embodiments. The above description is not intended to be exhaustive or to limit the described embodiments to the precise form of the disclosure. Based on the above teachings, several modifications, alternatives, and variations are possible. In some cases, well-known process steps have not been described in detail to avoid unnecessarily affecting the described embodiments.
Claims (50)
- 一种支持数字凭证交易的方法,其特征在于,包括:A method for supporting digital voucher transactions, which is characterized by:对用户的可用交易记录进行整合,根据所述整合的结果得到所述用户的一个已整合交易记录;Integrate available transaction records of a user, and obtain an integrated transaction record of the user according to a result of the integration;其中,所述可用交易记录中将进行整合的交易记录作为待整合交易记录。Among the available transaction records, the transaction records to be integrated are regarded as the transaction records to be integrated.
- 根据权利要求1所述的方法,其特征在于,进行所述整合包括:合并所述待整合交易记录中的资金,得到已整合资金。The method according to claim 1, wherein performing the integration comprises: merging funds in the transaction records to be integrated to obtain integrated funds.
- 根据权利要求2所述的方法,其特征在于,还包括:确定所述待整合交易记录。The method according to claim 2, further comprising: determining the transaction records to be integrated.
- 根据权利要求3所述的方法,其特征在于,所述确定待整合交易记录,包括:The method according to claim 3, wherein said determining a transaction record to be integrated comprises:在所述可用交易记录中,将不超过交易可接受的理论最大交易记录数量的限度交易记录作为用于得到所述用户的一个已整合交易记录的待整合交易记录;In the available transaction records, a limit transaction record that does not exceed the theoretical maximum number of transaction records acceptable for the transaction is used as a to-be-integrated transaction record for obtaining an integrated transaction record of the user;其中,所述交易可接受的理论最大交易记录数量作为交易记录理论限度。Wherein, the theoretical maximum number of transaction records acceptable for the transaction is taken as the theoretical limit of the transaction records.
- 根据权利要求3所述的方法,其特征在于,所述确定待整合交易记录,包括:The method according to claim 3, wherein said determining a transaction record to be integrated comprises:在所述可用交易记录中,合并不超过交易可接受的理论最大交易记录数量的限度交易记录中的资金得到限度资金,得到所述限度资金与待交易资金的差值;In the available transaction records, combining the funds in the transaction records that do not exceed the theoretical maximum number of transaction records acceptable for the transaction to obtain the limit funds, and obtaining the difference between the limit funds and the funds to be traded;在所述可用交易记录中除所述限度交易记录以外的非限度交易记录中,将合并后的总资金满足所述差值的非限度交易记录作为用于得到所述用户的一个已整合交易记录的待整合交易记录;In the non-limit transaction records other than the limit transaction records in the available transaction records, the combined non-limit transaction records in which the total funds satisfy the difference are taken as an integrated transaction record for obtaining the user Record of pending transactions;其中,所述交易可接受的理论最大交易记录数量作为交易记录理论限度。Wherein, the theoretical maximum number of transaction records acceptable for the transaction is taken as the theoretical limit of the transaction records.
- 根据权利要求3所述的方法,其特征在于,所述确定待整合交易记录,包括:The method according to claim 3, wherein said determining a transaction record to be integrated comprises:在所述可用交易记录中,合并不超过交易可接受的理论最大交易记录数量的限度交易记录得到一个临时交易记录;其中,所述交易可接受的理论最大交易记录数量作为交易记录理论限度;In the available transaction records, a temporary transaction record is obtained by merging transaction records that do not exceed the theoretical maximum number of transaction record acceptable transactions; wherein, the theoretical maximum number of transaction transaction acceptable transactions is used as the theoretical limit of transaction records;基于所述临时交易记录以及在所述可用交易记录中除所述限度交易记录 以外的非限度交易记录,选择满足待交易资金并且不超过所述交易记录理论限度的交易记录作为用于得到所述用户的一个已整合交易记录的待整合交易记录。Based on the temporary transaction record and non-limit transaction records other than the limit transaction record in the available transaction records, selecting a transaction record that meets the funds to be traded and does not exceed the theoretical limit of the transaction record is used to obtain the A pending transaction record for the user's integrated transaction record.
- 根据权利要求2至6任一项所述的方法,其特征在于,得到所述已整合交易记录,包括:根据所述已整合资金,构建包括所述已整合交易记录的交易。The method according to any one of claims 2 to 6, wherein obtaining the integrated transaction record comprises: constructing a transaction including the integrated transaction record according to the integrated funds.
- 根据权利要求7所述的方法,其特征在于,构建所述交易,包括:将所述待整合交易记录作为交易输入,将所述已整合交易记录作为交易输出并在所述已整合交易记录中携带所述已整合资金,生成包含所述交易输入、交易输出的数据格式作为所述交易。The method according to claim 7, characterized in that constructing the transaction comprises: using the to-be-integrated transaction record as a transaction input, and using the integrated transaction record as a transaction output and in the integrated transaction record Carrying the integrated funds and generating a data format including the transaction input and transaction output as the transaction.
- 根据权利要求8所述的方法,其特征在于,所述数据格式包括字符串。The method according to claim 8, wherein the data format comprises a character string.
- 根据权利要求8所述的方法,其特征在于,还包括:生成所述已整合资金所指向的地址,将该地址携带于所述交易输出中。The method according to claim 8, further comprising: generating an address pointed to by the integrated funds, and carrying the address in the transaction output.
- 根据权利要求7所述的方法,其特征在于,还包括:对所述交易进行签名。The method according to claim 7, further comprising: signing the transaction.
- 根据权利要求11所述的方法,其特征在于,还包括:发送签名后的所述交易。The method according to claim 11, further comprising: sending the signed transaction.
- 根据权利要求12所述的方法,其特征在于,还包括:在发送签名后的所述交易之前对所述交易进行交易校验。The method according to claim 12, further comprising: performing transaction verification on the transaction before sending the signed transaction.
- 根据权利要求7所述的方法,其特征在于,还包括:在构建所述交易之前生成所述交易对应的交易费,根据所述交易费更新所述已整合资金。The method according to claim 7, further comprising: generating a transaction fee corresponding to the transaction before constructing the transaction, and updating the integrated funds according to the transaction fee.
- 根据权利要求1所述的方法,其特征在于,进行所述整合之前,还包括:发生交易过大异常。The method according to claim 1, further comprising: before performing the integration, an excessive transaction abnormality occurs.
- 根据权利要求1所述的方法,其特征在于,还包括:根据用于避免资金不足的预留值,确定所述整合的结果的有效性。The method according to claim 1, further comprising: determining the validity of the result of the integration according to a reserved value for avoiding insufficient funds.
- 根据权利要求16所述的方法,其特征在于,确定所述整合的结果的有效性,包括:为所述整合的结果添加所述预留值,得到参考资金;在所述参考资金超过资金限额时确定所述整合的结果无效。The method according to claim 16, wherein determining the validity of the result of the integration comprises: adding the reserved value to the result of the integration to obtain a reference fund; and the reference fund exceeds a funding limit It is sometimes determined that the result of the integration is invalid.
- 根据权利要求17所述的方法,其特征在于,还包括:确定所述整合的结果无效时,返回进行所述整合。The method according to claim 17, further comprising: when it is determined that the result of the integration is invalid, returning to perform the integration.
- 根据权利要求17所述的方法,其特征在于,所述资金限额不超过所述用户的总资金。The method according to claim 17, wherein the fund limit does not exceed the total funds of the user.
- 根据权利要求1所述的方法,其特征在于,还包括:锁定所述待整合交易记录。The method according to claim 1, further comprising: locking the transaction record to be integrated.
- 根据权利要求20所述的方法,其特征在于,还包括:在得到所述已整合交易记录之后,解锁所述待整合交易记录。The method according to claim 20, further comprising: after obtaining the integrated transaction record, unlocking the transaction record to be integrated.
- 根据权利要求1所述的方法,其特征在于,所述待整合交易记录包括以下至少之一:The method according to claim 1, wherein the transaction records to be integrated include at least one of the following:未确认的交易记录;Unconfirmed transaction records;已确认的交易记录。Confirmed transaction records.
- 根据权利要求1所述的方法,其特征在于,所述交易记录为UTXO未花费的交易输出。The method of claim 1, wherein the transaction record is a transaction output that is not spent by UTXO.
- 一种支持数字凭证交易的装置,其特征在于,包括:A device supporting digital voucher transactions is characterized in that it includes:可用交易记录整合模块,用于对用户的可用交易记录进行整合;Available transaction record integration module for integrating available transaction records of users;已整合交易记录生成模块,用于根据所述整合的结果得到所述用户的一个已整合交易记录;An integrated transaction record generating module, configured to obtain an integrated transaction record of the user according to a result of the integration;其中,所述可用交易记录中将进行整合的交易记录作为待整合交易记录。Among the available transaction records, the transaction records to be integrated are regarded as the transaction records to be integrated.
- 根据权利要求1所述的装置,其特征在于,所述可用交易记录整合模块,用于:合并所述待整合交易记录中的资金,得到已整合资金。The device according to claim 1, wherein the available transaction record integration module is configured to: merge funds in the transaction records to be integrated to obtain integrated funds.
- 根据权利要求2所述的装置,其特征在于,所述可用交易记录整合模块,还用于:确定所述待整合交易记录。The device according to claim 2, wherein the available transaction record integration module is further configured to determine the transaction record to be integrated.
- 根据权利要求3所述的装置,其特征在于,所述可用交易记录整合模块在确定待整合交易记录时,用于:The apparatus according to claim 3, wherein the available transaction record integration module is configured to:在所述可用交易记录中,将不超过交易可接受的理论最大交易记录数量的限度交易记录作为用于得到所述用户的一个已整合交易记录的待整合交易记录;In the available transaction records, a limit transaction record that does not exceed the theoretical maximum number of transaction records acceptable for the transaction is used as a to-be-integrated transaction record for obtaining an integrated transaction record of the user;其中,所述交易可接受的理论最大交易记录数量作为交易记录理论限度。Wherein, the theoretical maximum number of transaction records acceptable for the transaction is taken as the theoretical limit of the transaction records.
- 根据权利要求3所述的装置,其特征在于,所述可用交易记录整合模块在确定待整合交易记录时,用于:The apparatus according to claim 3, wherein the available transaction record integration module is configured to:在所述可用交易记录中,合并不超过交易可接受的理论最大交易记录数 量的限度交易记录中的资金得到限度资金,得到所述限度资金与待交易资金的差值;In the available transaction records, combining the funds in the transaction records that do not exceed the theoretical maximum number of transaction records acceptable for the transaction to obtain the limit funds, and obtaining the difference between the limit funds and the funds to be traded;在所述可用交易记录中除所述限度交易记录以外的非限度交易记录中,将合并后的总资金满足所述差值的非限度交易记录作为用于得到所述用户的一个已整合交易记录的待整合交易记录;In the non-limit transaction records other than the limit transaction records in the available transaction records, the combined non-limit transaction records in which the total funds satisfy the difference are taken as an integrated transaction record for obtaining the user Record of pending transactions;其中,所述交易可接受的理论最大交易记录数量作为交易记录理论限度。Wherein, the theoretical maximum number of transaction records acceptable for the transaction is taken as the theoretical limit of the transaction records.
- 根据权利要求3所述的装置,其特征在于,所述可用交易记录整合模块在确定待整合交易记录时,用于:The apparatus according to claim 3, wherein the available transaction record integration module is configured to:在所述可用交易记录中,合并不超过交易可接受的理论最大交易记录数量的限度交易记录得到一个临时交易记录;其中,所述交易可接受的理论最大交易记录数量作为交易记录理论限度;In the available transaction records, a temporary transaction record is obtained by merging transaction records that do not exceed the theoretical maximum number of transaction record acceptable transactions; wherein, the theoretical maximum number of transaction transaction acceptable transactions is used as the theoretical limit of transaction records;基于所述临时交易记录以及在所述可用交易记录中除所述限度交易记录以外的非限度交易记录,选择满足待交易资金并且不超过所述交易记录理论限度的交易记录作为用于得到所述用户的一个已整合交易记录的待整合交易记录。Based on the temporary transaction record and non-limit transaction records other than the limit transaction record in the available transaction records, selecting a transaction record that meets the funds to be traded and does not exceed the theoretical limit of the transaction record is used to obtain the A pending transaction record for the user's integrated transaction record.
- 根据权利要求2至6任一项所述的装置,其特征在于,所述已整合交易记录生成模块,用于:根据所述已整合资金,构建包括所述已整合交易记录的交易。The device according to any one of claims 2 to 6, wherein the integrated transaction record generating module is configured to construct a transaction including the integrated transaction record according to the integrated funds.
- 根据权利要求7所述的装置,其特征在于,所述已整合交易记录生成模块在构建所述交易时,用于:将所述待整合交易记录作为交易输入,将所述已整合交易记录作为交易输出并在所述已整合交易记录中携带所述已整合资金,生成包含所述交易输入、交易输出的数据格式作为所述交易。The device according to claim 7, wherein the integrated transaction record generating module is configured to: use the transaction record to be integrated as a transaction input and the integrated transaction record as Transaction output and carrying the integrated funds in the integrated transaction record to generate a data format containing the transaction input and transaction output as the transaction.
- 根据权利要求8所述的装置,其特征在于,所述数据格式包括字符串。The apparatus according to claim 8, wherein the data format includes a character string.
- 根据权利要求8所述的装置,其特征在于,所述已整合交易记录生成模块,还用于:生成所述已整合资金所指向的地址,将该地址携带于所述交易输出中。The device according to claim 8, wherein the integrated transaction record generating module is further configured to: generate an address pointed to by the integrated funds, and carry the address in the transaction output.
- 根据权利要求7所述的装置,其特征在于,所述已整合交易记录生成模块,还用于:对所述交易进行签名。The device according to claim 7, wherein the integrated transaction record generating module is further configured to: sign the transaction.
- 根据权利要求11所述的装置,其特征在于,所述已整合交易记录生 成模块,还用于:发送签名后的所述交易。The device according to claim 11, wherein the integrated transaction record generating module is further configured to: send the signed transaction.
- 根据权利要求12所述的装置,其特征在于,所述已整合交易记录生成模块,还用于:在发送签名后的所述交易之前对所述交易进行交易校验。The device according to claim 12, wherein the integrated transaction record generating module is further configured to perform transaction verification on the transaction before sending the signed transaction.
- 根据权利要求7所述的装置,其特征在于,所述可用交易记录整合模块,还用于:在所述已整合交易记录生成模块构建所述交易之前生成所述交易对应的交易费,根据所述交易费更新所述已整合资金。The device according to claim 7, wherein the available transaction record integration module is further configured to generate a transaction fee corresponding to the transaction before the integrated transaction record generation module constructs the transaction, according to The transaction fees update the consolidated funds.
- 根据权利要求1所述的装置,其特征在于,所述可用交易记录整合模块,还用于:在进行所述整合之前,被发生的交易过大异常所触发。The device according to claim 1, wherein the available transaction record integration module is further configured to be triggered by an excessive transaction abnormality that occurs before the integration.
- 根据权利要求1所述的装置,其特征在于,所述可用交易记录整合模块,还用于:根据用于避免资金不足的预留值,确定所述整合的结果的有效性。The device according to claim 1, wherein the available transaction record integration module is further configured to determine the validity of the integration result according to a reserved value for avoiding insufficient funds.
- 根据权利要求16所述的装置,其特征在于,所述可用交易记录整合模块在确定所述整合的结果的有效性时,用于:为所述整合的结果添加所述预留值,得到参考资金;在所述参考资金超过资金限额时确定所述整合的结果无效。The device according to claim 16, wherein when determining the validity of the result of the integration, the available transaction record integration module is configured to: add the reserved value to the result of the integration to obtain a reference Funds; it is determined that the result of the integration is invalid when the reference fund exceeds the funding limit.
- 根据权利要求17所述的装置,其特征在于,所述可用交易记录整合模块,还用于:确定所述整合的结果无效时,返回进行所述整合。The device according to claim 17, wherein the available transaction record integration module is further configured to: when it is determined that the result of the integration is invalid, return to perform the integration.
- 根据权利要求17所述的装置,其特征在于,所述资金限额不超过所述用户的总资金。The device according to claim 17, wherein the fund limit does not exceed the total funds of the user.
- 根据权利要求1所述的装置,其特征在于,所述可用交易记录整合模块,还用于:锁定所述待整合交易记录。The device according to claim 1, wherein the available transaction record integration module is further configured to: lock the transaction record to be integrated.
- 根据权利要求20所述的装置,其特征在于,所述可用交易记录整合模块,还用于:在所述已整合交易记录生成模块得到所述已整合交易记录之后,解锁所述待整合交易记录。The device according to claim 20, wherein the available transaction record integration module is further configured to: after the integrated transaction record generation module obtains the integrated transaction record, unlock the transaction record to be integrated .
- 根据权利要求1所述的装置,其特征在于,所述待整合交易记录包括以下至少之一:The device according to claim 1, wherein the transaction records to be integrated include at least one of the following:未确认的交易记录;Unconfirmed transaction records;已确认的交易记录。Confirmed transaction records.
- 根据权利要求1所述的装置,其特征在于,所述交易记录为UTXO未花费的交易输出。The device according to claim 1, wherein the transaction record is a transaction output that is not spent by UTXO.
- 一种电子设备,其特征在于,包括:An electronic device, comprising:至少一个处理器;以及At least one processor; and与所述至少一个处理器通信连接的存储器;其中,A memory connected in communication with the at least one processor; wherein,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行时,使所述至少一个处理器执行权利要求1-23任一项所述的方法。The memory stores instructions executable by the at least one processor, and when the instructions are executed by the at least one processor, causes the at least one processor to execute the method according to any one of claims 1-23. .
- 一种数字凭证客户端,其特征在于,包含权利要求24-46任一项所述的装置。A digital voucher client, comprising the device according to any one of claims 24-46.
- 一种计算机可读存储介质,其特征在于,存储有计算机可执行指令,所述计算机可执行指令设置为执行权利要求1-23中任一项所述的方法。A computer-readable storage medium, characterized in that computer-executable instructions are stored, and the computer-executable instructions are configured to execute the method according to any one of claims 1-23.
- 一种计算机程序产品,其特征在于,所述计算机程序产品包括存储在计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行权利要求1-23中任一项所述的方法。A computer program product, characterized in that the computer program product includes a computer program stored on a computer-readable storage medium, the computer program includes program instructions, and when the program instructions are executed by a computer, the computer The method according to any one of claims 1-23 is performed.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810857626.2 | 2018-07-31 | ||
CN201810857626.2A CN109272403A (en) | 2018-07-31 | 2018-07-31 | A kind of method and apparatus for supporting digital cash to trade |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2020024474A1 true WO2020024474A1 (en) | 2020-02-06 |
Family
ID=65148261
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2018/113977 WO2020024474A1 (en) | 2018-07-31 | 2018-11-05 | Method and apparatus for supporting digital certificate transaction |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN109272403A (en) |
WO (1) | WO2020024474A1 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11315115B2 (en) | 2019-04-12 | 2022-04-26 | Advanced New Technologies Co., Ltd. | Blockchain-based data processing system, method, computing device and storage medium |
CN110175913B (en) * | 2019-04-12 | 2021-03-02 | 创新先进技术有限公司 | Data processing system, method, computing device and storage medium based on block chain |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106503053A (en) * | 2016-09-26 | 2017-03-15 | 江苏通付盾科技有限公司 | UTXO querying methods and device |
CN107147735A (en) * | 2017-05-12 | 2017-09-08 | 北京博晨技术有限公司 | A kind of distributed account book system based on hierarchy |
WO2018078519A1 (en) * | 2016-10-25 | 2018-05-03 | nChain Holdings Limited | Method and system for directing an exchange associated with an anonymously held token on a blockchain |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150170112A1 (en) * | 2013-10-04 | 2015-06-18 | Erly Dalvo DeCastro | Systems and methods for providing multi-currency platforms comprising means for exchanging and interconverting tangible and virtual currencies in various transactions, banking operations, and wealth management scenarios |
CN105681301B (en) * | 2016-01-16 | 2019-03-12 | 杭州复杂美科技有限公司 | Settlement method on block chain |
CN105959307A (en) * | 2016-06-30 | 2016-09-21 | 中国科学院计算技术研究所 | Existence certification and authentication service method and system based on block chain technology |
CN106815764B (en) * | 2017-01-18 | 2020-12-08 | 中钞***产业发展有限公司杭州区块链技术研究院 | Digital asset management method and system based on alliance chain |
CN107369083B (en) * | 2017-06-26 | 2020-11-13 | 中国人民银行数字货币研究所 | Method and system for settlement between banks by using digital currency |
CN107330692B (en) * | 2017-06-26 | 2022-05-24 | 中国人民银行数字货币研究所 | Digital currency circulation method and device |
CN107358522B (en) * | 2017-06-26 | 2020-09-29 | 中国人民银行数字货币研究所 | Method and system for exchanging digital currency by using deposit |
-
2018
- 2018-07-31 CN CN201810857626.2A patent/CN109272403A/en active Pending
- 2018-11-05 WO PCT/CN2018/113977 patent/WO2020024474A1/en active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106503053A (en) * | 2016-09-26 | 2017-03-15 | 江苏通付盾科技有限公司 | UTXO querying methods and device |
WO2018078519A1 (en) * | 2016-10-25 | 2018-05-03 | nChain Holdings Limited | Method and system for directing an exchange associated with an anonymously held token on a blockchain |
CN107147735A (en) * | 2017-05-12 | 2017-09-08 | 北京博晨技术有限公司 | A kind of distributed account book system based on hierarchy |
Non-Patent Citations (1)
Title |
---|
TOWNS, A.: "Field Report: Consolidation of 4 Million UTXOs at Xapo", 30 July 2018 (2018-07-30), pages 1 - 2, XP055682735, Retrieved from the Internet <URL:https://bitcoinops.org/en/xapo-utxo-consolidation> * |
Also Published As
Publication number | Publication date |
---|---|
CN109272403A (en) | 2019-01-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11042876B2 (en) | Transaction method and system based on centralized settlement and blockchain deposit certificates | |
US20210049608A1 (en) | Transaction method and system based on centralized clearing and blockchain record keeping | |
US10986177B2 (en) | Systems and methods of self-forking blockchain protocol | |
US20210049595A1 (en) | Transaction method and system based on centralized settlement and block chain storage | |
US11469891B2 (en) | Expendable cryptographic key access | |
US20210083856A1 (en) | Improved hardware security module management | |
WO2018158936A1 (en) | Block chain management device, block chain management method and program | |
US10579973B2 (en) | System for efficient processing of transaction requests related to an account in a database | |
WO2019210714A1 (en) | Blockchain consensus method, accounting node and node | |
US11276060B2 (en) | Transferring operations based on blockchain smart contract | |
EP3852040B1 (en) | Blockchain transfer processing method and apparatus, device, and medium | |
JP7494205B2 (en) | Preventing the accidental transmission of copies of data records to the distributed ledger system | |
CN111161071A (en) | Data processing method, device, equipment and storage medium based on block chain | |
US20210165810A1 (en) | Transaction processing method, apparatus, and device and computer storage medium | |
US20220198559A1 (en) | Methods and systems for tracking unspent transaction output (utxo) tokens in a distributed ledger technology-based network | |
WO2020024474A1 (en) | Method and apparatus for supporting digital certificate transaction | |
WO2020024473A1 (en) | Method and apparatus for implementing integration of digital certificate transaction records | |
JP2023536163A (en) | blockchain token | |
WO2016060550A1 (en) | Electronic processing system for electronic document and electronic file | |
CN114742630A (en) | Method for processing business documents and corresponding system, equipment and medium | |
CN112181599A (en) | Model training method, device and storage medium | |
AU2017371238A1 (en) | Method of inputting document information, device, server, and storage medium | |
CN114531941A (en) | Multi-standard blockchain protocol | |
WO2020024462A1 (en) | Method and device for implementing integration of digital certificate transaction records | |
WO2020024461A1 (en) | Method and apparatus for implementing integration of digital certificate transaction records |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 18928675 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 18928675 Country of ref document: EP Kind code of ref document: A1 |