Resource allocation verification method, resource allocation method, system, device, readable storage medium and program product

By having the resource allocator provide commitment values ​​and mapping information, and the resource recipient performs verification, the problem of difficulty in verifying resource allocation results is solved, ensuring the transparency and randomness of the resource allocation process.

CN122309262APending Publication Date: 2026-06-30TENCENT MUSIC ENTERTAINMENT TECH (SHENZHEN) CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
TENCENT MUSIC ENTERTAINMENT TECH (SHENZHEN) CO LTD
Filing Date
2026-03-31
Publication Date
2026-06-30

AI Technical Summary

Technical Problem

In random resource allocation scenarios, it is difficult for the resource recipient to transparently verify the resource allocation results, making it difficult to guarantee the randomness of the resource allocation results.

Method used

The resource allocator provides a commitment value and a commitment resource mapping information. The resource recipient uses this information to verify the legality of the resource allocation parameters and results. By verifying the commitment value and mapping information, the transparency and randomness of the resource allocation process are ensured.

Benefits of technology

It enables resource recipients to supervise and verify resource allocation results, ensuring the randomness and transparency of resource allocation results and reducing the possibility of tampering during the resource allocation process.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122309262A_ABST
    Figure CN122309262A_ABST
Patent Text Reader

Abstract

This application relates to a resource allocation verification method, a resource allocation method, a system, a computer device, a computer-readable storage medium, and a computer program product. The method includes: obtaining a commitment value and committed resource mapping information from a resource allocator; using the commitment value to verify resource allocation parameters provided by the resource allocator; the committed resource mapping information indicating the mapping relationship between the resource to be allocated and a random resource allocation number; the random resource allocation number being obtained based on resource allocation parameters provided by the resource allocator and the resource recipient; after obtaining the commitment value and committed resource mapping information, providing a first resource allocation parameter to the resource allocator; obtaining a resource allocation result and a second resource allocation parameter from the resource allocator; and verifying the second resource allocation parameter and the resource allocation result based on the commitment value, committed resource mapping information, and the first resource allocation parameter to obtain result verification information. This method can guarantee the randomness of the resource allocation result.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of computer technology, and in particular to a resource allocation verification method, a resource allocation method, a system, a computer device, a computer-readable storage medium, and a computer program product. Background Technology

[0002] In random resource allocation scenarios, the resource allocator typically needs to allocate resources to the resource recipient in a random manner. In related technologies, random resource allocation is usually unilaterally completed by the resource allocator, who then provides the allocation result to the resource recipient. However, this allocation method lacks transparency for the resource recipient, making it difficult for them to verify the allocation result, thus compromising the randomness of the allocation. Summary of the Invention

[0003] Therefore, it is necessary to provide a resource allocation verification method, a resource allocation method, a system, a computer device, a computer-readable storage medium, and a computer program product to address the above-mentioned technical problems.

[0004] Firstly, this application provides a resource allocation verification method, including:

[0005] Obtain a commitment value and committed resource mapping information from the resource allocator; the commitment value is used to verify the resource allocation parameters provided by the resource allocator; the committed resource mapping information is used to indicate the mapping relationship between the resource to be allocated and the resource allocation random number; the resource allocation random number is obtained based on the resource allocation parameters provided by the resource allocator and the resource receiver.

[0006] After obtaining the commitment value and the commitment resource mapping information, the first resource allocation parameter is provided to the resource allocator;

[0007] Obtain the resource allocation result and the second resource allocation parameters from the resource allocator;

[0008] Based on the commitment value, the commitment resource mapping information, and the first resource allocation parameter, the second resource allocation parameter and the resource allocation result are verified to obtain the result verification information of the resource allocation result.

[0009] In one embodiment, the step of verifying the second resource allocation parameter and the resource allocation result based on the commitment value, the committed resource mapping information, and the first resource allocation parameter to obtain result verification information of the resource allocation result includes: calculating a verification value corresponding to the second resource allocation parameter using the calculation method of the commitment value; if the verification value is consistent with the commitment value, sending a result verification request for the resource allocation result to the resource allocator; the result verification request includes the first resource allocation parameter and the second resource allocation parameter; receiving result verification information from the resource allocator; the result verification information is obtained by the resource allocator after verifying the resource allocation result based on the committed resource mapping information and the first resource allocation parameter.

[0010] In one embodiment, the step of verifying the second resource allocation parameter and the resource allocation result based on the commitment value, the committed resource mapping information, and the first resource allocation parameter to obtain result verification information of the resource allocation result includes: calculating a verification value corresponding to the second resource allocation parameter using the calculation method of the commitment value; if the verification value is consistent with the commitment value, calculating a random number to be verified based on the first resource allocation parameter and the second resource allocation parameter using the calculation method of the resource allocation random number; mapping the random number to be verified based on the committed resource mapping information to obtain a resource mapping result corresponding to the random number to be verified; and obtaining result verification information of the resource allocation result based on the consistency between the resource mapping result and the resource allocation result.

[0011] In one embodiment, the method further includes: displaying a verification report of the resource allocation result; the verification report includes the result verification information and the calculation process information of the result verification information.

[0012] Secondly, this application also provides a resource allocation method, including:

[0013] Generate a second resource allocation parameter and calculate the commitment value corresponding to the second resource allocation parameter;

[0014] The commitment value and commitment resource mapping information are provided to the resource recipient; the commitment resource mapping information is used to indicate the mapping relationship between the resource to be allocated and the resource allocation random number; the resource allocation random number is obtained based on the resource allocation parameters provided by the resource recipient and the resource allocator.

[0015] Upon obtaining the first resource allocation parameter from the resource recipient, the resource allocation random number is calculated based on the first resource allocation parameter and the second resource allocation parameter.

[0016] The resource allocation random number is mapped according to the promised resource mapping information to obtain the resource allocation result corresponding to the resource allocation random number;

[0017] The resource allocation result and the second resource allocation parameters are provided to the resource recipient.

[0018] In one embodiment, the method further includes: upon receiving a result verification request for the resource allocation result, obtaining a first parameter to be verified and a second parameter to be verified corresponding to the resource allocation result based on the result verification request; calculating a random number to be verified based on the first parameter to be verified and the second parameter to be verified using the calculation method of the resource allocation random number; mapping the random number to be verified based on the committed resource mapping information to obtain a resource mapping result corresponding to the random number to be verified; obtaining result verification information for the resource allocation result based on the consistency between the random number to be verified and the resource allocation random number, and the consistency between the resource mapping result and the resource allocation result; and sending the result verification information to the resource recipient.

[0019] In one embodiment, sending the result verification information to the resource recipient includes: sending a verification report of the resource allocation result to the resource recipient; the verification report contains the result verification information and calculation process information containing the result verification information.

[0020] Thirdly, this application also provides a resource allocation system, the system comprising: a resource allocator and a resource receiver;

[0021] The resource allocator is configured to generate a second resource allocation parameter, calculate a commitment value corresponding to the second resource allocation parameter, and provide the commitment value and commitment resource mapping information to the resource receiver; the commitment resource mapping information is used to indicate the mapping relationship between the resource to be allocated and the resource allocation random number.

[0022] The resource recipient is used to obtain the commitment value and the commitment resource mapping information;

[0023] The resource recipient is also configured to provide a first resource allocation parameter to the resource allocator after obtaining the commitment value and the commitment resource mapping information;

[0024] The resource allocator is further configured to obtain the first resource allocation parameter, calculate a resource allocation random number based on the first resource allocation parameter and the second resource allocation parameter, and map the resource allocation random number according to the committed resource mapping information to obtain the resource allocation result corresponding to the resource allocation random number;

[0025] The resource allocator is also used to provide the resource allocation result and the second resource allocation parameter to the resource receiver;

[0026] The resource recipient is also used to obtain the resource allocation result and the second resource allocation parameter;

[0027] The resource recipient is further configured to verify the second resource allocation parameter and the resource allocation result based on the commitment value, the commitment resource mapping information and the first resource allocation parameter, and obtain result verification information of the resource allocation result.

[0028] Fourthly, this application also provides a computer device, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to perform the following steps:

[0029] Obtain a commitment value and committed resource mapping information from the resource allocator; the commitment value is used to verify the resource allocation parameters provided by the resource allocator; the committed resource mapping information is used to indicate the mapping relationship between the resource to be allocated and the resource allocation random number; the resource allocation random number is obtained based on the resource allocation parameters provided by the resource allocator and the resource receiver.

[0030] After obtaining the commitment value and the commitment resource mapping information, the first resource allocation parameter is provided to the resource allocator;

[0031] Obtain the resource allocation result and the second resource allocation parameters from the resource allocator;

[0032] Based on the commitment value, the commitment resource mapping information, and the first resource allocation parameter, the second resource allocation parameter and the resource allocation result are verified to obtain the result verification information of the resource allocation result.

[0033] Fifthly, this application also provides a computer device, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to perform the following steps:

[0034] Generate a second resource allocation parameter and calculate the commitment value corresponding to the second resource allocation parameter;

[0035] The commitment value and commitment resource mapping information are provided to the resource recipient; the commitment resource mapping information is used to indicate the mapping relationship between the resource to be allocated and the resource allocation random number; the resource allocation random number is obtained based on the resource allocation parameters provided by the resource recipient and the resource allocator.

[0036] Upon obtaining the first resource allocation parameter from the resource recipient, the resource allocation random number is calculated based on the first resource allocation parameter and the second resource allocation parameter.

[0037] The resource allocation random number is mapped according to the promised resource mapping information to obtain the resource allocation result corresponding to the resource allocation random number;

[0038] The resource allocation result and the second resource allocation parameters are provided to the resource recipient.

[0039] Sixthly, this application also provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, performs the following steps:

[0040] Obtain a commitment value and committed resource mapping information from the resource allocator; the commitment value is used to verify the resource allocation parameters provided by the resource allocator; the committed resource mapping information is used to indicate the mapping relationship between the resource to be allocated and the resource allocation random number; the resource allocation random number is obtained based on the resource allocation parameters provided by the resource allocator and the resource receiver.

[0041] After obtaining the commitment value and the commitment resource mapping information, the first resource allocation parameter is provided to the resource allocator;

[0042] Obtain the resource allocation result and the second resource allocation parameters from the resource allocator;

[0043] Based on the commitment value, the commitment resource mapping information, and the first resource allocation parameter, the second resource allocation parameter and the resource allocation result are verified to obtain the result verification information of the resource allocation result.

[0044] Seventhly, this application also provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, performs the following steps:

[0045] Generate a second resource allocation parameter and calculate the commitment value corresponding to the second resource allocation parameter;

[0046] The commitment value and commitment resource mapping information are provided to the resource recipient; the commitment resource mapping information is used to indicate the mapping relationship between the resource to be allocated and the resource allocation random number; the resource allocation random number is obtained based on the resource allocation parameters provided by the resource recipient and the resource allocator.

[0047] Upon obtaining the first resource allocation parameter from the resource recipient, the resource allocation random number is calculated based on the first resource allocation parameter and the second resource allocation parameter.

[0048] The resource allocation random number is mapped according to the promised resource mapping information to obtain the resource allocation result corresponding to the resource allocation random number;

[0049] The resource allocation result and the second resource allocation parameters are provided to the resource recipient.

[0050] Eighthly, this application also provides a computer program product, including a computer program that, when executed by a processor, performs the following steps:

[0051] Obtain a commitment value and committed resource mapping information from the resource allocator; the commitment value is used to verify the resource allocation parameters provided by the resource allocator; the committed resource mapping information is used to indicate the mapping relationship between the resource to be allocated and the resource allocation random number; the resource allocation random number is obtained based on the resource allocation parameters provided by the resource allocator and the resource receiver.

[0052] After obtaining the commitment value and the commitment resource mapping information, the first resource allocation parameter is provided to the resource allocator;

[0053] Obtain the resource allocation result and the second resource allocation parameters from the resource allocator;

[0054] Based on the commitment value, the commitment resource mapping information, and the first resource allocation parameter, the second resource allocation parameter and the resource allocation result are verified to obtain the result verification information of the resource allocation result.

[0055] Ninthly, this application also provides a computer program product, including a computer program that, when executed by a processor, performs the following steps:

[0056] Generate a second resource allocation parameter and calculate the commitment value corresponding to the second resource allocation parameter;

[0057] The commitment value and commitment resource mapping information are provided to the resource recipient; the commitment resource mapping information is used to indicate the mapping relationship between the resource to be allocated and the resource allocation random number; the resource allocation random number is obtained based on the resource allocation parameters provided by the resource recipient and the resource allocator.

[0058] Upon obtaining the first resource allocation parameter from the resource recipient, the resource allocation random number is calculated based on the first resource allocation parameter and the second resource allocation parameter.

[0059] The resource allocation random number is mapped according to the promised resource mapping information to obtain the resource allocation result corresponding to the resource allocation random number;

[0060] The resource allocation result and the second resource allocation parameters are provided to the resource recipient.

[0061] The aforementioned resource allocation verification method, resource allocation method, system, computer equipment, computer-readable storage medium, and computer program product involve the resource recipient first obtaining a commitment value and committed resource mapping information from the resource allocator. The commitment value is used to verify the resource allocation parameters provided by the resource allocator, and the committed resource mapping information indicates the mapping relationship between the resource to be allocated and a random resource allocation number. This random resource allocation number is obtained based on the resource allocation parameters provided by both the resource allocator and the resource recipient. After obtaining the commitment value and committed resource mapping information, the resource recipient provides the resource allocator with first resource allocation parameters, then obtains the resource allocation result and second resource allocation parameters from the resource allocator. Finally, based on the commitment value, committed resource mapping information, and first resource allocation parameters, the second resource allocation parameters and the resource allocation result are verified to obtain the result verification information for the resource allocation result. In this scheme, the resource allocator provides a commitment value and committed resource mapping information to the resource receiver before allocating resources. After receiving the commitment value and committed resource mapping information, the resource receiver provides the resource allocator with the first resource allocation parameter. After completing the resource allocation, the resource allocator provides the resource allocation result and the second resource allocation parameter to the resource receiver. This allows the resource receiver to use the commitment value to verify whether the second resource allocation parameter was pre-generated before resource allocation, and to use the commitment mapping information to verify whether the resource allocation result is based on the first resource parameter, the second resource parameter, and the preset mapping rules. Thus, the resource receiver can supervise and verify the resource allocation process by verifying the second resource allocation parameter and the resource allocation result, which helps to ensure the randomness of the resource allocation result. Attached Figure Description

[0062] To more clearly illustrate the technical solutions in the embodiments of this application or related technologies, the drawings used in the description of the embodiments of this application or related technologies will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.

[0063] Figure 1 This is a schematic diagram of the structure of a resource allocation system in one embodiment;

[0064] Figure 2 This is a schematic diagram of the resource allocation system in another embodiment;

[0065] Figure 3 This is a flowchart illustrating the commitment and initialization phases in one embodiment;

[0066] Figure 4 This is a flowchart illustrating the user participation phase in one embodiment;

[0067] Figure 5 This is a flowchart illustrating the determination stage in one embodiment;

[0068] Figure 6 This is a flowchart illustrating the verification phase in one embodiment;

[0069] Figure 7 This is a flowchart illustrating a resource allocation verification method in one embodiment;

[0070] Figure 8 This is a flowchart illustrating a resource allocation method in one embodiment;

[0071] Figure 9 This is an internal structural diagram of a computer device in one embodiment;

[0072] Figure 10 This is a diagram of the internal structure of a computer device in another embodiment. Detailed Implementation

[0073] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.

[0074] It should be noted that the terms "first," "second," etc., used in this application can be used to describe various objects, but these objects are not limited by these terms. These terms are only used to distinguish the first object from the second object. The terms "comprising" and "having," and any variations thereof, used in this application, are intended to cover non-exclusive inclusion. The term "multiple" used in this application refers to two or more. The term "and / or" used in this application refers to one of the embodiments, or any combination of multiple embodiments.

[0075] In related technologies, random resource allocation tasks can be executed in various ways. For example, after the resource recipient initiates a resource allocation request, the resource allocator generates a random number and allocates resources based on that random number. Alternatively, the resource allocator can generate a first seed independently or obtain a first seed based on publicly available information, then combine this first seed with the resource provider's second seed to generate a random number, and use this random number for resource allocation. However, these methods largely rely on the traditional "centralized black box" model for resource allocation. The core logic of the resource allocation process (random number generation, resource mapping) is unilaterally controlled by the resource allocator, making it difficult to technically supervise the allocation process. This creates an opportunity for the resource allocator to selectively tamper with data during the allocation process. Therefore, random resource allocation methods in related technologies often rely solely on the self-discipline of the resource allocator to ensure the randomness of the allocation results, making it difficult to eliminate the possibility of covert tampering, thus failing to adequately guarantee the randomness of the allocation results.

[0076] In response, this application provides a resource allocation system. For example... Figure 1 As shown, the system can include a resource allocator and a resource receiver.

[0077] In this system, the resource allocator communicates with the resource receiver via a network. The resource receiver can be a terminal, which may include, but is not limited to, various personal computers, laptops, smartphones, tablets, drones, low-altitude aircraft, IoT devices, and portable wearable devices. IoT devices may include smart speakers, smart TVs, smart air conditioners, smart in-vehicle devices, and projection equipment. Portable wearable devices may include smartwatches, smart bracelets, and head-mounted displays. Head-mounted displays may include virtual reality (VR) devices, augmented reality (AR) devices, and smart glasses. The resource allocator can be a server, which may be a standalone physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server providing cloud computing services. The data storage system can store the data that the resource allocator needs to process. The data storage system can be integrated into the resource allocator or located in the cloud or on other network servers.

[0078] The resource allocator is used to generate the second resource allocation parameters and calculate the commitment value corresponding to the second resource allocation parameters; it provides the commitment value and commitment resource mapping information to the resource receiver; the commitment resource mapping information is used to indicate the mapping relationship between the resource to be allocated and the resource allocation random number.

[0079] Specifically, in the resource allocation system of this embodiment, the resource allocator and the resource receiver can each generate their own resource allocation parameters. The resource allocator can combine the resource allocation parameters of both parties to obtain a resource allocation random number, and determine the target resource corresponding to the resource allocation random number based on a preset mapping rule, thereby obtaining the resource allocation result corresponding to the resource receiver.

[0080] In this system, the resource allocator can pre-generate a second resource allocation parameter before allocating resources and calculate the corresponding commitment value using a preset calculation method. For example, the second resource allocation parameter can be a random number generated by the resource allocator. The calculation method for the commitment value can be pre-disclosed or pre-agreed with the resource recipient. The commitment value can have a deterministic one-to-one correspondence with the second resource allocation parameter, and it is difficult to deduce the second resource allocation parameter from the commitment value. Therefore, the commitment value can identify the second resource allocation parameter without exposing it, and can be used subsequently to verify the consistency between the parameter to be verified and the second resource allocation parameter. For example, a preset hash algorithm can be used to calculate the hash value corresponding to the second resource allocation parameter, and this hash value can be used as the commitment value corresponding to the second resource allocation parameter.

[0081] The resource allocator can also obtain the committed resource mapping information corresponding to this resource allocation. This committed resource mapping information can be used to indicate the mapping relationship between the resource to be allocated and the resource allocation random number. For example, the committed resource mapping information may include a preset numerical range, each numerical range may correspond to a different resource to be allocated. When the resource allocation random number falls into one of the numerical ranges, it can be determined that the resource to be allocated corresponding to that numerical range is the target resource corresponding to that resource allocation random number.

[0082] The resource allocator can provide the commitment value and commitment resource mapping information to the resource receiver after obtaining the commitment value corresponding to the second resource allocation parameter and the commitment resource mapping information. For example, the resource allocator can obtain the commitment resource mapping information before the resource allocation activity begins, and upon receiving a resource allocation initialization request from the resource receiver, generate the second resource allocation parameter and calculate its commitment value, then return the commitment value and commitment resource mapping information to the resource receiver. Alternatively, the resource allocator can also obtain the commitment resource mapping information in advance, generate the second resource allocation parameter and calculate its commitment value, and return the commitment value and commitment resource mapping information to the resource receiver upon receiving a resource allocation initialization request. For example, the resource allocator can also proactively provide the commitment value and commitment resource mapping information to the resource receiver without requiring the resource receiver to initiate a resource allocation initialization request.

[0083] The resource receiver is used to obtain the commitment value and the committed resource mapping information.

[0084] The resource recipient can obtain the commitment value and committed resource mapping information provided by the resource allocator. Optionally, after obtaining the commitment value and committed resource mapping information, the resource recipient can also visualize them to allow users to understand the specific content of the commitment value and committed resource mapping information.

[0085] The resource recipient is also used to provide the first resource allocation parameters to the resource allocator after receiving the commitment value and the commitment resource mapping information.

[0086] The first resource allocation parameter can be a random number generated by the resource provider. The resource provider can provide its first resource allocation parameter to the resource allocator after receiving the commitment value and the committed resource mapping information. For example, the resource provider can pre-generate the first resource allocation parameter, or it can be generated upon triggering a user interaction. For example, the resource receiver can provide the first resource allocation parameter to the resource allocator by sending a resource allocation request carrying the first resource allocation parameter.

[0087] The resource allocator is also used to obtain the first resource allocation parameter, calculate the resource allocation random number based on the first resource allocation parameter and the second resource allocation parameter, and map the resource allocation random number according to the committed resource mapping information to obtain the resource allocation result corresponding to the resource allocation random number.

[0088] The resource allocator, after receiving the first resource allocation parameters from the resource recipient, can use a preset deterministic algorithm to calculate a resource allocation random number based on the first and second resource allocation parameters. The method for calculating the resource allocation random number can be either publicly disclosed beforehand or agreed upon in advance with the resource recipient.

[0089] In this process, after calculating the random number for resource allocation, the resource allocator can map the random number to the corresponding resource to be allocated according to the mapping relationship indicated by the committed resource mapping information. This allows them to obtain the target resource corresponding to the random number, i.e., the resource allocation result. For example, the committed resource mapping information may include multiple preset numerical ranges, each corresponding to a different resource to be allocated. When the random number falls within one of these numerical ranges, the resource to be allocated corresponding to that range can be determined as the target resource corresponding to that random number.

[0090] The resource allocator is also used to provide the resource allocation results and second resource allocation parameters to the resource recipient.

[0091] The resource recipient is also used to obtain resource allocation results and second resource allocation parameters.

[0092] After receiving the resource allocation result corresponding to the random number, the resource allocator can return the resource allocation result and the second resource allocation parameters involved in the allocation process to the resource receiver. The resource receiver can then obtain the resource allocation result and the revealed second resource allocation parameters. For example, after receiving the resource allocation result and the second resource allocation parameters, the resource receiver can visualize the resource allocation result. Optionally, the resource receiver can also display the resource allocation result along with the corresponding first and second resource allocation parameters.

[0093] The resource recipient is also used to verify the second resource allocation parameters and the resource allocation result based on the commitment value, the committed resource mapping information and the first resource allocation parameters, and to obtain the result verification information of the resource allocation result.

[0094] The resource recipient can use a pre-acquired commitment value, committed resource mapping information, and its own provided first resource allocation parameters to verify the acquired second resource allocation parameters and resource allocation results, thereby obtaining verification information for the resource allocation results. Since the commitment value is calculated by the resource allocator using a preset calculation method based on the second resource allocation parameters, the same calculation method can be used to calculate the second resource allocation parameters obtained by the resource recipient. When the calculation result matches the commitment value, it can be determined that the second resource allocation parameters have not been tampered with and thus pass the verification; otherwise, it can be determined that the second resource allocation parameters have failed the verification. Furthermore, since the committed resource mapping information indicates the mapping relationship between the resources to be allocated and the resource allocation random number, and the resource allocation random number is calculated using a preset deterministic algorithm based on the first and second resource allocation parameters, when verifying the resource allocation results, a random number can be calculated using the same deterministic algorithm based on the first resource allocation parameters generated by the resource recipient and the second resource allocation parameters obtained by the resource recipient. This random number is then mapped according to the committed resource mapping information to obtain the target resource corresponding to the random number. Then, the target resource corresponding to the random number can be compared with the resource indicated by the resource allocation result. If they match, the resource allocation result is considered valid; otherwise, it is considered invalid. Specifically, if both the second resource allocation parameter and the resource allocation result obtained by the resource recipient pass the verification, the result verification information for the resource allocation result is "verification passed"; if at least one of the second resource allocation parameter and the resource allocation result fails the verification, the result verification information for the resource allocation result is "verification failed".

[0095] Optionally, the resource recipient can perform the above verification process locally to verify the second resource allocation parameters and the resource allocation result, and obtain the result verification information of the resource allocation result. Alternatively, the resource recipient can also perform the above verification process through the resource allocator. For example, the resource recipient can send the first resource allocation parameters and the obtained second resource allocation parameters to the resource allocator, which will then re-execute the calculation process of the commitment value and the resource allocation result, and compare the calculated commitment value and resource allocation result with the commitment value and resource allocation result from the previous actual resource allocation process to verify the second resource allocation parameters and the resource allocation result and obtain the corresponding result verification information, which will then be sent to the resource recipient. Alternatively, the resource recipient can also verify the second resource allocation parameters locally using the commitment value, and send the first resource allocation parameters and the obtained second resource allocation parameters to the resource allocator, which will then verify the resource allocation result and obtain the corresponding result verification information, which will then be sent to the resource recipient.

[0096] Optionally, the resource recipient may also utilize a third-party trusted platform to implement the above verification process. The third-party trusted platform may deploy the verification logic for the above resource allocation results. The resource recipient may provide the commitment value, committed resource allocation information, first resource allocation parameters, second resource allocation parameters, and resource allocation results to the third-party trusted platform. The third-party trusted platform will then execute the above verification process according to the verification logic for the resource allocation results to obtain the corresponding result verification information, and then return the obtained result verification information to the resource recipient.

[0097] In some exemplary embodiments, the resource allocation system can encapsulate the commitment, disclosure, calculation, and verification logic of the resource allocation process into smart contracts on the blockchain. For example, the resource allocator can generate a second resource allocation parameter and calculate the commitment value corresponding to the second resource allocation parameter, then submit the commitment value and commitment resource mapping information to the blockchain. The resource recipient can obtain the commitment value and commitment resource mapping information through the blockchain and submit its own first resource allocation parameter to the blockchain. The resource allocator can obtain the first resource allocation parameter through the blockchain, calculate a resource allocation random number based on the first and second resource allocation parameters, map the resource allocation random number according to the commitment resource mapping information, obtain the resource allocation result corresponding to the resource allocation random number, and then submit the resource allocation result and the second resource parameter to the blockchain. The resource recipient can obtain the resource allocation result and the second resource parameter through the blockchain, and verify the second resource allocation parameter and the resource allocation result according to the commitment value, commitment resource mapping information, and first resource allocation parameter to obtain result verification information for the resource allocation result. In this approach, blockchain smart contracts can automatically verify the second resource allocation parameters and the resource allocation result based on the commitment value, committed resource mapping information, and the first resource allocation parameters after meeting preset conditions. This results in verification information, along with the process data, is then permanently uploaded to the blockchain. The resource recipient can obtain this verification information through the blockchain. This method leverages the immutability, transparency, and decentralized execution characteristics of blockchain to automate and ensure the reliability of the verification process, eliminating reliance on the integrity of a centralized server.

[0098] The aforementioned resource allocation system, by having the resource allocator provide a commitment value and committed resource mapping information to the resource receiver before allocating resources, and having the resource receiver provide the first resource allocation parameter to the resource allocator after receiving the commitment value and committed resource mapping information, and by having the resource allocator provide the resource allocation result and second resource allocation parameter to the resource receiver after completing the resource allocation, enables the resource receiver to use the commitment value to verify whether the second resource allocation parameter was pre-generated before resource allocation, and to use the commitment mapping information to verify whether the resource allocation result is based on the first resource parameter, the second resource parameter, and the preset mapping rules. Thus, the resource receiver can supervise and verify the resource allocation process by verifying the second resource allocation parameter and the resource allocation result, which helps to ensure the randomness of the resource allocation result.

[0099] In an exemplary embodiment, the resource recipient can calculate a verification value corresponding to the second resource allocation parameter using the calculation method of the commitment value; if the verification value matches the commitment value, it sends a result verification request for the resource allocation result to the resource allocator; the result verification request includes the first resource allocation parameter and the second resource allocation parameter. The resource allocator, upon receiving the result verification request for the resource allocation result, can obtain the first and second parameters to be verified corresponding to the resource allocation result based on the result verification request.

[0100] Specifically, the resource allocator can provide the resource receiver with a verification function for the resource allocation result. The resource receiver, after receiving the resource allocation result and the second resource allocation parameters, can verify the second resource allocation parameters locally. Only after successful verification can the resource receiver use the service provided by the resource allocator to verify the resource allocation result.

[0101] For example, the resource recipient can calculate the check value corresponding to the second resource allocation parameter using the calculation method of the commitment value, and compare the check value with the commitment value to determine whether they are consistent. When they are consistent, it can be determined that the second resource allocation parameter has not been changed; otherwise, it can be determined that the second resource allocation parameter has been tampered with. Wherein, if the check value and the commitment value are consistent, the resource recipient can send a result verification request for the resource allocation result to the resource allocator. This result verification request can carry the first resource allocation parameter and the second resource allocation parameter previously obtained by the resource allocator. Upon receiving the result verification request for the resource allocation result, the resource allocator can obtain the first and second parameters to be verified corresponding to the resource allocation result based on the request. The first and second parameters to be verified obtained by the resource allocator correspond to the first and second resource allocation parameters carried by the resource recipient in the result verification request, respectively.

[0102] The resource allocator can also utilize the calculation method for resource allocation random numbers to calculate a random number to be verified based on a first and a second parameter to be verified. This random number is then mapped according to the promised resource mapping information to obtain the resource mapping result corresponding to the random number to be verified. Based on the consistency between the random number to be verified and the resource allocation random number, as well as the consistency between the resource mapping result and the resource allocation result, result verification information for the resource allocation result is obtained and sent to the resource receiver. The resource receiver can also use this information to receive result verification information from the resource allocator.

[0103] The resource allocator can utilize the previously used method for calculating the resource allocation random number to calculate a random number to be verified based on the first and second parameters to be verified. Then, it maps this random number to the committed resource mapping information to obtain the resource mapping result corresponding to the random number to be verified. The resource allocator can compare the random number to be verified with the resource allocation random number, and also compare the resource mapping result with the resource allocation result. When the random number to be verified matches the resource allocation random number, and the resource mapping result matches the resource allocation result, a verification result indicating that the resource allocation result has been verified is obtained; otherwise, a verification result indicating that the resource allocation result has failed is obtained. The resource allocator can then send this verification result to the resource recipient, who can then receive the verification result. Optionally, after receiving the verification result, the resource recipient can also display the verification result visually.

[0104] Optionally, when the verification value calculated by the resource recipient is inconsistent with the commitment value, the resource recipient can directly obtain the verification information indicating that the resource allocation result verification failed, without having to request the resource allocator to verify the resource allocation result.

[0105] In this implementation, by having the resource recipient verify the received second resource allocation parameters, and then requesting the resource allocator to verify the resource allocation result after the verification passes, the technical difficulty for the resource recipient to verify the resource allocation result can be reduced, which is conducive to achieving effective supervision of the randomness of resource allocation. In an exemplary embodiment, the resource recipient can also be used to: calculate the verification value corresponding to the second resource allocation parameters using the calculation method of the commitment value; if the verification value is consistent with the commitment value, calculate the random number to be verified based on the first and second resource allocation parameters using the calculation method of the resource allocation random number; map the random number to be verified according to the commitment resource mapping information to obtain the resource mapping result corresponding to the random number to be verified; obtain the second verification result based on the consistency between the resource mapping result and the resource allocation result; and obtain the result verification information of the resource allocation result based on the first verification result and the second verification result.

[0106] Specifically, since the calculation methods for the commitment value and the random number of resource allocation are disclosed in advance or agreed upon in advance by the resource allocator and the resource recipient, the resource recipient can verify the resource allocation result locally after obtaining the resource allocation result and the second resource allocation parameter, so as to obtain the result verification information of the resource allocation result.

[0107] For example, the resource recipient can use the calculation method of the commitment value to calculate the check value corresponding to the second resource allocation parameter, and compare the check value with the commitment value to determine whether the two are consistent. When the two are consistent, it can be determined that the second resource allocation parameter has not been changed; otherwise, it can be determined that the second resource allocation parameter has been tampered with.

[0108] For example, when the verification value matches the committed value, the resource recipient can use the method for calculating resource allocation random numbers to calculate the random number to be verified based on the first and second resource allocation parameters. Then, it can map the random number to be verified according to the committed resource mapping information to obtain the resource mapping result corresponding to the random number to be verified. The resource mapping result can then be compared with the resource allocation result. If they match, a verification result indicating that the resource allocation result has passed verification can be obtained; otherwise, a verification result indicating that the resource allocation result has failed verification can be obtained. Optionally, after obtaining the verification result information, the resource recipient can also display the verification result information visually.

[0109] Optionally, if the verification value is inconsistent with the commitment value, the resource recipient can directly obtain the verification information indicating that the resource allocation result verification failed, without having to calculate and verify the resource mapping result.

[0110] In this embodiment, by having the resource recipient verify the second resource allocation parameters and the resource allocation results locally, the credibility of the verification results can be improved, and the possibility of the resource allocator or a third party manipulating the verification process can be eliminated.

[0111] In an exemplary embodiment, the resource recipient may also be used to: display a verification report of the resource allocation results; the verification report includes result verification information and information on the calculation process of the result verification information.

[0112] After receiving the verification information corresponding to the resource allocation results, the resource recipient can display a verification report of the resource allocation results in a visual manner. This verification report may include the verification information of the resource allocation results, and may also include information about the calculation process for the verification information.

[0113] For example, when the resource recipient verifies the resource allocation result locally, the resource recipient can record the input, output, and judgment logic of each step of the calculation during the verification process to obtain the calculation process information of the result verification information. Subsequently, the resource recipient can generate a verification report of the resource allocation result based on the result verification information and its calculation process information, and then visualize it.

[0114] For example, when the resource recipient uses the verification function provided by the resource allocator to verify the resource allocation result, the resource allocator can record the input, output, and judgment logic of each step of the calculation during the verification process to obtain the calculation process information of the result verification information. Then, based on the result verification information and the calculation process information of the resource allocation result, the resource allocator generates a verification report of the resource allocation result and sends it to the resource recipient. The resource recipient can then visualize the verification report upon receiving it.

[0115] In this embodiment, by visually displaying the result verification information and its calculation process information, the entire chain of calculation process from the original resource allocation parameters to the final result can be presented intuitively. As a result, ordinary users who are resource recipients can effectively supervise the verification process based on the verification report, which helps to improve the transparency and credibility of the verification process.

[0116] In one exemplary embodiment, a resource allocation system is provided.

[0117] In this embodiment, the resource allocation system may include a resource allocator and a resource receiver. This system can be used to execute random resource allocation tasks and verify the resource allocation results. For example, random resource allocation tasks may include, but are not limited to, lotteries, financial marketing activities, and virtual item draws. The following description uses a lottery task as an example to illustrate the resource allocation system in this embodiment.

[0118] Specifically, please refer to Figure 2The resource allocation system can include a resource allocator and a resource receiver. The resource receiver can be a terminal running a client, such as a browser or a mobile application provided by the resource allocator. The resource receiver can generate user seeds and interact with the resource allocator. The resource allocator can adopt a layered microservice architecture, configured with an access layer, application service layer, support service layer, and data layer. The access layer can be equipped with a load balancer to distribute high-concurrency user requests to different application servers. The application service layer can be an application server cluster, configured with a lottery core service and an independent verification service. The lottery core service handles lottery requests and coordinates the entire process across modules, while the independent verification service provides a verification interface for users to verify the fairness of historical lottery records. The support service layer can be configured with a random number service and a cryptographic service. The random number service uses a cryptographically secure pseudo-random number generator to generate high-quality server seeds, while the cryptographic service is responsible for calculating hash values, generating HMACs, and other cryptographic operations. The data layer can be configured with a seed database and a prize pool configuration database. The seed database can be used to associate and store server seeds, their corresponding hash values, and user-submitted user seeds. The prize pool configuration database can be used to store prize information, probability configurations, and their mapped numerical ranges. Based on this system architecture, probability configuration management, commitment-disclosure processes, and cryptographic computation and verification services can be decoupled, achieving high availability and auditability.

[0119] For example, based on such Figure 2 The resource allocation system shown can be implemented through, for example... Figures 3 to 6 The process shown involves resource allocation and verification. This process can sequentially include the stages of commitment and initialization, user participation, disclosure and judgment, and verification.

[0120] The commitment and initialization process in the first phase can be as follows: Figure 3 As shown, it includes the following steps:

[0121] Step S1, Probability Fixation. Before the start of the lottery activity, the resource allocator writes the prize probability configuration (i.e., committed resource mapping information) into the prize pool configuration database in the management backend. This configuration is stored in the form of a numerical range (e.g., a first prize probability of 0.5% corresponds to a floating-point range [0, 0.005)), and once published, it cannot be changed during the activity period. Optionally, the probability range tables for different lottery activities do not have to be completely static, but can be generated and changed according to a pre-published and determined algorithm rule. For example, the division position of the probability range for each lottery activity can be calculated using a public formula based on the last few digits of a certain authoritative financial market index for that day. In the subsequent verification stage, the probability range table for that activity can be regenerated according to the public rule, and then the matching verification can be performed. Thus, while maintaining the rigidity of probability execution (the rule is publicly determined), it provides the resource allocator with the flexibility to dynamically adjust the prize pool, and all adjustments can be publicly audited, which is suitable for scenarios that require frequent updates to the prize pool but also require high transparency.

[0122] Step S2, generate commitment. When a user initiates a lottery request (e.g., the user clicks to enter the lottery page through the client), the client requests lottery initialization from the lottery core service. The lottery core service calls the random number service to generate the second resource allocation parameter (hereinafter referred to as "server seed" or "S_Server").

[0123] Step S3: Calculate and publicize the commitment value and commitment resource mapping information. The lottery core service calls the cryptographic service to calculate the commitment value H=Hash(S_Server) of the server seed using a public hash algorithm, and retrieves the commitment resource mapping information from the prize pool configuration database, returning the commitment value and commitment resource mapping information to the client. Simultaneously, (S_Server, H) is stored in the seed database, marked as "committed". At this point, S_Server must be kept secret. Upon receiving the commitment value and commitment resource mapping information, the client displays it along with a "seed locked" message. Optionally, the resource allocator can also collaborate with multiple independent parties to generate a second resource allocation parameter S_Server. For example, a committee composed of multiple independent parties, including a third-party notary node and randomly selected resource recipient representative nodes, can be introduced. Each member of the committee independently generates a seed shard and submits its commitment value. After user participation, all members jointly reveal the shards and combine them to form the final S_Server. The combination method can be simple concatenation or reconstruction using secret sharing. This allows single-point trust to be distributed into multi-point trust, reducing the cost and difficulty of cheating and further enhancing the fairness and resistance to attacks in the seed generation stage.

[0124] After completing the first phase, the second phase can proceed. The user participation process in the second phase can be as follows: Figure 4 As shown, it includes the following steps:

[0125] Step S4: The client generates a seed. When a user confirms the lottery (e.g., by clicking the "Start Lottery" button displayed on the client), the client can generate a first resource allocation parameter (hereinafter referred to as the "user seed" or "S_Client") using a local secure random source. Optionally, the generation of the user seed (S_Client) can rely not only on the client's local random number generator but also incorporate real-time environmental entropy source data from the user's side at the moment of the lottery. For example, the precise timestamp (millisecond level) at the moment the user clicks "Start Lottery," the device's gyroscope reading, or the voiceprint feature hash value of a random voice message actively provided by the user can be collected. These data are then hashed together with the local random number to obtain the final S_Client. This significantly enhances the randomness and unpredictability of the user seed and, by introducing user-unique real-time physical information, makes the seed virtually impossible to copy or replay, further ensuring the uniqueness and fairness of each lottery event.

[0126] Step S5, Commit and Lock. The client submits S_Client and the received commitment value H to the resource allocator. The resource allocator's lottery core service finds the corresponding record based on H, updates the status to "Committed," and binds S_Client. This order ensures that the resource allocator cannot reverse-select or generate S_Server based on a known S_Client.

[0127] After completing the second stage, the third stage of processing can proceed. The disclosure and judgment process for the third stage can be as follows: Figure 5 As shown, it includes the following steps:

[0128] Step S6: Calculate the final random number. The lottery core service calls the cryptographic service and uses a pre-published deterministic algorithm (such as HMAC) to combine the seeds from both parties to generate the final random number R (i.e., the "resource allocation random number"). For example, the resource allocation random number can be represented as: R = HMAC - SHA256(S_Server, S_Client), and the result is normalized to a floating-point number between [0, 1). Optionally, the generation of the final random number R can employ a multi-layered nested or cascaded structure. For example, S_Server and S_Client can first generate an intermediate random number R1, and then combine R1 with another auxiliary seed composed of a system timestamp hash value to generate the final R. This process can be designed as multiple rounds, each using a different hash or encryption algorithm. Therefore, by increasing the complexity of the computational layers, the cryptographic strength of the random number generation can be enhanced, more effectively resisting potential cryptographic analysis or predictive attacks, making it suitable for resource allocation scenarios with high security requirements.

[0129] Step S7, Fixed Interval Mapping. The lottery core service can query the committed resource mapping information in the prize pool configuration database to obtain a preset, fixed probability value interval table. Subsequently, deterministic mapping can be performed, comparing R with these intervals to determine the probability value interval in which R falls. This mapping is deterministic and public.

[0130] Step S8: Generate Results. The lottery core service can determine the final prize (Prize) based on the mapping result between R and the probability value range, thus obtaining the lottery results (i.e., "resource allocation results").

[0131] Step S9, Data Storage and Return. The lottery core service can associate and store S_Client, R, and the prize (Prize) in the seed database and update the status to "Completed". Subsequently, the lottery core service can return the lottery results, the revealed S_Server, and S_Client to the client. The client can display the lottery results and the two seeds returned by the resource allocator.

[0132] After completing the third stage, a fourth stage can be performed. Optionally, in the fourth stage, the resource recipient can locally verify the second resource allocation parameter S_Server and the prize indicated by the resource allocation result based on the commitment value H, the committed resource mapping information, and the first resource allocation parameter S_Client, thereby obtaining the result verification information of the resource allocation result. Optionally, in the fourth stage, the resource recipient can also use the verification service provided by the resource allocator to verify the resource allocation result.

[0133] For example, taking the verification process using the verification service provided by the resource allocator as an example, the fourth-stage verification process can be as follows: Figure 6 As shown, it includes the following steps:

[0134] Step S10, Verification Trigger. Users can trigger verification via the client, for example, by clicking the "Verify this result" button on the client's results page or in the history to trigger the verification of the resource allocation result. The client can locally calculate the verification value H' = Hash(S_Server) corresponding to the second resource allocation parameter S_Server using the calculation method of the commitment value H, and compare the verification value H' with the initially received commitment value H. If they match, it proves that the resource allocator did not change the seed midway. The client can also send a result verification request carrying S_Server and S_Client to the resource allocator.

[0135] Step S11, Automated Recalculation. The resource allocator's independent verification service receives the user-provided S_Server (i.e., the "second parameter to be verified") and S_Client (i.e., the "first parameter to be verified"), and uses these two parameters to re-execute steps S6 to S8, calculate the random number R' to be verified, and query the same probability interval table in the prize pool configuration database according to the commitment mapping information, and then perform mapping according to the probability interval table to obtain the prize "Prize" corresponding to the random number R' to be verified, thereby obtaining the resource mapping result corresponding to the random number to be verified.

[0136] Step S12, Comparison and Reporting. The resource allocator's independent verification service can query the resource allocation random number R and the prize Prize in the seed database, compare R with R', and compare Prize with Prize'. When both match, a verification result indicating that the resource allocation result has passed verification is obtained; otherwise, a verification result indicating that the resource allocation result has failed verification is obtained. Regardless of whether the resource allocation result passes verification, the resource allocator can generate a visual verification report. This report includes the verification result information of the resource allocation result, as well as the calculation process information such as inputs, outputs, and logical judgments at each step in obtaining the verification result information. The resource allocator can return the verification report to the client, and the client can visualize the verification report for the user.

[0137] The resource allocation system in this embodiment can achieve the following beneficial effects:

[0138] 1. Rigid technical enforcement of probability rules eliminates the possibility of covert manipulation: In related technologies, resource allocators typically retain the technical capability to unilaterally adjust seeds and mapping rules. This solution, by using a fixed probability interval table as the committed resource mapping information and setting a mandatory process order where the resource allocator commits first, and the resource recipient submits the seed subsequently, transforms the resource allocation rules into immutable mathematical constraints. Before receiving the user's seed, the resource allocator makes an unchangeable commitment to the server seed and mapping rules, ensuring that the final mapping result from random numbers to prizes is uniquely determined the moment the user participates. This completely eliminates the possibility of the resource allocator secretly adjusting the winning probability based on the resource recipient's behavior or operational needs at the system level, elevating the fairness of resource allocation from "claims" and "trust" to "mandatory mathematical guarantees."

[0139] 2. Provides a native, barrier-free, and visualized end-to-end verification experience, reducing the cost of public oversight: This solution provides standardized verification interfaces and automated processes by integrating "verification" as a core built-in service. Users do not need to understand cryptographic principles or perform programming calculations themselves; with just one click, the system can automatically and completely reproduce the entire chain of computation from the original seed to the final result, presenting it in a visual manner. This changes the situation where verification in related technologies requires a high level of expertise, enabling ordinary users to become effective oversight agents, thus enhancing the system's transparency and credibility.

[0140] 3. A technically trusted closed loop is constructed that does not rely on a single trusted party, providing a trustworthy foundation for scarce resource allocation scenarios: This solution constructs an independently auditable technical closed loop through cryptographic commitments, definitive public algorithms, and fixed configurations. The fairness of the system no longer primarily depends on the brand reputation of the resource allocator or third-party notarization, but is based on a publicly verifiable mathematical process. Therefore, it can provide an application basis for random mechanisms in scarce resource allocation scenarios such as large-scale e-commerce lotteries, financial marketing activities, and rare item draws in games, reducing resource allocation disputes caused by trust crises.

[0141] Based on the same inventive concept, this application also provides a resource allocation verification method. The solution provided by this method is similar to the solution described in the above system embodiments. Therefore, the specific limitations of one or more resource allocation verification method embodiments provided below can be found in the limitations of the resource allocation system described above, and will not be repeated here.

[0142] In one exemplary embodiment, such as Figure 7 As shown, a resource allocation verification method is provided, which is applied to... Figure 1 Taking the resource recipient in the example, the following steps are included:

[0143] Step S701: Obtain the commitment value and committed resource mapping information from the resource allocator. The commitment value is used to verify the resource allocation parameters provided by the resource allocator; the committed resource mapping information is used to indicate the mapping relationship between the resource to be allocated and the resource allocation random number; the resource allocation random number is obtained based on the resource allocation parameters provided by the resource allocator and the resource receiver.

[0144] Step S702: After obtaining the commitment value and commitment resource mapping information, provide the first resource allocation parameters to the resource allocator.

[0145] Step S703: Obtain the resource allocation result and the second resource allocation parameter from the resource allocator.

[0146] Step S704: Based on the commitment value, the commitment resource mapping information, and the first resource allocation parameter, verify the second resource allocation parameter and the resource allocation result to obtain the result verification information of the resource allocation result.

[0147] In an exemplary embodiment, the second resource allocation parameter and the resource allocation result are verified based on the commitment value, the committed resource mapping information, and the first resource allocation parameter to obtain result verification information of the resource allocation result. This includes: calculating the verification value corresponding to the second resource allocation parameter using the calculation method of the commitment value; sending a result verification request for the resource allocation result to the resource allocator if the verification value matches the commitment value; the result verification request includes the first resource allocation parameter and the second resource allocation parameter; receiving result verification information from the resource allocator; the result verification information is obtained by the resource allocator after verifying the resource allocation result based on the committed resource mapping information and the first resource allocation parameter.

[0148] In an exemplary embodiment, the second resource allocation parameter and the resource allocation result are verified based on the commitment value, the committed resource mapping information, and the first resource allocation parameter to obtain result verification information of the resource allocation result. This includes: calculating the verification value corresponding to the second resource allocation parameter using the calculation method of the commitment value; if the verification value is consistent with the commitment value, calculating the random number to be verified based on the first and second resource allocation parameters using the calculation method of the resource allocation random number; mapping the random number to be verified according to the committed resource mapping information to obtain the resource mapping result corresponding to the random number to be verified; and obtaining the result verification information of the resource allocation result based on the consistency between the resource mapping result and the resource allocation result.

[0149] In an exemplary embodiment, the method further includes: displaying a verification report of the resource allocation result; the verification report includes the result verification information and the calculation process information of the result verification information.

[0150] Based on the same inventive concept, this application also provides a resource allocation method. The solution provided by this method is similar to the solution described in the above system embodiments. Therefore, the specific limitations of one or more resource allocation method embodiments provided below can be found in the limitations of the resource allocation system above, and will not be repeated here.

[0151] In one exemplary embodiment, such as Figure 8 As shown, a resource allocation method is provided, which can be applied to... Figure 1 Taking the resource allocator in the example, the following steps are included:

[0152] Step S801: Generate the second resource allocation parameters and calculate the commitment value corresponding to the second resource allocation parameters.

[0153] Step S802: Provide the resource recipient with a commitment value and committed resource mapping information. The committed resource mapping information is used to indicate the mapping relationship between the resource to be allocated and the resource allocation random number; the resource allocation random number is obtained based on the resource allocation parameters provided by the resource recipient and the resource allocator.

[0154] Step S803: If the first resource allocation parameter is obtained from the resource recipient, calculate the resource allocation random number based on the first resource allocation parameter and the second resource allocation parameter.

[0155] Step S804: Map the resource allocation random number according to the committed resource mapping information to obtain the resource allocation result corresponding to the resource allocation random number.

[0156] Step S805: Provide the resource allocation result and the second resource allocation parameters to the resource recipient.

[0157] In an exemplary embodiment, the method further includes: upon receiving a result verification request for a resource allocation result, obtaining a first parameter to be verified and a second parameter to be verified corresponding to the resource allocation result based on the result verification request; calculating a random number to be verified based on the first parameter to be verified and the second parameter to be verified using the calculation method of a resource allocation random number, mapping the random number to be verified according to the committed resource mapping information, and obtaining a resource mapping result corresponding to the random number to be verified; obtaining result verification information for the resource allocation result based on the consistency between the random number to be verified and the resource allocation random number, and the consistency between the resource mapping result and the resource allocation result; and sending the result verification information to the resource recipient.

[0158] It should be understood that although the steps in the flowcharts of the embodiments described above are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the embodiments described above may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages in other steps. It is understood that the steps in different embodiments can be freely combined as needed, and all non-contradictory solutions formed by such combinations are within the scope of protection of this application.

[0159] In one exemplary embodiment, a computer device is provided, which may be a terminal, and its internal structure diagram may be as follows: Figure 9 As shown, the computer device includes a processor, memory, input / output interfaces, a communication interface, a display unit, and an input device. The processor, memory, and input / output interfaces are connected via a system bus, and the communication interface, display unit, and input device are also connected to the system bus via the input / output interfaces. The processor provides computing and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system and computer programs. The internal memory provides an environment for the operation of the operating system and computer programs in the non-volatile storage media. The input / output interfaces are used for exchanging information between the processor and external devices. The communication interface is used for wired or wireless communication with external terminals; wireless communication can be achieved through Wi-Fi, mobile cellular networks, Near Field Communication (NFC), or other technologies. When executed by the processor, the computer program implements a resource allocation verification method. The display unit is used to form a visually visible image and can be a display screen, a projection device, or a virtual reality imaging device. The display screen can be an LCD screen or an e-ink screen. The input device of the computer device can be a touch layer covering the display screen, or buttons, trackballs, or touchpads set on the casing of the computer device, or external keyboards, touchpads, or mice, etc.

[0160] In one exemplary embodiment, a computer device is provided, which may be a server, and its internal structure diagram may be as follows: Figure 10 As shown, this computer device includes a processor, memory, input / output (I / O) interfaces, and a communication interface. The processor, memory, and I / O interfaces are connected via a system bus, and the communication interface is also connected to the system bus via the I / O interfaces. The processor provides computational and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system, computer programs, and a database. The internal memory provides the environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The database stores data such as second resource allocation parameters and committed resource mapping information. The I / O interfaces are used for exchanging information between the processor and external devices. The communication interface is used for communicating with external terminals via a network connection. When the computer program is executed by the processor, it implements a resource allocation method.

[0161] Those skilled in the art will understand that Figure 9 and Figure 10 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.

[0162] In one embodiment, a computer device is also provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps in the above method embodiments.

[0163] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon that, when executed by a processor, implements the steps in the above method embodiments.

[0164] In one embodiment, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps in the above method embodiments.

[0165] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of the relevant data must comply with relevant regulations.

[0166] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile memory and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, artificial intelligence (AI) processors, etc., and are not limited to these.

[0167] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this application.

[0168] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of this patent application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.

Claims

1. A resource allocation verification method, characterized in that, The method includes: Obtain a commitment value and committed resource mapping information from the resource allocator; the commitment value is used to verify the resource allocation parameters provided by the resource allocator; the committed resource mapping information is used to indicate the mapping relationship between the resource to be allocated and the resource allocation random number; the resource allocation random number is obtained based on the resource allocation parameters provided by the resource allocator and the resource receiver. After obtaining the commitment value and the commitment resource mapping information, the first resource allocation parameter is provided to the resource allocator; Obtain the resource allocation result and the second resource allocation parameters from the resource allocator; Based on the commitment value, the commitment resource mapping information, and the first resource allocation parameter, the second resource allocation parameter and the resource allocation result are verified to obtain the result verification information of the resource allocation result.

2. The method according to claim 1, characterized in that, The step of verifying the second resource allocation parameter and the resource allocation result based on the commitment value, the commitment resource mapping information, and the first resource allocation parameter to obtain result verification information for the resource allocation result includes: Using the calculation method of the commitment value, calculate the verification value corresponding to the second resource allocation parameter; If the verification value matches the commitment value, a result verification request for the resource allocation result is sent to the resource allocator; the result verification request includes the first resource allocation parameter and the second resource allocation parameter. Receive result verification information from the resource allocator; the result verification information is obtained by the resource allocator after verifying the resource allocation result based on the committed resource mapping information and the first resource allocation parameters.

3. The method according to claim 1, characterized in that, The step of verifying the second resource allocation parameter and the resource allocation result based on the commitment value, the commitment resource mapping information, and the first resource allocation parameter to obtain result verification information for the resource allocation result includes: Using the calculation method of the commitment value, calculate the verification value corresponding to the second resource allocation parameter; If the verification value matches the commitment value, the random number to be verified is calculated using the calculation method of the resource allocation random number, based on the first resource allocation parameter and the second resource allocation parameter. The random number to be verified is then mapped according to the commitment resource mapping information to obtain the resource mapping result corresponding to the random number to be verified. Based on the consistency between the resource mapping result and the resource allocation result, result verification information for the resource allocation result is obtained.

4. The method according to any one of claims 1 to 3, characterized in that, The method further includes: A verification report showing the resource allocation results is provided; the verification report includes the result verification information and the calculation process information of the result verification information.

5. A resource allocation method, characterized in that, The method includes: Generate a second resource allocation parameter and calculate the commitment value corresponding to the second resource allocation parameter; The commitment value and commitment resource mapping information are provided to the resource recipient; the commitment resource mapping information is used to indicate the mapping relationship between the resource to be allocated and the resource allocation random number; the resource allocation random number is obtained based on the resource allocation parameters provided by the resource recipient and the resource allocator. Upon obtaining the first resource allocation parameter from the resource recipient, the resource allocation random number is calculated based on the first resource allocation parameter and the second resource allocation parameter. The resource allocation random number is mapped according to the promised resource mapping information to obtain the resource allocation result corresponding to the resource allocation random number; The resource allocation result and the second resource allocation parameters are provided to the resource recipient.

6. The method according to claim 5, characterized in that, The method further includes: Upon receiving a result verification request for the resource allocation result, the first parameter to be verified and the second parameter to be verified corresponding to the resource allocation result are obtained according to the result verification request. Using the calculation method of the resource allocation random number, a random number to be verified is calculated based on the first parameter to be verified and the second parameter to be verified. The random number to be verified is then mapped according to the committed resource mapping information to obtain the resource mapping result corresponding to the random number to be verified. Based on the consistency between the random number to be verified and the random number allocated to the resource, and the consistency between the resource mapping result and the resource allocation result, the result verification information of the resource allocation result is obtained; Send the result verification information to the resource recipient.

7. The method according to claim 6, characterized in that, Sending the result verification information to the resource recipient includes: A verification report of the resource allocation result is sent to the resource recipient; the verification report includes the result verification information and the calculation process information including the result verification information.

8. A resource allocation system, characterized in that, The system includes: a resource allocator and a resource receiver; The resource allocator is configured to generate a second resource allocation parameter, calculate a commitment value corresponding to the second resource allocation parameter, and provide the commitment value and commitment resource mapping information to the resource receiver; the commitment resource mapping information is used to indicate the mapping relationship between the resource to be allocated and the resource allocation random number. The resource recipient is used to obtain the commitment value and the commitment resource mapping information; The resource recipient is also configured to provide a first resource allocation parameter to the resource allocator after obtaining the commitment value and the commitment resource mapping information; The resource allocator is further configured to obtain the first resource allocation parameter, calculate a resource allocation random number based on the first resource allocation parameter and the second resource allocation parameter, and map the resource allocation random number according to the committed resource mapping information to obtain the resource allocation result corresponding to the resource allocation random number. The resource allocator is also used to provide the resource allocation result and the second resource allocation parameter to the resource receiver; The resource recipient is also used to obtain the resource allocation result and the second resource allocation parameter; The resource recipient is further configured to verify the second resource allocation parameter and the resource allocation result based on the commitment value, the commitment resource mapping information and the first resource allocation parameter, and obtain result verification information of the resource allocation result.

9. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 7.

10. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 7.