CN110602249B - Resource allocation method and related device - Google Patents

Resource allocation method and related device Download PDF

Info

Publication number
CN110602249B
CN110602249B CN201910935466.3A CN201910935466A CN110602249B CN 110602249 B CN110602249 B CN 110602249B CN 201910935466 A CN201910935466 A CN 201910935466A CN 110602249 B CN110602249 B CN 110602249B
Authority
CN
China
Prior art keywords
block
verified
resource
allocated
server
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
CN201910935466.3A
Other languages
Chinese (zh)
Other versions
CN110602249A (en
Inventor
潘雄飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201910935466.3A priority Critical patent/CN110602249B/en
Publication of CN110602249A publication Critical patent/CN110602249A/en
Application granted granted Critical
Publication of CN110602249B publication Critical patent/CN110602249B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/70Game security or game management aspects
    • A63F13/79Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • 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
    • 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
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]

Abstract

The application discloses a resource allocation method, which comprises the following steps: acquiring a first to-be-verified block corresponding to a resource to be distributed, wherein the resource to be distributed is in an associated state, information of a target object is recorded in the first to-be-verified block, and the target object is an object associated with the resource to be distributed; performing consensus processing on the first to-be-verified block to obtain a consensus result; if the consensus result meets the block chaining condition, adding the first to-be-verified block into the block chain; and sending the information recorded in the first to-be-verified block in the block chain to the server so that the server determines the allocation object of the to-be-allocated resource as a target object according to the information. The application also discloses a related device and equipment. This application player is difficult to near accurate time point and obtains the reward because of robbing the resource point to reduce the income of stealing, promoted the fairness of recreation, be favorable to maintaining good recreation environment simultaneously.

Description

Resource allocation method and related device
Technical Field
The present application relates to the field of internet technologies, and in particular, to a resource allocation method and a related device.
Background
With the continuous development of internet technology, the internet is more and more important to the life, work and study of people. The online game is generated under the current environment of rapid development of the internet. The network game is a game which takes the internet as a transmission medium, a game server and terminal equipment as processing terminals, and a game client as an information interaction window and aims to realize entertainment, leisure, communication and virtual achievement.
Currently, for a game of this kind, one way for a player to obtain a virtual achievement is to obtain a corresponding award by guarding the number of resource points, and after the player occupies the resource points, the award corresponding to the resource points may be received at intervals, and the award content may be points, diamonds, coins, or other contents.
However, based on the current award mechanism, the player is likely to be caught by other players at the time point near the award drawing time point, so that the player cannot collect the award, thereby causing the condition that the payout and the profit are not equal among the players, reducing the fairness of the game, and being not beneficial to maintaining a good game environment.
Disclosure of Invention
The embodiment of the application provides a resource allocation method and a related device, and a player is difficult to obtain rewards near an accurate time point due to the fact that the player robs resource points, so that the stealing income is reduced, the fairness of games is improved, and meanwhile, a good game environment is favorably maintained.
In view of the above, a first aspect of the present application provides a method for resource allocation, including:
acquiring a first to-be-verified block corresponding to a resource to be distributed, wherein the resource to be distributed is in an associated state, information of a target object is recorded in the first to-be-verified block, and the target object is an object associated with the resource to be distributed;
performing consensus processing on the first to-be-verified block to obtain a consensus result;
if the consensus result meets the block chaining condition, adding the first to-be-verified block into a block chain;
and sending information recorded by the first to-be-verified block in the block chain to a server, so that the server determines that the allocation object of the to-be-allocated resource is the target object according to the information.
A second aspect of the present application provides a resource allocation apparatus, including:
an obtaining module, configured to obtain a first to-be-verified block corresponding to a resource to be allocated, where the resource to be allocated is in an associated state, and information of a target object is recorded in the first to-be-verified block, where the target object is an object associated with the resource to be allocated;
the processing module is used for carrying out consensus processing on the first to-be-verified block acquired by the acquisition module to obtain a consensus result;
the adding module is used for adding the first to-be-verified block into a block chain if the consensus result obtained by the processing module meets a block uplink condition;
a sending module, configured to send, to a server, information recorded in the first to-be-verified block added by the joining module in the block chain, so that the server determines, according to the information, that an allocation object of the to-be-allocated resource is the target object.
In one possible design, in a first implementation of the second aspect of an embodiment of the present application,
the processing module is specifically configured to obtain a computation power corresponding to the resource to be allocated;
acquiring a difficulty value, wherein the difficulty value is determined according to the computing power of unit resources and the total number of the resources;
and determining the consensus result according to the difficulty value and the calculation force.
In one possible design, in a second implementation of the second aspect of the embodiments of the present application,
the processing module is specifically configured to obtain generation times of N blocks, where N is an integer greater than or equal to 1;
if the generation time is less than a first time threshold, adjusting a first difficulty value to obtain the difficulty value, wherein the difficulty value is greater than the first difficulty value;
and if the generation time is greater than a second time threshold, adjusting a second difficulty value to obtain the difficulty value, wherein the difficulty value is smaller than the second difficulty value.
In one possible design, in a third implementation of the second aspect of the embodiments of the present application,
the processing module is specifically configured to obtain generation times of N blocks, where N is an integer greater than or equal to 1;
if the generation time is less than a first time threshold, adjusting a first calculation force to obtain the calculation force, wherein the calculation force is less than the first calculation force;
and if the generation time is greater than a second time threshold, adjusting a second calculation force to obtain the calculation force, wherein the calculation force is greater than the second calculation force.
In one possible design, in a fourth implementation of the second aspect of the embodiment of the present application,
the processing module is specifically configured to obtain a block header according to the first block to be verified, where the block header includes a random number;
carrying out Hash operation on the random number in the block header to obtain the result value;
determining that the consensus result satisfies the block uplink condition if the result value is less than or equal to a target value.
In one possible design, in a fifth implementation of the second aspect of the embodiments of the present application,
the processing module is specifically configured to, if a second block to be verified exists and the second block to be verified and the first block to be verified are both next adjacent blocks to the target block, obtain a generation rate of the first block to be verified corresponding to the first block to be verified;
if the generation rate of the first block to be verified is greater than the generation rate of a second block to be verified, determining that the first block to be verified is a block to be linked, wherein the generation rate of the second block to be verified represents the block generation rate corresponding to the second block to be verified;
and if the generation rate of the first block to be verified is less than the generation rate of the second block to be verified, determining the second block to be verified as the block to be uplinked.
In one possible design, in a sixth implementation of the second aspect of the embodiments of the present application,
the sending module is specifically configured to receive a resource allocation request sent by a server, where the resource allocation request carries a resource identifier of the resource to be allocated;
according to the resource allocation request, determining an allocation object of the resource to be allocated from the first to-be-verified block of the block chain;
and sending a resource allocation response to the server according to the allocation object of the resource to be allocated, so that the server allocates the resource to be allocated to the target object according to the resource allocation response, wherein the resource allocation response carries an object identifier of the target object.
In a possible design, in a seventh implementation manner of the second aspect of the embodiment of the present application, the resource allocation apparatus further includes a receiving module;
the receiving module is configured to send, by the sending module, information recorded in the first to-be-verified block in the block chain to a server, so that the server receives a resource query request sent by the server after determining, according to the information, that an allocation object of the to-be-allocated resource is the target object, where the resource query request carries a resource identifier of the to-be-allocated resource and an object identifier of the target object;
the obtaining module is further configured to obtain, according to the resource query request received by the receiving module, historical information of the resource to be allocated from the block chain;
the sending module is further configured to send the history information to the server, so that the server sends the history information to a client.
A third aspect of the present application provides a block link point comprising: a memory, a transceiver, a processor, and a bus system;
wherein the memory is used for storing programs;
the processor is used for executing the program in the memory and comprises the following steps:
acquiring a first to-be-verified block corresponding to a resource to be distributed, wherein the resource to be distributed is in an associated state, information of a target object is recorded in the first to-be-verified block, and the target object is an object associated with the resource to be distributed;
performing consensus processing on the first to-be-verified block to obtain a consensus result;
if the consensus result meets the block chaining condition, adding the first to-be-verified block into a block chain;
sending information recorded by the first to-be-verified block in the block chain to a server, so that the server determines that an allocation object of the to-be-allocated resource is the target object according to the information;
the bus system is used for connecting the memory and the processor so as to enable the memory and the processor to communicate.
A fourth aspect of the present application provides a computer-readable storage medium having stored therein instructions, which, when run on a computer, cause the computer to perform the method of the above-described aspects.
According to the technical scheme, the embodiment of the application has the following advantages:
in the embodiment of the present application, a method for resource allocation is provided, where a block chain node may obtain a first block to be verified corresponding to a resource to be allocated, where the resource to be allocated is in an associated state, information of a target object is recorded in the first block to be verified, the target object is an object associated with the resource to be allocated, then a block link point performs consensus processing on the first block to be verified to obtain a consensus result, if the consensus result meets a block uplink condition, the first block to be verified is added to the block chain, and finally, the block link point needs to send the information recorded in the first block to be verified in the block chain to a server, so that the server determines, according to the information, that the allocated object of the resource to be allocated is the target object. Through the mode, the blocks produced by the resource points are random, the awards are obtained based on the randomly generated blocks, and the issuing of the awards is decoupled with the time points, so that the player is difficult to obtain the awards near the accurate time points due to the fact that the player robs the resource points, the stealing benefits are reduced, the game fairness is improved, and meanwhile, the good game environment is maintained.
Drawings
FIG. 1 is a schematic diagram of an architecture of a resource allocation system according to an embodiment of the present application;
FIG. 2 is a block chain diagram according to an embodiment of the present invention;
FIG. 3 is a diagram illustrating block generation according to an embodiment of the present application;
FIG. 4 is a schematic diagram of deploying a resource allocation service in an embodiment of the present application;
FIG. 5 is a flow chart illustrating resource allocation according to an embodiment of the present application;
FIG. 6 is a diagram of an embodiment of a method for resource allocation in an embodiment of the present application;
FIG. 7 is a diagram illustrating a scenario of resource point occupancy in an embodiment of the present application;
FIG. 8 is a block chain branching processing method according to an embodiment of the present invention;
FIG. 9 is a schematic interface diagram of a resource allocation result in the embodiment of the present application;
FIG. 10 is a schematic diagram of an interface of resource query results in an embodiment of the present application;
fig. 11 is a schematic diagram of an embodiment of a resource allocation apparatus in an embodiment of the present application;
fig. 12 is a schematic diagram of another embodiment of a resource allocation apparatus in an embodiment of the present application;
FIG. 13 is a schematic diagram of a block link point according to an embodiment of the present application;
fig. 14 is another schematic diagram of a block link point according to an embodiment of the present disclosure.
Detailed Description
The embodiment of the application provides a resource allocation method and a related device, and a player is difficult to obtain rewards near an accurate time point due to the fact that the player robs resource points, so that the stealing income is reduced, the fairness of games is improved, and meanwhile, a good game environment is favorably maintained.
The terms "first," "second," "third," "fourth," and the like in the description and in the claims of the present application and in the drawings described above, if any, are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used is interchangeable under appropriate circumstances such that the embodiments of the application described herein are, for example, capable of operation in sequences other than those illustrated or otherwise described herein. Furthermore, the terms "comprises," "comprising," and "corresponding" and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or apparatus that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed, but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
It should be understood that the resource allocation method provided in the present application may be applied to a scenario of allocating multiple types of resources, for example, taking an interactive application (such as a game) as an example, the allocated resources may specifically refer to game resources, for example, a player needs to obtain a reward through a guard resource point, where the reward resources corresponding to the resource point include but are not limited to a game coin, a diamond, a game character, a prop, a ticket, and the like, if the interactive application is a Location Based Service (LBS) game. The resource point may also have a correspondence with the real world geographical location. For example, a place with a large amount of traffic and a relatively well-known place is determined as a Point of Interest (POI). The virtual arena is designed at the position of a part of interest points, and the virtual arena can be a shop, a pavilion in a park, a station or a scenic spot, and the like, which is not limited here. Players coming to the place can exchange and fight each other on the virtual arena, the winning player can occupy a position on the virtual arena, and the game server can output some resources in the game for the strongest player in the virtual arena.
For example, taking a transaction-type application (e.g., an online shopping-type application) as an example, the allocated resources may specifically be physical resources or preferential resources, and the user needs to obtain an incentive through a guard resource point (i.e., a busy resource point), where the incentive resources corresponding to the resource point include, but are not limited to, a coupon and an entity object (e.g., a sock, a cup, a ball-point pen, etc.). If the transaction application opens 10 resource points, the user can guard the 10 resource points, each resource point is equivalent to a corresponding virtual arena, and the server can output some resources in the game for the strongest user in the virtual arenas. The user can accumulate the points through the mini-game, and the user with high points can defend to the resource point. Alternatively, the user may generate the score by throwing the color son, and the user with a high score may defend the resource point. Or the user can also obtain points by sharing the article information in the transaction application, and the user with high points can guard to the resource point. It should be noted that the above-mentioned resource point guard modes are only an illustration, and should not be construed as a limitation to the present application.
Based on the above description, it can be understood that the resource allocation method provided by the present application can be applied to a scenario that allows a user to settle a reward by trying to occupy resources, and the present application uses a consensus mechanism of a block chain to perform workload proving for this occupation behavior, so as to achieve the purposes of stability, fairness and credibility. The basic concept of blockchains will be described in conjunction with the figures.
Referring to the resource allocation system shown in fig. 1, the resource allocation system 100 refers to a system for sharing data between block chain nodes and block chain nodes, the resource allocation system may include a plurality of block chain nodes 101, the plurality of block chain nodes 101 may refer to each client in the resource allocation system, or each computing device in the resource allocation system, and it is understood that the block chain nodes may also be referred to as "nodes". Each blockchain node 101 may receive input information while operating normally and maintain shared data within the resource allocation system based on the received input information. In order to ensure information intercommunication in the resource distribution system, information connection can exist between each block chain node in the resource distribution system, and information transmission can be carried out between the block chain nodes through the information connection. For example, when any block link node in the resource allocation system receives input information, other block link nodes in the resource allocation system acquire the input information according to a consensus algorithm, and store the input information as data in shared data, so that the data stored on all block link nodes in the resource allocation system are consistent.
Each block link node in the resource allocation system has a corresponding block link point identifier, and each block link point in the resource allocation system may store block link point identifiers of other block link nodes in the resource allocation system, so that the generated block is broadcast to other block link nodes in the resource allocation system according to the block link point identifiers of other block link nodes in the following. Each block chain node can maintain a block chain link point identification list as shown in the following table, and the block chain node name and the block chain link point identification are correspondingly stored in the block chain link point identification list. The block link node identifier may be an IP (Internet Protocol) address and any other information that can be used to identify the block link node, and table 1 only illustrates the IP address as an example.
TABLE 1
Block chain node name Block chain link point identification
Block chain node 1 117.114.151.174
Block chain node 2 117.116.189.145
Block chain node N 119.123.789.258
Each blockchain node in the resource allocation system stores one identical blockchain. The block chain is composed of a plurality of blocks, referring to fig. 2, the block chain is composed of a plurality of blocks, the starting block includes a block header and a block main body, the block header stores an input information characteristic value, a version number, a timestamp and a difficulty value, and the block main body stores input information; the next block of the starting block takes the starting block as a parent block, the next block also comprises a block head and a block main body, the block head stores the input information characteristic value of the current block, the block head characteristic value of the parent block, the version number, the timestamp and the difficulty value, and the like, so that the block data stored in each block in the block chain is associated with the block data stored in the parent block, and the safety of the input information in the block is ensured.
When each block in the block chain is generated, referring to fig. 3, when the block chain node where the block chain is located receives the input information, the input information is verified, after the verification is completed, the input information is stored in the memory pool, and the hash tree for recording the input information is updated; and then, updating the updating time stamp to the time when the input information is received, trying different random numbers, and calculating the characteristic value for multiple times, so that the calculated characteristic value can meet the following formula:
SHA256(SHA256(version+prev_hash+merkle_root+ntime+nbits+x))<TARGET
wherein, SHA256 is a characteristic value algorithm used for calculating a characteristic value; version is version information of the relevant block protocol in the block chain; prev _ hash is a block head characteristic value of a parent block of the current block; merkle _ root is a characteristic value of the input information; ntime is the update time of the update timestamp; nbits is the current difficulty, is a fixed value within a period of time, and is determined again after exceeding a fixed time period; x is a random number; TARGET is a feature threshold, which can be determined from nbits.
Therefore, when the random number meeting the formula is obtained through calculation, the information can be correspondingly stored, and the block head and the block main body are generated to obtain the current block. And then, the block chain node where the block chain is located respectively sends the newly generated blocks to other block chain nodes in the resource distribution system where the newly generated blocks are located according to the block chain node identifiers of the other block chain nodes in the resource distribution system, the newly generated blocks are verified by the other block chain nodes, and the newly generated blocks are added into the block chain stored in the newly generated blocks after the verification is completed.
Based on the above description, the resource allocation method provided by the present application adopts a technology related to a block chain to implement the deployment of the resource allocation service, please refer to fig. 4, where fig. 4 is a schematic diagram of the deployment of the resource allocation service in the embodiment of the present application, as shown in the figure, an application service is generally deployed on an application side, for example, may be deployed on a game server side, and when the game server detects that resource points are occupied, the application service may start to allocate computing power, that is, the application service feeds back the computing power allocated to each resource point to a computing power platform service, where the computing power platform service may be understood as a service initiating "mining", the computing power platform service may be deployed on a computing power server, and both the computing power server and the game server may be maintained by the same operation and maintenance personnel. One possible way is to assume that 100 resource points are occupied currently, each resource point in the 100 resource points corresponds to a block link node, and the block link node may specifically be a computing node, and each computing node performs computation with the same computation power. Namely, each block chain node opens the computing power platform service, the block chain node generates a block based on the computing power and the difficulty value, and if the block meets the consensus condition, the block can be recorded into the block chain through the computing power platform service, so that the data service is realized. It is understood that the blockchain mentioned in the present application may be shared, but the specific deployment manner of the computation service and the speed of the production blocks may be set and adjusted according to actual conditions, and the computation tasks of multiple resource points may be shared by a small number of blockchain nodes.
For convenience of introduction, please refer to fig. 5, fig. 5 is a schematic flowchart of resource allocation in the embodiment of the present application, and as shown in the figure, taking an application as an interactive application (game), specifically:
in step S1, after each player occupies or guards the resource point, the application service will automatically allocate the computing power to the resource point, and assuming that player a guards resource point a, for example, player a, the application service will automatically allocate the computing power to resource point a, wherein the computing power is predetermined;
in step S2, the computation platform service respectively generates a block corresponding to each resource point according to the computation power of each occupied resource point and a preset difficulty value, then determines whether the currently generated block is an available block according to a consensus mechanism of the block chain, and adds the block to the block chain if the currently generated block is determined to be an available block after consensus;
in step S3, the blockchain may synchronously or asynchronously export data in the blocks, and specifically, the data may be imported into a blockchain query service, which may be deployed on a server (e.g., a game server) side;
in step S4, when a server (e.g., a game server) needs to query the bonus situation of each resource point, the above function may be implemented by a blockchain query service, where one possible implementation manner is that the server actively initiates a request to the blockchain query service, the blockchain query service responds to the request, and then feeds back the bonus situation corresponding to the resource point to be viewed to the server, and another possible implementation manner is that the blockchain query service periodically pushes the bonus situation corresponding to each resource point to the server, which is not limited here;
in step S5, the blockchain inquiry service may trigger the server to perform an operation of issuing the award, for example, the blockchain inquiry service may know that the award of the resource point a should be issued to the player a according to the data imported by the blockchain, and the server may determine that the award of the resource point a can be issued to the player a through the blockchain inquiry service, however, in practical applications, different award issuing manners may be set based on different game rules, for example, the server may issue all the awards currently accumulated on the resource point a to the player a, for example, the server may issue 60% of the awards currently accumulated on the resource point a to the player a, and the remaining 40% of the awards to the players who are ranked behind the resource point a. It is understood that the manner in which the rewards are issued is dependent on the reward mechanism and is not limited in this application.
With reference to fig. 6, an embodiment of a method for resource allocation in this application includes:
201. acquiring a first to-be-verified block corresponding to a resource to be distributed, wherein the resource to be distributed is in an associated state, information of a target object is recorded in the first to-be-verified block, and the target object is an object associated with the resource to be distributed;
in this embodiment, the resource allocation apparatus obtains a first to-be-verified block corresponding to the to-be-allocated resource, where the first to-be-verified block is a block that needs to be verified whether uplink can be performed. The resource allocation device may be deployed at a block link point, where the block link point is specifically a computing node, it should be noted that the block link point is generally a node existing in a block link system, and the computing node is generated according to an association state of a resource, and if the resource is in the associated state, the resource belongs to a resource to be allocated, and a computing node corresponding to the resource to be allocated is generated, where the computing node is the block link node. However, if the resources are not associated, no calculation node is generated, i.e. the block link point does not calculate the allocation of the resources. However, in the present application, the resource to be allocated needs to be allocated if the resource to be allocated is associated to perform the allocation operation, and therefore, the resource to be allocated should have a corresponding computing node, i.e. a block link point is the computing node. The computing nodes occupy little resource and have no internal complex logic, and can perform elastic capacity expansion or capacity reduction. Thus, the algorithm part can be seamlessly butted with the resource correlation behavior without modifying logic and adding new cost.
Information of a target object is recorded in the first block to be verified, wherein the target object refers to an object associated with the resource to be allocated. Specifically, taking an interactive application (such as a game) as an example, assuming that a resource to be allocated is a resource point a, a player currently occupying the resource point a is a target object, and information of the target object includes, but is not limited to, resource point information (such as an identifier of the resource a), an account identifier of the target object, a timestamp of a current time, and the like.
The resource to be allocated may have different definitions in different scenes, and taking an interactive application (such as a game) as an example, the resource to be allocated may refer to a resource point, an associated state is a state occupied, and an unassociated state is a state unoccupied. For convenience of introduction, please refer to fig. 7, fig. 7 is a schematic view of a scenario of resource point occupation in the embodiment of the present application, and as shown in the figure, assuming that 10 resource points are total in an interactive application (e.g., a game), a player can take out resource points with different guards, taking fig. 7 as an example, resource point 1, resource point 3, resource point 5, resource point 6, resource point 7, and resource point 10 are all in associated states, that is, these 6 resource points can all be used as resources to be allocated, for example, resource point 1 is resource 1 to be allocated. The remaining resource points 2, 4, 8 and 9 are all in an unassociated state, and therefore, these 4 resource points are not regarded as the resources to be allocated.
202. Performing consensus processing on the first to-be-verified block to obtain a consensus result;
in this embodiment, the block link point needs to perform consensus processing on the first block to be verified to generate a corresponding consensus result. It should be understood that the consensus method adopted in the present application is based on Proof of Work (POW), and in Practical applications, other consensus methods may be adopted, including but not limited to Proof of stock (POS), combination of POW and POS, authorized Proof of stock (DPOS), Practical bypath Fault-tolerant algorithm (PBFT), Proof of Importance (POI), and Proof of Participation (POP), which are not limited herein.
203. If the consensus result meets the block chaining condition, adding the first to-be-verified block into the block chain;
in this embodiment, after the first to-be-verified block is generated at the block link point, the first to-be-verified block needs to be subjected to consensus processing, so as to obtain a consensus result. Although a block can be generated every interval of time by the block link points, whether the block can be uplink or not depends on the result of the consensus.
If the consensus result satisfies the block uplink condition, the blockchain node may add the first to-be-verified block to the blockchain, i.e., add the first to-be-verified block to the blockchain after the current last block N, which becomes the (N + 1) th block. The server may obtain information in the first to-be-verified block through the block chain, for example, the server may obtain resource point information (e.g., an identifier of resource a), an account identifier of the target object (e.g., tomboy123), and a timestamp of the current time (e.g., 1569138201), so that the server distributes the resource or the reward corresponding to the resource point a to the related object according to a reward distribution mechanism, and generally, the target object is preferentially distributed with more resources, which is more beneficial to embodying fairness of the game and increasing participation of the player.
204. And sending the information recorded in the first to-be-verified block in the block chain to the server so that the server determines the allocation object of the to-be-allocated resource as a target object according to the information.
In this embodiment, once the block link point determines that the new block is successfully uplink, the server may be notified to perform resource allocation after successful uplink. The server can determine that the allocation object of the resource to be allocated is the target object according to the information recorded in the first block to be verified, and then allocate the resource or the reward corresponding to the resource to be allocated to the target object.
In the embodiment of the present application, a method for resource allocation is provided, where a block chain node may obtain a first block to be verified corresponding to a resource to be allocated, where the resource to be allocated is in an associated state, information of a target object is recorded in the first block to be verified, the target object is an object associated with the resource to be allocated, then a block link point performs consensus processing on the first block to be verified to obtain a consensus result, if the consensus result meets a block uplink condition, the first block to be verified is added to the block chain, and finally, the block link point needs to send the information recorded in the first block to be verified in the block chain to a server, so that the server determines, according to the information, that the allocated object of the resource to be allocated is the target object. Through the mode, the blocks produced by the resource points are random, the awards are obtained based on the randomly generated blocks, and the issuing of the awards is decoupled with the time points, so that the player is difficult to obtain the awards near the accurate time points due to the fact that the player robs the resource points, the stealing benefits are reduced, the game fairness is improved, and meanwhile, the good game environment is maintained.
Optionally, on the basis of the foregoing embodiments corresponding to fig. 6, in a first optional embodiment of the method for resource allocation provided in this embodiment of the present application, performing consensus processing on the first to-be-verified block to obtain a consensus result, where the method may include:
acquiring the computing power corresponding to the resources to be distributed;
acquiring a difficulty value, wherein the difficulty value is determined according to the computing power of unit resources and the total number of the resources;
and determining a consensus result according to the difficulty value and the calculation force.
In this embodiment, a method for generating a consensus result is introduced, where first, a block link point needs to determine a difficulty value and a computation power corresponding to a resource to be allocated, then, based on the difficulty value and the computation power of the resource to be allocated, a block generation time corresponding to the resource to be allocated is obtained through calculation, a new block is generated according to the block generation time, and it is assumed that the generated new block may be a first block to be verified. The difficulty value represents the requirement of calculating the number of times of producing a block, namely, the speed of producing the block by using the link points of the block is not achieved by command, but dynamic calculation requirements are set, the effective hash of the current block can be obtained only by a large number of calculations, and the difficulty value is a measure of the difficulty degree of mining, namely the difficulty degree of calculating a hash value which meets a given target. Please refer to the following formula:
difficulty=difficulty_1_target/current_target
the length of differential _1_ target is 25 bits (6 bits), the first 32 bits are 0, the last bits are all 1, differential _1_ target represents an initial hash value, current _ target is a hash value of the current block (for example, the first block to be verified), current _ target is compressed and then stored in the block (for example, the first block to be verified), the hash value (i.e., the result value) of the block (for example, the first block to be verified) must be smaller than a given target value, the block (for example, the first block to be verified) is satisfied, that is, the obtained consensus result may be a result value, and when the result value is smaller than or equal to the target value, it represents that the consensus result satisfies the block uplink condition.
It can be understood that, assuming that one resource to be allocated is a virtual machine, the virtual machine can perform multiple Hash (Hash) collisions every second, i.e. indicate how much computing power it has, and the unit of the computing power may be Hash per second (Hash/s). Definition of hash collision gives a table M, and a function f (key) exists, and if an address recorded in the table including a given key can be obtained by substituting a function into an arbitrary given key value key, the table M is called a hash table, and the function f (key) is called a hash function. The existing dominant mining machines are in the order of 14 terabytes (T), and each mining machine can perform hash collision of at least 1.4 times 10 to the power of 13 per second, that is, the mining machine with 14T specification has 14T computational power. The percentage of the total calculation power of the whole network occupied by the mining machines held by the target object represents the probability that the target object can win in the competition in the period of time. For example, if the overall computing power of the network is 100 and a mineworker has a computing power of 10, then the probability of success of the mineworker's accounting per competition is 1/10.
Specifically, for an interactive application (e.g. a game), assuming that 1000 resource points are occupied, the computation power of each resource is 100hash/s, i.e. 100hash computations per second are performed, the difficulty value may be set to 100000 times, i.e. a chunk may be generated every 100000 times, for the resource to be allocated, i.e. (100000/100) ═ 1000 seconds, i.e. under normal conditions, it may be considered that a resource point may generate a new chunk every 1000 seconds, and all the resource points participate in the computation globally, i.e. a new chunk is generated in 1 second. It is understood that different block generation times may be set in different networks, such as generating one block every 10 minutes, or generating one block every 5 minutes, which is only an illustration and should not be construed as a limitation of the present application.
Secondly, in the embodiment of the present application, a method for generating a consensus result is provided, that is, a block link point may first obtain a computation force corresponding to a resource to be allocated, and obtain a difficulty value, where the difficulty value is determined according to the computation force of a unit resource and a total number of resources, and then determine the consensus result according to the difficulty value and the computation force. By the method, the time required for generating a new block can be calculated based on the difficulty value and the calculation force, so that the rhythm of block generation can be effectively monitored, and the feasibility of the scheme is improved.
Optionally, on the basis of the foregoing embodiments corresponding to fig. 6, in a second optional embodiment of the method for resource allocation provided in the embodiment of the present application, the obtaining a difficulty value may include:
acquiring generation time of N blocks, wherein N is an integer greater than or equal to 1;
if the generation time is less than a first time threshold, adjusting the first difficulty value to obtain a difficulty value, wherein the difficulty value is greater than the first difficulty value;
and if the generation time is greater than a second time threshold, adjusting the second difficulty value to obtain a difficulty value, wherein the difficulty value is less than the second difficulty value.
In this embodiment, a method for adjusting a difficulty value is introduced, and under the condition that resource points are continuously increased, it is found that the speed of generating blocks becomes faster, and at this time, the difficulty value can be dynamically adjusted, so that the generation number of the blocks is more stable. Similarly, in the case of decreasing resource points, it is found that the speed of producing blocks becomes slower, and the generated number of blocks can be more stable by dynamically adjusting the difficulty value. Specifically, the block chain node may count the elapsed time every N blocks, N may be an integer greater than or equal to 1, and N is assumed to be 5, that is, a generation time is counted every 5 blocks. Next, the generation time needs to be compared with a time threshold, and considering that there is a certain floating condition in the generation time of the block, the time threshold may be a range, the lower limit of the range is a first time threshold, such as 800 seconds, and the upper limit of the range is a second time threshold, such as 1200 seconds, and if the generated time is within the range of 800 seconds to 1200 seconds, then the difficulty value does not need to be adjusted. It is understood that, in practical cases, the first time threshold and the second time threshold may also be set to the same value, for example, 1000 seconds, and in this case, the time range is a specific value.
First, the block link point acquires the generation time of N blocks, and assuming that N is 5, the generation of block 1 takes 800 seconds, the generation of block 2 takes 1000 seconds, the generation of block 3 takes 1000 seconds, the generation of block 4 takes 500 seconds, and the generation of block takes 800 seconds, and the generation time of (800+1000+1000+500+800)/5 is 820 seconds. Assuming that the first time threshold is 900 seconds and the second time threshold is 1100 seconds, the generation time is less than the first time threshold, and at this time, the current first difficulty value needs to be increased to obtain the difficulty value for calculating the first block to be verified, for example, the first difficulty value is 80000, and then the adjusted difficulty value may be 100000.
Assuming that the first time threshold is 500 seconds and the second time threshold is 800 seconds, the generation time is greater than the second time threshold, and the current second difficulty value needs to be decreased to obtain the difficulty value for calculating the first block to be verified, for example, the second difficulty value is 110000, and the adjusted difficulty value may be 100000.
In general, as hardware equipment is lifted and the number of mining machines increases, the calculation speed is faster and faster. In order to keep the production rate constant over time, adjustments may be made by dynamically adjusting the difficulty value. The factor triggering the adjustment mechanism may be that the adjustment is performed every N blocks, or the adjustment is performed when it is detected that the generation time fluctuation of the blocks is large, and the larger the difficulty value is, the smaller the probability of generating the block is, and conversely, the smaller the difficulty value is, the larger the probability of generating the block is.
In the embodiment of the present application, a method for adjusting a difficulty value is provided, that is, a block link point may first obtain generation times of N blocks, and if the generation time is less than a first time threshold, adjust a first difficulty value to obtain a difficulty value, where the difficulty value is greater than the first difficulty value, and if the generation time is greater than a second time threshold, adjust a second difficulty value to obtain a difficulty value, where the difficulty value is less than the second difficulty value. By the mode, the block chain link points can automatically adjust the size of the difficulty value, on one hand, the rhythm of block generation can be effectively maintained, the block is prevented from being generated too fast or too slowly, and the stability of application is facilitated. On the other hand, the block link points can self-adaptively adjust the difficulty value without manual control or operation, thereby improving the convenience of the scheme and reducing the cost of manual operation and maintenance.
Optionally, on the basis of each embodiment corresponding to fig. 6, in a third optional embodiment of the method for resource allocation provided in the embodiment of the present application, obtaining the calculation power corresponding to the resource to be allocated may include:
acquiring generation time of N blocks, wherein N is an integer greater than or equal to 1;
if the generation time is less than a first time threshold, adjusting the first calculation power to obtain the calculation power, wherein the calculation power is less than the first calculation power;
and if the generation time is greater than a second time threshold, adjusting the second calculation force to obtain the calculation force, wherein the calculation force is greater than the second calculation force.
In this embodiment, another method for adjusting computation is introduced, and under the condition that resource points are continuously increased, it is found that the speed of producing blocks becomes faster, and at this time, the number of generated blocks is more stable by dynamically adjusting the computation of the resource points. Similarly, in the case of decreasing resource points, it is found that the speed of producing blocks becomes slower, and at this time, the calculation power of the resource points can be dynamically adjusted, so that the number of blocks produced is more stable. Specifically, the block chain node may count the elapsed time every N blocks, N may be an integer greater than or equal to 1, and N is assumed to be 5, that is, a generation time is counted every 5 blocks. Next, the generation time needs to be compared with a time threshold, and considering that there is a certain floating condition in the generation time of the block, the time threshold may be a range, the lower limit of the range is a first time threshold, such as 800 seconds, and the upper limit of the range is a second time threshold, such as 1200 seconds, and if the generated time is within the range of 800 seconds to 1200 seconds, then the difficulty value does not need to be adjusted. It is understood that, in practical cases, the first time threshold and the second time threshold may also be set to the same value, for example, 1000 seconds, and in this case, the time range is a specific value.
First, assuming that N is 5, generation of block 1 takes 800 seconds, generation of block 2 takes 1000 seconds, generation of block 3 takes 1000 seconds, generation of block 4 takes 500 seconds, and generation of block takes 800 seconds, and generation time of (800+1000+1000+500+800)/5 is 820 seconds. Assuming that the first time threshold is 900 seconds and the second time threshold is 1100 seconds, the generation time is less than the first time threshold, and the current first computation power needs to be reduced to obtain the computation power for calculating the first block to be verified, for example, the first computation power is 120hash/s, and then the adjusted computation power may be 100 hash/s.
Further, assuming that the first time threshold is 500 seconds, and the second time threshold is 800 seconds, the generation time is greater than the second time threshold, and at this time, the current second computation force needs to be increased, so as to obtain the computation force for computing the first block to be verified, for example, the second computation force is 80hash/s, and then the adjusted computation force may be 100 hash/s.
On this basis, considering that mining is random, it is difficult to guarantee that a block must be produced within the same time interval, sometimes even a minute, and sometimes even hours, with no results. In general, as hardware equipment is lifted and the number of mining machines increases, the calculation speed is faster and faster. In order to keep the production rate constant over time, adjustments may be made by dynamically adjusting the difficulty value. The factor triggering the adjustment mechanism may be that the adjustment is performed every N blocks, or the adjustment is performed when the generation time fluctuation of the blocks is detected to be large, and the larger the calculation power is, the more likely the generation block is, otherwise, the smaller the calculation power is, the less likely the generation block is.
Secondly, in the embodiment of the present application, a method for adjusting the computation force is provided, that is, the block link points may first obtain the generation time of the N blocks, and if the generation time is less than a first time threshold, adjust the first computation force to obtain the computation force, where the computation force is less than the first computation force, otherwise, if the generation time is greater than a second time threshold, adjust the second computation force to obtain the computation force, where the computation force is greater than the second computation force. By the mode, the calculation force of the resource points can be automatically adjusted by the block chain link points, so that on one hand, the rhythm of block generation can be effectively maintained, the block is prevented from being generated too fast or too slowly, and the stability of application is facilitated. On the other hand, the calculation power of the resource points can be adaptively adjusted by the block link points without manual control or operation, so that the convenience of the scheme is improved, and the labor operation and maintenance cost is reduced.
Optionally, on the basis of the foregoing embodiments corresponding to fig. 6, in a fourth optional embodiment of the method for resource allocation provided in the embodiment of the present application, performing consensus processing on the first to-be-verified block to obtain a consensus result, where the method may include:
acquiring a block head according to a first block to be verified, wherein the block head comprises a random number;
carrying out Hash operation on the random number in the block head to obtain a result value;
if the result value is less than or equal to the target value, determining that the consensus result satisfies the block uplink condition.
In this embodiment, a block consensus method based on workload certification is introduced. The workload proving process needs three elements, namely a workload proving function, a block and a difficulty value, taking the first to-be-verified block as an example, the workload proving function refers to a specific calculation method, the block is the first to-be-verified block input to the workload proving function, and the difficulty value determines the calculation amount required by calculation. The application can adopt SHA256 algorithm as the workload proving function, SHA is a cryptographic hash function family, SHA256 is one of the function family, and is a hash algorithm with 256 bits of output value. Currently, the SHA256 algorithm is very secure.
Specifically, the blockchain protocol provides that the target value (target) can be obtained by dividing a constant by the difficulty value, see the following formula:
target=targetmax/difficulty
where target represents the target value, and target max represents the maximum target value, which can be understood as a constant, and difficulty represents the difficulty value, that is, the larger the difficulty value is, the smaller the target value is.
The validity of the hash is closely related to the target value, and only the hash smaller than the target value is valid, otherwise, the hash is invalid, and recalculation is required. Taking the first block to be verified as an example, the Secure Hash Algorithm (SHA) 256 Algorithm result of the block header of the first block to be verified is less than or equal to the target value, and the first block to be verified is considered to be an available block, i.e., the first block to be verified can be added to the block chain. Since the target value is very small, the chance that the hash is smaller than the target value is also small, possibly computing thousands of times to compute one time.
The hash of the current chunk is uniquely determined by the chunk header. If the hash is repeatedly calculated for the same block, it means that the block header must be changed constantly, otherwise it is impossible to calculate a different hash. All the feature values inside the block header are fixed, and a random term (Nonce) may be added to the block header in order to change the block header. The Nonce is a random number and the miner's goal is to guess the Nonce value so that the hash of the chunk header may be less than the target value, thereby enabling writing to the chunk chain. However, Nonce is very difficult to guess, and at present, only one trial and error can be carried out through an exhaustive method. Depending on the protocol, Nonce is a 32-bit binary value, i.e., up to 21.47 hundred million. Assuming that the Nonce value for the 100000 th chunk is 274148111, it can be understood that the miners have calculated 2.74 million times starting from 0 to get a valid Nonce value, so that the calculated hash can satisfy the condition. It will be appreciated that the Nonce value may be found very quickly if just the opportunity is taken. However, if the chance is bad, the chance may be counted 21.47 hundred million times, and no Nonce is found, that is, the current block cannot calculate the hash satisfying the condition. In this case, the protocol allows the miners to change the block and start a new calculation.
The first block to be verified includes a block header and a block body, where the block header may have a size of 80 bytes, and specifically, the block header includes a version number of 4 bytes, a Hash value of a last block of 32 bytes, a Merkle Root Hash of 32 bytes, a timestamp (current time) of 4 bytes, and a random number of 4 bytes for which a current difficulty value of 4 bytes has been obtained.
The definition of the difficulty value can refer to the above embodiments, which are not described herein.
Specifically, 80 bytes of data in the Block Header of the first Block to be verified is used as an input of the workload proving function, that is, as an input of the SHA256 algorithm, then the random number nonce included in the Block Header of the first Block to be verified is continuously changed, and the Block Header after each change is subjected to the double SHA256 operation (that is, SHA256(Block _ Header))) to obtain a result value. And finally, comparing the result value with the target value of the current network, if the result value is smaller than the target value, solving the problem successfully, namely, the workload certification is finished, namely, the first block to be verified can be added into the block chain.
Secondly, in the embodiment of the present application, a block consensus method based on workload certification is provided, that is, a block chain node obtains a block header according to a first block to be verified, where the block header includes a random number, then performs a hash operation on the random number in the block header to obtain a result value, and if the result value is less than or equal to a target value, it is determined that a consensus result satisfies a block uplink condition. By the above manner, the blocks are commonly identified based on the workload certification, and service attacks and other service abuse situations can be dealt with. The method requires the initiator to perform a certain amount of operation, which means that a certain time is consumed by the computer, thereby improving the reliability of the block chaining. Furthermore, the overall process of monitoring the work is often extremely inefficient, and the consensus efficiency can be improved by certifying the results of the work to prove that the corresponding work is done.
Optionally, on the basis of the foregoing embodiments corresponding to fig. 6, in a fifth optional embodiment of the method for resource allocation provided in the embodiment of the present application, performing consensus processing on the first to-be-verified block to obtain a consensus result, where the consensus result may include:
if a second to-be-verified block exists and the second to-be-verified block and the first to-be-verified block are both next adjacent blocks of the target block, acquiring a first to-be-verified block generation rate corresponding to the first to-be-verified block;
if the generation rate of the first block to be verified is greater than the generation rate of the second block to be verified, determining the first block to be verified as the block to be linked, wherein the generation rate of the second block to be verified represents the block generation rate corresponding to the second block to be verified;
and if the generation rate of the first block to be verified is less than that of the second block to be verified, determining the second block to be verified as the block to be uplink.
In this embodiment, a processing method for block chain forking is introduced, and in a block chain system using a workload certification mechanism as a consensus algorithm, there may be a situation that multiple blocks need to be added to a block chain at the same time due to a difference in computation power or just the situation that multiple blocks are generated at the same time, and at this time, the blocks are all connected to the same block in the block chain, that is, all connected to a target block, so that the block chain is forked. The common identification result in this embodiment may also include the result of the to-be-uplink block, and if a formula is fulfilled for the first to-be-verified block, it is determined that the first to-be-verified block is the to-be-uplink block. And if the formula is achieved for the second block to be verified, determining the second block to be verified as the block to be uplink.
Specifically, for convenience of description, a case of two branches will be described as an example, please refer to fig. 8, and fig. 8 is a schematic diagram of a processing manner of block chain branching in the present embodiment, as shown in the figure, it is assumed that a block 1, a block 2, and a block 3 exist on a block chain, and it is assumed that a branch occurs at this time, that is, a block 3 is followed by two different blocks, respectively a block a4 and a block B4, it is understood that a block 3 is a target block, a block a4 may be a first block to be verified, and a block B4 may be a second block to be verified, that is, the second block to be verified and the first block to be verified are next adjacent blocks of the target block. At this time, it is required to check that the branch reaches M blocks first, where M may be a preset value, and may be set to 6 in general, that is, if the first block to be verified reaches 6 first, the branch of the first block to be verified is an available branch, the first block to be verified is a block to be linked, and the branch corresponding to the second block to be verified is ignored. On the contrary, if the number of the second block to be verified reaches 6, the branch of the second block to be verified is the available branch, and the second block to be verified is the block to be linked, and the branch corresponding to the first block to be verified is ignored. In other words, the block generation rates of the two branches are compared, and a faster block generation rate of the two branches reaches M blocks indicates a higher block generation rate, and vice versa, the block generation rate is smaller. As can be seen in the case shown in fig. 8, the branch of sector a generates three blocks, namely, sector a4, sector a5 and sector a6, while the branch of sector B generates only two cases, namely, sector B4 and sector B5, and therefore, it can be seen that the block generation rate of the branch of sector a is higher.
In the block chain which is common in workload certification, from a forked block, because different miners follow different blocks, theoretically, two chains from the forked block are different in power, so that the block growth speed is different, after a period of time, the length of one chain exceeds that of the other chain, when the miners find that one longer chain exists in the whole network, the miners abandon the current chain and copy the longest chain in the whole network, and the mining work is continued on the basis of the chain, so that the whole network always only has one longest chain as a main chain, and the forked chain which is abandoned disappears.
Then, in the embodiment of the present application, a processing method for block chain branching is provided, that is, after a block link point generates a first block to be verified according to a calculation power and a difficulty value, if a second block to be verified exists and the second block to be verified and the first block to be verified are both next adjacent blocks of a target block, a first block to be verified generation rate corresponding to the first block to be verified is obtained, if the first block to be verified generation rate is greater than the second block to be verified generation rate, the first block to be verified is determined to be a block to be uplink, and if the first block to be verified generation rate is less than the second block to be verified generation rate, the second block to be verified is determined to be a block to be uplink. Through the mode, only one block chain can exist at last to become a real effective account book, so that the uniqueness of the block chain is ensured.
Optionally, on the basis of each embodiment corresponding to fig. 6, in a sixth optional embodiment of the method for resource allocation provided in this embodiment of the present application, the sending information recorded in the first block to be verified in the block chain to the server, so that the server determines, according to the information, that the allocation object of the resource to be allocated is the target object, may include:
receiving a resource allocation request sent by a server, wherein the resource allocation request carries a resource identifier of a resource to be allocated;
according to the resource allocation request, determining an allocation object of resources to be allocated from a first to-be-verified block of the block chain;
and sending a resource allocation response to the server according to the allocation object of the resource to be allocated so that the server allocates the resource to be allocated to the target object according to the resource allocation response, wherein the resource allocation response carries the object identifier of the target object.
In this embodiment, a method for implementing resource allocation based on information in a block chain is introduced, where after a block chain node adds a first block to be verified to the block chain, a communication relationship may be established with a server, so that the server may obtain required information through the block chain. It can be understood that the server generally obtains the information on the blockchain in two ways, one is that the server actively obtains the information on the blockchain, and the other is that the blockchain actively feeds back the information of the newly added block to the server. The above two modes will be described separately below.
In the first mode, a server actively acquires information from a block chain;
the server may periodically send a resource allocation request to the block link point, or may forward the resource allocation request to the block link point after receiving the resource allocation request sent by the client. For convenience of description, a resource point in an interactive application (e.g. a game) will be described as an example, assuming that a resource to be allocated is a resource point a, that is, a server needs to request information related to the resource point a, and then the server carries a resource identifier of the resource point a, such as 11111, in a resource allocation request sent to a block link point. After receiving the resource allocation request, the block chain node analyzes the resource allocation request to obtain a resource identifier 11111, and at this time, the block chain node searches for a related block in the block chain according to the resource identifier 11111. If several blocks are found, all of which have the resource identifier 11111, then the block with the closest timestamp is selected. Since the first to-be-verified block mentioned in the above embodiment is the last block recorded in the block chain, and the first to-be-verified block records information related to the resource to be allocated, the related information in the first to-be-verified block, including but not limited to the identifier of the allocation object and the timestamp, may be obtained based on the resource identifier 11111, where the allocation object may specifically be a target object, and the identifier of the allocation object is the identifier of the target object, such as 101110. The blockchain node encapsulates the identification of the target object within a resource allocation response, which is then sent by the blockchain node to the server. And after receiving the resource allocation response, the server analyzes the resource allocation response to obtain information such as the identification, the time stamp and the like of the target object. At this time, the server allocates a corresponding resource (or reward) to the target object based on the resource allocation mechanism.
In the second mode, the server passively receives newly added information from the block chain;
for convenience of description, a resource point in an interactive application (e.g., a game) will be described as an example, assuming that a resource to be allocated is a resource point a, the newly added block is a first block to be verified, the first block to be verified is a last block recorded in the block chain, and information related to the resource to be allocated, including but not limited to an identifier of an allocation object and a timestamp, is recorded in the first block to be verified. The allocation object may specifically be a target object, and the identifier of the allocation object is an identifier of the target object, such as 101110. The blockchain node encapsulates the identification of the target object within a resource allocation message, which is then sent to the server. And after receiving the resource allocation message, the server analyzes the resource allocation message to obtain information such as the identification, the timestamp and the like of the target object. At this time, the server allocates a corresponding resource (or reward) to the target object based on the resource allocation mechanism.
For convenience of introduction, please refer to fig. 9, fig. 9 is an interface schematic diagram of a resource allocation result in the embodiment of the present application, and as shown in the figure, taking a client used by a target object as an example, it is assumed that the target object currently has an association relationship with 5 resource points, that is, a target object "currently occupies 5 arenas, and the simulated computing power is 50" can be displayed on an interface, where the simulated computing power may be a simulated value, and a real computing power is not usually displayed on the display interface, so that it is only necessary to embody the situation of occupying the arenas by simulating the computing power, and for a player, the more occupied arenas, the larger the value of the simulated computing power is, that is, the higher the probability of acquiring resources (or awards) is. Therefore, the simulation effort is only for the player to have an intuitive perception. In addition, the interface shown in fig. 9 also shows the "benefit of the present arena" of the target object, taking 5 arenas occupied by the target object as an example, where the 5 arenas correspond to resource point 1, resource point 2, resource point 3, resource point 4, and resource point 5, respectively, so that the data shown in table 2 can be shown in the "benefit of the present arena".
TABLE 2
Occupied resource point Benefit today Time of occupation
Resource point
1 0 1 hour
Resource point 2 200 1 hour
Resource Point 3 500 1 minute
Resource point 4 0 30 minutes
Resource point 5 600 5 hours
As can be seen from table 2, even if the target object occupies resource point 1 and resource point 4, the resource may not be acquired, and the resource point occupies only 1 minute, but a block capable of uplink is generated within exactly 1 minute, so the target object can also harvest the resource.
It will be appreciated that the server allocates resources to players based on a resource allocation mechanism, and two resource allocation mechanisms are described herein, the first being a single object allocation mechanism and the second being a multiple object allocation mechanism. The two resource allocation mechanisms will be described separately below.
First, a single object allocation mechanism;
taking the information in the first to-be-verified block as an example, the server determines that the target object occupying the resources to be allocated currently is the allocation object, and assuming that the resources to be allocated yield 1000 coins, the server may allocate the 1000 coins corresponding to the resources to be allocated equally to the target object. There is usually some delay, so the target object can extract the relevant reward mail from the inbox of the client, and click on the reward mail to get 1000 coins. Optionally, the client may also add 1000 coins directly to the account of the target player without notification, which is not limited here.
Second, a multi-object allocation mechanism;
taking the information in the first to-be-verified block as an example, the server determines that a target object occupying resources to be allocated currently is an allocation object, assuming that the resources to be allocated produce 1000 coins, assuming that the first three arenas corresponding to the resources to be allocated are player a, player b and player c, respectively, and the target player does not enter the leaderboard, the server may determine the allocation proportion according to a preset weight, for example, the weight corresponding to the allocation object is 80%, the allocation weight of the first arena is 10%, the allocation weight of the second arena is 7%, the allocation weight of the third arena is 3%, then 1000 coins are allocated to 800 coins of the target object, the coins allocated to player a are 100, the coins allocated to player b are 70, and the coins allocated to player b are 30. It should be understood that the above-mentioned assigned weights are only an illustration and should not be construed as limiting the present application.
Further, in the embodiment of the present application, a method for implementing resource allocation based on information in a block chain is provided, where after a block link point adds a first block to be verified to the block chain, a resource allocation request sent by a server may also be received, then an allocation object of resources to be allocated is determined from the first block to be verified of the block chain according to the resource allocation request, and then the block link point sends a resource allocation response to the server according to the determined allocation object, so that the server allocates resources to the object according to a set reward allocation mechanism. Through the mode, the information recorded to the block chain can be used as the basis for the server to allocate resources, so that the resource or reward method has stronger fairness and credibility on the premise of more labor and more time, and the fixed time point is not used as the only basis for resource or reward distribution.
Optionally, on the basis of the foregoing embodiments corresponding to fig. 6, in a seventh optional embodiment of the method for resource allocation provided in this embodiment of the present application, after sending information recorded in the first block to be verified in the block chain to the server, so that the server determines, according to the information, that an allocation object of the resource to be allocated is a target object, the method may further include:
receiving a resource query request sent by a server, wherein the resource query request carries a resource identifier of a resource to be allocated and an object identifier of a target object;
acquiring historical information of resources to be distributed from a block chain according to the resource query request;
and sending the history information to the server so that the server sends the history information to the client.
In this embodiment, a history information display mode of resources to be allocated is introduced, and after a block chain node adds a first block to be verified to a block chain, a communication relationship may be established with a server, so that the server may obtain required information through the block chain. Specifically, taking a target object as an example for description, assuming that the target object wishes to view history information corresponding to a resource point 1, the target object may send a resource query request to the server, where the resource point 1 corresponds to an arena a, a resource identifier of the resource point 1 is 11111, and an identifier of the target object is 101110. The server sends the resource query request to the block chain nodes, and after receiving the resource query request, the block chain nodes analyze the resource query request to obtain the resource identifier 11111, and search for relevant historical information from the block chain based on the resource identifier 11111, wherein the historical information comprises player identifiers which occupy the resource 1 in history. And then the block chain nodes send history information to the server, the server determines the current accumulated reward conditions of the players according to the history information, then the players and the corresponding accumulated reward data are pushed to the client, and the client displays the previous players and the corresponding accumulated reward conditions.
Optionally, in order to save communication resources between the server and the client, after the server obtains the history information, the server may automatically filter out the jackpot situations of the top N players, and only push the jackpot data of the N players to the client. For convenience of introduction, please refer to fig. 10, fig. 10 is an interface schematic diagram of a resource query result in the embodiment of the present application, as shown in the figure, taking a certain resource point as an example, the resource point corresponds to the arena a, when a player chooses to view a historical bonus situation of the arena, the player can request to provide the accumulated bonus data to the server, the client side displays the accumulated bonus data, please refer to table 3, and table 3 is an illustration of the accumulated bonus data.
TABLE 3
Player information Rank of name Cumulative reward
Player A First name 99759
Player B Second name 98567
Player C Third name 95140
Player D The fourth name 91048
Player E The fifth name 90002
Player F The sixth name 88772
As can be seen from table 3, player a occupied the first name of the leader board of the arena a, and the jackpot reached 99759. Similarly, the player may also query historical accumulated bonus data corresponding to different resource points, which is not described herein. In addition, other information on the block chain is also publicly available, for example, the reward of the resource point 1 is allocated to the target object, at this time, the server may also initiate a block recording request to the block link point, that is, a new block is added for storing the resource allocation result, and when other players disagree with the resource allocation result, the result may also be queried through the block chain, so that the final result is transparently disclosed, and the security of storage is higher, which not only can implement the tracing of information, but also can improve the reliability of information.
Further, in the embodiment of the present application, a history information display manner of resources to be allocated is provided, that is, after a block link point adds a first block to be verified to a block chain, a resource query request sent by a server may also be received, then history information of the resources to be allocated is obtained from the block chain according to the resource query request, history information is sent to the server, the server sends the history information to a client, and finally the client displays the history information. Through the method, the user can also initiate a resource query request corresponding to the resource to be allocated through the client, the server acquires the historical information related to the resource to be allocated from the blockchain, and the information on the blockchain is difficult to tamper, so that the historical information mentioned from the blockchain has strong reliability and public confidence, and the fairness of the scheme is improved.
Referring to fig. 11, fig. 11 is a schematic view of an embodiment of a resource allocation apparatus in an embodiment of the present application, in which the resource allocation apparatus 30 includes:
an obtaining module 301, configured to obtain a first to-be-verified block corresponding to a resource to be allocated, where the resource to be allocated is in an associated state, and information of a target object is recorded in the first to-be-verified block, where the target object is an object associated with the resource to be allocated;
a processing module 302, configured to perform consensus processing on the first block to be verified acquired by the acquiring module 301 to obtain a consensus result;
an adding module 303, configured to add the first block to be verified to a block chain if the consensus result obtained by the processing module 302 meets a block uplink condition;
a sending module 304, configured to send, to a server, information recorded in the first to-be-verified block added by the adding module 303 in the block chain, so that the server determines, according to the information, that an allocation object of the to-be-allocated resource is the target object.
In this embodiment, the obtaining module 301 obtains a first to-be-verified block corresponding to the to-be-allocated resource, wherein the resource to be allocated is in an associated state, the first block to be verified records information of a target object, the target object is an object associated with the resource to be allocated, the processing module 302 performs consensus processing on the first block to be verified acquired by the acquiring module 301 to obtain a consensus result, and if the consensus result obtained by the processing module 302 meets a block uplink condition, the joining module 303 adds the first block to be verified to the block chain, the sending module 304 sends the information recorded by the first block to be verified added by the joining module 303 in the block chain to the server, and determining the allocation object of the resource to be allocated as the target object by the server according to the information.
In an embodiment of the present application, a resource allocation apparatus is provided, where the resource allocation apparatus is deployed in a block link point, a block link node may obtain a first to-be-verified block corresponding to a resource to be allocated, where the resource to be allocated is in an associated state, the first to-be-verified block records information of a target object, the target object is an object associated with the resource to be allocated, then the block link point performs consensus processing on the first to-be-verified block to obtain a consensus result, if the consensus result meets a block uplink condition, the first to-be-verified block is added to the block link, and finally, the block link point needs to send the information recorded by the first to-be-verified block in the block link to a server, so that the server determines, according to the information, that the allocated object of the resource to be allocated is the target object. Through the mode, the blocks produced by the resource points are random, the awards are obtained based on the randomly generated blocks, and the issuing of the awards is decoupled with the time points, so that the player is difficult to obtain the awards near the accurate time points due to the fact that the player robs the resource points, the stealing benefits are reduced, the game fairness is improved, and meanwhile, the good game environment is maintained.
Optionally, on the basis of the embodiment corresponding to fig. 11, in another embodiment of the resource allocation apparatus 30 provided in the embodiment of the present application,
the processing module 302 is specifically configured to obtain a computation power corresponding to the resource to be allocated;
acquiring a difficulty value, wherein the difficulty value is determined according to the computing power of unit resources and the total number of the resources;
and determining the consensus result according to the difficulty value and the calculation force.
Secondly, in the embodiment of the present application, a method for generating a consensus result is provided, that is, a block link point may first obtain a computation force corresponding to a resource to be allocated, and obtain a difficulty value, where the difficulty value is determined according to the computation force of a unit resource and a total number of resources, and then determine the consensus result according to the difficulty value and the computation force. By the method, the time required for generating a new block can be calculated based on the difficulty value and the calculation force, so that the rhythm of block generation can be effectively monitored, and the feasibility of the scheme is improved.
Optionally, on the basis of the embodiment corresponding to fig. 11, in another embodiment of the resource allocation apparatus 30 provided in the embodiment of the present application,
the processing module 302 is specifically configured to obtain generation times of N blocks, where N is an integer greater than or equal to 1;
if the generation time is less than a first time threshold, adjusting a first difficulty value to obtain the difficulty value, wherein the difficulty value is greater than the first difficulty value;
and if the generation time is greater than a second time threshold, adjusting a second difficulty value to obtain the difficulty value, wherein the difficulty value is smaller than the second difficulty value.
In the embodiment of the present application, a method for adjusting a difficulty value is provided, that is, a block link point may first obtain generation times of N blocks, and if the generation time is less than a first time threshold, adjust a first difficulty value to obtain a difficulty value, where the difficulty value is greater than the first difficulty value, and if the generation time is greater than a second time threshold, adjust a second difficulty value to obtain a difficulty value, where the difficulty value is less than the second difficulty value. By the mode, the block chain link points can automatically adjust the size of the difficulty value, on one hand, the rhythm of block generation can be effectively maintained, the block is prevented from being generated too fast or too slowly, and the stability of application is facilitated. On the other hand, the block link points can self-adaptively adjust the difficulty value without manual control or operation, thereby improving the convenience of the scheme and reducing the cost of manual operation and maintenance.
Optionally, on the basis of the embodiment corresponding to fig. 11, in another embodiment of the resource allocation apparatus 30 provided in the embodiment of the present application,
the processing module 302 is specifically configured to obtain generation times of N blocks, where N is an integer greater than or equal to 1;
if the generation time is less than a first time threshold, adjusting a first calculation force to obtain the calculation force, wherein the calculation force is less than the first calculation force;
and if the generation time is greater than a second time threshold, adjusting a second calculation force to obtain the calculation force, wherein the calculation force is greater than the second calculation force.
Secondly, in the embodiment of the present application, a method for adjusting the computation force is provided, that is, the block link points may first obtain the generation time of the N blocks, and if the generation time is less than a first time threshold, adjust the first computation force to obtain the computation force, where the computation force is less than the first computation force, otherwise, if the generation time is greater than a second time threshold, adjust the second computation force to obtain the computation force, where the computation force is greater than the second computation force. By the mode, the calculation force of the resource points can be automatically adjusted by the block chain link points, so that on one hand, the rhythm of block generation can be effectively maintained, the block is prevented from being generated too fast or too slowly, and the stability of application is facilitated. On the other hand, the calculation power of the resource points can be adaptively adjusted by the block link points without manual control or operation, so that the convenience of the scheme is improved, and the labor operation and maintenance cost is reduced.
Optionally, on the basis of the embodiment corresponding to fig. 11, in another embodiment of the resource allocation apparatus 30 provided in the embodiment of the present application,
the processing module 302 is specifically configured to obtain a block header according to the first block to be verified, where the block header includes a random number;
carrying out Hash operation on the random number in the block header to obtain the result value;
determining that the consensus result satisfies the block uplink condition if the result value is less than or equal to a target value.
Secondly, in the embodiment of the present application, a block consensus method based on workload certification is provided, that is, a block chain node obtains a block header according to a first block to be verified, where the block header includes a random number, then performs a hash operation on the random number in the block header to obtain a result value, and if the result value is less than or equal to a target value, it is determined that a consensus result satisfies a block uplink condition. By the above manner, the blocks are commonly identified based on the workload certification, and service attacks and other service abuse situations can be dealt with. The method requires the initiator to perform a certain amount of operation, which means that a certain time is consumed by the computer, thereby improving the reliability of the block chaining. Furthermore, the overall process of monitoring the work is often extremely inefficient, and the consensus efficiency can be improved by certifying the results of the work to prove that the corresponding work is done.
Optionally, on the basis of the embodiment corresponding to fig. 11, in another embodiment of the resource allocation apparatus 30 provided in the embodiment of the present application,
the processing module 302 is specifically configured to, if a second block to be verified exists and the second block to be verified and the first block to be verified are both next adjacent blocks to the target block, obtain a generation rate of the first block to be verified corresponding to the first block to be verified;
if the generation rate of the first block to be verified is greater than the generation rate of a second block to be verified, determining that the first block to be verified is a block to be linked, wherein the generation rate of the second block to be verified represents the block generation rate corresponding to the second block to be verified;
and if the generation rate of the first block to be verified is less than the generation rate of the second block to be verified, determining the second block to be verified as the block to be uplinked.
Then, in the embodiment of the present application, a processing method for block chain branching is provided, that is, after a block link point generates a first block to be verified according to a calculation power and a difficulty value, if a second block to be verified exists and the second block to be verified and the first block to be verified are both next adjacent blocks of a target block, a first block to be verified generation rate corresponding to the first block to be verified is obtained, if the first block to be verified generation rate is greater than the second block to be verified generation rate, the first block to be verified is determined to be a block to be uplink, and if the first block to be verified generation rate is less than the second block to be verified generation rate, the second block to be verified is determined to be a block to be uplink. Through the mode, only one block chain can exist at last to become a real effective account book, so that the uniqueness of the block chain is ensured.
Optionally, on the basis of the embodiment corresponding to fig. 11, in another embodiment of the resource allocation apparatus 30 provided in the embodiment of the present application,
the sending module 304 is specifically configured to receive a resource allocation request sent by a server, where the resource allocation request carries a resource identifier of the resource to be allocated;
according to the resource allocation request, determining an allocation object of the resource to be allocated from the first to-be-verified block of the block chain;
and sending a resource allocation response to the server according to the allocation object of the resource to be allocated, so that the server allocates the resource to be allocated to the target object according to the resource allocation response, wherein the resource allocation response carries an object identifier of the target object.
Further, in the embodiment of the present application, a method for implementing resource allocation based on information in a block chain is provided, where after a block link point adds a first block to be verified to the block chain, a resource allocation request sent by a server may also be received, then an allocation object of resources to be allocated is determined from the first block to be verified of the block chain according to the resource allocation request, and then the block link point sends a resource allocation response to the server according to the determined allocation object, so that the server allocates resources to the object according to a set reward allocation mechanism. Through the mode, the information recorded to the block chain can be used as the basis for the server to allocate resources, so that the resource or reward method has stronger fairness and credibility on the premise of more labor and more time, and the fixed time point is not used as the only basis for resource or reward distribution.
Optionally, on the basis of the embodiment corresponding to fig. 11, please refer to fig. 12, in another embodiment of the resource allocation apparatus 30 provided in the embodiment of the present application, the resource allocation apparatus 30 further includes a receiving module 305;
the receiving module 305 is configured to send, by the sending module 304, information recorded in the first block to be verified in the block chain to a server, so that after the server determines, according to the information, that an allocation object of the resource to be allocated is the target object, receive a resource query request sent by the server, where the resource query request carries a resource identifier of the resource to be allocated and an object identifier of the target object;
the obtaining module 301 is further configured to obtain, according to the resource query request received by the receiving module 305, historical information of the resource to be allocated from the block chain;
the sending module 304 is further configured to send the history information to the server, so that the server sends the history information to a client.
Further, in the embodiment of the present application, a history information display manner of resources to be allocated is provided, that is, after a block link point adds a first block to be verified to a block chain, a resource query request sent by a server may also be received, then history information of the resources to be allocated is obtained from the block chain according to the resource query request, history information is sent to the server, the server sends the history information to a client, and finally the client displays the history information. Through the method, the user can also initiate a resource query request corresponding to the resource to be allocated through the client, the server acquires the historical information related to the resource to be allocated from the blockchain, and the information on the blockchain is difficult to tamper, so that the historical information mentioned from the blockchain has strong reliability and public confidence, and the fairness of the scheme is improved.
The resource allocation system related to the embodiment of the application may be a distributed system formed by connecting a client, a plurality of blockchain nodes (any form of computing devices in an access network, such as servers and terminal devices) through a network communication form. A Peer-To-Peer (P2P) network is formed among the blockchain nodes, and the P2P Protocol is an application layer Protocol operating on a Transmission Control Protocol (TCP). In a distributed system, any machine such as a server and a terminal device can be added to form a blockchain node, and the blockchain node comprises a hardware layer, a middle layer, an operating system layer and an application layer. The functions of the blockchain node include:
1) routing, a basic function that block-linked points have, is used to support communication between block-linked points.
The block link point may have the following functions in addition to the routing function:
2) the application is used for being deployed in a block chain, realizing specific services according to actual service requirements, recording data related to the realization functions to form recording data, carrying a digital signature in the recording data to represent a source of task data, and sending the recording data to other block chain nodes in the block chain system, so that the other block chain nodes add the recording data to a temporary block when the source and integrity of the recording data are verified successfully.
For example, the services implemented by the application include:
2.1) the wallet, is used for providing the function of carrying on the trade of the electronic currency, including initiating the trade (namely, send the trade record of the present trade to other block chain nodes in the block chain system, after the other block chain nodes verify successfully, as the response of acknowledging that the trade is valid, store the record data of the trade into the temporary block of the block chain; of course, the wallet also supports the querying of the remaining electronic money in the electronic money address;
2.2) sharing the account book, which is used for providing the functions of operations such as storage, inquiry and modification of account data, sending the record data of the operation on the account data to other block chain nodes in the block chain system, and after the verification of the other block chain nodes is valid, storing the record data into a temporary block as a response for acknowledging that the account data is valid, and also sending the confirmation to the block chain node initiating the operation.
2.3) Intelligent contracts, computerized agreements, which can enforce the terms of a contract, implemented by codes deployed on a shared ledger for execution when certain conditions are met, for completing automated transactions according to actual business requirement codes, such as querying the logistics status of goods purchased by a buyer, transferring the buyer's electronic money to the merchant's address after the buyer signs for the goods; of course, smart contracts are not limited to executing contracts for trading, but may also execute contracts that process received information.
3) And the block chain comprises a series of blocks which are mutually connected according to the generated time sequence, the new blocks cannot be removed once being added into the block chain, and the blocks record the record data submitted by the block chain nodes in the block chain system.
It should be understood that the block link point provided herein may be in the form of a server, and for convenience of understanding, referring to fig. 13, fig. 13 is a schematic block link point structure provided in an embodiment of the present invention, and the block link point 400 may have a relatively large difference due to different configurations or performances, and may include one or more Central Processing Units (CPUs) 422 (e.g., one or more processors) and a memory 432, and one or more storage media 430 (e.g., one or more mass storage devices) for storing applications 442 or data 444. Wherein the memory 432 and storage medium 430 may be transient or persistent storage. The program stored on the storage medium 430 may include one or more modules (not shown), each of which may include a sequence of instructions operating on a blockchain node. Still further, the central processor 422 may be configured to communicate with the storage medium 430 to perform a series of instructional operations on the storage medium 430 at the block link point 400.
Block chain node 400 may also include one or more power supplies 426, one or more wired or wireless network interfaces 450, one or more input-output interfaces 458, and/or one or more operating systems 441, such as Windows ServerTM, Mac OS XTM, UnixTM, LinuxTM, FreeBSDTM, and so forth.
The steps performed by the blockchain nodes in the above embodiments may be based on the blockchain point structure shown in fig. 13.
In the embodiment of the present application, the CPU 422 included in the block link point further has the following functions:
acquiring a first to-be-verified block corresponding to a resource to be distributed, wherein the resource to be distributed is in an associated state, information of a target object is recorded in the first to-be-verified block, and the target object is an object associated with the resource to be distributed;
performing consensus processing on the first to-be-verified block to obtain a consensus result;
if the consensus result meets the block chaining condition, adding the first to-be-verified block into a block chain;
and sending information recorded by the first to-be-verified block in the block chain to a server, so that the server determines that the allocation object of the to-be-allocated resource is the target object according to the information.
Optionally, the CPU 422 included in the link point of the block is specifically configured to execute the following steps:
acquiring the computing power corresponding to the resources to be distributed;
acquiring a difficulty value, wherein the difficulty value is determined according to the computing power of unit resources and the total number of the resources;
and determining the consensus result according to the difficulty value and the calculation force.
Optionally, the CPU 422 included in the link point of the block is specifically configured to execute the following steps:
acquiring generation time of N blocks, wherein N is an integer greater than or equal to 1;
if the generation time is less than a first time threshold, adjusting a first difficulty value to obtain the difficulty value, wherein the difficulty value is greater than the first difficulty value;
and if the generation time is greater than a second time threshold, adjusting a second difficulty value to obtain the difficulty value, wherein the difficulty value is smaller than the second difficulty value.
Optionally, the CPU 422 included in the link point of the block is specifically configured to execute the following steps:
acquiring generation time of N blocks, wherein N is an integer greater than or equal to 1;
if the generation time is less than a first time threshold, adjusting a first calculation force to obtain the calculation force, wherein the calculation force is less than the first calculation force;
and if the generation time is greater than a second time threshold, adjusting a second calculation force to obtain the calculation force, wherein the calculation force is greater than the second calculation force.
Optionally, the CPU 422 included in the link point of the block is specifically configured to execute the following steps:
acquiring a block header according to the first block to be verified, wherein the block header comprises a random number;
carrying out Hash operation on the random number in the block header to obtain the result value;
determining that the consensus result satisfies the block uplink condition if the result value is less than or equal to a target value.
Optionally, the CPU 422 included in the link point of the block is specifically configured to execute the following steps:
if a second block to be verified exists and the second block to be verified and the first block to be verified are both next adjacent blocks of the target block, acquiring a first block to be verified generation rate corresponding to the first block to be verified;
if the generation rate of the first block to be verified is greater than the generation rate of a second block to be verified, determining that the first block to be verified is a block to be linked, wherein the generation rate of the second block to be verified represents the block generation rate corresponding to the second block to be verified;
and if the generation rate of the first block to be verified is less than the generation rate of the second block to be verified, determining the second block to be verified as the block to be uplinked.
Optionally, the CPU 422 included in the link point of the block is specifically configured to execute the following steps:
receiving a resource allocation request sent by a server, wherein the resource allocation request carries a resource identifier of the resource to be allocated;
according to the resource allocation request, determining an allocation object of the resource to be allocated from the first to-be-verified block of the block chain;
and sending a resource allocation response to the server according to the allocation object of the resource to be allocated, so that the server allocates the resource to be allocated to the target object according to the resource allocation response, wherein the resource allocation response carries an object identifier of the target object.
Optionally, the CPU 422 included in the link point of the block is further configured to perform the following steps:
receiving a resource query request sent by a server, wherein the resource query request carries a resource identifier of the resource to be allocated and an object identifier of the target object;
acquiring historical information of the resources to be distributed from the block chain according to the resource query request;
and sending the history information to the server so that the server sends the history information to a client.
It should be understood that the block link points provided in the present application may be in the form of terminal devices, and for the convenience of understanding, refer to fig. 14, and for the convenience of description, only the portions related to the embodiments of the present application are shown, and details of the specific technology are not disclosed, and refer to the method portion of the embodiments of the present application. The block link node may be any block link node including a mobile phone, a tablet computer, a Personal Digital Assistant (PDA), a Point of Sales (POS), a vehicle-mounted computer, etc., and the block link node is taken as the mobile phone for example:
fig. 14 is a block diagram illustrating a portion of the structure of a cell phone associated with block link points provided by an embodiment of the present application. Referring to fig. 14, the handset includes: radio Frequency (RF) circuit 510, memory 520, input unit 530, display unit 540, sensor 550, audio circuit 560, wireless fidelity (WiFi) module 570, processor 580, and power supply 590. Those skilled in the art will appreciate that the handset configuration shown in fig. 14 is not intended to be limiting and may include more or fewer components than those shown, or some components may be combined, or a different arrangement of components.
The following describes each component of the mobile phone in detail with reference to fig. 14:
RF circuit 510 may be used for receiving and transmitting signals during information transmission and reception or during a call, and in particular, for processing downlink information of a base station after receiving the downlink information to processor 580; in addition, the data for designing uplink is transmitted to the base station. In general, RF circuit 510 includes, but is not limited to, an antenna, at least one Amplifier, a transceiver, a coupler, a Low Noise Amplifier (LNA), a duplexer, and the like. In addition, RF circuit 510 may also communicate with networks and other devices via wireless communication. The wireless communication may use any communication standard or protocol, including but not limited to Global System for Mobile communication (GSM), General Packet Radio Service (GPRS), Code Division Multiple Access (CDMA), Wideband Code Division Multiple Access (WCDMA), Long Term Evolution (LTE), email, Short Messaging Service (SMS), and the like.
The memory 520 may be used to store software programs and modules, and the processor 580 executes various functional applications and data processing of the mobile phone by operating the software programs and modules stored in the memory 520. The memory 520 may mainly include a program storage area and a data storage area, wherein the program storage area may store an operating system, an application program required by at least one function (such as a sound playing function, an image playing function, etc.), and the like; the storage data area may store data (such as audio data, a phonebook, etc.) created according to the use of the cellular phone, and the like. Further, the memory 520 may include high speed random access memory, and may also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other volatile solid state storage device.
The input unit 530 may be used to receive input numeric or character information and generate key signal inputs related to user settings and function control of the cellular phone. Specifically, the input unit 530 may include a touch panel 531 and other input devices 532. The touch panel 531, also called a touch screen, can collect touch operations of a user on or near the touch panel 531 (for example, operations of the user on or near the touch panel 531 by using any suitable object or accessory such as a finger or a stylus pen), and drive the corresponding connection device according to a preset program. Alternatively, the touch panel 531 may include two parts, a touch detection device and a touch controller. The touch detection device detects the touch direction of a user, detects a signal brought by touch operation and transmits the signal to the touch controller; the touch controller receives touch information from the touch sensing device, converts the touch information into touch point coordinates, and sends the touch point coordinates to the processor 580, and can receive and execute commands sent by the processor 580. In addition, the touch panel 531 may be implemented by various types such as a resistive type, a capacitive type, an infrared ray, and a surface acoustic wave. The input unit 530 may include other input devices 532 in addition to the touch panel 531. In particular, other input devices 532 may include, but are not limited to, one or more of a physical keyboard, function keys (such as volume control keys, switch keys, etc.), a trackball, a mouse, a joystick, and the like.
The display unit 540 may be used to display information input by the user or information provided to the user and various menus of the mobile phone. The Display unit 540 may include a Display panel 541, and optionally, the Display panel 541 may be configured in the form of a Liquid Crystal Display (LCD), an Organic Light-Emitting Diode (OLED), or the like. Further, the touch panel 531 may cover the display panel 541, and when the touch panel 531 detects a touch operation on or near the touch panel 531, the touch panel is transmitted to the processor 580 to determine the type of the touch event, and then the processor 580 provides a corresponding visual output on the display panel 541 according to the type of the touch event. Although the touch panel 531 and the display panel 541 are shown as two separate components in fig. 14 to implement the input and output functions of the mobile phone, in some embodiments, the touch panel 531 and the display panel 541 may be integrated to implement the input and output functions of the mobile phone.
The handset may also include at least one sensor 550, such as a light sensor, motion sensor, and other sensors. Specifically, the light sensor may include an ambient light sensor and a proximity sensor, wherein the ambient light sensor may adjust the brightness of the display panel 541 according to the brightness of ambient light, and the proximity sensor may turn off the display panel 541 and/or the backlight when the mobile phone is moved to the ear. As one of the motion sensors, the accelerometer sensor can detect the magnitude of acceleration in each direction (generally, three axes), can detect the magnitude and direction of gravity when stationary, and can be used for applications of recognizing the posture of a mobile phone (such as horizontal and vertical screen switching, related games, magnetometer posture calibration), vibration recognition related functions (such as pedometer and tapping), and the like; as for other sensors such as a gyroscope, a barometer, a hygrometer, a thermometer, and an infrared sensor, which can be configured on the mobile phone, further description is omitted here.
Audio circuitry 560, speaker 561, and microphone 562 may provide an audio interface between a user and a cell phone. The audio circuit 560 may transmit the electrical signal converted from the received audio data to the speaker 561, and convert the electrical signal into a sound signal by the speaker 561 for output; on the other hand, the microphone 562 converts the collected sound signals into electrical signals, which are received by the audio circuit 560 and converted into audio data, which are then processed by the audio data output processor 580, and then passed through the RF circuit 510 to be sent to, for example, another cellular phone, or output to the memory 520 for further processing.
WiFi belongs to short distance wireless transmission technology, and the mobile phone can help the user to send and receive e-mail, browse web pages, access streaming media, etc. through the WiFi module 570, which provides wireless broadband internet access for the user. Although fig. 14 shows the WiFi module 570, it is understood that it does not belong to the essential constitution of the handset, and may be omitted entirely as needed within the scope not changing the essence of the invention.
The processor 580 is a control center of the mobile phone, connects various parts of the entire mobile phone by using various interfaces and lines, and performs various functions of the mobile phone and processes data by operating or executing software programs and/or modules stored in the memory 520 and calling data stored in the memory 520, thereby performing overall monitoring of the mobile phone. Alternatively, processor 580 may include one or more processing units; optionally, processor 580 may integrate an application processor, which handles primarily the operating system, user interface, applications, etc., and a modem processor, which handles primarily the wireless communications. It will be appreciated that the modem processor described above may not be integrated into processor 580.
The handset also includes a power supply 590 (e.g., a battery) for powering the various components, which may optionally be logically connected to the processor 580 via a power management system, such that the power management system may be used to manage charging, discharging, and power consumption.
Although not shown, the mobile phone may further include a camera, a bluetooth module, etc., which are not described herein.
In the embodiment of the present application, the processor 580 included in the blockchain node further has the following functions:
acquiring a first to-be-verified block corresponding to a resource to be distributed, wherein the resource to be distributed is in an associated state, information of a target object is recorded in the first to-be-verified block, and the target object is an object associated with the resource to be distributed;
performing consensus processing on the first to-be-verified block to obtain a consensus result;
if the consensus result meets the block chaining condition, adding the first to-be-verified block into a block chain;
and sending information recorded by the first to-be-verified block in the block chain to a server, so that the server determines that the allocation object of the to-be-allocated resource is the target object according to the information.
Optionally, the processor 580 included in the blockchain node is specifically configured to execute the following steps:
acquiring the computing power corresponding to the resources to be distributed;
acquiring a difficulty value, wherein the difficulty value is determined according to the computing power of unit resources and the total number of the resources;
and determining the consensus result according to the difficulty value and the calculation force.
Optionally, the processor 580 included in the blockchain node is specifically configured to execute the following steps:
acquiring generation time of N blocks, wherein N is an integer greater than or equal to 1;
if the generation time is less than a first time threshold, adjusting a first difficulty value to obtain the difficulty value, wherein the difficulty value is greater than the first difficulty value;
and if the generation time is greater than a second time threshold, adjusting a second difficulty value to obtain the difficulty value, wherein the difficulty value is smaller than the second difficulty value.
Optionally, the processor 580 included in the blockchain node is specifically configured to execute the following steps:
acquiring generation time of N blocks, wherein N is an integer greater than or equal to 1;
if the generation time is less than a first time threshold, adjusting a first calculation force to obtain the calculation force, wherein the calculation force is less than the first calculation force;
and if the generation time is greater than a second time threshold, adjusting a second calculation force to obtain the calculation force, wherein the calculation force is greater than the second calculation force.
Optionally, the processor 580 included in the blockchain node is specifically configured to execute the following steps:
acquiring a block header according to the first block to be verified, wherein the block header comprises a random number;
carrying out Hash operation on the random number in the block header to obtain the result value;
determining that the consensus result satisfies the block uplink condition if the result value is less than or equal to a target value.
Optionally, the processor 580 included in the blockchain node is specifically configured to execute the following steps:
if a second block to be verified exists and the second block to be verified and the first block to be verified are both next adjacent blocks of the target block, acquiring a first block to be verified generation rate corresponding to the first block to be verified;
if the generation rate of the first block to be verified is greater than the generation rate of a second block to be verified, determining that the first block to be verified is a block to be linked, wherein the generation rate of the second block to be verified represents the block generation rate corresponding to the second block to be verified;
and if the generation rate of the first block to be verified is less than the generation rate of the second block to be verified, determining the second block to be verified as the block to be uplinked.
Optionally, the processor 580 included in the blockchain node is specifically configured to execute the following steps:
receiving a resource allocation request sent by a server, wherein the resource allocation request carries a resource identifier of the resource to be allocated;
according to the resource allocation request, determining an allocation object of the resource to be allocated from the first to-be-verified block of the block chain;
and sending a resource allocation response to the server according to the allocation object of the resource to be allocated, so that the server allocates the resource to be allocated to the target object according to the resource allocation response, wherein the resource allocation response carries an object identifier of the target object.
Optionally, the processor 580 included in the blockchain node is further configured to perform the following steps:
receiving a resource query request sent by a server, wherein the resource query request carries a resource identifier of the resource to be allocated and an object identifier of the target object;
acquiring historical information of the resources to be distributed from the block chain according to the resource query request;
and sending the history information to the server so that the server sends the history information to a client.
It is clear to those skilled in the art that, for convenience and brevity of description, the specific working processes of the above-described systems, apparatuses and units may refer to the corresponding processes in the foregoing method embodiments, and are not described herein again.
In the several embodiments provided in the present application, it should be understood that the disclosed system, apparatus and method may be implemented in other manners. For example, the above-described apparatus embodiments are merely illustrative, and for example, the division of the units is only one logical division, and other divisions may be realized in practice, for example, a plurality of units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit. The integrated unit can be realized in a form of hardware, and can also be realized in a form of a software functional unit.
The integrated unit, if implemented in the form of a software functional unit and sold or used as a stand-alone product, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present application may be substantially implemented or contributed to by the prior art, or all or part of the technical solution may be embodied in a software product, which is stored in a storage medium and includes instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method according to the embodiments of the present application. And the aforementioned storage medium includes: various media capable of storing program codes, such as a usb disk, a removable hard disk, a read-only memory (ROM), a Random Access Memory (RAM), a magnetic disk, or an optical disk.
The above embodiments are only used for illustrating the technical solutions of the present application, and not for limiting the same; although the present application has been described in detail with reference to the foregoing embodiments, it should be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; and such modifications or substitutions do not depart from the spirit and scope of the corresponding technical solutions in the embodiments of the present application.

Claims (10)

1. A method of resource allocation, comprising:
acquiring a first to-be-verified block corresponding to a resource to be distributed, wherein the resource to be distributed is in an associated state, information of a target object is recorded in the first to-be-verified block, and the target object is an object associated with the resource to be distributed;
performing consensus processing on the first to-be-verified block to obtain a consensus result;
if the consensus result meets the block chaining condition, adding the first to-be-verified block into a block chain;
sending information recorded by the first to-be-verified block in the block chain to a server, so that the server determines that an allocation object of the to-be-allocated resource is the target object according to the information;
the performing consensus processing on the first to-be-verified block to obtain a consensus result includes:
if a second block to be verified exists and the second block to be verified and the first block to be verified are both next adjacent blocks of the target block, acquiring a first block to be verified generation rate corresponding to the first block to be verified;
if the generation rate of the first block to be verified is greater than the generation rate of a second block to be verified, determining that the first block to be verified is a block to be linked, wherein the generation rate of the second block to be verified represents the block generation rate corresponding to the second block to be verified;
if the generation rate of the first block to be verified is less than the generation rate of the second block to be verified, determining the second block to be verified as the block to be linked;
the block to be uplink meets the block uplink condition.
2. The method of claim 1, further comprising:
acquiring the computing power corresponding to the resources to be distributed;
acquiring a difficulty value, wherein the difficulty value is determined according to the computing power of unit resources and the total number of the resources;
and determining the consensus result according to the difficulty value and the calculation force.
3. The method of claim 2, wherein the obtaining the difficulty value comprises:
acquiring generation time of N blocks, wherein N is an integer greater than or equal to 1;
if the generation time is less than a first time threshold, adjusting a first difficulty value to obtain the difficulty value, wherein the difficulty value is greater than the first difficulty value;
and if the generation time is greater than a second time threshold, adjusting a second difficulty value to obtain the difficulty value, wherein the difficulty value is smaller than the second difficulty value.
4. The method of claim 2, wherein the obtaining the computational power corresponding to the resource to be allocated comprises:
acquiring generation time of N blocks, wherein N is an integer greater than or equal to 1;
if the generation time is less than a first time threshold, adjusting a first calculation force to obtain the calculation force, wherein the calculation force is less than the first calculation force;
and if the generation time is greater than a second time threshold, adjusting a second calculation force to obtain the calculation force, wherein the calculation force is greater than the second calculation force.
5. The method of claim 1, further comprising:
acquiring a block header according to the first block to be verified, wherein the block header comprises a random number;
carrying out Hash operation on the random number in the block header to obtain the result value;
determining that the consensus result satisfies the block uplink condition if the result value is less than or equal to a target value.
6. The method according to any one of claims 1 to 5, wherein the sending information recorded in the first block to be verified in the block chain to a server, so that the server determines, according to the information, that the allocation object of the resource to be allocated is the target object, comprises:
receiving a resource allocation request sent by a server, wherein the resource allocation request carries a resource identifier of the resource to be allocated;
according to the resource allocation request, determining an allocation object of the resource to be allocated from the first to-be-verified block of the block chain;
and sending a resource allocation response to the server according to the allocation object of the resource to be allocated, so that the server allocates the resource to be allocated to the target object according to the resource allocation response, wherein the resource allocation response carries an object identifier of the target object.
7. The method according to any one of claims 1 to 5, wherein after sending information recorded by the first block to be verified in the block chain to a server, so that the server determines that an allocation object of the resource to be allocated is the target object according to the information, the method further comprises:
receiving a resource query request sent by a server, wherein the resource query request carries a resource identifier of the resource to be allocated and an object identifier of the target object;
acquiring historical information of the resources to be distributed from the block chain according to the resource query request;
and sending the history information to the server so that the server sends the history information to a client.
8. A resource allocation apparatus, comprising
An obtaining module, configured to obtain a first to-be-verified block corresponding to a resource to be allocated, where the resource to be allocated is in an associated state, and information of a target object is recorded in the first to-be-verified block, where the target object is an object associated with the resource to be allocated;
the processing module is used for carrying out consensus processing on the first to-be-verified block acquired by the acquisition module to obtain a consensus result;
the adding module is used for adding the first to-be-verified block into a block chain if the consensus result obtained by the processing module meets a block uplink condition;
a sending module, configured to send information recorded in the first to-be-verified block in the block chain to a server, so that the server determines, according to the information, that an allocation object of the to-be-allocated resource is the target object;
the processing module is specifically configured to:
if a second block to be verified exists and the second block to be verified and the first block to be verified are both next adjacent blocks of the target block, acquiring a first block to be verified generation rate corresponding to the first block to be verified;
if the generation rate of the first block to be verified is greater than the generation rate of a second block to be verified, determining that the first block to be verified is a block to be linked, wherein the generation rate of the second block to be verified represents the block generation rate corresponding to the second block to be verified;
if the generation rate of the first block to be verified is less than the generation rate of the second block to be verified, determining the second block to be verified as the block to be linked;
the block to be uplink meets the block uplink condition.
9. A block link point, comprising: a memory, a transceiver, a processor, and a bus system;
wherein the memory is used for storing programs;
the processor is configured to execute a program in the memory, including performing the method of any of claims 1 to 7;
the bus system is used for connecting the memory and the processor so as to enable the memory and the processor to communicate.
10. A computer-readable storage medium comprising instructions that, when executed on a computer, cause the computer to perform the method of any of claims 1 to 7.
CN201910935466.3A 2019-09-29 2019-09-29 Resource allocation method and related device Active CN110602249B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910935466.3A CN110602249B (en) 2019-09-29 2019-09-29 Resource allocation method and related device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910935466.3A CN110602249B (en) 2019-09-29 2019-09-29 Resource allocation method and related device

Publications (2)

Publication Number Publication Date
CN110602249A CN110602249A (en) 2019-12-20
CN110602249B true CN110602249B (en) 2021-10-22

Family

ID=68864722

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910935466.3A Active CN110602249B (en) 2019-09-29 2019-09-29 Resource allocation method and related device

Country Status (1)

Country Link
CN (1) CN110602249B (en)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111259220B (en) * 2020-01-11 2021-03-02 杭州拾贝知识产权服务有限公司 Data acquisition method and system based on big data
CN111371558B (en) * 2020-02-26 2024-01-16 百度在线网络技术(北京)有限公司 Block chain data processing method and device, electronic equipment and medium
CN112057875B (en) * 2020-05-12 2024-01-12 上海骋荣网络科技有限公司 Game device allocation method, device and storage medium
CN111865832B (en) * 2020-07-23 2023-01-17 咪咕文化科技有限公司 Resource allocation method, terminal, server and storage medium
CN111870960B (en) * 2020-08-10 2023-11-24 网易(杭州)网络有限公司 Method and device for acquiring virtual article, electronic equipment and storage medium
CN112035856B (en) * 2020-08-20 2023-05-30 北方工业大学 V2G charge and discharge information processing method based on block chain technology
CN112085412B (en) * 2020-09-21 2023-11-17 王渡江 Resource optimization distribution system and distribution method
CN113032823B (en) * 2021-02-26 2023-08-01 加和(北京)信息科技有限公司 Method and device for generating device ID
CN114048988A (en) * 2021-11-04 2022-02-15 卢亮 Block chain computing power supply method and system

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106296191A (en) * 2016-08-13 2017-01-04 深圳市樊溪电子有限公司 A kind of PoW common recognition mechanism of block chain power-aware
WO2018171543A1 (en) * 2017-03-24 2018-09-27 阿里巴巴集团控股有限公司 Method and device for broadcasting messages
CN108985644A (en) * 2018-07-27 2018-12-11 阿里巴巴集团控股有限公司 Mining rights method and device, electronic equipment
CN110009498A (en) * 2019-03-29 2019-07-12 阿里巴巴集团控股有限公司 Resource allocation methods and device based on block chain
CN110148017A (en) * 2019-04-29 2019-08-20 阿里巴巴集团控股有限公司 Equity distribution method and device, electronic equipment, storage medium based on block chain

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106296191A (en) * 2016-08-13 2017-01-04 深圳市樊溪电子有限公司 A kind of PoW common recognition mechanism of block chain power-aware
WO2018171543A1 (en) * 2017-03-24 2018-09-27 阿里巴巴集团控股有限公司 Method and device for broadcasting messages
CN108985644A (en) * 2018-07-27 2018-12-11 阿里巴巴集团控股有限公司 Mining rights method and device, electronic equipment
CN110009498A (en) * 2019-03-29 2019-07-12 阿里巴巴集团控股有限公司 Resource allocation methods and device based on block chain
CN110148017A (en) * 2019-04-29 2019-08-20 阿里巴巴集团控股有限公司 Equity distribution method and device, electronic equipment, storage medium based on block chain

Also Published As

Publication number Publication date
CN110602249A (en) 2019-12-20

Similar Documents

Publication Publication Date Title
CN110602249B (en) Resource allocation method and related device
CN111773696B (en) Virtual object display method, related device and storage medium
CN110585698B (en) Virtual asset transaction method and related device
CN106657165A (en) Defense method of network attack, server and terminal
CN103346921A (en) User management method, relevant equipment and communication system
CN104220137A (en) Game control device, game control method, program, storage medium, and game system
CN110956505A (en) Advertisement inventory estimation method and related device
CN111080429A (en) Virtual resource acquisition method, device and storage medium
CN112084217A (en) Data processing method and related device
CN110781421B (en) Virtual resource display method and related device
CN109146446A (en) A kind of virtual objects distribution method, apparatus and system
CN111951021A (en) Method and device for discovering suspicious communities, storage medium and computer equipment
US20210035139A1 (en) Control method, apparatus, and computer program for stochastic item-providing system
CN110694278A (en) Game table combining method, game score calculating method and device and intelligent equipment
CN110585733B (en) Virtual asset transaction method and related device
CN111181840B (en) Resource value transfer method, system and related device
CN104423865A (en) Method and device for displaying playing cards on terminal with touch screen
CN110665234B (en) Object matching method and related device
CN108632054A (en) The prediction technique and device of information propagation amount
CN110559661A (en) Pairing method and device
CN107809449B (en) Transaction control method and device
CN110327623B (en) Node control method based on interactive application and related device
US11660543B2 (en) Player profile management system
US20230277938A1 (en) Method and device for providing game service
CN106296246B (en) Service processing method and device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40017432

Country of ref document: HK

SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant