WO2018137564A1 - 一种业务处理方法及装置 - Google Patents

一种业务处理方法及装置 Download PDF

Info

Publication number
WO2018137564A1
WO2018137564A1 PCT/CN2018/073395 CN2018073395W WO2018137564A1 WO 2018137564 A1 WO2018137564 A1 WO 2018137564A1 CN 2018073395 W CN2018073395 W CN 2018073395W WO 2018137564 A1 WO2018137564 A1 WO 2018137564A1
Authority
WO
WIPO (PCT)
Prior art keywords
service
template
processing
type
target
Prior art date
Application number
PCT/CN2018/073395
Other languages
English (en)
French (fr)
Inventor
邱鸿霖
Original Assignee
阿里巴巴集团控股有限公司
邱鸿霖
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority to MYPI2019003680A priority Critical patent/MY202364A/en
Priority to BR112019014589-3A priority patent/BR112019014589A2/pt
Priority to SG11201906003VA priority patent/SG11201906003VA/en
Priority to AU2018212186A priority patent/AU2018212186B2/en
Priority to CA3048574A priority patent/CA3048574C/en
Priority to KR1020197020783A priority patent/KR102201844B1/ko
Priority to EP18743988.0A priority patent/EP3547241A4/en
Priority to RU2019120078A priority patent/RU2725690C1/ru
Application filed by 阿里巴巴集团控股有限公司, 邱鸿霖 filed Critical 阿里巴巴集团控股有限公司
Priority to MX2019008502A priority patent/MX2019008502A/es
Priority to JP2019537380A priority patent/JP6912583B2/ja
Publication of WO2018137564A1 publication Critical patent/WO2018137564A1/zh
Priority to US16/450,976 priority patent/US11099887B2/en
Priority to PH12019501498A priority patent/PH12019501498A1/en
Priority to ZA2019/04401A priority patent/ZA201904401B/en
Priority to AU2019101602A priority patent/AU2019101602A4/en
Priority to US16/779,641 priority patent/US10782998B2/en
Priority to US16/884,861 priority patent/US10817330B2/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/466Transaction processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/02Payment architectures, schemes or protocols involving a neutral party, e.g. certification authority, notary or trusted third party [TTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3821Electronic credentials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/389Keeping log of transactions for guaranteeing non-repudiation of a transaction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, 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/405Establishing or using transaction specific rules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/12Accounting

Definitions

  • the present application relates to the field of computer technologies, and in particular, to a service processing method and apparatus.
  • Blockchain technology is also called distributed ledger technology. Because its stored data has the characteristics of being non-tamperable and decentralized, blockchain technology has received a lot of attention from people. With the continuous development of computer technology, blockchain technology will provide people with an increasingly secure data storage environment, which will facilitate people's data storage.
  • a smart contract is usually a piece of code stored in a blockchain (or a business processing node in a blockchain) that specifies the execution conditions of the smart contract and the business processing logic, ie, for business processing requests, The conditions for starting a smart contract and how to process the received business processing request after the smart contract is started. Therefore, when the user needs to process the specified service through the smart contract, the service parameters required for processing the specified service may be sent to the service processing node in the blockchain, so that the service processing node determines that the service parameter meets the requirements of the smart contract. When the execution condition is met, the business parameter is executed to complete the processing of the specified service.
  • the storage address of the smart contract in the blockchain can be carried in the service processing request, so that the service processing node in the blockchain performs the service processing request. Determining, from the service processing request, the service parameter and the storage address of the smart contract in the blockchain, and calling the smart contract stored in the storage address according to the storage address, and determining whether the service parameter satisfies the smart contract. The execution condition, if yes, processes the business parameter according to the predetermined business processing logic in the smart contract to complete the processing of the specified service.
  • smart contracts Since the data stored in the blockchain is not tamperable, smart contracts cannot be changed once they are stored in the blockchain. As the business continues to upgrade, smart contracts may no longer be able to support the processing of new services (upgraded business), but in order for smart contracts to support the processing of new services, smart contracts can only be re-engineered based on new services, and The re-engineered smart contract is written again into the blockchain.
  • the embodiment of the present invention provides a service processing method and device, which are used to solve the problem that a service processing method that is faced by a service upgrade in a blockchain cannot be flexibly adapted.
  • the embodiment of the present application provides a method for service processing, including:
  • the embodiment of the present application provides a service processing method, including:
  • An embodiment of the present application provides a service processing apparatus, including:
  • Receiving a module receiving a service request
  • Determining a module determining a service type of the target service included in the service request
  • a template loading module configured to load a service template that matches the service type according to the service type
  • the processing module processes the target service according to the service template, and writes the obtained service information into the blockchain.
  • the embodiment of the present application provides a service processing apparatus, including:
  • Receiving a module receiving a service request, and determining a service type of the target service included in the service request;
  • a template loading module configured to load a service template that matches the service type according to the service type
  • Processing a module processing the target service according to the service template, and writing the obtained service information into a target block in a blockchain; when writing the obtained service information into the target block Determining and storing a state change value of the target block, the state change value being used to verify service information recorded in the target block and business information recorded in other blocks in the blockchain Is it consistent?
  • the service template matching the service type may be loaded according to the service type of the target service included in the service request, and the target is processed by the service template.
  • the service processing node can load the service model capable of processing the target service included in the service request according to the service request sent by the user, which breaks the fixed extension of the blockchain in the prior art.
  • the business processing restrictions make the service processing in the blockchain more flexible, which brings convenience to the user based on the blockchain.
  • FIG. 1 is a schematic diagram of a service processing procedure provided by an embodiment of the present application
  • FIG. 2 is a schematic diagram of a user publishing a service template installation package on a service platform according to an embodiment of the present disclosure
  • FIG. 3 is a schematic diagram of a service processing procedure according to an embodiment of the present application.
  • FIG. 4 is a schematic diagram of a device for service processing according to an embodiment of the present application.
  • FIG. 5 is a schematic diagram of a device for service processing according to an embodiment of the present application.
  • FIG. 1 is a schematic diagram of a service processing procedure according to an embodiment of the present disclosure, which specifically includes the following steps:
  • the execution entity of the embodiment of the present application may be a service processing node, where the service processing node has a blockchain processing technology, that is, can process the blockchain service, then the S101 can be understood as being received by the service processing node.
  • Business request may be a service processing node, where the service processing node has a blockchain processing technology, that is, can process the blockchain service, then the S101 can be understood as being received by the service processing node.
  • the service request can be understood as a user sent to the service processing node by the terminal device (the terminal device herein can be understood as a mobile terminal or a PC terminal), or can be understood as a server that receives the service request sent by the user (can have a block)
  • the chain processing technology which can transmit data to the service processing node and transmit it to the service processing node, can also be understood as a server that does not have the blockchain technology, and sends the service processing request sent by the user to the service processing node, where No specific restrictions.
  • the user may input corresponding service data in a terminal such as a computer or a mobile phone to trigger a service request.
  • a terminal such as a computer or a mobile phone
  • the user may input the amount of the transfer in the terminal and The recipient of the transfer, wherein the user-entered transfer amount, the transfer recipient, and the transfer initiator (ie, the user) constitute the business data of the transfer service input by the user, and will carry the transfer amount, the transfer recipient, and A service request for the service data formed by the transfer initiator is sent to the service processing node.
  • the data when the user needs to store a certain data in the blockchain, the data may be input in the terminal, where the data is the service data of the data storage service input by the user, and the data is carried by the data to be stored.
  • the business data of the business request is sent to the business processing node.
  • the manner in which the user sends the service request to the service processing node is not limited.
  • the terminal can determine the service data input by the user in the terminal, and generate a corresponding service request according to the service data. And sending the service request to the service processing node, so that the service processing node receives the service request, and processes the target service included in the service request in a subsequent process.
  • the manner in which the user sends the service request to the service processing node is not limited.
  • the user in addition to inputting corresponding service data in the terminal, the user may input the service data into the specified application installed by the terminal, correspondingly.
  • the specified application may generate a corresponding service request, and then send the service request to the service processing node after monitoring the specified operation of the user (such as clicking a designated control).
  • S102 Determine a service type of the target service included in the service request.
  • the service processing node may further determine the service type of the target service included in the service request, and the purpose of the action is that, in the embodiment of the present application, the service processing node Each service template is saved in advance, and different service templates correspond to different service processing. Therefore, after receiving the service request sent by the user, the service processing node needs to determine which service template can be processed from the pre-saved service templates.
  • the service processing node usually saves each service template corresponding to each service type. Therefore, the service processing node can determine the target service in the process of determining which service template the target service of the service request can be processed by. Corresponding service type, and then determining a service template corresponding to the service type according to the correspondence between the pre-stored service type and the service template, and then, in the subsequent process, the target service included in the service request through the service template Process it.
  • the service processing node may determine the service identifier of the target service included in the service request, and determine the service type of the target service according to the service identifier, where the service The identifier may be a string of numbers, and a part of the string is a service code capable of representing the target service. For example, in the service identifier #244340923, #2 is a service code for indicating the target service.
  • the service identifier may also be in other forms. For example, when the service request includes the word “transfer type”, the “transfer type” is the service identifier of the target service included in the service request.
  • each service template pre-stored in the service processing node described in the embodiment of the present application may be completed by using an API and stored in a service processing node.
  • the service template corresponding to each service type is pre-stored in the service processing node, so that after receiving the service request sent by the user, the service processing node may be included according to the determined service request.
  • the service type corresponding to the target service is loaded with the service template matching the service type from the pre-saved service templates, and then the target service is processed through the service template in the subsequent process.
  • the service processing node may parse the transfer request and determine the service type corresponding to the transfer request. For the transfer service, the service processing node determines and loads the transfer template matching the transfer service (ie, the service type) from the pre-saved service templates, and then processes the transfer request through the transfer template in the subsequent process. .
  • the service processing node may generate a service template capable of processing the target service according to the service code input by the user, and process the target service through the generated service template.
  • the service processing node may prompt the user that the service request cannot be processed.
  • the target service included after viewing the prompt, the user can write a business code required for processing the target business in the business processing node for the target business, and the business processing node can generate the business code according to the service code input by the user.
  • the corresponding business template, and then the generated business template is processed to process the target business.
  • the service processing node may also be pre-saved.
  • Each service template reads the service request in turn.
  • the service processing node can read the service request through a service template (that is, the data format of the service request conforms to the service template)
  • the service processing node can pass in the subsequent process.
  • the service template processes the target service included in the service request.
  • the service templates stored in the service processing node in advance can be updated and adjusted. Therefore, when the service is continuously upgraded, the user can process the service template in the service processing node. After the upgrade is performed, the user does not need to re-define the service template.
  • the service template can be upgraded and adjusted based on the original service template. This service template supports the upgraded service, which greatly improves service maintenance efficiency.
  • the data stored in the blockchain cannot be tampered with, the user's use of the blockchain for data storage will effectively ensure the security of data storage, thereby providing a favorable verification basis for subsequent data verification by the user.
  • the characteristics that the data cannot be tampered with will also bring inconvenience to the business processing of the blockchain.
  • the most significant problem is that the smart contracts that currently support the expansion of the blockchain business are usually stored in the blockchain, so The smart contract cannot be updated as the business continues to upgrade. If the user wants the smart contract to support the business processing of the new business, the smart contract needs to be re-engineered and the re-engineered smart contract is written into the blockchain. It can be seen that the continuous upgrading of the business will inevitably lead to the user to re-engineer the smart contract, which brings great inconvenience to the user in the maintenance of the business.
  • each service template for processing various types of target services is pre-stored in the service processing node, and is not stored in the blockchain. Therefore, when the service is upgraded, the user needs to make a service template. To support the upgraded service, you only need to update the service template saved in the service processing node accordingly, without having to re-define the service template for the upgraded service. Compared with the prior art, the user can only pass the service template.
  • the re-engineering of smart contracts to enable re-engineered smart contracts to support the business processing of upgraded services will greatly reduce the cost of business maintenance. At the same time, it overcomes the problem that the service processing method faced by the service upgrade cannot be flexibly adapted, which greatly increases the flexibility of the blockchain processing service.
  • the system resources required for the execution of the smart contract are usually allocated by the virtual machine, but because the virtual machine is divided from the server, the virtual machine can only have part of the system resources of the server, then The system resources required by the smart contract are allocated by the virtual machine, which means that the smart contract can only get the required system resources from part of the system resources of the server owned by the virtual machine, so that the smart contract acquires less system resources. .
  • smart contracts are bound to require more system resources from the virtual machine to provide sufficient support for the business with increasing business volume, but the performance of the virtual machine itself (ie, The virtual machine itself has fewer system resources and relatively less system resources allocated to the smart contract. This makes the smart contract unable to provide good support for the business with increasing business volume, which greatly reduces the blockchain business. The processing efficiency brings inconvenience to the user.
  • the service template corresponding to each service is pre-stored in the service processing node, and the service processing node has a system matching the server in the process of starting the service template processing service request. Resources, then the service processing node can allocate more system resources to the processing of the service request, so as the traffic volume continues to increase, the service processing node can still support the processing of each service well, thereby The processing efficiency of the blockchain business is guaranteed.
  • S104 Process the target service according to the service template, and write the obtained service information into the blockchain.
  • the service template can process the target service included in the service request, where the service template includes a pre-defined service processing rule, and the service The processing node may process the target service according to the service processing rule.
  • each type of service usually includes a plurality of sub-services, for example, in a financial service, including sub-services such as a transfer service, a wealth management service, and the like, in this embodiment, in each service template.
  • the business processing rules can be responsible for the business processing of a large class of services, and each of the business processing rules respectively contains a plurality of processing rules, and different processing rules correspond to different sub-services in such services.
  • the business processing node may store a financial service template responsible for the processing of the financial business, and the financial service template includes processing rules for processing sub-services such as transfer and wealth management.
  • the service processing rule included in the service template may be determined. Then, the service processing node may further determine, from each processing rule included in the service processing rule, a processing rule that matches the target service, and then process the target service by using the processing rule.
  • the service processing node may determine that the service type of the service request is a financial type, and then the service processing node may be from each pre-saved service template. Identify the business templates that can handle the financial business and load them. After loading the service template, the service processing node may determine a service processing rule included in the service template, and the service processing node may determine, from each processing rule included in the service processing rule, a transfer processing rule that matches the transfer service ( That is, the above processing rule), and further, the transfer service is processed by the processing rule.
  • a service request input by a user to a service processing node may be in a situation such as a data format discrepancy, a service request is invalid, and the service processing node may affect the operation of the service processing node when processing the problematic service request. Serious can lead to flaws in the business processing node.
  • the service processing node may be configured to process the service request received by the service processing node according to the determined service template. ), verify the received business request.
  • the service processing rule included in the service template may be determined from the service template.
  • the service processing rule includes a processing rule for performing a service processing, and a verification rule for verifying the service request.
  • the service processing node can perform verification on the service request by using the verification rule, when the service The processing node determines that the service request meets the preset condition specified by the verification rule (that is, the service request is a legal and normal request), and the target service is processed; and when the service processing node determines that the service request does not meet the
  • the preset condition specified by the verification rule that is, the service request may have problems such as data format mismatch, business request is illegal, etc.
  • the service processing node may not perform processing on the target service, and return the service to the user. Requesting a failure to process the request, so that the user can re-initiate the service to the service processing node according to the prompt. .
  • the service processing node can obtain corresponding service information, where the service information may be a service result obtained after the service processing node processes the service, or may be used to represent the entire service processing process.
  • the service processing node can subsequently write the service information into the blockchain, so that the user can subsequently find the service information in the blockchain, and then perform data verification and the like on the service information.
  • the service template pre-stored in the service processing node may be directed to multiple services, and in actual applications, the services related to the blockchain are mainly classified into the following four types:
  • Traceability service which records the transfer path of a specified data in detail, so that the user can determine the original holder of the specified data through the transfer path of the specified data recorded in the blockchain, that is, the designated data. Traceability.
  • the smart contract-based business that is, the specific business implemented in the prior art by using the smart contract, for example, through the execution of the smart contract in the blockchain, periodically returning the benefits of the wealth management product to the user.
  • the transaction business that is, through the blockchain to achieve mutual transactions between users and users, and the transaction flow information in the transaction process is recorded in the blockchain.
  • the service processing node pre-stores a service template capable of processing the four services. Therefore, when the service processing node receives the service request of the four services, The target services included in the four service requests are processed by loading the four service templates that are pre-stored.
  • the four service templates are respectively a traceability template, a fair template, a contract template, and a transaction template.
  • the traceability service type corresponding to the traceability service identifier is determined according to the traceability service identifier included in the traceability data request, and then the service processing node can be based on the traceability service.
  • the type, the traceability model matching the traceable service type is determined and loaded from each pre-stored service template, and the traceability service included in the traceability data request is processed by starting the traceability template.
  • the service processing node may determine the traceability service processing rule corresponding to the traceability service type from the traceability model, and then perform the traceability service processing rule to analyze and obtain the traceability data request.
  • the traceability data included, the address of the receiver of the traceability data, and the sender address of the traceability data, the subsequent service processing node may further send the traceability data to the receiver of the traceability data, and generate corresponding traceability data transfer information.
  • the transfer information is further written into the blockchain, so that the user can subsequently determine the transfer path of the traceable data through the transfer information saved in the blockchain.
  • the service processing node when the service processing node receives the fair data request sent by the user, it can determine the fair service type corresponding to the fair data request, and load from the pre-saved service templates with the fair service type. A fair template for matching.
  • the service processing node may determine, from the fair template, a fair service processing rule corresponding to the fair service type, and analyze, by using the fair service processing rule, the user needs to write into the blockchain. Fair data, which in turn writes the fair data into the blockchain.
  • the service processing node may also perform the service through the smart contract stored in the blockchain, that is, the service template may pre-store the contract template corresponding to the service that needs to execute the smart contract (ie, the service template). And, after receiving the contract data request sent by the user, the service processing node may determine the contract service type corresponding to the contract data request, and determine, by using the contract service type, the pre-saved service templates. The contract template corresponding to the contract business type. The blockchain may further determine a contract business processing rule that matches the contract business type from the contract template, and parse out the contract address and the service parameter included in the contract data request by executing the contract business processing rule. Where the contract address is the storage address of the smart contract in the blockchain.
  • the service processing node may subsequently find the smart contract located in the contract address from the blockchain according to the contract address, and then transmit the determined service parameter to the smart contract, so that the smart contract can automatically execute the service parameter. And returning the corresponding service result (that is, the service information) to the service processing node, and after receiving the service result returned by the smart contract, the service processing node may display the service result to the user, and simultaneously write the service result to the service result.
  • the user performs subsequent operations such as data verification on the business result.
  • the service processing node may determine, from each pre-saved service template, a transaction template capable of processing the transaction request, and by loading the transaction template. Processing the transaction service included in the transaction request, wherein the service processing node may first determine, according to the determined transaction service type, a transaction service processing rule matching the transaction service type from the transaction template, and pass the transaction service Processing the rule, parsing the transaction initiator, the transaction receiver, the transaction amount and the like involved in the transaction request, and further implementing the transaction business processing rule to deduct the corresponding transaction amount from the transaction initiator's account, and The transaction amount is transferred to the transaction processing in the account of the transaction recipient.
  • the business processing node will obtain the transaction flow information (ie, business information) of the transaction, in order to enable the user to view the transaction flow information in the blockchain in the subsequent process, and the transaction flow information can be
  • the transaction process can be provided to the user in the subsequent process, and the business processing node can write the transaction flow information into the blockchain.
  • the service processing node can also support the service processing of other services, and the user only needs to load the service template of the required service into the service processing node, so that the service processing node can implement the service. deal with.
  • the service templates for processing various types of target services are pre-stored in the service processing node, but are not stored in the blockchain. Therefore, when the service is upgraded, the user wants to make the service template. To support the upgraded service, you only need to update the service template saved in the service processing node accordingly, without having to re-define the service template for the upgraded service. Compared with the prior art, the user can only pass the service template. The re-engineering of smart contracts to enable re-engineered smart contracts to support the business processing of upgraded services will greatly reduce the cost of business maintenance.
  • the user can pre-write each service template and input each service template into the service processing node.
  • the service processing node can save each service template to the service processing. The nodes, and then the subsequent processes, process the received service requests by loading the service templates.
  • the user can package and publish the service template on a service platform, so that when other users need an installation package of a service template, the service template installation package can be downloaded from the service platform.
  • the service template installation package is saved in the local service processing node, so that the local service processing node has the capability of processing the service corresponding to the service template after loading the service template installation package, as shown in FIG. 2 .
  • FIG. 2 is a schematic diagram of a user providing a service template installation package on a service platform according to an embodiment of the present application.
  • user A can write each service template in a compiled language, and package each service template into a service platform, and after receiving the service template installation package uploaded by user A, the service platform can perform each service.
  • the template installation package is released for other users to download and use.
  • the installation package of each service template can also be uploaded by other users, and each user can share the service template installation package written by the user on the service platform for use by each user.
  • smart contracts are usually written by each user and written into the blockchain. If a malicious smart contract written by the user is written into the blockchain, the smart contract is written. The contract may inconvenience and loss to other users based on the business processing of the smart contract.
  • the service platform may review the service template installation package uploaded by the user, and when the malicious template code included in the service template installation package uploaded by the user of the audit office is incorrect, The business model installation package is released, thereby providing a good download environment for the business template installation package for each user.
  • FIG. 3 is a schematic diagram of a service processing method according to an embodiment of the present application.
  • the service processing node receives the service request, and determines a service type of the target service included in the service request; and loads a service template that matches the service type according to the service type; and further processes the service according to the service template.
  • Target service, and the obtained service information is written into the target block in the blockchain; when the obtained service information is written into the target block, the state change of the target block is determined and stored a value, the state change value is used to check whether the service information recorded in the target block is consistent with the service information recorded in other blocks in the blockchain.
  • determining and storing the state change value of the target block includes:
  • the state change value is stored in the blockchain.
  • the check value of the block may be determined by calculation, so that the check values of different blocks are sequentially stored in a tree structure such as a Merkle tree, so that The hash value of the root node of the Merkle tree determines whether the data stored in different blocks in the blockchain is consistent.
  • the blockchains described in the embodiments of the present application may be blockchains such as a Bitcoin blockchain, an Ethereum blockchain, and a Litecoin blockchain.
  • the service processing node processes the target service required by the user through the determined service template (that is, the target service included in the service request sent by the user)
  • the loaded service model may be uninstalled, thereby The memory space of the service processing node is saved.
  • the service processing node can also sleep the service template, and then restart the service template when receiving the service request corresponding to the service template. To process the business request.
  • each service template for processing various types of target services is pre-stored in the service processing node, and is not stored in the blockchain. Therefore, when the service is upgraded, the user needs to make a service template. To support the upgraded service, you only need to update the service template saved in the service processing node accordingly, without having to re-define the service template for the upgraded service. Compared with the prior art, the user can only pass the service template.
  • the re-engineering of smart contracts to enable re-engineered smart contracts to support the business processing of upgraded services will greatly reduce the cost of business maintenance. At the same time, it overcomes the problem that the service processing method faced by the service upgrade cannot be flexibly adapted, which greatly increases the flexibility of the blockchain processing service.
  • the service processing node performs the service processing through the pre-saved service templates
  • the system resources required to process the target service through the service template are all allocated by the service processing node itself, and the service processing node can all of itself.
  • the system resources are used for the processing of the target service, which effectively avoids the problem that the smart contract in the prior art invokes the system resources through the virtual machine mode during the execution process, greatly improves the efficiency of the blockchain processing service, and then gives the user Business processing brings convenience.
  • the user in the process of performing service processing, may input a corresponding service request on the service processing node, and after receiving the service request, the service processing node determines the target service included in the service request. a service type, and loading a service template matching the service type, and then processing the target service by using the service template, where the service processing node mentioned herein may be a terminal capable of processing a blockchain service, or a
  • the server that handles the blockchain service may of course be a client, an application, etc. for processing the blockchain service.
  • the embodiment of the present application further provides a device for service processing, as shown in FIG. 4 .
  • FIG. 4 is a schematic diagram of a device for service processing according to an embodiment of the present disclosure, specifically including:
  • Receiving module 401 receiving a service request
  • the determining module 402 is configured to determine a service type of the target service included in the service request;
  • the template loading module 403 loads a service template that matches the service type according to the service type.
  • the processing module 404 processes the target service according to the service template, and writes the obtained service information into the blockchain.
  • the determining module 402 is configured to determine a service identifier of the target service, and determine, according to the service identifier, a service type of the to-be-processed service.
  • the template loading module 403 determines, from the configured service template, a service template that matches the service type, and loads the service template.
  • the template loading module 403 if there is no service template matching the service type in the configured service template, generates a service template that matches the service type; and loads the generated service template.
  • the processing module 404 processes the target service according to the service processing rule included in the service template.
  • the processing module 404 is configured to determine a service processing rule corresponding to the target service in the service template, and process the target service according to the service processing rule.
  • the processing module 404 is configured to determine a verification rule included in the service processing rule, and verify, according to the verification rule, whether the service request meets a preset condition; if yes, according to the processing in the service processing rule a rule, processing the target service; if not, prompting that the target service processing fails.
  • the processing module 404 based on the traceability service processing rule, analyzes and obtains traceability data included in the traceability data request, sender data of the traceability data, and receiver data of the traceability data; Transferring from the sender to the recipient, generating corresponding transfer information, and writing the transfer information into the blockchain.
  • the processing module 404 analyzes and obtains the fair data included in the fair data request based on the fair service processing rule; and writes the fair data into the blockchain.
  • the processing module 404 analyzes, according to the contract service processing rule, a contract address and a service parameter included in the contract data request, and transmits the service parameter to the smart corresponding to the contract address according to the contract address. a contract to cause the smart contract to execute the business parameter and return a corresponding business result; the received business result is written into the blockchain.
  • the processing module 404 based on the transaction service processing rule, analyzes a transaction initiator account, a transaction quota, and a transaction receiver account included in the transaction request; and deducts the transaction quota from the transaction initiator account, And translating the transaction amount into the transaction recipient account to obtain transaction flow information; writing the transaction flow information into the blockchain.
  • the service processing node may load a service template that matches the service type according to the service type of the target service included in the service request, and pass the service template. Process the target business.
  • the service templates of the various types of target services are pre-stored in the service processing node, but are not stored in the blockchain. Therefore, when the service is upgraded, the user needs to support the upgraded service template. For a service, it is only necessary to update the service template stored in the service processing node accordingly, and it is no need to re-define the service template for the upgraded service. Compared with the prior art, the user can only re-define the smart contract.
  • the service processing node performs the service processing through the pre-saved service templates
  • the system resources required to process the target service through the service template are all allocated by the service processing node itself, and the service processing node can all of itself.
  • the system resources are used for the processing of the target service, which effectively avoids the problem that the smart contract in the prior art invokes the system resources through the virtual machine mode during the execution process, greatly improves the efficiency of the blockchain processing service, and then gives the user Business processing brings convenience.
  • the embodiment of the present application further provides a device for processing a service, as shown in FIG. 5.
  • FIG. 5 is a schematic diagram of a device for service processing according to an embodiment of the present disclosure, specifically including:
  • the receiving module 501 receives a service request, and determines a service type of the target service included in the service request.
  • the template loading module 502 loads a service template that matches the service type according to the service type.
  • the processing module 503 processes the target service according to the service template, and writes the obtained service information into a target block in the blockchain; and writes the obtained service information into the target block. Determining and storing a state change value of the target block, the state change value being used to verify the service information recorded in the target block and the service recorded in other blocks in the blockchain Whether the information is consistent.
  • the processing module 503 determines and stores a state change value of the target block, including:
  • the state change value is stored in the blockchain.
  • PLD Programmable Logic Device
  • FPGA Field Programmable Gate Array
  • HDL Hardware Description Language
  • the controller can be implemented in any suitable manner, for example, the controller can take the form of, for example, a microprocessor or processor and a computer readable medium storing computer readable program code (eg, software or firmware) executable by the (micro)processor.
  • computer readable program code eg, software or firmware
  • examples of controllers include, but are not limited to, the following microcontrollers: ARC 625D, Atmel AT91SAM, The Microchip PIC18F26K20 and the Silicone Labs C8051F320, the memory controller can also be implemented as part of the memory's control logic.
  • the controller can be logically programmed by means of logic gates, switches, ASICs, programmable logic controllers, and embedding.
  • Such a controller can therefore be considered a hardware component, and the means for implementing various functions included therein can also be considered as a structure within the hardware component.
  • a device for implementing various functions can be considered as a software module that can be both a method of implementation and a structure within a hardware component.
  • the system, device, module or unit illustrated in the above embodiments may be implemented by a computer chip or an entity, or by a product having a certain function.
  • a typical implementation device is a computer.
  • the computer can be, for example, a personal computer, a laptop computer, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or A combination of any of these devices.
  • embodiments of the present invention can be provided as a method, system, or computer program product.
  • the present invention can take the form of an entirely hardware embodiment, an entirely software embodiment, or a combination of software and hardware.
  • the invention can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) including computer usable program code.
  • the computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing device to operate in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture comprising the instruction device.
  • the apparatus implements the functions specified in one or more blocks of a flow or a flow and/or block diagram of the flowchart.
  • These computer program instructions can also be loaded onto a computer or other programmable data processing device such that a series of operational steps are performed on a computer or other programmable device to produce computer-implemented processing for execution on a computer or other programmable device.
  • the instructions provide steps for implementing the functions specified in one or more of the flow or in a block or blocks of a flow diagram.
  • a computing device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory.
  • processors CPUs
  • input/output interfaces network interfaces
  • memory volatile and non-volatile memory
  • the memory may include non-persistent memory, random access memory (RAM), and/or non-volatile memory in a computer readable medium, such as read only memory (ROM) or flash memory.
  • RAM random access memory
  • ROM read only memory
  • Memory is an example of a computer readable medium.
  • Computer readable media includes both permanent and non-persistent, removable and non-removable media.
  • Information storage can be implemented by any method or technology.
  • the information can be computer readable instructions, data structures, modules of programs, or other data.
  • Examples of storage media for a computer include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read only memory. (ROM), electrically erasable programmable read only memory (EEPROM), flash memory or other memory technology, compact disk read only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, Magnetic tape cartridges, magnetic tape storage or other magnetic storage devices or any other non-transportable media can be used to store information that can be accessed by a computing device.
  • computer readable media does not include temporary storage of computer readable media, such as modulated data signals and carrier waves.
  • embodiments of the present application can be provided as a method, system, or computer program product.
  • the present application can take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment in combination of software and hardware.
  • the application can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) including computer usable program code.
  • the application can be described in the general context of computer-executable instructions executed by a computer, such as a program module.
  • program modules include routines, programs, objects, components, data structures, and the like that perform particular tasks or implement particular abstract data types.
  • the present application can also be practiced in distributed computing environments where tasks are performed by remote processing devices that are connected through a communication network.
  • program modules can be located in both local and remote computer storage media including storage devices.

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Theoretical Computer Science (AREA)
  • Finance (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Development Economics (AREA)
  • Computer Security & Cryptography (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Technology Law (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)
  • Computer And Data Communications (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

本申请公开一种业务处理的方法及装置,该方法中业务处理节点在接收到用户发送的业务请求后,可根据该业务请求中包含的目标业务的业务类型,加载与该业务类型相匹配的业务模板,并通过该业务模板处理该目标业务。由于在业务处理过程中,业务处理节点可根据用户发送的业务请求,加载能够处理该业务请求中包含的目标业务的业务模型,这就打破了现有技术中区块链固定的不可扩展的业务处理限制,从而给用户基于区块链的业务处理带来了便利。

Description

一种业务处理方法及装置 技术领域
本申请涉及计算机技术领域,尤其涉及一种业务处理方法及装置。
背景技术
区块链技术又称之为分布式账本技术,由于其存储的数据具备不可篡改、去中心化等特点,区块链技术一经面世就受到了人们的广大关注。随着计算机技术的不断发展,区块链技术将会为人们提供愈加安全的数据存储环境,进而为人们的数据存储提供便利。
在实际应用中,区块链技术通常用于对交易过程中所产生的交易信息进行存储。而智能合约的出现,为人们进一步拓宽了区块链的业务范围。智能合约通常是存储在区块链(或者区块链中的业务处理节点)中的一段代码,这段代码中规定了智能合约的执行条件以及业务处理逻辑,即,对于业务处理请求,规定了启动智能合约的条件,以及在该智能合约启动后如何处理接收到的业务处理请求。所以,在用户需要通过智能合约来处理指定业务时,可将处理指定业务所需的业务参数发送给区块链中的业务处理节点,以使业务处理节点在确定该业务参数满足智能合约所规定的执行条件时,执行该业务参数,进而完成该指定业务的处理工作。
例如:当用户需要通过智能合约来处理一些指定业务时,可将智能合约在区块链中的存储地址携带在业务处理请求中,使得区块链中的业务处理节点在执行该业务处理请求时,可从该业务处理请求中确定出业务参数以及智能合约在区块链中的存储地址,并根据该存储地址,调用该存储地址中存储的智能合约,并判断该业务参数是否满足该智能合约的执行条件,若是,则根据该智能合约中预先规定的业务处理逻辑,对该业务参数进行处理,以完成指定业务的处理工作。
由于区块链中存储的数据具有不可篡改的特点,因此,智能合约一旦存储在区块链中,智能合约将无法进行更改。随着业务的不断升级,智能合约可能已无法支持新业务(升级后的业务)的处理工作,然而为了使智能合约能够支持新业务的处理工作,只能依据新业务重新制定智能合约,并将重新制定的智能合约再次写入到区块链中。
由此可见,亟需一种业务处理方法,用于解决区块链中因业务升级而面临的业务处理方法不能灵活适配的问题。
发明内容
本申请实施例提供一种业务处理方法及装置,用于解决区块链中因业务升级而面临的业务处理方法不能灵活适配的问题。
本申请实施例提供了一种业务处理的方法,包括:
接收业务请求;
确定所述业务请求中包含的目标业务的业务类型;
根据所述业务类型,加载与所述业务类型相匹配的业务模板;
根据所述业务模板,处理所述目标业务,并将得到的业务信息写入到区块链中。
本申请实施例提供了一种业务处理方法,包括:
接收业务请求,并确定所述业务请求中包含的目标业务的业务类型;
根据所述业务类型,加载与所述业务类型相匹配的业务模板;
根据所述业务模板,处理所述目标业务,并将得到的业务信息写入到区块链中的目标区块中;
在将得到的业务信息写入到所述目标区块中时,确定并存储所述目标区块的状态变化值,所述状态变化值用于检验所述目标区块中所记录的业务信息与所述区块链中的其他区块中所记录的业务信息是否一致。
本申请实施例提供了一种业务处理的装置,包括:
接收模块,接收业务请求;
确定模块,确定所述业务请求中包含的目标业务的业务类型;
模板加载模块,根据所述业务类型,加载与所述业务类型相匹配的业务模板;
处理模块,根据所述业务模板,处理所述目标业务,并将得到的业务信息写入到区块链中。
本申请实施例提供了一种业务处理装置,包括:
接收模块,接收业务请求,并确定所述业务请求中包含的目标业务的业务类型;
模板加载模块,根据所述业务类型,加载与所述业务类型相匹配的业务模板;
处理模块,根据所述业务模板,处理所述目标业务,并将得到的业务信息写入到区块链中的目标区块中;在将得到的业务信息写入到所述目标区块中时,确定并存储所述目标区块的状态变化值,所述状态变化值用于检验所述目标区块中所记录的业务信息与所述区块链中的其他区块中所记录的业务信息是否一致。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:
在本申请实施例中,在接收到用户发送的业务请求后,可根据该业务请求中包含的目标业务的业务类型,加载与该业务类型相匹配的业务模板,并通过该业务模板处理该目标业务。其中,由于在业务处理过程中,业务处理节点可根据用户发送的业务请求,加载能够处理该业务请求中包含的目标业务的业务模型,这就打破了现有技术中区块链固定的不可扩展的业务处理限制,使得区块链中业务处理更加灵活,从而给用户基于区块链的业务处理带来了便利。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分, 本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例提供的业务处理过程的示意图;
图2为本申请实施例提供的用户在服务平台上发布各业务模板安装包的示意图;
图3为本申请实施例提供的业务处理过程的示意图;
图4为本申请实施例提供的一种业务处理的装置示意图;
图5为本申请实施例提供的一种业务处理的装置示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
图1为本申请实施例提供的业务处理过程的示意图,具体包括以下步骤:
S101:接收业务请求。
在本申请实施例中,本申请实施例的执行主体可以是业务处理节点,这里的业务处理节点具备区块链处理技术,即能够处理区块链业务,那么S101可以理解为业务处理节点接收到业务请求。
该业务请求可以理解为用户通过终端设备(这里的终端设备可以理解为移动终端、PC终端)发送给业务处理节点的,也可以理解为由接收到用户发送的业务请求的服务器(可以具备区块链处理技术,能够与业务处理节点进行数据传输)发送给业务处理节点的,还可以理解为不具备区块链技术的服务器在接收到用户发送的业务处理请求之后发送给业务处理节点的,这里不做具体限定。
例如:用户在进行业务处理的过程中,可在诸如电脑、手机等终端中输入相应的业务数据,触发业务请求,如,当用户需要进行转账业务时,用户可在终端中输入转账的额度以及这笔转账的接收方,其中,用户输入的转账额度、转账接收方以及转账发起方(即该用户)则构成了用户输入的转账业务的业务数据,并将携带由转账额度、转账接收方以及转账发起方构成的业务数据的业务请求发送给业务处理节点。再例如,当用户需要将某一数据存储在区块链中时,可在终端中输入该数据,其中,该数据即为用户输入的数据存储业务的业务数据,并将携带由待存储数据构成的业务数据的业务请求发送给业务处理节点。这里用户将业务请求发送给业务处理节点的方式不做限定。
再例如:终端在监测到用户执行了指定的操作后(如点击终端界面所显示的指定控件等),则可确定用户在终端中输入的业务数据,进而根据该业务数据,生成相应的业务请求,并将该业务请求发送至业务处理节点中,以使业务处理节点接收该业务请求,并在后续过程中对该业务请求中所包含的目标业务进行处理。这里用户将业务请求发送给业务处理节点的方式不做限定。
需要说明的是,在本申请实施例中,用户在进行业务处理的过程中,除了可在终端中输入相应的业务数据外,也可将该业务数据输入在终端所安装的指定应用中,相应的,该指定应用在接收到用户输入的业务数据,可生成相应的业务请求,进而在监测到用户的指定操作后(如点击指定控件等),将该业务请求发送至业务处理节点中。
S102:确定所述业务请求中包含的目标业务的业务类型。
业务处理节点在接收到用户通过终端发送的业务请求后,可进一步的确定出该业务请求中所包含的目标业务的业务类型,此举的目的在于,在本申请实施例中,业务处理节点中预先保存了各业务模板,不同的业务模板对应不同业务的处理工作,因此,业务处理节点在接收到用户发送的业务请求后,需要从预先保存的各业务模板中确定出哪一业务模板能够处理该业务请求中所包含的目标业务。业务处理节点通常都是将各业务模板与各业务类型对应保存的, 所以,业务处理节点在确定该业务请求的目标业务能够被哪一业务模板进行处理的过程中,可确定出该目标业务所对应的业务类型,进而根据预先保存的业务类型与业务模板的对应关系,确定出与该业务类型对应的业务模板,进而在后续过程中,通过该业务模板对该业务请求中所包含的目标业务进行处理。
具体的,业务处理节点在接收到用户发送的业务请求后,可确定出该业务请求中所包含的目标业务的业务标识,并根据该业务标识,确定出目标业务的业务类型,其中,该业务标识可以是一串数字,这串数字中的一部分为能够表示目标业务的业务代码,如,在#244340923这一业务标识中,#2就是一个用于表示目标业务的业务代码。当然,业务标识也可以是其他的形式,如,当业务请求中包含有“转账类型”的字样时,则“转账类型”就是该业务请求中所包含的目标业务的业务标识。
需要说明的是,本申请实施例中所记载的业务处理节点中预先保存的各业务模板可以通过API构造完成,并存储在业务处理节点中。
S103:根据所述业务类型,加载与所述业务类型相匹配的业务模板。
在本申请实施例中,由于将各业务类型所对应的业务模板预先保存在业务处理节点中,使得业务处理节点在接收到用户发送的业务请求后,可根据确定出的与该业务请求中包含的目标业务相对应的业务类型,从预先保存的各业务模板中,加载与该业务类型相匹配的业务模板,进而在后续过程中,通过该业务模板,来处理该目标业务。
例如,假设用户向业务处理节点发起了一项转账请求(即业务请求),业务处理节点在接收到该转账请求后,可对该转账请求进行解析,并确定出该转账请求所对应的业务类型为转账业务,而后,业务处理节点从预先保存的各业务模板中,确定并加载与该转账业务(即业务类型)相匹配的转账模板,进而在后续过程中,通过该转账模板处理该转账请求。
业务处理节点确定出该业务请求中包含的目标业务的业务类型后,发现预先配置的各业务模板中均没有与该业务类型相匹配的业务模板,即,各业务模 板均无法处理该业务请求中所包含的目标业务,则业务处理节点可根据用户输入的业务代码,生成能够处理该目标业务的业务模板,进而通过生成的业务模板,处理该目标业务。
具体的,当业务处理节点接收到用户发送的业务请求后,确定出预先配置的各业务模板中均无与该业务请求所对应的业务模板,则业务处理节点可提示用户无法处理该业务请求中所包含的目标业务,用户查看到该提示后,可针对该目标业务,在该业务处理节点中编写处理该目标业务所需的业务代码,而业务处理节点则可根据用户输入的业务代码,生成相应的业务模板,进而通过加载生成的业务模板,处理该目标业务。
在实际应用中,不同业务模板所能读取的数据格式通常都是不相同的,因此,在本申请实施例中,业务处理节点在接收到用户发送的业务请求后,也可通过预先保存的各业务模板依次读取该业务请求,当业务处理节点能够通过某一业务模板读取该业务请求时(即该业务请求的数据格式符合该业务模板),则业务处理节点可在后续过程中通过该业务模板,处理该业务请求中所包含的目标业务。
由于业务处理节点的数据是可以更改的,所以,预先保存在业务处理节点中的各业务模板是可以更新、调整的,因此,当业务不断升级时,用户可将业务处理节点中的业务模板也相应的进行升级,用户无需重新制定业务模板,只需在原有业务模板的基础上进行更新、调整,即可使该业务模板支持升级后的业务,从而极大的提升了业务维护效率。
然而,由于区块链中存储的数据无法被篡改,因此,用户使用区块链进行数据存储将会有效的保证数据存储的安全性,从而为用户后续的数据验证提供了有利的验证依据。但是,数据无法篡改的特性也会给区块链的业务处理带来不便,其中最显著的问题是:当前支持区块链业务拓展的智能合约通常都是存储在区块链中的,所以,该智能合约无法随着业务的不断升级而更新,用户若要使智能合约支持新业务的业务处理工作,则需要重新制定智能合约,并将重 新制定的智能合约写入到区块链中,由此可见,业务的不断升级,将势必会使用户不断重新制定智能合约,这就给用户在业务维护上带来了极大的不便。
而在本申请实施例中由于处理各类目标业务的各业务模板是预先保存在业务处理节点中的,而并不是存储在区块链中的,因此,当业务升级时,用户为了使业务模板能够支持升级后的业务,只需对保存在业务处理节点中的业务模板进行相应的更新即可,而无需再重新制定适应升级后业务的业务模板,相对于现有技术中,用户只能通过重新制定智能合约的方式来使重新制定的智能合约支持升级后业务的业务处理,将极大的降低业务维护的成本。同时,克服了因业务升级而面临的业务处理方法不能够灵活适配的问题,极大增加了区块链处理业务的灵活性。
此外,在实际应用中,智能合约执行过程中所需的系统资源通常都是由虚拟机分配的,但是因为虚拟机从服务器中划分出来的,所以虚拟机只能拥有服务器的部分系统资源,那么智能合约所需要的系统资源由虚拟机分配,这就意味着智能合约只能从虚拟机所拥有的服务器的部分系统资源中得到所需要的系统资源,这样使得智能合约获取到的系统资源较少。然而智能合约为了适应业务量不断增加的业务需求,势必需要从虚拟机中获取到更多的系统资源,以向业务量不断增加的业务提供足够的支持,但是,虚拟机本身的性能问题(即虚拟机本身拥有的系统资源较少,向智能合约分配的系统资源也相对较少)使得智能合约将无法对业务量不断增加的业务提供良好的支持,进而极大的降低了区块链业务的处理效率,给用户带来了不便。
而在本申请实施例中各项业务对应的业务模板是预先保存在业务处理节点中的,而业务处理节点在启动业务模板处理业务请求的过程中,由于业务处理节点拥有与服务器相匹配的系统资源,那么业务处理节点可将更多的系统资源分配至该业务请求的处理过程中,所以,随着业务量的不断增加,业务处理节点依然能够很好的支持各项业务的处理工作,从而保证了区块链业务的处理效率。
S104:根据所述业务模板,处理所述目标业务,并将得到的业务信息写入到区块链中。
业务处理节点在确定出与该业务类型相匹配的业务模板后,可通过该业务模板对上述业务请求中包含的目标业务进行处理,其中,该业务模板中包含有预先规定的业务处理规则,业务处理节点可根据该业务处理规则,对该目标业务进行处理。
在实际应用中,每类业务通常都包含有若干个子业务,如,在金融业务中,包含有诸如转账业务、理财业务等子业务,基于此,在本申请实施例中,每个业务模板中的业务处理规则均可负责一大类业务的业务处理工作,而在每个业务处理规则中又分别包含有多个处理规则,不同的处理规则对应处理这类业务中的不同子业务。例如,对于金融业务来说,业务处理节点中可保存有负责该金融业务处理工作的金融业务模板,而在该金融业务模板中包含有处理转账、理财等子业务的各处理规则。
因此,在本申请实施例中,当业务处理节点根据业务请求中包含的目标业务的业务类型,加载与该业务类型相匹配的业务模板后,可确定出该业务模板中包含的业务处理规则,而后,业务处理节点可进一步从该业务处理规则包含的各处理规则中确定出与该目标业务相匹配的处理规则,进而通过该处理规则,处理该目标业务。
例如,假设业务处理节点接收到的业务请求为用户发送的转账请求时,业务处理节点可确定出该业务请求的业务类型为金融类型,而后,业务处理节点可从预先保存的各业务模板中,确定出能够处理金融业务的业务模板并加载。业务处理节点在加载完该业务模板后,可确定该业务模板中包含的业务处理规则,业务处理节点可从该业务处理规则中包含的各处理规则确定出与转账业务相匹配的转账处理规则(即上述处理规则),进而通过该处理规则,处理该转账业务。
在实际应用中,用户输入到业务处理节点的业务请求可能会出现诸如数据 格式不符规定、业务请求不合法等情况,业务处理节点处理这些存在问题的业务请求时可能会影响业务处理节点的运行,严重的可能会导致业务处理节点的瘫痪。
为了保证业务处理节点的有效运行,保证业务处理节点处理业务的效率,在本申请实施例中,业务处理节点可根据确定出的业务模板(该业务模板用于处理业务处理节点接收到的业务请求),对接收到的业务请求实施校验。
具体的,业务处理节点确定出与该业务请求相对应的业务模板后(即与目标业务的业务类型相对应的业务模板),可从该业务模板中确定出该业务模板所包含的业务处理规则,其中,该业务处理规则中包含有用于执行业务处理的处理规则,以及校验业务请求的校验规则,因此,业务处理节点可通过该校验规则,对该业务请求实施校验,当业务处理节点确定该业务请求符合该校验规则所规定的预设条件时(即该业务请求为合法、正常的请求),可对该目标业务进行处理;而当业务处理节点确定该业务请求不符合该校验规则所规定的预设条件时(即该业务请求可能存在诸如数据格式不符、业务请求不合法等问题),则该业务处理节点可不对该目标业务实施处理,并向用户返回该业务请求处理失败的提示,以使用户根据该提示,重新向该业务处理节点发起业务请求。
业务处理节点通过该业务模板处理完该业务请求后,可得到相应的业务信息,这里的业务信息可以是业务处理节点处理业务后所得到的业务结果,也可以是用于表示整个业务处理过程的业务记录,抑或是该业务请求中所包含的业务数据等。业务处理节点后续可将该业务信息写入到区块链中,这样一来,用户后续即可在区块链中查找到该业务信息,进而对该业务信息实施数据验证等操作。
在本申请实施例中,业务处理节点中预先保存的业务模板可针对多种业务,而在实际应用中,涉及区块链的业务主要分为以下四种:
一、溯源业务,将一个指定数据的转移路径进行详细记录,以使用户能够通过区块链中记录的该指定数据的转移路径,确定出该指定数据的最初持有者, 即该指定数据的溯源。
二、公正业务,即利用区块链中存储的数据具有不可篡改的特性,将指定的数据存储在区块链中,以备后续对该指定数据进行验证,或通过该指定数据验证其他数据所使用。
三、基于智能合约的业务,即为现有技术中利用智能合约而实施的特定业务,如,通过区块链中智能合约的执行,定期向用户返回理财产品的收益等。
四、交易业务,即通过区块链来实现用户与用户之间的相互交易,并将交易过程中的交易流水信息记录在区块链中。
对于上述这四种业务来说,本申请实施例中,业务处理节点中预先保存有能够处理这四种业务的业务模板,因此,当业务处理节点接收到这四种业务的业务请求后,可通过加载预先保存的这四种业务模板,来处理对这四种业务请求中所包含的目标业务进行处,其中,四种业务模板可分别为溯源模板、公正模板、合约模板、交易模板。
为了进一步的说明本申请实施例的业务处理过程,以下将对这四种业务请请的处理过程进行详细说明。
当业务处理节点接收到用户发送的溯源数据请求时,可根据该溯源数据请求中包含的溯源业务标识,确定出该溯源业务标识所对应的溯源业务类型,而后,业务处理节点可根据该溯源业务类型,从预先保存的各业务模板中确定出与该溯源业务类型相匹配的溯源模型并加载,进而通过启动该溯源模板,来处理该溯源数据请求中所包含的溯源业务。
业务处理节点通过溯源模板处理溯源业务的过程中,可从该溯源模型中确定出与该溯源业务类型相对应的溯源业务处理规则,进而通过执行该溯源业务处理规则,分析得到该溯源数据请求中包含的溯源数据、该溯源数据的接收方地址以及该溯源数据的发送方地址,后续业务处理节点可进一步的将该溯源数据发送至该溯源数据的接收方,并生成相应的溯源数据转移信息,进而将该转移信息中写入到区块链中,以使用户后续能够通过区块链中保存的该转移信息, 确定出该溯源数据的转移路径。
对于公正业务来说,当业务处理节点接收到用户发送的公正数据请求时,可确定出该公正数据请求所对应的公正业务类型,并从预先保存的各业务模板中加载与该公正业务类型相匹配的公正模板。业务处理节点可从该公正模板中确定出与该公正业务类型相对应的公正业务处理规则,并通过该公正业务处理规则,从该公正数据请求中分析得到用户需要写入到区块链中的公正数据,进而将该公正数据写入到区块链中。
在本申请实施例中,业务处理节点也可通过存储在区块链中的智能合约来执行业务,即,业务处理节点上可预先保存需要智能合约执行的业务所对应的合约模板(即业务模板),而后,业务处理节点在接收到用户发送的合约数据请求时,可确定出该合约数据请求所对应的合约业务类型,并通过该合约业务类型,从预先保存的各业务模板中确定出与该合约业务类型相对应的合约模板。区块链可进一步的从该合约模板中确定出与该合约业务类型相匹配的合约业务处理规则,并通过执行该合约业务处理规则,解析出该合约数据请求中所包含的合约地址以及业务参数,其中,该合约地址即为智能合约在区块链中的存储地址。业务处理节点后续可根据该合约地址,从区块链中查找到位于该合约地址上的智能合约,进而将确定出的业务参数传输给该智能合约,使得该智能合约可自动执行该业务参数,并向业务处理节点返回相应的业务结果(即业务信息),而业务处理节点在接收到智能合约所返回的业务结果后,可将该业务结果显示给用户,并同时将该业务结果写入到区块链中,以备用户后续对该业务结果进行数据验证等操作。
对于交易业务来说,当业务处理节点接收到用户发送的交易请求时,业务处理节点可从预先保存的各业务模板中确定出能够处理该交易请求的交易模板,并通过加载该交易模板的方式,处理该交易请求所包含的交易业务,其中,业务处理节点可先根据确定出的交易业务类型,从交易模板中确定出与该交易业务类型相匹配的交易业务处理规则,并通过该交易业务处理规则,解析出该 交易请求中所涉及的交易发起方、交易接收方、交易数额等信息,进而通过执行该交易业务处理规则,实现从该交易发起方的账户中扣除相应的交易数额,并将这笔交易数额转入到交易接收方的账户中的业务处理。在此过程中,业务处理节点将得到这笔交易的交易流水信息(即业务信息),为了使用户可在后续过程中在区块链中查看到该交易流水信息,以及该交易流水信息可在后续过程中能够为用户提供交易凭证,业务处理节点可将该交易流水信息写入到区块链中。
当然,在本申请实施例中,业务处理节点也可支持其他业务的业务处理,用户只需将所需业务的业务模板加载到该业务处理节点中,即可实现该业务处理节点对该业务的处理。
从上述方法可以看出,由于处理各类目标业务的各业务模板是预先保存在业务处理节点中的,而并不是存储在区块链中的,因此,当业务升级时,用户为了使业务模板能够支持升级后的业务,只需对保存在业务处理节点中的业务模板进行相应的更新即可,而无需再重新制定适应升级后业务的业务模板,相对于现有技术中,用户只能通过重新制定智能合约的方式来使重新制定的智能合约支持升级后业务的业务处理,将极大的降低业务维护的成本。
在本申请实施例中,用户可预先编写各业务模板,并将各业务模板输入到业务处理节点中,相应的,业务处理节点接收用户输入的业务模板后,可将各业务模板保存到业务处理节点,进而后续的过程中,通过加载的这些业务模板,来对接收到的业务请求进行处理。
在本申请实施例中,用户可将各业务模板进行打包并发布在一个服务平台上,使得其他用户需要某一业务模板的安装包时,可从该服务平台上下载相应的业务模板安装包,并将该业务模板安装包保存在本地的业务处理节点中,以使本地业务处理节点在加载该业务模板安装包后,具备处理该业务模板所对应的业务的能力,如图2所示。
图2为本申请实施例提供的用户在服务平台上发布各业务模板安装包的示 意图。
在图2中,用户A可将通过编译语言编写各业务模板,并将各业务模板分别打包上传至服务平台中,服务平台在接收到用户A上传的各业务模板安装包后,可将各业务模板安装包进行发布,以供其他用户进行下载并使用。当然,各业务模板的安装包也可由其他用户上传,各用户可在该服务平台上分享各自编写的业务模板安装包,以供各用户使用。
需要说明的是,在实际应用中,智能合约通常都是由各用户自行编写并写入到区块链中的,若用户将编写的一个恶意智能合约写入到区块链中,则该智能合约可能会给其他用户基于该智能合约的业务处理带来不便以及损失。
为了防止上述情况的发生,在本申请实施例中,该服务平台可对用户上传的各业务模板安装包进行审核,当审核处用户上传的业务模板安装包中包含的有恶意代码时,则不对该业务模型安装包进行发布,从而为各用户提供了一个良好的业务模板安装包的下载环境。
在本申请实施例中,还提供了一种业务处理方法。图3为本申请实施例提供的业务处理方法的示意图。
业务处理节点接收业务请求,并确定所述业务请求中包含的目标业务的业务类型;根据所述业务类型,加载与所述业务类型相匹配的业务模板;进一步根据所述业务模板,处理所述目标业务,并将得到的业务信息写入到区块链中的目标区块中;在将得到的业务信息写入到所述目标区块中时,确定并存储所述目标区块的状态变化值,所述状态变化值用于检验所述目标区块中所记录的业务信息与所述区块链中的其他区块中所记录的业务信息是否一致。
进一步地,确定并存储所述目标区块的状态变化值,包括:
在将得到的业务信息写入到所述目标区块中后,计算所述目标区块的校验值;将所述校验值确定为所述目标区块的状态变化值;并将所述状态变化值存储至所述区块链中。
即不同的区块在被写入业务信息时,可以通过计算的方式确定该区块的校 验值,这样将不同的区块的校验值依次存储在Merkle树等树结构中,这样可以通过Merkle树的根节点的Hash值,判断区块链中不同区块中存储的数据是否一致。
本申请实施例中所记载的区块链可是诸如比特币区块链、以太坊区块链、莱特币区块链等区块链。
还需说明的是,当业务处理节点通过确定出的业务模板处理完用户所需的目标业务后(即用户发送的业务请求中包含的目标业务),可将加载的该业务模型进行卸载,从而节省了业务处理节点的内存空间,当然,业务处理节点在处理完目标业务后,也可将该业务模板进行休眠,待后续在接收到与该业务模板对应的业务请求时,重新启动该业务模板以处理该业务请求。
在本申请实施例中,由于处理各类目标业务的各业务模板是预先保存在业务处理节点中的,而并不是存储在区块链中的,因此,当业务升级时,用户为了使业务模板能够支持升级后的业务,只需对保存在业务处理节点中的业务模板进行相应的更新即可,而无需再重新制定适应升级后业务的业务模板,相对于现有技术中,用户只能通过重新制定智能合约的方式来使重新制定的智能合约支持升级后业务的业务处理,将极大的降低业务维护的成本。同时,克服了因业务升级而面临的业务处理方法不能够灵活适配的问题,极大增加了区块链处理业务的灵活性。
不仅如此,由于业务处理节点通过预先保存的各业务模板进行业务处理的过程中,通过业务模板处理目标业务时所需的系统资源都是业务处理节点本身分配的,业务处理节点可将自己的全部系统资源用于目标业务的处理工作,有效避免了现有技术中智能合约在执行过程中通过虚拟机方式调用系统资源不足的问题,极大的提高了区块链处理业务的效率,进而给用户的业务处理带来便利。
在本申请实施例中,用户在进行业务处理的过程中,可在业务处理节点上输入相应的业务请求,该业务处理节点在接收到业务请求后,确定该业务请求 中所包含的目标业务的业务类型,并加载与该业务类型相匹配的业务模板,进而通过该业务模板来处理该目标业务,其中,这里提到的业务处理节点可以是一个能够处理区块链业务的终端,也可以一个处理区块链业务的服务器,当然也可以是一个用于处理区块链业务的客户端、应用等。
以上为本申请实施例提供的业务处理方法,基于同样的思路,本申请实施例还提供一种业务处理的装置,如图4所示。
图4为本申请实施例提供的一种业务处理的装置示意图,具体包括:
接收模块401,接收业务请求;
确定模块402,确定所述业务请求中包含的目标业务的业务类型;
模板加载模块403,根据所述业务类型,加载与所述业务类型相匹配的业务模板;
处理模块404,根据所述业务模板,处理所述目标业务,并将得到的业务信息写入到区块链中。
所述确定模块402,确定所述目标业务的业务标识;根据所述业务标识,确定所述待处理业务的业务类型。
所述模板加载模块403,从配置的业务模板中,确定与所述业务类型相匹配的业务模板;加载所述业务模板。
所述模板加载模块403,若配置的业务模板中不存在与所述业务类型相匹配的业务模板,则生成与所述业务类型相匹配的业务模板;加载生成的所述业务模板。
所述处理模块404,根据所述业务模板中包含的业务处理规则,处理所述目标业务。
所述处理模块404,确定所述业务模板中与所述目标业务对应的业务处理规则;根据所述业务处理规则,处理所述目标业务。
所述处理模块404,确定所述业务处理规则中包含的校验规则;根据所述校验规则,校验所述业务请求是否符合预设条件;若是,则根据所述业务处理 规则中的处理规则,处理所述目标业务;若否,则提示所述目标业务处理失败。
所述模板加载模块403,若确定的业务类型为溯源业务类型,则从溯源模板中确定出与所述溯源业务类型对应的溯源业务处理规则,所述溯源模板与所述溯源业务类型对应;
所述处理模块404,基于所述溯源业务处理规则,分析得到所述溯源数据请求中包含的溯源数据、所述溯源数据的发送方数据以及所述溯源数据的接收方数据;将所述溯源数据从所述发送方转移至所述接收方,生成相应的转移信息,并将所述转移信息写入到所述区块链中。
所述模板加载模块403,若确定的业务类型为公正业务类型,则从所述公正模板中确定出与所述公正业务类型对应的公正业务处理规则,所述公正模板与所述公正业务类型对应;
所述处理模块404,基于所述公正业务处理规则,分析得到所述公正数据请求中包含的公正数据;将所述公正数据写入到所述区块链中。
所述模板加载模块403,若确定的业务类型为合约业务类型,则从合约业务模板中确定出与所述合约业务类型对应的合约业务处理规则,所述合约业务模板与所述合约业务类型对应;
所述处理模块404,基于所述合约业务处理规则,分析得到所述合约数据请求中包含的合约地址以及业务参数;根据所述合约地址,将所述业务参数传输给所述合约地址对应的智能合约,以使所述智能合约执行所述业务参数并返回相应的业务结果;将接收到的所述业务结果写入到所述区块链中。
所述模板加载模块403,若确定的业务类型为交易业务类型,则从交易模板中确定出与所述交易业务类型对应的交易业务处理规则,所述交易模板与所述交易业务类型对应;
所述处理模块404,基于所述交易业务处理规则,分析得到所述交易请求中包含的交易发起方账户、交易额度、交易接收方账户;从所述交易发起方账户中扣除所述交易额度,并将所述交易额度转入所述交易接收方账户,得到交 易流水信息;将所述交易流水信息写入到所述区块链中。
在本申请实施例中,业务处理节点在接收到用户发送的业务请求后,可根据该业务请求中包含的目标业务的业务类型,加载与该业务类型相匹配的业务模板,并通过该业务模板处理该目标业务。其中,由于处理各类目标业务的各业务模板是预先保存在业务处理节点中的,而并不是存储在区块链中的,因此,当业务升级时,用户为了使业务模板能够支持升级后的业务,只需对保存在业务处理节点中的业务模板进行相应的更新即可,而无需再重新制定适应升级后业务的业务模板,相对于现有技术中,用户只能通过重新制定智能合约的方式来使重新制定的智能合约支持升级后业务的业务处理,将极大的降低业务维护的成本。同时,克服了因业务升级而面临的业务处理方法不能够灵活适配的问题,极大增加了区块链处理业务的灵活性。
不仅如此,由于业务处理节点通过预先保存的各业务模板进行业务处理的过程中,通过业务模板处理目标业务时所需的系统资源都是业务处理节点本身分配的,业务处理节点可将自己的全部系统资源用于目标业务的处理工作,有效避免了现有技术中智能合约在执行过程中通过虚拟机方式调用系统资源不足的问题,极大的提高了区块链处理业务的效率,进而给用户的业务处理带来便利。
基于同样的思路,本申请实施例还提供一种业务处理的装置,如图5所示。
图5为本申请实施例提供的一种业务处理的装置示意图,具体包括:
接收模块501,接收业务请求,并确定所述业务请求中包含的目标业务的业务类型;
模板加载模块502,根据所述业务类型,加载与所述业务类型相匹配的业务模板;
处理模块503,根据所述业务模板,处理所述目标业务,并将得到的业务信息写入到区块链中的目标区块中;在将得到的业务信息写入到所述目标区块中时,确定并存储所述目标区块的状态变化值,所述状态变化值用于检验所述 目标区块中所记录的业务信息与所述区块链中的其他区块中所记录的业务信息是否一致。
在本申请的另一个实施例中,所述处理模块503确定并存储所述目标区块的状态变化值,包括:
在将得到的业务信息写入到所述目标区块中后,计算所述目标区块的校验值;
将所述校验值确定为所述目标区块的状态变化值;并
将所述状态变化值存储至所述区块链中。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable Gate Array,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware Description Language)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(Ruby Hardware Description Language)等,目前最普遍使用的是VHDL (Very-High-Speed Integrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结 合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、 静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。 尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (26)

  1. 一种业务处理方法,其特征在于,包括:
    接收业务请求;
    确定所述业务请求中包含的目标业务的业务类型;
    根据所述业务类型,加载与所述业务类型相匹配的业务模板;
    根据所述业务模板,处理所述目标业务,并将得到的业务信息写入到区块链中。
  2. 如权利要求1所述的业务处理方法,其特征在于,确定所述业务请求对应的业务类型,具体包括:
    确定所述目标业务的业务标识;
    根据所述业务标识,确定所述目标业务的业务类型。
  3. 如权利要求1所述的业务处理方法,其特征在于,根据所述业务类型,加载与所述业务类型相匹配的业务模板,具体包括:
    从配置的业务模板中,确定与所述业务类型相匹配的业务模板;
    加载所述业务模板。
  4. 如权利要求1或3所述的业务处理方法,其特征在于,根据所述业务类型,加载与所述业务类型相匹配的业务模板,具体包括:
    若配置的业务模板中不存在与所述业务类型相匹配的业务模板,则生成与所述业务类型相匹配的业务模板;
    加载生成的所述业务模板。
  5. 如权利要求1所述的业务处理方法,其特征在于,根据所述业务模板,处理所述目标业务,具体包括:
    根据所述业务模板中包含的业务处理规则,处理所述目标业务。
  6. 如权利要求1所述的业务处理方法,其特征在于,根据所述业务模板,处理所述目标业务,具体包括:
    确定所述业务模板中与所述目标业务相匹配的业务处理规则;
    根据所述业务处理规则,处理所述目标业务。
  7. 如权利要求5或6所述的业务处理方法,其特征在于,根据所述业务处理规则,处理所述目标业务,具体包括:
    确定所述业务处理规则中包含的校验规则;
    根据所述校验规则,校验所述业务请求是否符合预设条件;
    若是,则根据所述业务处理规则中的处理规则,处理所述目标业务;
    若否,则提示所述目标业务处理失败。
  8. 如权利要求5所述的业务处理方法,其特征在于,根据所述业务类型,加载与所述业务类型相匹配的业务模板,具体包括:
    若确定的业务类型为溯源业务类型,则从溯源模板中确定出与所述溯源业务类型对应的溯源业务处理规则,所述溯源模板与所述溯源业务类型对应;
    根据所述业务模板,处理所述目标业务,并将得到的业务信息写入到区块链中,具体包括:
    基于所述溯源业务处理规则,分析得到所述溯源数据请求中包含的溯源数据、所述溯源数据的发送方数据以及所述溯源数据的接收方数据;
    将所述溯源数据从所述发送方转移至所述接收方,生成相应的转移信息,并将所述转移信息写入到所述区块链中。
  9. 如权利要求5所述的业务处理方法,其特征在于,根据所述业务类型,加载与所述业务类型相匹配的业务模板,具体包括:
    若确定的业务类型为公正业务类型,则从所述公正模板中确定出与所述公正业务类型对应的公正业务处理规则,所述公正模板与所述公正业务类型对应;
    根据所述业务模板,处理所述目标业务,并将得到的业务信息写入到区块链中,具体包括:
    基于所述公正业务处理规则,分析得到所述公正数据请求中包含的公正数据;
    将所述公正数据写入到所述区块链中。
  10. 如权利要求5所述的业务处理方法,其特征在于,根据所述业务类型, 加载与所述业务类型相匹配的业务模板,具体包括:
    若确定的业务类型为合约业务类型,则从合约业务模板中确定出与所述合约业务类型对应的合约业务处理规则,所述合约业务模板与所述合约业务类型对应;
    根据所述业务模板,处理所述目标业务,并将得到的业务信息写入到区块链中,具体包括:
    基于所述合约业务处理规则,分析得到所述合约数据请求中包含的合约地址以及业务参数;
    根据所述合约地址,将所述业务参数传输给所述合约地址对应的智能合约,以使所述智能合约执行所述业务参数并返回相应的业务结果;
    将接收到的所述业务结果写入到所述区块链中。
  11. 如权利要求5所述的业务处理方法,其特征在于,根据所述业务类型,加载与所述业务类型相匹配的业务模板,具体包括:
    若确定的业务类型为交易业务类型,则从交易模板中确定出与所述交易业务类型对应的交易业务处理规则,所述交易模板与所述交易业务类型对应;
    根据所述业务模板,处理所述目标业务,并将得到的业务信息写入到区块链中,具体包括:
    基于所述交易业务处理规则,分析得到所述交易请求中包含的交易发起方账户、交易额度、交易接收方账户;
    从所述交易发起方账户中扣除所述交易额度,并将所述交易额度转入所述交易接收方账户,得到交易流水信息;
    将所述交易流水信息写入到所述区块链中。
  12. 一种业务处理方法,其特征在于,包括:
    接收业务请求,并确定所述业务请求中包含的目标业务的业务类型;
    根据所述业务类型,加载与所述业务类型相匹配的业务模板;
    根据所述业务模板,处理所述目标业务,并将得到的业务信息写入到区块链中的目标区块中;
    在将得到的业务信息写入到所述目标区块中时,确定并存储所述目标区块的状态变化值,所述状态变化值用于检验所述目标区块中所记录的业务信息与所述区块链中的其他区块中所记录的业务信息是否一致。
  13. 如权利要求12所述的业务处理方法,其特征在于,确定并存储所述目标区块的状态变化值,包括:
    在将得到的业务信息写入到所述目标区块中后,计算所述目标区块的校验值;
    将所述校验值确定为所述目标区块的状态变化值;并
    将所述状态变化值存储至所述区块链中。
  14. 一种业务处理装置,其特征在于,包括:
    接收模块,接收业务请求;
    确定模块,确定所述业务请求中包含的目标业务的业务类型;
    模板加载模块,根据所述业务类型,加载与所述业务类型相匹配的业务模板;
    处理模块,根据所述业务模板,处理所述目标业务,并将得到的业务信息写入到区块链中。
  15. 如权利要求14所述的业务处理装置,其特征在于,所述确定模块,确定所述目标业务的业务标识;根据所述业务标识,确定所述目标业务的业务类型。
  16. 如权利要求14所述的业务处理装置,其特征在于,所述模板加载模块,从配置的业务模板中,确定与所述业务类型相匹配的业务模板;加载所述业务模板。
  17. 如权利要求14或16所述的业务处理装置,其特征在于,所述模板加载模块,若配置的业务模板中不存在与所述业务类型相匹配的业务模板,则生成与所述业务类型相匹配的业务模板;加载生成的所述业务模板。
  18. 如权利要求14所述的业务处理装置,其特征在于,所述处理模块,根据所述业务模板中包含的业务处理规则,处理所述目标业务。
  19. 如权利要求14所述的业务处理装置,其特征在于,所述处理模块,确定所述业务模板中与所述目标业务相匹配的业务处理规则;根据所述业务处理规则,处理所述目标业务。
  20. 如权利要求18或19所述的业务处理装置,其特征在于,所述处理模块,确定所述业务处理规则中包含的校验规则;根据所述校验规则,校验所述业务请求是否符合预设条件;若是,则根据所述业务处理规则中的处理规则,处理所述目标业务;若否,则提示所述目标业务处理失败。
  21. 如权利要求18所述的业务处理装置,其特征在于,所述模板加载模块,若确定的业务类型为溯源业务类型,则从溯源模板中确定出与所述溯源业务类型对应的溯源业务处理规则,所述溯源模板与所述溯源业务类型对应;
    所述处理模块,基于所述溯源业务处理规则,分析得到所述溯源数据请求中包含的溯源数据、所述溯源数据的发送方数据以及所述溯源数据的接收方数据;将所述溯源数据从所述发送方转移至所述接收方,生成相应的转移信息,并将所述转移信息写入到所述区块链中。
  22. 如权利要求18所述的业务处理装置,其特征在于,所述模板加载模块,若确定的业务类型为公正业务类型,则从所述公正模板中确定出与所述公正业务类型对应的公正业务处理规则,所述公正模板与所述公正业务类型对应;
    所述处理模块,基于所述公正业务处理规则,分析得到所述公正数据请求中包含的公正数据;将所述公正数据写入到所述区块链中。
  23. 如权利要求18所述的业务处理装置,其特征在于,所述模板加载模块,若确定的业务类型为合约业务类型,则从合约业务模板中确定出与所述合约业务类型对应的合约业务处理规则,所述合约业务模板与所述合约业务类型对应;
    所述处理模块,基于所述合约业务处理规则,分析得到所述合约数据请求中包含的合约地址以及业务参数;根据所述合约地址,将所述业务参数传输给所述合约地址对应的智能合约,以使所述智能合约执行所述业务参数并返回相应的业务结果;将接收到的所述业务结果写入到所述区块链中。
  24. 如权利要求18所述的业务处理装置,其特征在于,所述模板加载模块,若确定的业务类型为交易业务类型,则从交易模板中确定出与所述交易业务类型对应的交易业务处理规则,所述交易模板与所述交易业务类型对应;
    所述处理模块,基于所述交易业务处理规则,分析得到所述交易请求中包含的交易发起方账户、交易额度、交易接收方账户;从所述交易发起方账户中扣除所述交易额度,并将所述交易额度转入所述交易接收方账户,得到交易流水信息;将所述交易流水信息写入到所述区块链中。
  25. 一种业务处理装置,其特征在于,包括:
    接收模块,接收业务请求,并确定所述业务请求中包含的目标业务的业务类型;
    模板加载模块,根据所述业务类型,加载与所述业务类型相匹配的业务模板;
    处理模块,根据所述业务模板,处理所述目标业务,并将得到的业务信息写入到区块链中的目标区块中;在将得到的业务信息写入到所述目标区块中时,确定并存储所述目标区块的状态变化值,所述状态变化值用于检验所述目标区块中所记录的业务信息与所述区块链中的其他区块中所记录的业务信息是否一致。
  26. 如权利要求25所述的业务处理装置,其特征在于,所述处理模块确定并存储所述目标区块的状态变化值,包括:
    在将得到的业务信息写入到所述目标区块中后,计算所述目标区块的校验值;
    将所述校验值确定为所述目标区块的状态变化值;并
    将所述状态变化值存储至所述区块链中。
PCT/CN2018/073395 2017-01-26 2018-01-19 一种业务处理方法及装置 WO2018137564A1 (zh)

Priority Applications (16)

Application Number Priority Date Filing Date Title
MX2019008502A MX2019008502A (es) 2017-01-26 2018-01-19 Metodo y aparato de procesamiento de servicio.
BR112019014589-3A BR112019014589A2 (pt) 2017-01-26 2018-01-19 Método de processamento de serviço e aparelho
JP2019537380A JP6912583B2 (ja) 2017-01-26 2018-01-19 サービス処理方法および装置
CA3048574A CA3048574C (en) 2017-01-26 2018-01-19 Service processing method and apparatus
KR1020197020783A KR102201844B1 (ko) 2017-01-26 2018-01-19 서비스 처리 방법 및 장치
EP18743988.0A EP3547241A4 (en) 2017-01-26 2018-01-19 SERVICE PROCESSING METHOD AND DEVICE
RU2019120078A RU2725690C1 (ru) 2017-01-26 2018-01-19 Способ и устройство обработки услуг
MYPI2019003680A MY202364A (en) 2017-01-26 2018-01-19 Service processing method and apparatus
SG11201906003VA SG11201906003VA (en) 2017-01-26 2018-01-19 Service processing method and apparatus
AU2018212186A AU2018212186B2 (en) 2017-01-26 2018-01-19 Service processing method and apparatus
US16/450,976 US11099887B2 (en) 2017-01-26 2019-06-24 Service processing method and apparatus
PH12019501498A PH12019501498A1 (en) 2017-01-26 2019-06-26 Service processing method and apparatus
ZA2019/04401A ZA201904401B (en) 2017-01-26 2019-07-04 Service processing method and apparatus
AU2019101602A AU2019101602A4 (en) 2017-01-26 2019-12-16 Service processing method and apparatus
US16/779,641 US10782998B2 (en) 2017-01-26 2020-02-02 Blockchain-based transaction processing method and apparatus
US16/884,861 US10817330B2 (en) 2017-01-26 2020-05-27 Service processing method and apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201710057243.2A CN107025559B (zh) 2017-01-26 2017-01-26 一种业务处理方法及装置
CN201710057243.2 2017-01-26

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US16/450,976 Continuation US11099887B2 (en) 2017-01-26 2019-06-24 Service processing method and apparatus

Publications (1)

Publication Number Publication Date
WO2018137564A1 true WO2018137564A1 (zh) 2018-08-02

Family

ID=59525976

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/073395 WO2018137564A1 (zh) 2017-01-26 2018-01-19 一种业务处理方法及装置

Country Status (16)

Country Link
US (3) US11099887B2 (zh)
EP (1) EP3547241A4 (zh)
JP (1) JP6912583B2 (zh)
KR (1) KR102201844B1 (zh)
CN (1) CN107025559B (zh)
AU (2) AU2018212186B2 (zh)
BR (1) BR112019014589A2 (zh)
CA (1) CA3048574C (zh)
MX (1) MX2019008502A (zh)
MY (1) MY202364A (zh)
PH (1) PH12019501498A1 (zh)
RU (1) RU2725690C1 (zh)
SG (1) SG11201906003VA (zh)
TW (1) TWI722256B (zh)
WO (1) WO2018137564A1 (zh)
ZA (1) ZA201904401B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110933163A (zh) * 2019-11-27 2020-03-27 腾讯科技(深圳)有限公司 区块链合约部署方法、装置、设备以及存储介质
WO2020111424A1 (ko) * 2018-11-28 2020-06-04 주식회사 파이랩테크놀로지 태그 추천 모델을 이용한 자동화된 스마트 컨트랙트 태그 생성 및 추천 시스템
CN111241594A (zh) * 2020-01-06 2020-06-05 平安科技(深圳)有限公司 交易信息的加签方法、装置、计算机设备和存储介质
CN111949297A (zh) * 2020-08-20 2020-11-17 杭州溪塔科技有限公司 一种区块链智能合约升级方法、装置及电子设备
JP2021515311A (ja) * 2018-09-20 2021-06-17 バイドゥ オンライン ネットワーク テクノロジー (ベイジン) カンパニー リミテッド ブロックチェーン上のスマートコントラクトの検証方法、装置、記憶媒体、及びプログラム
US11057217B2 (en) 2019-04-12 2021-07-06 Advanced New Technologies Co., Ltd. Performing parallel execution of transactions in a distributed ledger system
US11106487B2 (en) 2019-04-12 2021-08-31 Advanced New Technologies Co., Ltd. Performing parallel execution of transactions in a distributed ledger system

Families Citing this family (67)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107025559B (zh) 2017-01-26 2020-09-18 创新先进技术有限公司 一种业务处理方法及装置
CN107451175B (zh) * 2017-05-23 2020-01-31 创新先进技术有限公司 一种基于区块链的数据处理方法及设备
CN107368259B (zh) * 2017-05-25 2020-07-10 创新先进技术有限公司 一种向区块链系统中写入业务数据的方法和装置
CN107562552A (zh) * 2017-09-06 2018-01-09 深圳市中润四方信息技术有限公司 一种业务消息生成方法及系统
CN107908656A (zh) * 2017-10-13 2018-04-13 平安科技(深圳)有限公司 增加渠道方法、应用服务器及计算机可读存储介质
CN107918863A (zh) * 2017-10-19 2018-04-17 阿里巴巴集团控股有限公司 基于金融产品的前置处理及配置方法、装置及设备
CN107807991B (zh) * 2017-11-07 2020-05-12 泰康保险集团股份有限公司 用于处理区块链数据的方法及装置
CN107943951B (zh) * 2017-11-24 2020-08-11 中钞信用卡产业发展有限公司杭州区块链技术研究院 一种区块链业务信息的检索方法及系统
CN108073707B (zh) * 2017-12-19 2022-01-25 银联商务股份有限公司 金融业务数据更新方法、装置及计算机可读取存储介质
US20190236559A1 (en) * 2018-01-31 2019-08-01 Salesforce.Com, Inc. Systems, methods, and apparatuses for implementing smart flow contracts using distributed ledger technologies in a cloud based computing environment
CN108805550A (zh) * 2018-04-27 2018-11-13 深圳市元征科技股份有限公司 一种预付费交易管理方法及预付费交易管理装置
CN108646983B (zh) * 2018-05-08 2021-04-06 北京融链科技有限公司 在区块链上存储业务数据的处理方法和装置
CN108769147B (zh) * 2018-05-11 2021-12-31 北京奇虎科技有限公司 基于超级节点在共享计算中工作量证明方法及装置
CN108696522A (zh) * 2018-05-11 2018-10-23 北京奇虎科技有限公司 一种区块链中的任务处理方法、计算节点、区块链系统
CN108683667B (zh) * 2018-05-16 2021-12-03 深圳市迅雷网络技术有限公司 账户保护方法、装置、系统和存储介质
CN108665253A (zh) * 2018-05-18 2018-10-16 百度在线网络技术(北京)有限公司 一种区块链网络的数据处理方法、装置、设备及存储介质
CN108897729B (zh) * 2018-06-28 2022-11-11 中国建设银行股份有限公司 一种交易模板共享方法、装置、电子设备及存储介质
CN109033206B (zh) * 2018-06-29 2021-06-01 北京奇虎科技有限公司 一种规则匹配方法、云服务器及规则匹配系统
CN108961039B (zh) * 2018-07-02 2023-03-31 创新先进技术有限公司 交易处理方法、装置及系统
CN109165221A (zh) * 2018-08-16 2019-01-08 北京京东尚科信息技术有限公司 区块链的数据存储方法、装置、区块链节点及存储介质
CN109151030B (zh) * 2018-08-24 2021-07-27 中国电子科技集团公司信息科学研究院 一种物联网物体分布式交互系统、方法
CN109285066B (zh) * 2018-08-30 2020-12-08 福建省农村信用社联合社 一种基于银行业务流的智能合约生成与执行的方法
EP3850567A4 (en) 2018-09-14 2022-06-01 JPMorgan Chase Bank, N.A. SYSTEM AND METHOD FOR IMPLEMENTING TRANSACTION PROCESSING ECOSYSTEMS
CN109614409A (zh) * 2018-10-29 2019-04-12 阿里巴巴集团控股有限公司 业务数据处理方法、装置和服务器
CN109542602B (zh) * 2018-11-20 2021-05-11 苏州朗润创新知识产权运营有限公司 一种基于区块链的分布式任务处理方法、装置及系统
CN109508975A (zh) * 2018-11-28 2019-03-22 阿里巴巴集团控股有限公司 一种账单分期事件的记录和查询方法、装置及电子设备
CN110046522A (zh) * 2018-11-28 2019-07-23 阿里巴巴集团控股有限公司 基于区块链的业务处理方法及装置、电子设备
CN109544078B (zh) * 2018-11-29 2021-04-02 东莞市大易产业链服务有限公司 一种基于区块链技术的货物管理方法
CN109615516B (zh) * 2018-12-05 2021-04-16 腾讯科技(深圳)有限公司 资源转移方法、装置、电子设备及存储介质
CN110048846B (zh) * 2018-12-12 2020-04-14 阿里巴巴集团控股有限公司 一种基于区块链智能合约的签名验证方法及系统
CN109725985B (zh) * 2018-12-28 2021-01-29 云宏信息科技股份有限公司 虚拟机模板的管理方法及装置
CN111640012A (zh) * 2019-03-01 2020-09-08 中国银联股份有限公司 一种区块链交易追溯的方法及装置
CN110119480A (zh) * 2019-05-23 2019-08-13 北京小米移动软件有限公司 信息处理方法、装置、设备和存储介质
CN110162564A (zh) * 2019-05-30 2019-08-23 北京中电普华信息技术有限公司 业务数据处理方法及系统
CN110473082B (zh) * 2019-08-15 2022-09-23 中国银行股份有限公司 基于标签和判定树的科目处理方法及系统
US10990879B2 (en) 2019-09-06 2021-04-27 Digital Asset Capital, Inc. Graph expansion and outcome determination for graph-defined program states
US11132403B2 (en) * 2019-09-06 2021-09-28 Digital Asset Capital, Inc. Graph-manipulation based domain-specific execution environment
CN110765099B (zh) * 2019-09-06 2024-01-30 创新先进技术有限公司 一种业务构建方法、装置及计算机设备
CN110688634B (zh) * 2019-09-19 2021-09-28 杭州云象网络技术有限公司 一种联盟链事务智能执行的方法
CN110727712B (zh) * 2019-10-15 2021-06-04 腾讯科技(深圳)有限公司 基于区块链网络的数据处理方法、装置、电子设备及存储介质
CN110990879B (zh) * 2019-11-08 2022-03-18 中国电子科技网络信息安全有限公司 一种基于区块链的数据存证方法
CN110955724A (zh) * 2019-11-21 2020-04-03 腾讯科技(深圳)有限公司 基于区块链的数据处理方法、装置、节点设备及存储介质
CN111064711B (zh) * 2019-11-27 2020-11-10 重庆浙大网新科技有限公司 基于区块链的数据流检测方法、装置及服务器
WO2021125106A1 (ja) * 2019-12-19 2021-06-24 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 制御方法、装置、および、プログラム
CN111126978B (zh) * 2019-12-28 2023-03-14 飞天诚信科技股份有限公司 一种区块链上快速处理事务的实现方法及装置
CN111158837B (zh) * 2019-12-31 2023-08-22 中国银行股份有限公司 银行软件功能界面生成方法和装置
US11003433B1 (en) * 2020-02-05 2021-05-11 Dell Products L.P. System and method for improved peer-to-peer software distribution
US20210256635A1 (en) * 2020-02-17 2021-08-19 EnergyXchain, LLC Creating, monitoring, and updating energy transactions using distributed ledger technology and contract codex
CN111401903B (zh) * 2020-06-03 2020-09-11 腾讯科技(深圳)有限公司 区块链消息处理方法、装置、计算机以及可读存储介质
CN113760341B (zh) * 2020-06-11 2023-12-05 北京京东振世信息技术有限公司 数据处理方法、装置及设备
CN111768204A (zh) * 2020-06-17 2020-10-13 中国建设银行股份有限公司 一种业务处理方法和装置
CN111737274B (zh) * 2020-06-19 2023-08-08 中国工商银行股份有限公司 交易数据的处理方法、装置和服务器
CN111737324B (zh) * 2020-08-14 2021-02-09 支付宝(杭州)信息技术有限公司 数据分析方法及装置
CN111897890B (zh) * 2020-08-21 2023-09-08 中国工商银行股份有限公司 金融业务处理方法及装置
CN112200578A (zh) * 2020-09-23 2021-01-08 裴俊伟 基于区块链的金融业务校验方法和金融业务校验平台
CN112348326A (zh) * 2020-10-23 2021-02-09 中国建设银行股份有限公司 一种银行业务处理方法和系统
CN112398941A (zh) * 2020-11-10 2021-02-23 北京达佳互联信息技术有限公司 一种数据处理方法、装置、电子设备和存储介质
CN112613877B (zh) * 2020-12-17 2021-12-07 腾讯科技(深圳)有限公司 应用于区块链网络的智能合约触发方法、装置及相关设备
CN112668998B (zh) * 2020-12-23 2023-12-19 树根互联股份有限公司 流程实现方法、装置、系统、电子设备和可读存储介质
CN112559635B (zh) * 2020-12-23 2023-06-16 网易(杭州)网络有限公司 以太坊联盟链节点的业务处理方法、装置、设备及介质
CN112286643B (zh) * 2020-12-24 2021-04-20 北京百度网讯科技有限公司 以太坊虚拟机的事务处理方法、装置、设备和介质
CN113093958B (zh) * 2021-04-06 2022-05-17 中国工商银行股份有限公司 数据处理方法、装置和服务器
CN112990769A (zh) * 2021-04-21 2021-06-18 北京宇信科技集团股份有限公司 业务处理方法、装置、电子设备和存储介质
CN113377419A (zh) * 2021-05-31 2021-09-10 同盾科技有限公司 一种业务处理方法、装置、可读存储介质及电子设备
CN113361733B (zh) * 2021-06-03 2023-04-07 建信金融科技有限责任公司 预约业务的处理方法和装置
CN113434175B (zh) * 2021-06-29 2024-02-27 平安科技(深圳)有限公司 数据处理方法、装置、存储介质及设备
CN116560818B (zh) * 2023-06-29 2023-09-12 深圳市易图资讯股份有限公司 一种空间数据服务分发与调度的方法及系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101102227A (zh) * 2007-06-27 2008-01-09 中兴通讯股份有限公司 一种基于模板的抽象配置业务定制方法
US20100161778A1 (en) * 2008-12-22 2010-06-24 Sap Ag On-demand provisioning of services running on embedded devices
CN104715309A (zh) * 2013-12-11 2015-06-17 阿里巴巴集团控股有限公司 业务控制方法及装置
CN106301881A (zh) * 2015-06-29 2017-01-04 阿里巴巴集团控股有限公司 一种业务处理方法和装置
CN106296009A (zh) * 2016-08-12 2017-01-04 中国银行股份有限公司 一种业务处理方法及装置
CN107025559A (zh) * 2017-01-26 2017-08-08 阿里巴巴集团控股有限公司 一种业务处理方法及装置

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5613012A (en) * 1994-11-28 1997-03-18 Smarttouch, Llc. Tokenless identification system for authorization of electronic transactions and electronic transmissions
JP3537680B2 (ja) * 1998-10-22 2004-06-14 富士通株式会社 プロトコル制御用集積回路
US6971096B1 (en) * 2000-05-19 2005-11-29 Sun Microsystems, Inc. Transaction data structure for process communications among network-distributed applications
WO2003014867A2 (en) * 2001-08-03 2003-02-20 John Allen Ananian Personalized interactive digital catalog profiling
JP4163927B2 (ja) * 2001-10-31 2008-10-08 松下電器産業株式会社 Javaコンパイラ、及び、当該Javaコンパイラが使用するコンパイル情報の生成装置
US20030187841A1 (en) 2002-03-28 2003-10-02 International Business Machines Corporation Method and structure for federated web service discovery search over multiple registries with result aggregation
JP5242915B2 (ja) * 2003-06-05 2013-07-24 インタートラスト テクノロジーズ コーポレイション ピア・ツー・ピアサービス編成ための相互運用システム及び方法
US20050080768A1 (en) 2003-10-10 2005-04-14 International Business Machines Corporation Methods and apparatus for dynamic service discovery from Web services representation chain
US7590658B2 (en) * 2004-09-30 2009-09-15 Deloitte Development Llc System, software and method for examining a database in a forensic accounting environment
ATE548842T1 (de) 2005-07-27 2012-03-15 Sap Ag Serverrechner, client-einrichtung und webdienstimplementiertes verfahren zur datenverarbeitung
US7860968B2 (en) 2005-11-21 2010-12-28 Sap Ag Hierarchical, multi-tiered mapping and monitoring architecture for smart items
US20100106611A1 (en) * 2008-10-24 2010-04-29 Uc Group Ltd. Financial transactions systems and methods
US9686814B2 (en) 2011-11-07 2017-06-20 Industrial Technology Research Institute Method of reference cell maintenance
US9805385B2 (en) * 2011-11-21 2017-10-31 Nant Holdings Ip, Llc Subscription bill service, systems and methods
US8688661B2 (en) 2012-06-15 2014-04-01 International Business Machines Corporation Transactional processing
US20150379510A1 (en) * 2012-07-10 2015-12-31 Stanley Benjamin Smith Method and system to use a block chain infrastructure and Smart Contracts to monetize data transactions involving changes to data included into a data supply chain.
EP2771856A4 (en) * 2012-11-21 2015-08-05 Nant Holdings Ip Llc SUBSCRIPTION ACCOUNTING SERVICE AND SYSTEMS AND METHOD THEREFOR
US9553982B2 (en) 2013-07-06 2017-01-24 Newvoicemedia, Ltd. System and methods for tamper proof interaction recording and timestamping
JP6247193B2 (ja) * 2014-10-10 2017-12-13 山下 健一 広告閲覧促進システム、情報処理方法及びプログラム
JP2016151802A (ja) * 2015-02-16 2016-08-22 科韻動力有限公司 仮想通貨の管理方法、仮想通貨システム、該仮想通貨システムにおける広告方法、及びアプリケーションプログラム
US9967334B2 (en) 2015-03-02 2018-05-08 Dell Products Lp Computing device configuration and management using a secure decentralized transaction ledger
US9967333B2 (en) 2015-03-02 2018-05-08 Dell Products Lp Deferred configuration or instruction execution using a secure distributed transaction ledger
CN106296243A (zh) 2015-05-22 2017-01-04 阿里巴巴集团控股有限公司 业务实现方法及装置
KR101628624B1 (ko) * 2015-06-01 2016-06-09 주식회사 코인플러그 비트코인을 기반으로 하는 이종국가간 송금시스템 및 방법
US20170011460A1 (en) * 2015-07-09 2017-01-12 Ouisa, LLC Systems and methods for trading, clearing and settling securities transactions using blockchain technology
KR101637854B1 (ko) * 2015-10-16 2016-07-08 주식회사 코인플러그 블록체인을 기반으로 하는 공인인증서 발급시스템과 이를 이용한 블록체인을 기반으로 하는 공인인증서 발급방법 및 블록체인을 기반으로 하는 공인인증서 인증시스템과 이를 이용한 블록체인을 기반으로 하는 공인인증서 인증방법
CN108701325B (zh) 2015-12-21 2022-11-22 星茶瓦公司 自调节交易系统以及用于该系统的方法
CN105608588A (zh) * 2016-01-04 2016-05-25 布比(北京)网络技术有限公司 一种溯源记录处理的方法及装置
US10108812B2 (en) 2016-01-28 2018-10-23 Nasdaq, Inc. Systems and methods for securing and disseminating time sensitive information using a blockchain
WO2017136643A1 (en) 2016-02-03 2017-08-10 Luther Systems System and method for secure management of digital contracts
US10129238B2 (en) 2016-02-10 2018-11-13 Bank Of America Corporation System for control of secure access and communication with different process data networks with separate security features
US10142312B2 (en) 2016-02-22 2018-11-27 Bank Of America Corporation System for establishing secure access for users in a process data network
US20170264428A1 (en) 2016-03-08 2017-09-14 Manifold Technology, Inc. Data storage system with blockchain technology
US20170287090A1 (en) 2016-03-31 2017-10-05 Clause, Inc. System and method for creating and executing data-driven legal contracts
WO2017173271A1 (en) 2016-04-01 2017-10-05 Jpmorgan Chase Bank, N.A. Systems and methods for providing data privacy in a private distributed ledger
US10803537B2 (en) 2016-04-18 2020-10-13 R3 Ltd. System and method for managing transactions in dynamic digital documents
US10810583B2 (en) 2016-04-29 2020-10-20 Digital Asset Holdings Digital asset modeling
CN106230808A (zh) * 2016-07-28 2016-12-14 杭州云象网络技术有限公司 一种基于区块链技术的个人征信系统建设方法
CN106296200A (zh) * 2016-08-13 2017-01-04 深圳市樊溪电子有限公司 基于区块链技术的分布式光伏电力交易平台
US10715331B2 (en) * 2016-12-28 2020-07-14 MasterCard International Incorported Method and system for providing validated, auditable, and immutable inputs to a smart contract

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101102227A (zh) * 2007-06-27 2008-01-09 中兴通讯股份有限公司 一种基于模板的抽象配置业务定制方法
US20100161778A1 (en) * 2008-12-22 2010-06-24 Sap Ag On-demand provisioning of services running on embedded devices
CN104715309A (zh) * 2013-12-11 2015-06-17 阿里巴巴集团控股有限公司 业务控制方法及装置
CN106301881A (zh) * 2015-06-29 2017-01-04 阿里巴巴集团控股有限公司 一种业务处理方法和装置
CN106296009A (zh) * 2016-08-12 2017-01-04 中国银行股份有限公司 一种业务处理方法及装置
CN107025559A (zh) * 2017-01-26 2017-08-08 阿里巴巴集团控股有限公司 一种业务处理方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3547241A4 *

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021515311A (ja) * 2018-09-20 2021-06-17 バイドゥ オンライン ネットワーク テクノロジー (ベイジン) カンパニー リミテッド ブロックチェーン上のスマートコントラクトの検証方法、装置、記憶媒体、及びプログラム
JP7018517B2 (ja) 2018-09-20 2022-02-10 バイドゥ オンライン ネットワーク テクノロジー(ペキン) カンパニー リミテッド ブロックチェーン上のスマートコントラクトの検証方法、装置、記憶媒体、及びプログラム
KR20200068775A (ko) * 2018-11-28 2020-06-16 주식회사 파이랩테크놀로지 태그 추천 모델을 이용한 자동화된 스마트 컨트랙트 태그 생성 및 추천 시스템
KR102184772B1 (ko) 2018-11-28 2020-12-01 주식회사 파이랩테크놀로지 태그 추천 모델을 이용한 자동화된 스마트 컨트랙트 태그 생성 및 추천 시스템
WO2020111424A1 (ko) * 2018-11-28 2020-06-04 주식회사 파이랩테크놀로지 태그 추천 모델을 이용한 자동화된 스마트 컨트랙트 태그 생성 및 추천 시스템
US11057217B2 (en) 2019-04-12 2021-07-06 Advanced New Technologies Co., Ltd. Performing parallel execution of transactions in a distributed ledger system
US11082230B2 (en) 2019-04-12 2021-08-03 Advanced New Technologies Co., Ltd. Performing parallel execution of transactions in a distributed ledger system
US11106487B2 (en) 2019-04-12 2021-08-31 Advanced New Technologies Co., Ltd. Performing parallel execution of transactions in a distributed ledger system
CN110933163A (zh) * 2019-11-27 2020-03-27 腾讯科技(深圳)有限公司 区块链合约部署方法、装置、设备以及存储介质
CN110933163B (zh) * 2019-11-27 2021-08-24 腾讯科技(深圳)有限公司 区块链合约部署方法、装置、设备以及存储介质
CN111241594A (zh) * 2020-01-06 2020-06-05 平安科技(深圳)有限公司 交易信息的加签方法、装置、计算机设备和存储介质
CN111241594B (zh) * 2020-01-06 2023-10-13 平安科技(深圳)有限公司 交易信息的加签方法、装置、计算机设备和存储介质
CN111949297A (zh) * 2020-08-20 2020-11-17 杭州溪塔科技有限公司 一种区块链智能合约升级方法、装置及电子设备
CN111949297B (zh) * 2020-08-20 2023-04-07 杭州溪塔科技有限公司 一种区块链智能合约升级方法、装置及电子设备

Also Published As

Publication number Publication date
CN107025559A (zh) 2017-08-08
KR102201844B1 (ko) 2021-01-13
US10782998B2 (en) 2020-09-22
JP2020507840A (ja) 2020-03-12
AU2018212186B2 (en) 2020-09-10
EP3547241A4 (en) 2020-01-15
US20200174824A1 (en) 2020-06-04
CA3048574A1 (en) 2018-08-02
ZA201904401B (en) 2020-08-26
PH12019501498A1 (en) 2020-06-08
US20190310878A1 (en) 2019-10-10
BR112019014589A2 (pt) 2020-02-18
EP3547241A1 (en) 2019-10-02
MY202364A (en) 2024-04-24
TW201828220A (zh) 2018-08-01
CN107025559B (zh) 2020-09-18
AU2019101602A4 (en) 2020-01-23
US20200285507A1 (en) 2020-09-10
CA3048574C (en) 2021-11-16
KR20190092564A (ko) 2019-08-07
RU2725690C1 (ru) 2020-07-03
AU2018212186A1 (en) 2019-07-18
TWI722256B (zh) 2021-03-21
US11099887B2 (en) 2021-08-24
MX2019008502A (es) 2019-09-13
SG11201906003VA (en) 2019-08-27
US10817330B2 (en) 2020-10-27
JP6912583B2 (ja) 2021-08-04

Similar Documents

Publication Publication Date Title
WO2018137564A1 (zh) 一种业务处理方法及装置
US10776510B2 (en) System for managing personal data
WO2019029457A1 (zh) 客户端上应用程序的更新方法、装置及电子设备
AU2019204054A1 (en) Blockchain-based commodity claim method and apparatus, and electronic device
US20140215025A1 (en) Mobile device application streaming
WO2018019168A1 (zh) 通过移动浏览器唤醒app应用的方法及装置
WO2017034789A1 (en) Application service architecture
WO2017166447A1 (zh) 内核模块加载方法和装置
US11556348B2 (en) Bootstrapping profile-guided compilation and verification
US10656939B2 (en) Modeling lifetime of hybrid software application using application manifest
CN108846129B (zh) 存储数据访问方法、装置及存储介质
US20130007184A1 (en) Message oriented middleware with integrated rules engine
CN111294377B (zh) 一种依赖关系的网络请求发送方法、终端装置及存储介质
WO2023185041A1 (zh) 一种数据处理方法、装置、电子设备和存储介质
CN110580624B (zh) 链码升级方法及装置
CN113448960A (zh) 一种导入表格文件的方法和装置
CN114661426A (zh) 容器管理方法、装置、电子设备及存储介质
CN116610737A (zh) 一种Dataphin数据同步方法、装置、设备和介质
US20180082071A1 (en) Multi-tiered access to functionality of universal platform applications
US20160316040A1 (en) Providing pipeline for unified service and client interface
KR20120061549A (ko) 어플리케이션 서비스 시스템 및 방법

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: 18743988

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 3048574

Country of ref document: CA

ENP Entry into the national phase

Ref document number: 2019537380

Country of ref document: JP

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 20197020783

Country of ref document: KR

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 2018212186

Country of ref document: AU

Date of ref document: 20180119

Kind code of ref document: A

REG Reference to national code

Ref country code: BR

Ref legal event code: B01A

Ref document number: 112019014589

Country of ref document: BR

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2018743988

Country of ref document: EP

Effective date: 20190627

ENP Entry into the national phase

Ref document number: 112019014589

Country of ref document: BR

Kind code of ref document: A2

Effective date: 20190715