WO2018214834A1 - 一种业务执行的方法及装置 - Google Patents

一种业务执行的方法及装置 Download PDF

Info

Publication number
WO2018214834A1
WO2018214834A1 PCT/CN2018/087601 CN2018087601W WO2018214834A1 WO 2018214834 A1 WO2018214834 A1 WO 2018214834A1 CN 2018087601 W CN2018087601 W CN 2018087601W WO 2018214834 A1 WO2018214834 A1 WO 2018214834A1
Authority
WO
WIPO (PCT)
Prior art keywords
block
blockchain
terminal
service
service platform
Prior art date
Application number
PCT/CN2018/087601
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
Application filed by 阿里巴巴集团控股有限公司, 唐强 filed Critical 阿里巴巴集团控股有限公司
Priority to KR1020197022359A priority Critical patent/KR102050006B1/ko
Priority to ES18806660T priority patent/ES2875849T3/es
Priority to JP2019541111A priority patent/JP6727633B2/ja
Priority to MYPI2019004274A priority patent/MY194399A/en
Priority to SG11201906901WA priority patent/SG11201906901WA/en
Priority to EP18806660.9A priority patent/EP3565219B1/en
Priority to PL18806660T priority patent/PL3565219T3/pl
Publication of WO2018214834A1 publication Critical patent/WO2018214834A1/zh
Priority to US16/507,896 priority patent/US10554388B2/en
Priority to PH12019501751A priority patent/PH12019501751A1/en

Links

Images

Classifications

    • 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
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0207Discounts or incentives, e.g. coupons or rebates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/62Establishing a time schedule for servicing the requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Definitions

  • the present application relates to the field of computer technologies, and in particular, to a method and an apparatus for performing a service.
  • the service platform when the service platform detects that the current time reaches the preset time of the service, the window for participating in the service qualification acquisition activity is opened to each user.
  • each user can send a qualification acquisition request for the service to the service platform at this time, and the service platform can select a plurality of users from each user that sends the qualification acquisition request, and issue the qualification for executing the service to the selected one.
  • User can send a qualification acquisition request for the service to the service platform at this time, and the service platform can select a plurality of users from each user that sends the qualification acquisition request, and issue the qualification for executing the service to the selected one.
  • the spike product mentioned here is the service provided by the service platform to the user
  • each user checks through the terminal to start the spike product activity (that is, the time when the service is preset)
  • the service platform providing the spike merchandise activity sends a spike merchandise request (ie, the above qualification acquisition request), and the service platform will issue the eligibility to successfully kill the merchandise to the first few users who first send the spike merchandise request (coming soon to perform the business) Qualification is issued).
  • the service platform may also continuously receive the spike product request sent by each user after the start of the spike product activity, and when the deadline for receiving the spike product request is reached, the user who sends the spike request from the time period is selected. A number of users are randomly selected, and the qualifications of the spiked products are issued to the selected users.
  • the service platform when the preset time arrives, the service platform will receive a large number of eligibility acquisition requests sent by the user for the service, so that the service platform will face a large amount of access pressure during this time, which may lead to business.
  • the platform has operational failures, which in turn reduces the efficiency of business execution.
  • the embodiment of the present application provides a service execution system, which is used to solve the problem that a prior art service platform faces a large access pressure when it arrives at a preset time.
  • the embodiment of the present application provides a method for performing a service, including:
  • the node continuously generates the first block and stores it in the blockchain, and provides the block chain to the terminal that acquires the block generation rule;
  • the terminal acquires the block generation rule from the service platform, and generates a pre-processing block that matches the block generation rule according to the blockchain;
  • the terminal by using the other terminal and the node, performs a consensus on the pre-processing block, and after determining that the pre-processing block passes the consensus, storing the pre-processing block as the second block in the blockchain;
  • the service platform performs a service according to the selected user identifier included in the second block.
  • the embodiment of the present application provides a method for performing a service, which is used to solve the problem that a prior art service platform faces a large access pressure when it arrives at a preset time.
  • An embodiment of the present application provides a method for performing a service, where a node continuously generates a first block and stores it in a blockchain, and provides the block chain to a terminal that obtains a block generation rule, including:
  • the service platform receives the qualification acquisition request sent by the terminal;
  • a block generation rule to the terminal, so that the terminal generates a second block according to the blockchain and the block generation rule, and stores the block in the blockchain;
  • the service is performed according to the selected user identifier included in the second block.
  • the embodiment of the present application provides a device for performing service execution, which is used to solve the problem that a prior art service platform faces a large access pressure when it arrives at a preset time.
  • An embodiment of the present application provides a device for performing a service, where a node continuously generates a first block and stores it in a blockchain, and provides the block chain to a terminal that obtains a block generation rule, including:
  • Receiving a module receiving an eligibility acquisition request sent by the terminal
  • Selecting a module determining, according to the preset time, the first block from the obtained current time block chain, and selecting the second block according to the determined first block;
  • the execution module executes the service according to the selected user identifier included in the second block.
  • the embodiment of the present application provides a method for performing a service, which is used to solve the problem that a prior art service platform faces a large access pressure when it arrives at a preset time.
  • An embodiment of the present application provides a method for performing a service, where a node continuously generates a first block and stores it in a blockchain, and provides the block chain to a terminal that obtains a block generation rule, including:
  • the terminal sends a qualification acquisition request to the service platform, so that the service platform returns a block generation rule to the terminal;
  • the first block and the second block perform business.
  • the embodiment of the present application provides a device for performing service execution, which is used to solve the problem that a prior art service platform faces a large access pressure when it arrives at a preset time.
  • An embodiment of the present application provides a service execution apparatus, where a node continuously generates a first block and stores it in a blockchain, and provides the blockchain to the device that obtains a block generation rule, including :
  • the sending module sends an eligibility acquisition request to the service platform, so that the service platform returns a block generation rule to the device;
  • a consensus module by using the other terminal and the node, to perform consensus on the pre-processing block, and storing the pre-processed block through the consensus as the second block in the blockchain;
  • the receiving module when receiving the qualification confirmation information sent by the service platform, sending the blockchain of the current time saved by the device to the service platform, so that the service platform is based on the current time zone
  • the first block and the second block in the block chain perform services.
  • the service platform may return a block generation rule to the terminal, and not return the block generation to the terminal only when the preset time is reached.
  • the rule therefore, even if the terminal sends a qualification acquisition request to the service platform before the preset time, the service platform will still return the block generation rule to the terminal.
  • the service platform can separate the users participating in the service qualification acquisition in time, and can enable some users to obtain the block generation rules before the preset time, and then arrive at the preset time according to the acquisition.
  • the block generated rules are generated and participate in the business.
  • the service platform selects the user who performs the service
  • the first block included in the blockchain can be used as the time reference
  • the second block is selected, and the user who performs the service is determined according to the selected second block.
  • the terminals need to generate a second area that conforms to the block generation rule according to the time reference of the first block. Piece. Therefore, in this way, not only can the access pressure faced by the service platform when the preset time arrives be greatly reduced, the normal operation of the service platform after the preset time arrives is guaranteed, and the user can ensure that the user passes the terminal.
  • FIG. 1 is a schematic diagram of a system for performing service according to an embodiment of the present application
  • FIG. 2 is a schematic diagram of a service execution process according to an embodiment of the present application.
  • FIG. 3 is a schematic diagram of a portion generated in a blockchain after a preset time specified by a service according to an embodiment of the present disclosure
  • FIG. 4 is a schematic diagram of an apparatus for performing service according to an embodiment of the present application.
  • FIG. 5 is a schematic diagram of another apparatus for performing service according to an embodiment of the present application.
  • the service platform, at least one node, and at least one terminal may constitute a system for service execution, as shown in FIG. 1 .
  • FIG. 1 is a schematic diagram of a system for performing service according to an embodiment of the present application.
  • the service platform can provide the user with the service to be executed, and when receiving the user's request for obtaining the qualification for the service through the terminal, return the corresponding block generation rule to the terminal, so as to receive the The terminal of the block generation rule can have an opportunity to perform the service.
  • the service platform needs to obtain the blockchain from at least one terminal that sends the qualification acquisition request, or the node, and determine the user who performs the service from the blockchain.
  • At least one node may exist in the above system, and these nodes may form a small consensus network, each node may continuously generate a pre-processing block, and send the generated pre-processing block to the small consensus network for consensus. . Once it is determined that the pre-processed block generated by itself passes the consensus, the pre-processed block can be stored as the first block in the blockchain saved by itself.
  • the function of the nodes in the system is to provide a time reference for each terminal participating in the qualification acquisition activity of the service and the service platform, so that each terminal acquires the block from the service platform even at different time points.
  • the generation rule also needs to generate a second block that conforms to the block generation rule based on the same time reference, so as to ensure the fairness of each user to participate in the execution of the service as much as possible. The reason why the block chain formed by the node by generating the first block can play the role of time reference will be described later.
  • the user may send a qualification acquisition request for the service to the service platform through the terminal held by the user, and may generate a rule according to the block returned by the service platform and
  • the above-mentioned blockchain obtained from the node generates a pre-processing block that conforms to the block generation rule.
  • the terminal may send the qualification acquisition request to the service platform at any time point. For example, the terminal may send a qualification acquisition request to the service platform before the preset time arrives, or may send a qualification acquisition request to the service platform when the preset time arrives, or after the preset time, to the service platform. Send an eligibility request.
  • the service platform can return the block generation rule to the terminal.
  • Each of the first blocks included in the blockchain is obtained by continuously generating a pre-processing block, that is, the pre-processing block generated by the node can be stored as the first block in the block chain once it passes the consensus. in.
  • the node does not generate the first block for the service, and the first block can be understood as a common block, and the first block may not contain any data about the service.
  • the second block mentioned above is obtained by the terminal by generating a pre-processing block, that is, the pre-processing block generated by the terminal according to the above-mentioned blockchain and the block generation rule can be used as the second block once it passes the consensus. Stored in this blockchain.
  • the second block is generated by the terminal for the foregoing service.
  • the second block may include data about a service, such as a user identifier.
  • the "first" and “second” here are only used to distinguish different blocks, and have no special meaning.
  • FIG. 2 is a schematic diagram of a service execution process according to an embodiment of the present disclosure, which specifically includes the following steps:
  • the terminal sends an eligibility acquisition request to the service platform, so that the service platform returns a block generation rule to the terminal.
  • the process of the user executing the spike product business can be roughly divided into the following two stages:
  • the qualification acquisition phase In this phase, the user who wants to execute the service can send a qualification acquisition request for the service to the service platform through the terminal held by himself, and in this stage, the service platform is Upon receiving the qualification acquisition request sent by the terminal, the block generation rule is returned to the terminal, so that the terminal that has obtained the block generation rule can have the opportunity to execute the service, that is, the opportunity to spike the product;
  • the service platform needs to select a user who can execute the service from the users who send the qualification acquisition request in the qualification acquisition phase according to a certain manner, and will determine the ability to perform the The user of the business (the user who successfully kills the product) is announced.
  • the service platform can return to the terminal as long as it receives the qualification acquisition request sent by the terminal.
  • Block generation rules In other words, whether the user sends an eligibility acquisition request to the service platform before the preset time of the service by the terminal, or sends an eligibility acquisition request to the service platform when the preset time arrives, or after the preset time
  • the terminal can obtain the block generation rule from the service platform.
  • the preset time mentioned here may refer to the start time of the qualification acquisition phase of the service, that is, the start time of the spike product activity, and when the preset time arrives, the user may participate in the activity of the spike product. .
  • the terminal acquires the block generation rule, which is not considered to have participated in the spike product activity, only when the preset time is Upon arrival, the terminal is truly involved in the spiked merchandise activity.
  • the specific manner of sending the eligibility request for the service (second kill product activity) to the service platform may be: the service platform may be at the preset time.
  • the service platform may be at the preset time.
  • information about the business was published in the business platform.
  • the user when the user activates the client corresponding to the service platform in the terminal, the user may also perform a specified operation in the client, so that the terminal sends the service to the service platform after monitoring that the user performs the specified operation.
  • a request for eligibility for this business For example, after the user starts the client in the terminal, the client can display information about the spike activity and the operation control to the user. When the terminal detects that the user clicks on the participation control in the client, the client can The platform sends an eligibility request for the spike activity.
  • the triggering manner for the terminal to send the qualification obtaining request for the service to the service platform may be other triggering manners besides the two cases described above.
  • the terminal when the client is running, when the terminal monitors that the client publishes information about the service (second kill commodity activity), the terminal may actively send the service to the service platform before the scheduled time of the service arrives. Eligibility to get a request.
  • the terminal may send a qualification acquisition request for the service to the service platform at any time before the preset time, or may set a time duration from the preset time before the preset time. And send a qualification acquisition request for the service to the service platform.
  • the service platform may also select a user who can participate in the spike product activity according to certain conditions. For example, the service platform may determine that the user whose membership level reaches the set level is determined to have the opportunity to participate in the spike product activity. The user actively sends an inquiry message to the users via the user account whether they need to participate in the spike product activity. When the terminal monitors that the user has checked the inquiry message and determines to participate in the spike product activity, the terminal may send a qualification acquisition request for the spike product activity to the service platform. Accordingly, the service platform may also return the corresponding region to the terminal. Block generation rules. In addition to this, there are other triggering methods, which are not illustrated here.
  • the terminal when the terminal arrives at the preset time, the terminal may store the block chain stored at the current time of the node from the preset at least one node, and generate the block according to the block chain. Preprocessing block for rules.
  • the terminal when the terminal arrives at the time when the terminal is determined to be preset, the terminal needs to obtain the blockchain from the preset at least one node, because the terminal can obtain the service from the service platform before the preset time.
  • the rule is generated for the block for the service (secondary product activity). Therefore, the terminal can start generating the pre-processing block that meets the block generation rule immediately after acquiring the block generation rule. In this way, the terminal may have generated the pre-processing block that meets the block generation rule before the preset time, and wait until the preset time arrives, directly sending the generated pre-processing block to Consensus in the consensus network.
  • the terminal that preferentially obtains the block generation rule before the preset time can pass the method of “getting the first person” in comparison with the terminal that obtains the block generation rule after the preset time.
  • the pre-processing block generated by itself and conforming to the block generation rule is sent to the consensus network for consensus.
  • the time for the terminal to acquire the block generation rule is later than the pre-determination without considering the actual computing power of the terminal.
  • the terminal that acquires the block generation rule before the set time Therefore, the time at which the terminal acquiring the block generation rule after the preset time is generated to generate the pre-processing block is also likely to be later than the terminal that acquires the block generation rule before the preset time.
  • the time for sending the pre-processed block generated by itself to the consensus network for consensus will be later than the terminal that acquires the block generation rule before the preset time.
  • the terminal that first obtains the block generation rule can obtain a large probability by the above-mentioned method of “getting the first person”.
  • the block generates a pre-processing block of the rule, thereby increasing the probability of executing the service to a certain extent (ie, the probability of killing the product), which will result in a lack of fairness in the execution of the service.
  • At least one node may be preset, and the nodes may continuously generate a pre-processing block over time, and use the pre-processing block through the consensus as the first area.
  • the blocks are stored in their own blockchain.
  • these nodes are equivalent to form a small consensus network.
  • the node can continuously generate non-service pre-processing blocks and send the generated pre-processing blocks to this small consensus network.
  • a consensus is reached.
  • each node in the small consensus network can also store the pre-processing block as the first block in its own blockchain.
  • each block in the blockchain contains the header hash of the previous block, so when the terminal can be based on
  • the block chain stored by the nodes generates a pre-processing block that conforms to the above-mentioned block generation rule
  • the terminal if the terminal generates a pre-processing block that conforms to the block generation rule before the preset time of the service, the pre-processing block
  • the block corresponding to the header Hash of the previous block (which may be the first block or the second block) must be generated before the preset time in the blockchain. Block.
  • the pre-processing block passes the consensus, it will inevitably be connected to the block, and these nodes will continue to generate the pre-processing block, and the pre-processing block through the consensus is connected as the first block. After the pre-processing block (generated by the terminal).
  • the service platform can have a greater chance of executing the service in order to reduce the terminal that acquires the above-mentioned block generation rule before the preset time, compared to the terminal that acquires the block generation rule after the preset time (
  • the service platform can determine the blockchain obtained from each terminal (the terminal that has acquired the block generation rule at this time) or the above-mentioned node when determining the user who can execute the service, and
  • the preset time is a dividing line, and the blockchain of the latter part is intercepted as a blockchain that determines which users have the opportunity to perform the service.
  • the pre-block includes the area corresponding to the header Hash of the previous block.
  • the block is located in the block generated before the preset time in the blockchain, so even if the terminal waits until the preset time arrives, the pre-processing block is sent to the consensus network for consensus, the pre-processing After the block passes the consensus, it will inevitably be connected to the block (ie, the previous block) as the second block, so that the second block will have a great possibility to fall into the blockchain. In the part before the moment.
  • the service platform only needs to ignore the part before the preset time in the blockchain, so that the processing previously done by the terminal is put to the east.
  • the terminal that obtains the block generation rule before the preset time needs to execute the service, it needs to acquire the current time stored by the node from the preset nodes when determining the time when the current time reaches the preset of the service.
  • the blockchain, and then the pre-processing block generated by the terminal according to the blockchain and conforming to the block generation rule may be selected by the service platform after passing the consensus, and the terminal generating the pre-processing block will also have a probability ( That is, the user holding the terminal can execute the service (ie, kill the item).
  • the terminal may further determine the block feature value of the last block in the blockchain at the current time. And generating, according to the feature value of the block, the user identifier and the adjustment parameter, a feature value to be verified that meets the foregoing block generation rule, and further, according to the generated feature value to be verified, the user identifier, the feature value of the block, and the adjustment parameter. Generate a pre-processing block that conforms to the block generation rule.
  • the above mentioned feature values can uniquely identify the block and ensure the uniqueness of the block in the block chain.
  • the block feature value mentioned here can be understood as the header hash of the previous block, and the feature value to be verified can be understood as the header hash of the pre-processing block.
  • the block feature value may exist in other forms, in addition to being in the form of a hash value.
  • MD5 message digest algorithm 5
  • the eigenvalues may appear in the form of MD5 values.
  • the eigenvalues to be verified should also appear in the form of MD5 values.
  • the specific form of the eigenvalue can be determined by the specific asymmetric encryption algorithm, and only the obtained eigenvalue is unique.
  • the user identifier mentioned above refers to the user identifier (such as user account number, ID number, etc.) used by the user to generate a pre-processing block through the terminal.
  • the service platform needs to pass the user identifier included in the second block in the blockchain to determine the user who can perform the service (that is, the user who successfully kills the product). Therefore, the terminal needs to user when generating the pre-processing block.
  • the identifier is written to the preprocessing block as what is contained in the preprocessing block.
  • the adjustment parameters mentioned above are used to make the to-be-verified feature value generated by the terminal according to the block feature value, the user identifier, and the adjustment parameter comply with the block generation rule.
  • the block generation rule specifies that the to-be-verified feature value generated by the terminal needs to satisfy the hash value of the first 8 bits being 0, if the terminal according to the block feature value (ie, the hash value of the previous block), the user identifier, and a
  • the randomly selected adjustment parameter if the generated feature value to be verified does not satisfy the requirement, the terminal can continuously adjust the adjustment parameter, so that after several adjustments, the terminal can according to the block feature value, the user identifier, and the adjustment.
  • the parameter obtains the feature value to be verified whose first 8 bits are 0.
  • the terminal may further generate a pre-compliance rule according to the generated feature value to be verified, the user identifier, the block feature value, and the finally obtained adjustment parameter.
  • the block is processed, and in the subsequent process, the pre-process block is sent to the consensus network for consensus.
  • S203 Consensus the pre-processing block through the other terminal and the node, and store the pre-processing block that is passed through the consensus as the second block in the blockchain.
  • the terminal may send the pre-processing block to the consensus network to share the pre-processing block through the consensus network.
  • the consensus network may be composed of each terminal that has acquired the block generation rule at the current time (that is, the terminal held by each user who has participated in the spiked commodity activity at the current time) and the preset at least one node. . Therefore, when the terminal sends the pre-processing block to the consensus network, the address of each terminal that has obtained the block generation rule at the current time is obtained from the service platform, and the pre-processing is obtained through the obtained address. The block is sent to each terminal for consensus.
  • the addresses of these nodes can be written to the terminal in advance (or the client installed in the terminal), and the terminal can directly send the pre-processed block to the nodes through the address of the node itself saved.
  • the pre-blocks are agreed upon by the terminals that have acquired the block generation rules at the current time.
  • the terminal can also obtain the addresses of these nodes from the service platform.
  • each terminal (each terminal that has acquired the block generation rule at the current time) and the at least one node may store the pre-process block as the second block in the area where the pre-processing block is stored. In the blockchain.
  • the node may participate in the consensus work of each pre-processing block generated by each terminal (that is, the terminal that obtains the block generation rule). In the process, these nodes can continue to generate pre-processing blocks and send these pre-processing blocks to the consensus network for consensus. For each node, the pre-processing block generated by the node in the qualification acquisition phase of the service may be sent only to the remaining nodes for consensus, and the pre-processing block is not sent to the current time. Each terminal of the block generation rule.
  • the service platform may send a message to the preset nodes, and notify the nodes to temporarily stop generating the pre-processing block, and join the terminals that acquire the block generation rule.
  • the consensus of the generated preprocessing block is working.
  • the blocks accessing the blockchain will all be generated by the terminals that acquire the block generation rules.
  • S204 When receiving the qualification confirmation information sent by the service platform, send the blockchain of the current time saved by the terminal to the service platform, so that the service platform is based on the current time block.
  • the first block and the second block in the chain perform services.
  • the service platform may acquire, from the at least one terminal or the at least one node, a block chain stored by the current time terminal or the node, and determine, from the blockchain, that the Business users.
  • the preset condition mentioned here may be: monitoring whether the current time has reached the deadline for the qualification acquisition phase specified by the business (ie, the deadline for participating in the spiked commodity activity).
  • the service platform determines that the current time has reached the deadline for the qualification acquisition phase of the service specification, it may determine that the service has met the preset condition, and then obtain at least one terminal of the block generation rule from the current time or The blockchain corresponding to the current time is obtained from at least one of the preset preset nodes.
  • the preset condition mentioned here may also be: monitoring whether the number of blocks in the blockchain has reached the set number specified by the service.
  • the service platform can monitor the number of blocks of each terminal (the terminal that acquires the block generation rule) or the blockchain stored in the node at any time. When it is detected that the number of blocks in the blockchain has reached the set number specified by the service, it may be determined that the service satisfies the preset condition, and the blockchain is obtained from each terminal or node.
  • the number of settings specified by the service mentioned herein may refer to: the total number of blocks in the blockchain, and may also refer to blocks that are accessed in the blockchain after the preset time of the service. quantity.
  • the preset conditions mentioned here may also exist in other forms, and the specific content of the preset conditions may be set by the staff of the service platform, and the examples are not illustrated here.
  • the service platform may send the qualification confirmation information to each terminal (each terminal that acquires the block generation rule) or the foregoing node, so that when each terminal or node receives the qualification confirmation information,
  • the blockchain corresponding to the current time saved by itself may be sent to the service platform, so that the service platform can determine the user who can perform the service from the blockchain.
  • the terminal or the node may send all the blockchains saved by the current time to the service platform, or send the part of the blockchain to the service platform.
  • the part of the blockchain sent by the terminal or the node to the service platform may be the part of the blockchain that is generated after the service reaches the preset time. For example, after the spiked commodity activity starts, each terminal or node will The pre-processing block through the consensus stores the portion of the block chain in the form of the first block or the second block, as shown in FIG.
  • FIG. 3 is a schematic diagram of a part generated in a blockchain after a preset time specified by a service according to an embodiment of the present disclosure.
  • the blockchain contains two blocks, one block is the first block generated by the node, represented by A, and the other block is the second block generated by the terminal. , expressed in B.
  • the blockchain can be divided into two parts, one part is a blockchain formed before the preset time specified by the above service, and this part can be called the first part, in the first part, most of the block Both are composed of the first block (ie, A block) generated by the node.
  • Another part of the blockchain refers to a part of the blockchain formed after the first part of the blockchain, that is, after the arrival of the preset time specified by the service, the terminal or node generates the pre-processing block.
  • a part of the blockchain which can be called the second part. In the second part, a part of the block is obtained by the node by generating the first block (ie, the A block), and the other part is obtained by the terminal by generating the second block (ie, the B block).
  • the terminal or the node may send the second part of the blockchain to the service platform, and the service platform may determine according to the acquired blockchain. The user who executed the service.
  • the terminal or node may also randomly select a location in the first part of the blockchain for interception, and send the intercepted second half (including part of the first part and the entire second part) to the service platform. in.
  • the service platform may determine a first block from the blockchain according to a preset time, and select a second block from the blockchain according to the determined first block.
  • each first block may include a generation time of the first block, and since each block in the block chain is sequentially connected in time sequence, the service platform may The generation time of each first block is determined in the blockchain, and the first block whose generation time is closest to the preset time is further determined, and then the first block is determined as the marked block.
  • the service platform when determining the marked block, may divide the acquired blockchain into two by a preset time, and each block included in the previous part is For the block generated before the preset time (such as the block included in the first part of FIG. 3), the latter part is the block generated after the preset time (such as the block included in the second part of FIG. 3) .
  • the service platform may determine, from the latter part, the first block whose generation time is closest to the preset time, and determine the first block as the marked block.
  • At least one second block located after the marked block may be selected from the blockchain, and then determined according to the selected user identifier included in the at least one second block.
  • a user who is able to execute the business (a user who has the opportunity to spike the item).
  • the service platform may first select each second block located after the identification block (the second block mentioned here refers to the block generated by each terminal in the qualification acquisition phase). Then, according to the order of the blocks in the blockchain, the second block of the first set number is selected, and then the execution is determined according to the user identifiers included in the second block of the set number.
  • the user of the service ie, the user who determined the success of the spike to the item).
  • the service platform may also directly select a set number of blocks located after the marked block according to the order of the blocks in the block chain after determining the marked block.
  • each block may be encountered, that is, whether the block is the first block or the second block, and when the block is the first block, The first block is not selected and jumps to the next block, and when it is determined that the block is the second block, the block is selected.
  • the service platform needs to select the top set of the second block from the identified block after identifying the block.
  • the service platform selects a set number of second blocks from the blockchain, the user identifiers included in the second blocks may be further determined, thereby determining a user who can perform the service.
  • the service platform may determine a main chain from the blockchain, and according to the main chain, determine that execution can be performed. The user of the business.
  • the service platform may determine a longest chain from the obtained blockchain, and determine the longest chain as the main chain.
  • the service platform determines, from the main chain, a first block whose generation time is closest to the preset time, and determines the first block. Mark the block. Then, the service platform selects a set number of second blocks located after the marked block from the main chain according to the order of the blocks on the main chain, and then includes the selected second blocks according to the selected blocks.
  • the user ID identifies the user who executed the service.
  • the staff in the service platform may set an eligibility acquisition rule for the foregoing service, and the eligibility acquisition rule may stipulate how the user can have the opportunity to execute the service.
  • the qualification acquisition rule corresponding to the service specifies which blocks in the blockchain that are subsequently saved by the respective terminals are the areas that meet the qualification acquisition rules. Piece. In other words, among the users who have obtained the block generation rule, which blocks generated by the user through the terminal are eligible for the acquisition rule.
  • the staff of the service platform can formulate multiple qualification acquisition rules for the above-mentioned services according to the actual situation, so that the service platform can subsequently obtain the rules according to the qualification, and determine from the obtained blockchain that the qualification acquisition rules are met.
  • the second block and not limited to the second set of the second block after the marked block in the blockchain, is used as the basis for determining the "winning" user ("winning" user means successful spike) To the user of the product). In this way, after the time when the service is preset, the user who obtains the block generation rule will also have the opportunity to execute the service, so that the service brings a better user experience to the user.
  • the service platform may return the block generation rule corresponding to the service and the eligibility acquisition rule to the terminal, and the terminal obtains the eligibility acquisition rule.
  • the qualification acquisition rule can then be saved.
  • the service platform may also send the block generation rule and the qualification acquisition rule separately to the terminal. For example, after receiving the qualification acquisition request sent by the terminal, the service platform may only return the block generation rule to the terminal, and the qualification acquisition rule may be sent to each terminal in a unified time period.
  • the purpose of the terminal to save the eligibility acquisition rule is that after the service platform determines at least one user capable of executing the service in the qualification confirmation phase, the selected at least one second block may include the user identifier (ie, the service can be executed).
  • the user's user ID) is published.
  • the terminal can verify the user identifier published by the service platform through its own saved qualification obtaining rule to determine whether the user corresponding to the user identifier has the qualification to execute the service.
  • the service platform can separate the users participating in the service qualification acquisition in time, the part of the user can obtain the block generation rule before the preset time, and then at the preset time. Upon arrival, the service is participated according to the acquired block generation rules. Moreover, since the service platform selects the user who performs the service, the first block included in the blockchain can be used as the time reference, the second block is selected, and the user who performs the service is determined according to the selected second block. . In this way, even if each terminal can acquire the block generation rule at different time points, in order to be able to perform services, the terminals need to generate a second area that conforms to the block generation rule according to the time reference of the first block. Piece.
  • the service platform may acquire the blockchain from the node when the current time is reached, and determine that the current time is located in the last block in the blockchain, and then This block is determined to be a marked block. Then, when the service platform detects that the service meets the preset condition, the blockchain at this time can be obtained from the node or the terminal, and each zone in the blockchain at the time is located behind the marked block. Piece.
  • the service platform can determine the user who performs the service by marking each block after the block. The point that the identification block mentioned here is different from the above-mentioned marked block is that the above-mentioned marked block is determined by the first block.
  • the last block located in the blockchain may be the first block or the second block. Therefore, the tag block mentioned here may be obtained by the first block or by the second block.
  • the business execution method described above can be applied to a scenario such as a car shake number, a lottery, etc., in addition to being applied to a scenario of spiked merchandise. I will not give an example here.
  • the preset time mentioned above can also refer to other times.
  • the preset time may also be the deadline for the qualification acquisition phase of the service.
  • the service platform may determine that the generation time is closest to the preset time.
  • the first block determines the first block as the marked block.
  • the service platform may further determine each second block in the blockchain that is located before the marked block, and place the second blocks according to the order of the second blocks in the blockchain. A second number of blocks closest to the marked block are selected to determine the user performing the service through the selected second blocks.
  • each terminal or node may generate a pre-processing block at the same time, but the time for each pre-processing block to pass the consensus is not the same. Based on this, when each terminal or node performs consensus on the pre-processing block generated by the terminal, after determining that the pre-processing block consensus is passed, the pre-processing block is time-stamped, and the timestamp indicates the pre-processing block. The time to pass the consensus.
  • the second blocks can be sorted in chronological order, thereby The second block is arranged as much as possible on one chain, thereby reducing the possibility of branching in the block chain.
  • the pre-processing block can also be time-stamped, and the pre-processing block is stored in the blockchain in the form of the first block in chronological order.
  • the embodiment of the present application further provides two types of service execution devices, as shown in FIG. 4 and FIG.
  • FIG. 4 is a schematic diagram of a device for performing service according to an embodiment of the present disclosure, specifically including:
  • the receiving module 401 receives an eligibility acquisition request sent by the terminal;
  • the selecting module 404 is configured to determine, according to the preset time, the first block from the obtained current time block, and select the second block according to the determined first block;
  • the executing module 405 performs a service according to the selected user identifier included in the second block.
  • the selecting module 404 is configured to determine a generation time of each first block in the blockchain, determine a first block whose generation time is closest to the preset time, and determine it as a mark block; A second block located after the marked block is selected in the blockchain at the current time.
  • the selecting module 404 selects, according to the current order of the blocks in the blockchain at the current time, a set number of second blocks located after the marked block from the block chain at the current time.
  • FIG. 5 is a schematic diagram of another apparatus for performing service according to an embodiment of the present disclosure, specifically including:
  • the sending module 501 sends an eligibility acquisition request to the service platform, so that the service platform returns a block generation rule to the device;
  • the generating module 502 is configured to generate a pre-processing block according to the blockchain and the block generation rule;
  • the consensus module 503 by using the other terminal and the node, to perform consensus on the pre-processing block, and storing the pre-processing block that is the consensus as the second block in the blockchain;
  • the receiving module 504 when receiving the qualification confirmation information sent by the service platform, sending the blockchain of the current time saved by the device to the service platform, so that the service platform is configured according to the current time.
  • the first block and the second block in the blockchain perform services.
  • the generating module 502 is configured to determine a block feature value of a last block of the blockchain, and determine an adjustment parameter, so that the to-be-verified feature value generated by the adjustment parameter, the block feature value, and the user identifier meets And generating the pre-processing block according to the to-be-verified feature value, the block feature value, the adjustment parameter, and the user identifier.
  • the service platform may return a block generation rule to the terminal, and not return the block generation to the terminal only when the preset time is reached.
  • the rule therefore, even if the terminal sends a qualification acquisition request to the service platform before the preset time, the service platform will still return the block generation rule to the terminal.
  • the service platform can separate the users participating in the service qualification acquisition in time, and can enable some users to obtain the block generation rules before the preset time, and then arrive at the preset time according to the acquisition.
  • the block generated rules are generated and participate in the business.
  • the service platform selects the user who performs the service
  • the first block included in the blockchain can be used as the time reference
  • the second block is selected, and the user who performs the service is determined according to the selected second block.
  • the terminals need to generate a second area that conforms to the block generation rule according to the time reference of the first block. Piece. Therefore, in this way, not only can the access pressure faced by the service platform when the preset time arrives be greatly reduced, the normal operation of the service platform after the preset time arrives is guaranteed, and the user can ensure that the user passes the terminal.
  • 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. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment, or a combination of software and hardware. Moreover, 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.
  • computer-usable storage media including but not limited to disk storage, CD-ROM, optical storage, etc.
  • 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 computer storage media 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

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Strategic Management (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Finance (AREA)
  • Marketing (AREA)
  • Game Theory and Decision Science (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本申请公开一种业务执行的方法及装置,该方法中业务平台在接收到终端发送的资格获取请求后,即可向终端返回区块生成规则,而并不是只有在到达预设的时刻时,才会向终端返回区块生成规则,所以,即使终端在预设的时刻之前,向业务平台发送资格获取请求,业务平台依然会将区块生成规则返回给终端。换句话说,业务平台可以在时间上将参与该业务资格获取的用户进行分离,可以使一部分用户在预设的时刻之前,获取到区块生成规则,进而在预设的时刻到达时,根据获取到的区块生成规则,参与该业务。这样则极大的缓解了业务平台在预设的时刻到达时所面临的访问压力,保障了预设的时刻到达后业务平台的正常运行。

Description

一种业务执行的方法及装置 技术领域
本申请涉及计算机技术领域,尤其涉及一种业务执行的方法及装置。
背景技术
随着计算机技术的不断发展,多种新兴的业务模式相继面世,这些新兴的业务模式不但为用户的业务执行提供了便利,其模式的创新也为用户在执行业务的过程中带来了全新的体验。
当前,在这些新兴的业务模式中,一些诸如限时抢购等业务尤为受到人们的关注与欢迎,用户可以在业务规定的指定时间内,通过争抢的方式以低廉的价格获取到执行该业务的资格。
具体的,在实际应用中,当业务平台监测到当前时刻到达业务预设的时刻时,将向各用户开放参与该业务资格获取活动的窗口。相应的,各用户在此时可以向业务平台发送针对该业务的资格获取请求,而业务平台可以从发送资格获取请求的各用户中选取若干个用户,并将执行该业务的资格发放给选取出的用户。
例如,在一项秒杀商品活动(这里提到的秒杀商品即为业务平台向用户提供的业务)中,各用户通过终端查看到秒杀商品活动开始时(即到达上述业务预设的时刻),向提供秒杀商品活动的业务平台发送秒杀商品请求(即上述的资格获取请求),而该业务平台则将向最先发送秒杀商品请求的前若干名用户发放能够成功秒杀商品的资格(即将执行业务的资格进行发放)。当然,业务平台也可以在秒杀商品活动开始后,先不断的接收各用户发送的秒杀商品请求,而在到达接收秒杀商品请求的截止时间时,从这段时间内发送秒杀商品请求的各用户中随机选取若干名用户,将秒杀商品的资格发放给选取出的这些用户。
然而,通常情况下,当上述预设的时刻到达时,业务平台瞬间将接收到大 量用户针对该业务发送的资格获取请求,使得业务平台在这段时间将面临大量的访问压力,从而可能引发业务平台出现运行故障,进而降低业务的执行效率。
发明内容
本申请实施例提供一种业务执行的系统,用以解决现有技术业务平台在预设的时刻到达时所面临的访问压力较大的问题。
本申请实施例提供了一种业务执行的方法,包括:
节点持续生成第一区块并存储在区块链中,以及将所述区块链提供给获取到区块生成规则的终端;
终端从业务平台中获取所述区块生成规则,并根据所述区块链,生成与所述区块生成规则相匹配的预处理块;
终端通过其他终端以及所述节点,对所述预处理块进行共识,并当确定所述预处理块通过共识后,将所述预处理块作为第二区块存储在所述区块链中;
所述业务平台当确定满足预设条件时,从至少一个终端或至少一个节点中获取当前时刻所述区块链的全部或部分;
所述业务平台根据预设的时刻,从获取的当前时刻所述区块链中确定第一区块,并根据确定的第一区块选择第二区块;
所述业务平台根据选择出的第二区块中包含的用户标识执行业务。
本申请实施例提供一种业务执行的方法,用以解决现有技术业务平台在预设的时刻到达时所面临的访问压力较大的问题。
本申请实施例提供了一种业务执行的方法,节点持续生成第一区块并存储在区块链中,以及将所述区块链提供给获取到区块生成规则的终端,包括:
业务平台接收终端发送的资格获取请求;
根据所述资格获取请求,向所述终端返回区块生成规则,以使所述终端根据所述区块链以及所述区块生成规则生成第二区块并存储在所述区块链中;
当确定满足预设条件时,从至少一个终端或至少一个所述节点中获取当前 时刻所述区块链的全部或部分;
根据预设的时刻,从获取的当前时刻所述区块链中确定第一区块,并根据确定的第一区块选择第二区块;
根据选择出的第二区块中包含的用户标识执行业务。
本申请实施例提供一种业务执行的装置,用以解决现有技术业务平台在预设的时刻到达时所面临的访问压力较大的问题。
本申请实施例提供了一种业务执行的装置,节点持续生成第一区块并存储在区块链中,以及将所述区块链提供给获取到区块生成规则的终端,包括:
接收模块,接收终端发送的资格获取请求;
返回模块,根据所述资格获取请求,向所述终端返回区块生成规则,以使所述终端根据所述区块链以及所述区块生成规则生成第二区块并存储在所述区块链中;
获取模块,当确定满足预设条件时,从至少一个终端或至少一个所述节点中获取当前时刻所述区块链的全部或部分;
选择模块,根据预设的时刻,从获取的当前时刻所述区块链中确定第一区块,并根据确定的第一区块选择第二区块;
执行模块,根据选择出的第二区块中包含的用户标识执行业务。
本申请实施例提供一种业务执行的方法,用以解决现有技术业务平台在预设的时刻到达时所面临的访问压力较大的问题。
本申请实施例提供了一种业务执行的方法,节点持续生成第一区块并存储在区块链中,以及将所述区块链提供给获取到区块生成规则的终端,包括:
终端向业务平台发送资格获取请求,以使所述业务平台向所述终端返回区块生成规则;
根据所述区块链以及所述区块生成规则,生成预处理块;
通过其他终端以及所述节点,对所述预处理块进行共识,并将通过共识的所述预处理块作为第二区块存储在所述区块链中;
当接收到所述业务平台发送的资格确认信息时,将所述终端自身保存的当前时刻所述区块链发送至所述业务平台,以使所述业务平台根据当前时刻所述区块链中的第一区块和第二区块执行业务。
本申请实施例提供一种业务执行的装置,用以解决现有技术业务平台在预设的时刻到达时所面临的访问压力较大的问题。
本申请实施例提供了一种业务执行的装置,节点持续生成第一区块并存储在区块链中,,以及将所述区块链提供给获取到区块生成规则的所述装置,包括:
发送模块,向业务平台发送资格获取请求,以使所述业务平台向所述装置返回区块生成规则;
生成模块,根据所述区块链以及所述区块生成规则,生成预处理块;
共识模块,通过其他终端以及所述节点,对所述预处理块进行共识,并将通过共识的所述预处理块作为第二区块存储在所述区块链中;
接收模块,当接收到所述业务平台发送的资格确认信息时,将所述装置自身保存的当前时刻所述区块链发送至所述业务平台,以使所述业务平台根据当前时刻所述区块链中的第一区块和第二区块执行业务。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:
在本申请实施例中,业务平台在接收到终端发送的资格获取请求后,即可向终端返回区块生成规则,而并不是只有在到达预设的时刻时,才会向终端返回区块生成规则,所以,即使终端在预设的时刻之前,向业务平台发送资格获取请求,业务平台依然会将区块生成规则返回给终端。换句话说,业务平台可以在时间上将参与该业务资格获取的用户进行分离,可以使一部分用户在预设的时刻之前,获取到区块生成规则,进而在预设的时刻到达时,根据获取到的区块生成规则,参与该业务。
并且,由于业务平台在选取执行业务的用户时,可以以区块链中包含的第一区块作为时间基准,选择第二区块,并根据选择出的第二区块,确定执行业 务的用户。这样一来,即使各终端可以在不同的时间点获取到该区块生成规则,但是为了能够执行业务,这些终端需要根据第一区块这一时间基准来生成符合区块生成规则的第二区块。所以,通过这种方式,不仅能够极大的缓解了业务平台在预设的时刻到达时所面临的访问压力,保障了预设的时刻到达后业务平台的正常运行,还能够保证若用户通过终端能够执行该业务,则即使通过终端在预设的时刻之前就已经获取到了区块生成规则,也需要在预设的时刻到达时才开始生成符合区块生成规则的第二区块,从而保证了业务执行的公平性。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例提供的业务执行的系统示意图;
图2为本申请实施例提供的业务执行过程的示意图;
图3为本申请实施例提供的区块链中在业务规定的预设的时刻之后所生成的部分的示意图;
图4为本申请实施例提供的一种业务执行的装置示意图;
图5为本申请实施例提供的另一种业务执行的装置示意图。
具体实施方式
在本申请实施例中,业务平台、至少一个节点以及至少一个终端可以构成用于业务执行的系统,如图1所示。
图1为本申请实施例提供的业务执行的系统示意图。
在图1所示的系统中,业务平台可向用户提供所要执行的业务,并在接收到用户通过终端发送针对业务的资格获取请求时,向终端返回相应的区块生成规则,以使接收到该区块生成规则的终端能够有机会执行该业务。业务平台后 续需要从发送资格获取请求的至少一个终端,或是节点中获取到区块链,并从该区块链中确定出执行该业务的用户。
上述系统中可以存在至少一个节点,这些节点可以组成一个小型的共识网络,每个节点可以持续不断的生成预处理块,并将自己生成的预处理块发送至这一小型的共识网络中进行共识。一旦确定自己所生成的预处理块通过共识后,则可将该预处理块作为第一区块存储在自身所保存的区块链中。
该系统中的节点所起到的作用是为了向参与此次业务的资格获取活动的各终端,以及业务平台提供一个时间基准,使得各终端即使是在不同的时间点从业务平台获取到区块生成规则,也需要基于同一时间基准,生成符合该区块生成规则的第二区块,从而尽可能的保证了各用户参与到此次业务执行的公平性。而节点通过生成第一区块而组成的区块链为什么能够起到时间基准的作用,将在后续进行说明。
在上述系统中,用户若要参与此次业务的资格获取活动中,可通过自己所持有的终端向业务平台发送针对该业务的资格获取请求,并可根据业务平台返回的区块生成规则以及从节点获取到的上述区块链,生成符合该区块生成规则的预处理块。其中,为了有效的缓解业务平台在预设的时刻到达时所面临的访问压力,在本申请实施例中,终端可以在任意时间点向业务平台发送资格获取请求。如,终端可以在预设的时刻到达之前,向业务平台发送资格获取请求,也可以在预设的时刻到达时,向业务平台发送资格获取请求,抑或是在预设的时刻之后,向业务平台发送资格获取请求。而业务平台无论在何时,只要接收到终端发送的资格获取请求,即可向终端返回区块生成规则。
上述区块链中包含的各第一区块是节点通过持续不断生成预处理块而得到的,即,节点生成的预处理块一旦通过共识,即可作为第一区块存储在该区块链中。其中,节点并不是针对该业务而生成第一区块的,该第一区块可以理解成一个普通的区块,该第一区块中可以不包含有任何关于业务的数据。
而上述提到的第二区块是由终端通过生成预处理块而得到的,即,终端根 据上述区块链以及区块生成规则生成的预处理块一旦通过共识,则可作为第二区块存储在该区块链中。其中,该第二区块是终端针对上述业务而生成的,换句话说,该第二区块中可以包含有关于业务的数据,如用户标识等。这里的“第一”和“第二”仅用于区分不同的区块,没有特殊含义。
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
为了方便对本申请实施例所提供的业务执行方法进行说明,下面将以秒杀商品为场景来详细说明整个业务执行的过程。
图2为本申请实施例提供的业务执行过程的示意图,具体包括以下步骤:
S201:终端向业务平台发送资格获取请求,以使所述业务平台向所述终端返回区块生成规则。
在本申请实施例中,用户执行秒杀商品业务的过程可以大致分为以下两个阶段:
一、资格获取阶段:在这一阶段中,想要执行该业务的用户可以通过自己所持有的终端向业务平台发送针对此次业务的资格获取请求,而在这一阶段中,业务平台在接收到终端发送的资格获取请求时,将向终端返回区块生成规则,以使获取到区块生成规则的终端能够有机会执行该业务,即有机会秒杀到商品;
二、资格确定阶段,在资格获取阶段过后,业务平台需要按照一定的方式,从在资格获取阶段中发送资格获取请求的用户中选取出能够执行该业务的用户,并将确定出的能够执行该业务的用户(成功秒杀商品的用户)进行公布。
为了缓解业务平台在业务预设的时刻到达时所面临的访问压力,保障业务平台的正常运行,在本申请实施例中,业务平台只要接收到终端发送的资格获取请求,即可向终端返回区块生成规则。换句话说,无论用户通过终端在该业 务预设的时刻之前向业务平台发送资格获取请求,还是在该预设的时刻到达时向业务平台发送资格获取请求,抑或是在该预设的时刻之后,向业务平台发送资格获取请求,终端均可从业务平台中获取到区块生成规则。这样一来即可将各终端向业务平台发送资格获取请求的时间点进行离散,从而有效的缓解了业务平台在预设的时刻到达时所面临的访问压力。其中,这里提到的预设的时刻可以指该业务的资格获取阶段的开始时间,即,秒杀商品活动的开始时间,当该预设的时刻到达时,用户可以参与到该秒杀商品的活动中。
需要说明的是,终端在上述预设的时刻(即秒杀商品活动的开始时间)到达之前,获取到区块生成规则,并不算是已经参与到该秒杀商品活动中,只有当该预设的时刻到达时,该终端才真正意义上算是参与到该秒杀商品活动中。
在本申请实施例中,终端在上述预设的时刻到达之前,向上述业务平台发送针对该业务(秒杀商品活动)的资格获取请求的具体方式可以是:该业务平台可以在该预设的时刻之前,将关于该业务的信息发布在该业务平台中。当用户启动终端中对应该业务平台的客户端时,使得终端将触发向该业务平台发送针对该业务的资格获取请求,进而使得该业务平台可以根据终端发送的该资格获取请求,向该终端返回相应的区块生成规则。
除此之外,当用户启动终端中对应上述业务平台的客户端时,也可以通过在该客户端中执行指定操作,以使终端在监测到用户执行了该指定操作后,向该业务平台发送针对该业务的资格获取请求。例如,假设用户启动终端中的客户端后,该客户端可以向用户显示关于该秒杀商品活动的信息以及操作控件,当终端监测到用户点击了该客户端中的参与控件时,则可向业务平台发送针对该秒杀商品活动的资格获取请求。
当然,在本申请实施例中,终端向上述业务平台发送针对该业务的资格获取请求的触发方式除了上述说明的两种情况外,还可以是其他的触发方式。例如,客户端在运行的情况下,当终端监测到客户端中发布了关于上述业务(秒杀商品活动)的信息时,可以在该业务预设的时刻到达之前,主动向业务平台 发送针对该业务的资格获取请求。其中,终端可以在该预设的时刻之前的任意一个时刻,向业务平台发送针对该业务的资格获取请求,也可以在该预设的时刻之前,距离该预设的时刻设定时长的一个时刻,向业务平台发送针对该业务的资格获取请求。
再例如,业务平台也可以按照一定的条件,选择能够参与到此次秒杀商品活动中的用户,如,业务平台可以将会员等级达到设定等级的用户确定为能够有机会参与该秒杀商品活动的用户,并主动通过用户账号向这些用户发送是否需要参与该秒杀商品活动的询问消息。而终端监测到用户在查看到该询问消息,确定参与该秒杀商品活动时,则可向业务平台发送针对该秒杀商品活动的资格获取请求,相应的,业务平台也可以向该终端返回相应的区块生成规则。除此之外还有其他的触发方式,在此就不一一举例说明了。
S202:根据所述区块链以及所述区块生成规则,生成预处理块。
在本申请实施例中,当终端在确定该预设的时刻到达时,可以从预设的至少一个节点中获取节点当前时刻存储的区块链,进而根据该区块链生成符合该区块生成规则的预处理块。
在本申请实施例中,终端在确定该业务预设的时刻到达时,需要从预设的至少一个节点获取区块链的目的在于:由于终端可以在该预设的时刻之前,从业务平台获取到针对该业务(秒杀商品活动)的区块生成规则,所以,终端也可以在获取到该区块生成规则后,立即开始生成符合该区块生成规则的预处理块。这样一来,该终端有可能在该预设的时刻之前,就已经将符合该区块生成规则的预处理块生成完毕,等到该预设的时刻到达时,直接将生成的预处理块发送至共识网络中进行共识。换句话说,相比于在预设的时刻之后获取到该区块生成规则的终端,在该预设的时刻之前优先获取到该区块生成规则的终端可以通过“先获取先生成”的方式,优先将自己所生成的符合该区块生成规则的预处理块发送至共识网络中进行共识。
但是,对于在该预设的时刻之后获取到上述区块生成规则的其他终端来说, 在不考虑终端实际计算能力的情况下,这些终端获取该区块生成规则的时间就已经晚于在预设的时刻之前获取该区块生成规则的终端。所以,这些在预设的时刻之后获取该区块生成规则的终端生成预处理块的时间也很可能会晚于在预设的时刻之前获取该区块生成规则的终端。相应的,将自己所生成的预处理块发送至共识网络中进行共识的时间也将会晚于在预设的时刻之前获取该区块生成规则的终端。
所以,若无法保证各终端(无论是在上述预设的时刻之前获取到区块生成规则的终端,还是在该预设的时刻之后获取到该区块生成规则的终端)尽可能在同一时间(或同一时间基准)开始生成符合该区块生成规则的预处理块,则先获取到该区块生成规则的终端可以通过上述说明的“先获取先生成”的方式,有很大几率先生成符合该区块生成规则的预处理块,从而在一定程度上提高了自己执行该业务的几率(即秒杀到商品的几率),这样将会造成该业务执行中的公平性缺失。
为了有效的解决上述问题,在本申请实施例中,可以预设至少一个节点,这些节点可以随着时间的推移,持续不断的生成预处理块,并将通过共识的预处理块作为第一区块存储在自身的区块链中。换句话说,这些节点相当于组成了一个小型的共识网络,对于每个节点来说,该节点可以不断的生成非业务的预处理块,并将生成的预处理块发送至这个小型的共识网络中进行共识。该预处理块一旦通过这个小型共识网络的共识后,这个小型共识网络中的各节点也可该预处理块作为第一区块存储在自身的区块链中。
其中,节点生成的第一区块之所以能够起到时间基准的原因在于,在实际应用中,区块链中每个区块都包含有上一个区块的头Hash,所以,当终端能够基于这些节点存储的区块链来生成符合上述区块生成规则的预处理块时,若该终端在该业务预设的时刻之前,生成符合区块生成规则的预处理块,则该预处理块所包含的上一区块的头Hash所对应的区块(该区块可能是第一区块,也可能是第二区块)必然是该区块链中位于该预设的时刻之前所生成的区块。所 以,该预处理块一旦通过共识,则也将必然会接在该区块之后,而这些节点依然会不断的生成预处理块,并将通过共识的预处理块作为第一区块接在该预处理块(终端生成的)之后。
所以,业务平台为了降低在预设的时刻之前获取到上述区块生成规则的终端相比于在预设的时刻之后获取到该区块生成规则的终端,能够有更大的几率执行该业务(秒杀到商品)的情况出现,业务平台在确定能够执行该业务的用户时,可从各终端(此时已获取到区块生成规则的终端)或是上述节点获取到的区块链,并以该预设的时刻为分界线,截取后一部分的区块链,作为确定哪些用户能够有机会执行该业务的区块链。
这样一来,若终端在该业务预设的时刻之前,就已经将符合该区块生成规则的预处理块生成完毕,则由于该预处理块包含的上一个区块的头Hash所对应的区块是位于区块链中预设的时刻之前所生成的区块中,所以,即使该终端等到该预设的时刻到达时,再将该预处理块发送至共识网络中进行共识,该预处理块通过共识后也必然会作为第二区块接在该区块(即上一个区块)之后,从而使得该第二区块将有极大的可能落入到该区块链中预设的时刻之前的那部分中。相应的,业务平台在资格确认阶段中只需将区块链中预设的时刻之前的那部分不予考虑,即可使得该终端之前所做的处理付诸东流。
因此,在预设的时刻之前获取到区块生成规则的终端若要执行该业务,则需要在确定当前时刻到达该业务预设的时刻时,从预设的这些节点获取到节点当前时刻存储的区块链,进而使得终端根据该区块链所生成的符合区块生成规则的预处理块,才有可能在通过共识后,被业务平台选中,生成该预处理块的终端也将有几率(也即持有该终端的用户)能够执行该业务(即秒杀到商品)。
在本申请实施例中,终端从预设的至少一个节点获取到当前时刻节点存储的区块链后,可以进一步的确定出当前时刻该区块链中位于最后一个区块的区块特征值,继而根据该区块特征值,用户标识以及调整参数,生成符合上述区块生成规则的待验证特征值,进而根据生成的待验证特征值、该用户标识、该 区块特征值以及该调整参数,生成符合该区块生成规则的预处理块。
上述提到的特征值(无论是区块特征值还是待验证特征值)能够唯一标识区块,保证区块链中区块的唯一性。其中,这里提到的区块特征值可以理解成上一个区块的头Hash,而待验证特征值可以理解成该预处理块的头Hash。在本申请实施例中,区块特征值除了可以Hash值的形式存在外,还可以以其他的形式出现,如,若采用信息摘要算法5(Message-Digest Algorithm 5,MD5),则该区块特征值可以以MD5值的形式出现,当然相应的,待验证特征值也应以MD5值的形式出现。特征值具体形式可以通过具体采用何种非对称加密算法来决定,只需保证得出的特征值具有唯一性即可。
上述提到的用户标识是指用户通过终端生成预处理块时所使用的用户标识(如用户账号、身份证号等)。由于业务平台后续需要通过区块链中第二区块包含的用户标识,确定出能够执行该业务的用户(即成功秒杀到商品的用户),所以,终端在生成该预处理块时需要将用户标识作为预处理块中包含的内容写入到预处理块中。
上述提到的调整参数用于使终端根据区块特征值、用户标识、调整参数生成的待验证特征值符合区块生成规则。例如,假设该区块生成规则规定终端生成的待验证特征值需要满足前8位是0的Hash值,则若终端根据区块特征值(即上一个区块的Hash值)、用户标识以及一个随机选取的调整参数,生成的待验证特征值不满足这一规定,则终端可以通过不断调整该该调整参数,使得经过若干次的调整后,终端能够根据区块特征值、用户标识以及该调整参数,得到前8位是0的待验证特征值。
终端在生成符合上述区块生成规则的待验证特征值后,可以进一步的根据生成的待验证特征值、用户标识、区块特征值以及最终得到的调整参数,生成符合该区块生成规则的预处理块,进而在后续过程中,将该预处理块发送至共识网络中进行共识。
S203:通过其他终端以及所述节点,对所述预处理块进行共识,并将通过 共识的所述预处理块作为第二区块存储在所述区块链中。
终端在生成符合上述区块生成规则的预处理块后,可将该预处理块发送至共识网络中,以通过共识网络对该预处理块进行共识。其中,该共识网络中可以由当前时刻已获取到区块生成规则的各终端(即当前时刻已参与到秒杀商品活动中的各用户所持有的终端)以及上述预设的至少一个节点来组成。因此,终端将该预处理块发送至共识网络的过程中,可以先从业务平台中获取到当前时刻已获取到区块生成规则的各终端的地址,进而通过获取到的地址,将该预处理块发送至各终端进行共识。
而对于节点来说,这些节点的地址可以事先写入到终端中(或是终端安装的客户端中),终端可直接通过其自身保存的节点的地址,将预处理块发送至这些节点中,以使这些节点以及当前时刻已获取到区块生成规则的各终端对该预处理块进行共识。当然,终端也可以从业务平台中获取到这些节点的地址。
当该预处理块通过共识网络的共识后,各终端(当前时刻已获取到区块生成规则的各终端)以及上述至少一个节点可将该预处理块作为第二区块存储在自身存储的区块链中。
需要说明的是,上述预设的至少一个节点在该业务预设的时刻到达后,可以参与到各终端(即获取到区块生成规则的终端)生成的各预处理块的共识工作中。而在此过程中,这些节点依然可以持续不断的生成预处理块,并将这些预处理块发送至共识网络中进行共识。其中,对于每个节点来说,该节点在该业务的资格获取阶段中所生成的预处理块可以只发送至其余的节点来进行共识,而不将该预处理块发送至当前时刻已获取到区块生成规则的各终端。
当然,当到达该业务预设的时刻时,上述业务平台可以向这些预设的节点发送消息,已通知这些节点暂时停止生成预处理块,并加入到对获取到区块生成规则的各终端所生成的预处理块的共识工作中。相应的,在该业务的资格获取阶段中,接入到区块链中的区块将全部由获取到区块生成规则的各终端来生成。
S204:当接收到所述业务平台发送的资格确认信息时,将所述终端自身保存的当前时刻所述区块链发送至所述业务平台,以使所述业务平台根据当前时刻所述区块链中的第一区块和第二区块执行业务。
业务平台在确定该业务满足预设条件时,可从至少一个终端或是至少一个节点中获取到当前时刻终端或是节点所存储的区块链,并从该区块链中确定出能够执行该业务的用户。
其中,这里提到的预设条件可以是:监测当前时刻是否已经到达了该业务规定的资格获取阶段的截止时间(即参与秒杀商品活动的截止时间)。业务平台在确定出当前时刻已到达该业务规定的资格获取阶段的截止时间时,可以确定出该业务已经满足该预设条件,进而从当前时刻已获取到区块生成规则的至少一个终端或是上述预设的至少一个节点中获取到当前时刻所对应的区块链。
除此之外,这里提到的预设条件也可以是:监测该区块链中区块的数量是否已经达到了该业务所规定的设定数量。业务平台可以时刻对各终端(获取到区块生成规则的终端)或是节点中存储的区块链的区块数量进行监测。当监测到该区块链中的区块数量已到达该业务所规定的设定数量时,则可以确定出该业务满足该预设条件,进而从各终端或是节点中获取该区块链。其中,这里提到的该业务所规定的设定数量可以指:该区块链中的总区块数量,也可以指在该业务预设的时刻之后接入到该区块链中的区块的数量。当然,这里提到的预设条件也可以以其他形式存在,预设条件的具体内容可以由业务平台的工作人员进行设定,在此就不一一举例说明了。
业务平台在获取上述区块链的过程中,可以向各终端(获取到区块生成规则的各终端)或是上述节点发送资格确认信息,使得当各终端或是节点接收到该资格确认信息时,可将自身保存的当前时刻对应的区块链发送至该业务平台中,以使该业务平台可以从该区块链中确定能够执行该业务的用户。
终端或节点在接收到该资格确定信息后,可将当前时刻自身保存的区块链的全部发送至业务平台中,也可将该区块链的部分发送至业务平台中。其中, 终端或节点向业务平台发送的该区块链的部分可以是指该区块链中在业务到达上述预设的时刻后生成的部分,如,秒杀商品活动开始后,各终端或节点将通过共识的预处理块以第一区块或第二区块的形式存储在区块链中所组成的部分,如图3所示。
图3为本申请实施例提供的区块链中在业务规定的预设的时刻之后所生成的部分的示意图。
在图3中,区块链中包含有两种区块,一种区块是由节点生成的第一区块,用A来进行表示,另一种区块是由终端生成的第二区块,用B来表示。该区块链可以分为两个部分,一个部分是在上述业务规定的预设的时刻之前所形成的区块链,这部分可以称之为第一部分,在第一部分中,大部分的区块均是由节点所生成的第一区块(即A区块)来组成的。该区块链的另一个部分是指在该区块链的第一部分之后,所形成的一部分区块链,即,在业务规定的预设的时刻到达后,终端或节点通过生成预处理块所组成的一部分区块链,这部分区块链可以称之为第二部分。在第二部分中,一部分区块是由节点通过生成第一区块(即A区块)而得到的,另一部分是由终端通过生成第二区块(即B区块)得到的。
基于此,终端或节点在接收到业务平台发送的资格确认信息后,可将该区块链中的第二部分发送至业务平台,而业务平台则可以根据获取到的这部分区块链,确定出执行该业务的用户。
当然,终端或节点也可在该区块链中的第一部分中随机选择一处进行截取,并将截取的后半部分(包含部分第一部分以及整个第二部分)的区块链发送至业务平台中。
业务平台获取到上述区块链后,可以根据预设的时刻,从该区块链中确定出一个第一区块,并根据确定出的该第一区块从该区块链中选择第二区块。具体的,在申请实施例中,每个第一区块中可包含有该第一区块的生成时间,由于区块链中各区块都是按照时间顺序依次相连的,所以,业务平台可以从该区 块链中确定出各第一区块的生成时间,并进一步的确定出生成时间距离该预设的时刻最近的第一区块,继而将该第一区块确定为标记区块。
需要说明的是,在本申请实施例中,业务平台在确定标记区块时,可以以预设的时刻为界限,将获取到的区块链一分为二,前一部分中包含的各区块均为在预设的时刻之前生成的区块(如图3中第一部分包含的区块),后一部分为在预设的时刻之后生成的区块(如图3中第二部分包含的区块)。业务平台可以从后一部分中确定出生成时间距离该预设的时刻最近的第一区块,并将该第一区块确定为标记区块。
业务平台确定出该标记区块后,可从该区块链中选择位于该标记区块之后的至少一个第二区块,进而根据选择出的至少一个第二区块中包含的用户标识,确定出能够执行该业务的用户(有机会能够秒杀到商品的用户)。其中,业务平台可以先选择出位于该标识区块之后的各第二区块(这里提到的第二区块是指在资格获取阶段中各终端生成的区块)。而后按照该区块链中各区块的排列顺序,将排在最前面的设定数量的第二区块选择出来,进而根据这些设定数量的第二区块中包含的用户标识,确定出执行该业务的用户(即确定出成功秒杀到商品的用户)。
业务平台也可以在确定出上述标记区块后,按照该区块链中各区块的排列顺序,直接选择出位于该标记区块之后的设定数量的区块。其中,业务平台在选择设定数量的区块时,可以每遇到一个区块,即确定该区块是第一区块还是第二区块,当该区块为第一区块时,则不选择该第一区块,并跳转到下一区块,而当确定该区块为第二区块时,则选出该区块。换句话说,业务平台需要通过这种方式,从标识区块之后选择出最靠前的设定数量的第二区块。
业务平台从该区块链中选择出设定数量的第二区块后,可进一步确定出这些第二区块包含的用户标识,进而确定出能够执行该业务的用户。
需要说明的是,在本申请实施例中,业务平台从各终端或是节点获取到上述区块链后,可以从区块链中确定出一条主链,并依据该主链,确定出能够执 行该业务的用户。在本申请实施例中,业务平台可以从获取到的区块链中确定出一条最长链,并将该最长链确定为主链。
相应的,业务平台从获取到的区块链中确定出主链后,从该主链中确定出的生成时间距离该预设的时刻最近的第一区块,并将该第一区块确定为标记区块。而后,业务平台按照各区块在该主链上的排列顺序,从该主链中选择出位于该标记区块之后的设定数量的第二区块,继而根据选择出的这些第二区块包含的用户标识,确定出执行该业务的用户。
当然,在本申请实施例中,业务平台中的工作人员可以针对上述业务设置一个资格获取规则,该资格获取规则可以规定用户如何才能有机会执行该业务。比如说,对于秒杀商品的业务来说,该业务所对应的资格获取规则规定了后续各终端保存的区块链中,位于该区块链中的哪几个区块是符合资格获取规则的区块。换句话说,在获取到区块生成规则的用户中,哪些用户通过终端生成的区块是符合资格获取规则的。
业务平台的工作人员可以结合具体的实际情况,针对上述业务制定出多种资格获取规则,使得业务平台后续可以根据该资格获取规则,从获取到的区块链中确定出符合该资格获取规则的第二区块,而并不仅仅局限于将位于区块链中标记区块之后的最靠前的设定数量第二区块作为确定“获奖”用户的依据(“获奖”用户即指成功秒杀到商品的用户)。这样一来,在该业务预设的时刻到达后,后获取到区块生成规则的用户也将有机会执行该业务,从而使得该业务给用户带来了更好的用户体验。
在本申请实施例中,业务平台在接收到终端发送的针对该业务的资格获取请求后,可向该终端返回该业务对应的区块生成规则以及上述资格获取规则,终端在获取到资格获取规则后,可将该资格获取规则进行保存。当然,业务平台也可将区块生成规则和资格获取规则分开发送给终端。例如,业务平台在接收到终端发送的资格获取请求后,可仅将区块生成规则返回给终端,而资格获取规则可在一个统一的时间段发送至各终端中。
终端保存该资格获取规则的目的在于,业务平台在资格确认阶段中确定出至少一个能够执行该业务的用户后,可以将选择出的至少一个第二区块包含的用户标识(即能够执行该业务的用户的用户标识)进行公布。相应的,终端可以通过其自身保存的资格获取规则,对业务平台所公布的用户标识进行验证,以确定这些用户标识所对应的用户是否具备执行该业务的资格。
从上述方法中可以看出,由于业务平台可以在时间上将参与该业务资格获取的用户进行分离,可以使一部分用户在预设的时刻之前,获取到区块生成规则,进而在预设的时刻到达时,根据获取到的区块生成规则,参与该业务。并且,由于业务平台在选取执行业务的用户时,可以以区块链中包含的第一区块作为时间基准,选择第二区块,并根据选择出的第二区块,确定执行业务的用户。这样一来,即使各终端可以在不同的时间点获取到该区块生成规则,但是为了能够执行业务,这些终端需要根据第一区块这一时间基准来生成符合区块生成规则的第二区块。
所以,通过这种方式,不仅能够极大的缓解了业务平台在预设的时刻到达时所面临的访问压力,保障了预设的时刻到达后业务平台的正常运行,还能够保证若用户通过终端能够执行该业务,则即使通过终端在预设的时刻之前就已经获取到了区块生成规则,也需要在预设的时刻到达时才开始生成符合区块生成规则的第二区块,从而保证了业务执行的公平性。
需要说明的是,业务平台可以在监测到当前时刻到达上述业务预设的时刻时,从节点中获取到区块链,并确定出当前时刻位于该区块链中最后的一个区块,继而将该区块确定为标记区块。而后,业务平台当监测到该业务满足预设条件时,可从节点或是终端中获取到此时的区块链,并确定出此时的区块链中,位于该标记区块之后的各区块。业务平台可以通过标记区块之后的各区块,确定出执行该业务的用户。其中,这里提到的标识区块与上述标记区块不同的一点在于,上述标记区块由第一区块确定出的。而这里由于业务平台在预设的时刻所获取到的区块链中,位于该区块链中的最后一个区块可能是第一区块,也 可能是第二区块。所以,这里提到的标记区块可以是由第一区块得到的,也可以是由第二区块得到的。
上述说明的业务执行方法除了可以运用到秒杀商品的场景中,也可以运用到诸如汽车摇号、抽奖等业务场景中来。在此就不一一举例说明了。相应的,由于该业务执行的方式可以适用于多个类似秒杀商品的业务场景,所以,上述提到的预设的时刻还可以指其他时间。如,该预设的时刻也可以是业务的资格获取阶段的截止时间,相应的,业务平台在监测到当前时刻到达该预设的时刻时,可以确定出生成时间距离该预设的时刻最近的第一区块,并将确定出的第一区块确定为标记区块。而后,业务平台可进一步的确定出该区块链中位于该标记区块之前的各第二区块,并按照各第二区块在区块链中的排列顺序,将这些第二区块中最靠近该标记区块的设定数量的第二区块选取出来,以通过这些选取出的各第二区块,确定出执行该业务的用户。
还需说明的是,在本申请实施例中,各终端或是节点可能会在同一时刻生成预处理块,但是,各预处理块通过共识的时间则不尽相同。基于此,各终端或是节点在对终端生成的预处理块进行共识时,可以在确定出预处理块共识通过后,对该预处理块打上一个时间戳,这个时间戳表明了该预处理块通过共识的时间。这样一来,后续各终端或节点将携带有时间戳的各预处理块作为第二区块存储在该区块链中时,可以按照时间顺序,将各第二区块进行排序,从而使得各第二区块尽可能的排列在一条链上,进而降低了区块链中产生支链的可能。当然,节点所生成的预处理块一旦通过共识后,也可在该预处理块打上一个时间戳,并将该预处理块按照时间顺序,以第一区块的形式存储在区块链中。
以上为本申请实施例提供的业务执行方法,基于同样的思路,本申请实施例还提供两种业务执行的装置,如图4、5所示。
图4为本申请实施例提供的一种业务执行的装置示意图,具体包括:
接收模块401,接收终端发送的资格获取请求;
返回模块402,根据所述资格获取请求,向所述终端返回区块生成规则, 以使所述终端根据所述区块链以及所述区块生成规则生成第二区块并存储在所述区块链中;
获取模块403,当确定满足预设条件时,从至少一个终端或至少一个所述节点中获取当前时刻所述区块链的全部或部分;
选择模块404,根据预设的时刻,从获取的当前时刻所述区块链中确定第一区块,并根据确定的第一区块选择第二区块;
执行模块405,根据选择出的第二区块中包含的用户标识执行业务。
所述选择模块404,确定所述区块链中各第一区块的生成时间;确定生成时间距离所述预设的时刻最近的第一区块,并将其确定为标记区块;从获取的当前时刻所述区块链中选择位于所述标记区块之后的第二区块。
所述选择模块404,按照当前时刻所述区块链中各区块的排列顺序,从当前时刻所述区块链中选择位于所述标记区块之后的设定数量的第二区块。
图5为本申请实施例提供的另一种业务执行的装置示意图,具体包括:
发送模块501,向业务平台发送资格获取请求,以使所述业务平台向所述装置返回区块生成规则;
生成模块502,根据所述区块链以及所述区块生成规则,生成预处理块;
共识模块503,通过其他终端以及所述节点,对所述预处理块进行共识,并将通过共识的所述预处理块作为第二区块存储在所述区块链中;
接收模块504,当接收到所述业务平台发送的资格确认信息时,将所述装置自身保存的当前时刻所述区块链发送至所述业务平台,以使所述业务平台根据当前时刻所述区块链中的第一区块和第二区块执行业务。
所述生成模块502,确定所述区块链最后一个区块的区块特征值;确定调整参数,以使通过所述调整参数、所述区块特征值以及用户标识生成的待验证特征值符合所述区块生成规则;根据所述待验证特征值、所述区块特征值、所述调整参数以及所述用户标识,生成所述预处理块。
在本申请实施例中,业务平台在接收到终端发送的资格获取请求后,即可 向终端返回区块生成规则,而并不是只有在到达预设的时刻时,才会向终端返回区块生成规则,所以,即使终端在预设的时刻之前,向业务平台发送资格获取请求,业务平台依然会将区块生成规则返回给终端。换句话说,业务平台可以在时间上将参与该业务资格获取的用户进行分离,可以使一部分用户在预设的时刻之前,获取到区块生成规则,进而在预设的时刻到达时,根据获取到的区块生成规则,参与该业务。
并且,由于业务平台在选取执行业务的用户时,可以以区块链中包含的第一区块作为时间基准,选择第二区块,并根据选择出的第二区块,确定执行业务的用户。这样一来,即使各终端可以在不同的时间点获取到该区块生成规则,但是为了能够执行业务,这些终端需要根据第一区块这一时间基准来生成符合区块生成规则的第二区块。所以,通过这种方式,不仅能够极大的缓解了业务平台在预设的时刻到达时所面临的访问压力,保障了预设的时刻到达后业务平台的正常运行,还能够保证若用户通过终端能够执行该业务,则即使通过终端在预设的时刻之前就已经获取到了区块生成规则,也需要在预设的时刻到达时才开始生成符合区块生成规则的第二区块,从而保证了业务执行的公平性。
在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 (11)

  1. 一种业务执行的方法,包括:
    节点持续生成第一区块并存储在区块链中,以及将所述区块链提供给获取到区块生成规则的终端;
    终端从业务平台中获取所述区块生成规则,并根据所述区块链,生成与所述区块生成规则相匹配的预处理块;
    终端通过其他终端以及所述节点,对所述预处理块进行共识,并当确定所述预处理块通过共识后,将所述预处理块作为第二区块存储在所述区块链中;
    所述业务平台当确定满足预设条件时,从至少一个终端或至少一个节点中获取当前时刻所述区块链的全部或部分;
    所述业务平台根据预设的时刻,从获取的当前时刻所述区块链中确定第一区块,并根据确定的第一区块选择第二区块;
    所述业务平台根据选择出的第二区块中包含的用户标识执行业务。
  2. 一种业务执行的方法,节点持续生成第一区块并存储在区块链中,以及将所述区块链提供给获取到区块生成规则的终端,包括:
    业务平台接收终端发送的资格获取请求;
    根据所述资格获取请求,向所述终端返回区块生成规则,以使所述终端根据所述区块链以及所述区块生成规则生成第二区块并存储在所述区块链中;
    当确定满足预设条件时,从至少一个终端或至少一个所述节点中获取当前时刻所述区块链的全部或部分;
    根据预设的时刻,从获取的当前时刻所述区块链中确定第一区块,并根据确定的第一区块选择第二区块;
    根据选择出的第二区块中包含的用户标识执行业务。
  3. 如权利要求2所述的方法,根据预设的时刻,从获取的当前时刻所述区块链中确定第一区块,并根据确定的第一区块选择第二区块,具体包括:
    确定所述区块链中各第一区块的生成时间;
    确定生成时间距离所述预设的时刻最近的第一区块,并将其确定为标记区块;
    从获取的当前时刻所述区块链中选择位于所述标记区块之后的第二区块。
  4. 如权利要求3所述的方法,从获取的当前时刻所述区块链中选择位于所述标记区块之后的第二区块,具体包括:
    按照当前时刻所述区块链中各区块的排列顺序,从当前时刻所述区块链中选择位于所述标记区块之后的设定数量的第二区块。
  5. 一种业务执行的方法,节点持续生成第一区块并存储在区块链中,以及将所述区块链提供给获取到区块生成规则的终端,包括:
    终端向业务平台发送资格获取请求,以使所述业务平台向所述终端返回区块生成规则;
    根据所述区块链以及所述区块生成规则,生成预处理块;
    通过其他终端以及所述节点,对所述预处理块进行共识,并将通过共识的所述预处理块作为第二区块存储在所述区块链中;
    当接收到所述业务平台发送的资格确认信息时,将所述终端自身保存的当前时刻所述区块链发送至所述业务平台,以使所述业务平台根据当前时刻所述区块链中的第一区块和第二区块执行业务。
  6. 如权利要求5所述的方法,根据所述区块链以及所述区块生成规则,生成预处理块,具体包括:
    确定所述区块链最后一个区块的区块特征值;
    确定调整参数,以使通过所述调整参数、所述区块特征值以及用户标识生成的待验证特征值符合所述区块生成规则;
    根据所述待验证特征值、所述区块特征值、所述调整参数以及所述用户标识,生成所述预处理块。
  7. 一种业务执行的装置,节点持续生成第一区块并存储在区块链中,以及将所述区块链提供给获取到区块生成规则的终端,包括:
    接收模块,接收终端发送的资格获取请求;
    返回模块,根据所述资格获取请求,向所述终端返回区块生成规则,以使所述终端根据所述区块链以及所述区块生成规则生成第二区块并存储在所述区块链中;
    获取模块,当确定满足预设条件时,从至少一个终端或至少一个所述节点中获取当前时刻所述区块链的全部或部分;
    选择模块,根据预设的时刻,从获取的当前时刻所述区块链中确定第一区块,并根据确定的第一区块选择第二区块;
    执行模块,根据选择出的第二区块中包含的用户标识执行业务。
  8. 如权利要求7所述的装置,所述选择模块,确定所述区块链中各第一区块的生成时间;确定生成时间距离所述预设的时刻最近的第一区块,并将其确定为标记区块;从获取的当前时刻所述区块链中选择位于所述标记区块之后的第二区块。
  9. 如权利要求8所述的装置,所述选择模块,按照当前时刻所述区块链中各区块的排列顺序,从当前时刻所述区块链中选择位于所述标记区块之后的设定数量的第二区块。
  10. 一种业务执行的装置,节点持续生成第一区块并存储在区块链中,以及将所述区块链提供给获取到区块生成规则的所述装置,包括:
    发送模块,向业务平台发送资格获取请求,以使所述业务平台向所述装置返回区块生成规则;
    生成模块,根据所述区块链以及所述区块生成规则,生成预处理块;
    共识模块,通过其他终端以及所述节点,对所述预处理块进行共识,并将通过共识的所述预处理块作为第二区块存储在所述区块链中;
    接收模块,当接收到所述业务平台发送的资格确认信息时,将所述装置自身保存的当前时刻所述区块链发送至所述业务平台,以使所述业务平台根据当前时刻所述区块链中的第一区块和第二区块执行业务。
  11. 如权利要求10所述的装置,所述生成模块,确定所述区块链最后一个区块的区块特征值;确定调整参数,以使通过所述调整参数、所述区块特征值以及用户标识生成的待验证特征值符合所述区块生成规则;根据所述待验证特征值、所述区块特征值、所述调整参数以及所述用户标识,生成所述预处理块。
PCT/CN2018/087601 2017-05-22 2018-05-21 一种业务执行的方法及装置 WO2018214834A1 (zh)

Priority Applications (9)

Application Number Priority Date Filing Date Title
KR1020197022359A KR102050006B1 (ko) 2017-05-22 2018-05-21 서비스 실행 방법 및 장치
ES18806660T ES2875849T3 (es) 2017-05-22 2018-05-21 Método y dispositivo de ejecución de servicio
JP2019541111A JP6727633B2 (ja) 2017-05-22 2018-05-21 サービス実行方法およびデバイス
MYPI2019004274A MY194399A (en) 2017-05-22 2018-05-21 Service execution method and device
SG11201906901WA SG11201906901WA (en) 2017-05-22 2018-05-21 Service execution method and device
EP18806660.9A EP3565219B1 (en) 2017-05-22 2018-05-21 Service execution method and device
PL18806660T PL3565219T3 (pl) 2017-05-22 2018-05-21 Sposób i urządzenie do wykonywania usługi
US16/507,896 US10554388B2 (en) 2017-05-22 2019-07-10 Service execution method and device
PH12019501751A PH12019501751A1 (en) 2017-05-22 2019-07-29 Service execution method and device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201710362074.3 2017-05-22
CN201710362074.3A CN107395664B (zh) 2017-05-22 2017-05-22 一种业务执行的方法及装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US16/507,896 Continuation US10554388B2 (en) 2017-05-22 2019-07-10 Service execution method and device

Publications (1)

Publication Number Publication Date
WO2018214834A1 true WO2018214834A1 (zh) 2018-11-29

Family

ID=60338964

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/087601 WO2018214834A1 (zh) 2017-05-22 2018-05-21 一种业务执行的方法及装置

Country Status (12)

Country Link
US (1) US10554388B2 (zh)
EP (1) EP3565219B1 (zh)
JP (1) JP6727633B2 (zh)
KR (1) KR102050006B1 (zh)
CN (1) CN107395664B (zh)
ES (1) ES2875849T3 (zh)
MY (1) MY194399A (zh)
PH (1) PH12019501751A1 (zh)
PL (1) PL3565219T3 (zh)
SG (1) SG11201906901WA (zh)
TW (1) TWI664549B (zh)
WO (1) WO2018214834A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11444769B2 (en) * 2018-07-02 2022-09-13 Ares Technologies, Inc. Systems, devices, and methods for signal localization and verification of sensor data

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107395664B (zh) * 2017-05-22 2019-09-03 阿里巴巴集团控股有限公司 一种业务执行的方法及装置
CN108648078B (zh) * 2018-05-02 2021-03-23 杭州溪塔科技有限公司 一种交易预处理方法、装置及电子设备
CN109218424B (zh) * 2018-09-14 2020-11-03 四川海纳仁东科技有限公司 基于区块链节点算力的任务分配方法
US11614769B2 (en) * 2019-07-15 2023-03-28 Ecole Polytechnique Federale De Lausanne (Epfl) Asynchronous distributed coordination and consensus with threshold logical clocks
CN110598471A (zh) * 2019-09-17 2019-12-20 深圳市网心科技有限公司 基于区块链的时间戳生成方法、装置、系统及存储介质
US11682095B2 (en) 2020-02-25 2023-06-20 Mark Coast Methods and apparatus for performing agricultural transactions
CN111614968B (zh) * 2020-05-11 2021-12-17 厦门潭宏信息科技有限公司 一种直播方法、设备及存储介质
CN113761179A (zh) 2020-06-03 2021-12-07 富泰华工业(深圳)有限公司 评论管控方法、服务器及可读存储介质
CN112162671B (zh) * 2020-10-13 2022-03-25 北京达佳互联信息技术有限公司 直播数据处理方法、装置、电子设备及存储介质
CN113765665B (zh) * 2021-11-10 2022-02-08 济南量子技术研究院 基于量子密钥的区块链网络及数据安全传输方法
CN116204110A (zh) * 2021-11-30 2023-06-02 腾讯科技(深圳)有限公司 基于区块链的区块处理方法、装置及设备、介质、产品

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105096132A (zh) * 2014-05-22 2015-11-25 阿里巴巴集团控股有限公司 交易资格的控制、获取方法及装置
CN105160572A (zh) * 2015-09-30 2015-12-16 努比亚技术有限公司 控制订单生成的装置、方法及秒杀系统
US20160283920A1 (en) * 2015-03-28 2016-09-29 Justin Fisher Authentication and verification of digital data utilizing blockchain technology
CN105991731A (zh) * 2015-02-13 2016-10-05 中兴通讯股份有限公司 一种获取信息的方法、智能终端和服务端
CN106411777A (zh) * 2016-09-27 2017-02-15 福建中金在线信息科技有限公司 一种处理高并发数据的方法和系统
CN106446067A (zh) * 2016-09-06 2017-02-22 联动优势科技有限公司 一种获取交易数据的方法和装置
CN106603698A (zh) * 2016-12-28 2017-04-26 北京果仁宝科技有限公司 基于dpos的区块链共识方法和节点
CN107395664A (zh) * 2017-05-22 2017-11-24 阿里巴巴集团控股有限公司 一种业务执行的方法及装置

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7496667B2 (en) * 2006-01-31 2009-02-24 International Business Machines Corporation Decentralized application placement for web application middleware
US20090138328A1 (en) * 2007-11-26 2009-05-28 Yahoo! Inc. Targeted distribution of commercial incentives
US9608829B2 (en) * 2014-07-25 2017-03-28 Blockchain Technologies Corporation System and method for creating a multi-branched blockchain with configurable protocol rules
US10592985B2 (en) * 2015-03-02 2020-03-17 Dell Products L.P. Systems and methods for a commodity contracts market using a secure distributed transaction ledger
US20170011460A1 (en) * 2015-07-09 2017-01-12 Ouisa, LLC Systems and methods for trading, clearing and settling securities transactions using blockchain technology
US20180218342A1 (en) * 2015-07-28 2018-08-02 Razer (Asia-Pacific) Pte. Ltd. Servers for a reward-generating distributed digital resource farm and methods for controlling a server for a reward-generating distributed digital resource farm
US10402792B2 (en) 2015-08-13 2019-09-03 The Toronto-Dominion Bank Systems and method for tracking enterprise events using hybrid public-private blockchain ledgers
JP6355168B2 (ja) * 2015-11-09 2018-07-11 日本電信電話株式会社 ブロックチェーン生成装置、ブロックチェーン生成方法、ブロックチェーン検証装置、ブロックチェーン検証方法およびプログラム
US20170132615A1 (en) 2015-11-11 2017-05-11 Bank Of America Corporation Block chain alias for person-to-person payments
CN105976248A (zh) * 2016-04-29 2016-09-28 邓迪 一种众筹抽签方法及系统
US20170330159A1 (en) * 2016-05-13 2017-11-16 Bank Of America Corporation Resource allocation and transfer in a distributed network
CN106202505B (zh) * 2016-07-20 2019-09-20 北京京东尚科信息技术有限公司 数据处理方法及其系统
CN106504174A (zh) * 2016-09-27 2017-03-15 布比(北京)网络技术有限公司 基于区块链的博彩发行系统及装置
CN106651332B (zh) * 2016-12-29 2020-11-06 成都质数斯达克科技有限公司 一种区块链中新区块的生成方法及区块链
US11095432B2 (en) * 2017-04-05 2021-08-17 Samsung Sds Co., Ltd. System for processing data based on blockchain and operating method thereof

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105096132A (zh) * 2014-05-22 2015-11-25 阿里巴巴集团控股有限公司 交易资格的控制、获取方法及装置
CN105991731A (zh) * 2015-02-13 2016-10-05 中兴通讯股份有限公司 一种获取信息的方法、智能终端和服务端
US20160283920A1 (en) * 2015-03-28 2016-09-29 Justin Fisher Authentication and verification of digital data utilizing blockchain technology
CN105160572A (zh) * 2015-09-30 2015-12-16 努比亚技术有限公司 控制订单生成的装置、方法及秒杀系统
CN106446067A (zh) * 2016-09-06 2017-02-22 联动优势科技有限公司 一种获取交易数据的方法和装置
CN106411777A (zh) * 2016-09-27 2017-02-15 福建中金在线信息科技有限公司 一种处理高并发数据的方法和系统
CN106603698A (zh) * 2016-12-28 2017-04-26 北京果仁宝科技有限公司 基于dpos的区块链共识方法和节点
CN107395664A (zh) * 2017-05-22 2017-11-24 阿里巴巴集团控股有限公司 一种业务执行的方法及装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11444769B2 (en) * 2018-07-02 2022-09-13 Ares Technologies, Inc. Systems, devices, and methods for signal localization and verification of sensor data

Also Published As

Publication number Publication date
JP6727633B2 (ja) 2020-07-22
EP3565219A4 (en) 2020-02-26
KR102050006B1 (ko) 2019-11-28
TWI664549B (zh) 2019-07-01
JP2020515940A (ja) 2020-05-28
MY194399A (en) 2022-11-30
CN107395664A (zh) 2017-11-24
SG11201906901WA (en) 2019-08-27
EP3565219A1 (en) 2019-11-06
ES2875849T3 (es) 2021-11-11
PL3565219T3 (pl) 2021-09-20
TW201901502A (zh) 2019-01-01
KR20190099317A (ko) 2019-08-26
US20190334699A1 (en) 2019-10-31
CN107395664B (zh) 2019-09-03
PH12019501751A1 (en) 2019-09-16
US10554388B2 (en) 2020-02-04
EP3565219B1 (en) 2021-03-31

Similar Documents

Publication Publication Date Title
WO2018214834A1 (zh) 一种业务执行的方法及装置
WO2018177239A1 (zh) 一种业务受理及共识的方法及装置
TWI685764B (zh) 共識校驗的方法及裝置
JP6882511B2 (ja) ブロックチェーンコンセンサスのための方法、装置およびシステム
KR102288344B1 (ko) 서비스 실행 방법 및 디바이스
TW201832098A (zh) 服務校驗的方法及裝置
WO2020024650A1 (zh) 数据处理方法和装置、客户端
CN106713388B (zh) 一种突发业务处理方法及装置
WO2020024648A1 (zh) 数据处理方法和装置、客户端、服务器
US20170316412A1 (en) Verification method and apparatus
TW202018645A (zh) 基於區塊鏈的資料處理方法、裝置和伺服器
WO2023131058A1 (zh) 一种企业数字中台中资源服务应用的调度系统和方法
CN114338051B (zh) 区块链获取随机数的方法、装置、设备和介质
WO2020024649A1 (zh) 数据处理方法和装置、服务器
CN112860424B (zh) 任务处理方法及系统
CN104702409A (zh) 基于云平台的生物识别系统及其方法
CN117762600A (zh) 执行任务的方法、相关装置及计算机程序产品

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 20197022359

Country of ref document: KR

Kind code of ref document: A

Ref document number: 2019541111

Country of ref document: JP

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 2018806660

Country of ref document: EP

Effective date: 20190730

NENP Non-entry into the national phase

Ref country code: DE