CN115495770A - Block chain based overdue contract processing method and device, equipment and medium - Google Patents

Block chain based overdue contract processing method and device, equipment and medium Download PDF

Info

Publication number
CN115495770A
CN115495770A CN202211442336.4A CN202211442336A CN115495770A CN 115495770 A CN115495770 A CN 115495770A CN 202211442336 A CN202211442336 A CN 202211442336A CN 115495770 A CN115495770 A CN 115495770A
Authority
CN
China
Prior art keywords
signing
target contract
contract
target
overdue
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202211442336.4A
Other languages
Chinese (zh)
Other versions
CN115495770B (en
Inventor
朱斯语
刘阳
池程
田娟
马宝罗
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Academy of Information and Communications Technology CAICT
Original Assignee
China Academy of Information and Communications Technology CAICT
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China Academy of Information and Communications Technology CAICT filed Critical China Academy of Information and Communications Technology CAICT
Priority to CN202211442336.4A priority Critical patent/CN115495770B/en
Publication of CN115495770A publication Critical patent/CN115495770A/en
Application granted granted Critical
Publication of CN115495770B publication Critical patent/CN115495770B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database

Abstract

The embodiment of the disclosure discloses an overdue contract processing method and device, equipment and a medium based on a block chain, wherein the method comprises the following steps: when the signing terminal detects the target contract which is not signed for the overdue period, acquiring the number of times of the target contract which is not signed for the overdue period according to the signing record of the target contract; when the number of times of overdue unsigned target contracts is less than or equal to a first preset number of times, the signing terminal sends a contract signing request aiming at the target contracts to a signing party which overdue unsigned the target contracts; when the number of times of overdue unsigned of the target contract is larger than a first preset number of times and smaller than or equal to a second preset number of times, the signing terminal sends a re-signing request to a signed signing party of the target contract; when the signing terminal receives a determined re-signing instruction sent by the signed signing party of the target contract aiming at the re-signing request, the signing terminal sends the contract signing request aiming at the target contract to the signing party which does not sign the target contract in an overdue mode.

Description

Block chain based overdue contract processing method and device, equipment and medium
Technical Field
The disclosure relates to a block chain technology and an electronic contract technology, and in particular to an overdue contract processing method and device, equipment and medium based on a block chain.
Background
With the continuous development of the block chain technology, the electronic subscription technology based on the block chain technology is also emerging. In the electronic signing process, due to the reason that the user forgets to sign, and the like, the condition of overdue un-signed contracts often occurs. In the prior art, the electronic contract which is not signed for a long time is often subjected to direct invalidation processing, so that when the electronic contract is re-signed, all signatory parties are required to re-sign because the electronic contract is invalidated, the signed signatory parties perform repeated signing operation, and the use experience of a user is reduced.
Disclosure of Invention
The embodiment of the disclosure provides a block chain-based overdue contract processing method, a block chain-based overdue contract processing device, equipment and a medium, so as to solve the above problems.
In one aspect of the embodiments of the present disclosure, a method for processing an overdue contract based on a block chain is provided, including: acquiring a signing record of a target contract from a block chain in response to a signing terminal detecting the target contract which is not signed for a period exceeding the period; acquiring the number of times of overdue unsigned target contracts according to the signing records of the target contracts; in response to the number of times of overdue unsigned times of the target contract being less than or equal to a first preset number of times, the signing terminal sends a contract signing request aiming at the target contract to a signing party which overdue unsigned the target contract so that the signing party which overdue unsigned the target contract signs the target contract; in response to the number of times of overdue unsigned times of the target contract being greater than the first preset number of times and less than or equal to a second preset number of times, the signing terminal sending a re-signing request to a signed signing party of the target contract, wherein the re-signing request comprises the target contract; in response to the signing terminal receiving a determined re-signing instruction sent by a signed signing party of the target contract for the re-signing request, the signing terminal sends a contract signing request for the target contract to a signing party that is out of term for signing the target contract.
Optionally, in the method according to any of the above embodiments of the present disclosure, the method further includes: in response to the fact that the number of times of overdue unsigned of the target contract is larger than the second preset number of times, the signing terminal sets a preset watermark on the target contract to invalidate the target contract; the signing terminal signs the target contract provided with the preset watermark by using a public-private key and a private key to obtain a revocation contract; and uploading the invalidation contract to the block chain storage.
Optionally, in the method according to any one of the above embodiments of the present disclosure, the obtaining, from the blockchain, a contract signing record of the target contract in response to the signing terminal detecting the target contract that is not signed for a time limit, includes: in response to the signing terminal detecting the target contract that is overdue and unsigned, determining whether a signature of a signatory of the target contract is included in the target contract; and acquiring a signing record of the target contract from the blockchain in response to the target contract comprising the signature of at least one signing party of the target contract.
Optionally, in the method according to any of the above embodiments of the present disclosure, the method further includes: and in response to the target contract not comprising the signature of the signing party of the target contract, executing the operation that the signing terminal sets a preset watermark on the target contract to invalidate the target contract.
Optionally, in the method according to any of the foregoing embodiments of the present disclosure, the method further includes: in response to the target contract not comprising the signature of the signing party of the target contract, the signing terminal performs hash calculation on the target contract to obtain verification information of the target contract; and binding the verification information with the voiding contract, and uploading the verification information to the block chain for storage.
In one aspect of the embodiments of the present disclosure, an overdue contract processing apparatus based on a blockchain is provided, including: the first acquisition module is used for responding to a target contract which is detected by a signing terminal and is not signed for a period of time, and acquiring a signing record of the target contract from a block chain; the second acquisition module is used for acquiring the number of times of overdue unsigned times of the target contract according to the signing record of the target contract; a first sending module, configured to, in response to that the number of times of overdue unsigned of the target contract is less than or equal to a first preset number of times, send, by the signing terminal, a contract signing request for the target contract to a signing party that overdue unsigned the target contract, so that the signing party that overdue unsigned the target contract signs the target contract; a second sending module, configured to, in response to that the number of times of overdue unsigned of the target contract is greater than the first preset number of times and less than or equal to a second preset number of times, send, by the signing terminal, a re-signing request to a signed signing party of the target contract, where the re-signing request includes the target contract; and a third sending module, configured to, in response to the receiving, by the signing terminal, of a determination re-signing instruction sent by a signed signing party of the target contract for the re-signing request, send, by the signing terminal, a contract signing request for the target contract to a signing party that has not signed the target contract for an overdue period.
Optionally, in the apparatus according to any of the above embodiments of the present disclosure, the apparatus further includes: the watermark setting module is used for responding that the number of times of the target contract which is not signed for a long time is larger than the second preset number of times, and the signing terminal sets a preset watermark on the target contract so as to invalidate the target contract; the signing module is used for signing the target contract provided with the preset watermark by using a public-private key pair and a private key of the signing terminal to obtain a revocation contract; and the storage module is used for uploading the invalidation contract to the block chain for storage.
Optionally, in the method according to any one of the above embodiments of the present disclosure, the first obtaining module includes: a determining submodule, configured to determine, in response to the signing terminal detecting the target contract that is not signed for an overdue period, whether a signature of a signing party of the target contract is included in the target contract; and the acquisition sub-module is used for responding to the signature of at least one contractor including the target contract in the target contract, and acquiring the contract signing record of the target contract from the block chain.
In one aspect of the disclosed embodiments, there is provided an electronic device including: a memory for storing a computer program; and the processor is used for executing the computer program stored in the memory, and when the computer program is executed, the block chain-based overdue contract processing method is realized.
In one aspect of the embodiments of the present disclosure, a computer-readable storage medium is provided, on which a computer program is stored, and when the computer program is executed by a processor, the computer program implements the above method for processing an overdue contract based on a blockchain.
The embodiment of the disclosure provides a block chain-based overdue contract processing method, a block chain-based overdue contract processing device, equipment and a medium, wherein the block chain-based overdue contract processing method comprises the following steps: when the signing terminal detects the target contract which is not signed for a long time, the signing terminal acquires the signing record of the target contract from the block chain; then acquiring the number of times of overdue unsigned target contracts according to the signing records of the target contracts; when the number of times of overdue unsigned target contracts is less than or equal to a first preset number of times, the signing terminal sends a contract signing request aiming at the target contracts to a signing party which overdue unsigned the target contracts; when the number of times of overdue unsigned of the target contract is larger than a first preset number of times and smaller than or equal to a second preset number of times, the signing terminal sends a re-signing request to a signed signing party of the target contract; when the signing terminal receives a determined re-signing instruction sent by the signed signing party of the target contract aiming at the re-signing request, the signing terminal sends the contract signing request aiming at the target contract to the signing party which does not sign the target contract in an overdue mode. According to the method and the device, different processing modes are carried out on the overdue unsigned target contract according to the actual condition of the overdue unsigned target contract, so that the effect of re-signing only on the signatory side of the unsigned target contract is realized, the process of repeatedly signing the overdue unsigned target contract by the signed signatory side is avoided, and the use experience of a user is improved. In addition, in the embodiment of the disclosure, when the number of times of overdue unsigned target contracts is less than or equal to the first preset number of times, without user operation, the signing terminal directly sends a contract signing request for the target contract to the signing party of the overdue unsigned target contract, which not only avoids that the target contract is not signed due to forgetting of the user, but also directly invalidates the target contract which is not signed due to overdue unsigned target contract, so that the user needs to initiate a signing flow again when signing the target contract, thereby improving the signing efficiency of the target contract, and further improving the use experience of the user without user operation.
The technical solution of the present disclosure is further described in detail by the accompanying drawings and examples.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments of the disclosure and together with the description, serve to explain the principles of the disclosure.
The present disclosure may be more clearly understood from the following detailed description taken in conjunction with the accompanying drawings, in which:
FIG. 1 illustrates a flow diagram for one embodiment of a block chain based overrun contract processing method in accordance with embodiments of the present disclosure;
FIG. 2 illustrates a flow diagram for one embodiment of a method for block chain based grace contract processing, according to an embodiment of the present disclosure;
fig. 3 shows a flowchart of step S110 of an embodiment of the present disclosure;
FIG. 4 is a flowchart illustrating an application example of a block chain based grace contract processing method according to an embodiment of the present disclosure;
FIG. 5 illustrates a flow diagram for one embodiment of a block chain based overrun contract processing method of the present disclosure;
FIG. 6 is a schematic structural diagram illustrating an embodiment of an apparatus for processing an overdue contract based on a blockchain according to the present disclosure;
fig. 7 is a schematic structural diagram of an application embodiment of the electronic device of the present disclosure.
Detailed Description
Various exemplary embodiments of the present disclosure will now be described in detail with reference to the accompanying drawings. It should be noted that: the relative arrangement of the components and steps, the numerical expressions, and numerical values set forth in these embodiments do not limit the scope of the present disclosure unless specifically stated otherwise.
It will be understood by those of skill in the art that the terms "first," "second," and the like in the embodiments of the present disclosure are used merely to distinguish one element from another, and are not intended to imply any particular technical meaning, nor is the necessary logical order between them.
It is also understood that in embodiments of the present disclosure, "a plurality" may refer to two or more than two, and "at least one" may refer to one, two or more than two.
It is also to be understood that any reference to any component, data, or structure in the embodiments of the present disclosure may be generally understood as one or more, unless explicitly defined otherwise or indicated to the contrary hereinafter.
In addition, the term "and/or" in the present disclosure is only one kind of association relationship describing the association object, and indicates that three relationships may exist, for example, a and/or B, may indicate: a exists alone, A and B exist simultaneously, and B exists alone. In addition, the character "/" in the present disclosure generally indicates that the former and latter associated objects are in an "or" relationship.
It should also be understood that the description of the various embodiments of the present disclosure emphasizes the differences between the various embodiments, and the same or similar parts may be referred to each other, so that the descriptions thereof are omitted for brevity.
Meanwhile, it should be understood that the sizes of the respective portions shown in the drawings are not drawn in an actual proportional relationship for the convenience of description.
The following description of at least one exemplary embodiment is merely illustrative in nature and is in no way intended to limit the disclosure, its application, or uses.
Techniques, methods, and apparatus known to those of ordinary skill in the relevant art may not be discussed in detail but are intended to be part of the specification where appropriate.
It should be noted that: like reference numbers and letters refer to like items in the following figures, and thus, once an item is defined in one figure, it need not be discussed further in subsequent figures.
The disclosed embodiments may be applied to electronic devices such as terminal devices, computer systems, servers, etc., which are operational with numerous other general purpose or special purpose computing system environments or configurations. Examples of well known terminal devices, computing systems, environments, and/or configurations that may be suitable for use with electronic devices, such as terminal devices, computer systems, servers, and the like, include, but are not limited to: personal computer systems, server computer systems, thin clients, thick clients, hand-held or laptop devices, microprocessor-based systems, set-top boxes, programmable consumer electronics, networked personal computers, minicomputer systems, mainframe computer systems, distributed cloud computing environments that include any of the above, and the like.
Electronic devices such as terminal devices, computer systems, servers, etc. may be described in the general context of computer system-executable instructions, such as program modules, being executed by a computer system. Generally, program modules may include routines, programs, objects, components, logic, data structures, etc. that perform particular tasks or implement particular abstract data types. The computer system/server may be practiced in distributed cloud computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed cloud computing environment, program modules may be located in both local and remote computer system storage media including memory storage devices.
Fig. 1 shows a schematic flow diagram of a block chain-based overdue contract processing method in an embodiment of the present disclosure. The embodiment can be applied to an electronic device, and as shown in fig. 1, the method for processing an overdue contract based on a block chain of the embodiment includes the following steps:
step S110, in response to the signing terminal detecting the overdue unsigned target contract, obtaining the signing record of the target contract from the block chain.
The signing terminal is qualified for processing the target contract, and a signing party of the target contract can sign through the signing terminal. The target contract may be an electronic contract, or the like. The contract records include processing events for the target contract, and the contract records for the target contract may be stored in a blockchain.
In one implementation, after a signing terminal initiates a signing process for a target contract, a signing party of the target contract needs to sign the target contract within a signing time specified by the signing terminal, the signing for the target contract is completed, and when the signing party does not sign the target contract beyond the specified signing time, an overdue unsigned target contract is generated. For example, the contracted duration specified by the contracted terminal may be 1 hour, and when the contracted terminal does not detect that the contracted party signed the target contract after transmitting the target contract to the contracted party for 1 hour, the target contract is determined to be an overdue unsigned target contract.
The Block Chain (Block Chain) is a Chain data structure which combines data blocks in a sequential connection mode according to a time sequence and is a distributed book which is cryptographically used for ensuring that the data cannot be tampered and forged.
And step S120, acquiring the number of times of overdue unsigned target contracts according to the signing records of the target contracts.
The signing record can include the number of times of overtime unsigned, the record of the overtime unsigned, and the like of the target contract, and the record of the overtime unsigned includes: a contractor who expires without signing the target contract, a time at which an expired without signing the target contract is detected, a signed contractor, etc.
In one implementation, when the signing terminal detects an overdue unsigned target contract, the signing terminal generates an overdue unsigned record of the target contract, where the overdue unsigned record includes the contracting party that overdue unsigned the target contract, the time at which the overdue unsigned target contract was detected, and the signed contracting party. And the signing terminal acquires the signing record of the target contract from the block chain, updates the overdue unsigned record of the target contract into the signing record, and updates the number of overdue unsigned times in the signing record, namely adds 1 to the number of overdue unsigned times.
Step S130, in response to the number of times of overdue unsigned target contracts being less than or equal to the first preset number of times, the signing terminal sends a contract signing request aiming at the target contract to the signing party of the overdue unsigned target contract, so that the signing party of the overdue unsigned target contract signs the target contract.
The signing terminal may be preset with a first preset number of times, which may be set according to an actual requirement, for example, the first preset number of times may be 1 time. The contract signing request may include the target contract.
In one implementation mode, when the signing terminal determines that the number of overdue unsigned times of the target contract is less than or equal to a first preset number of times, the signing terminal sends a contract signing request aiming at the target contract to a client of a signing party which overdue unsigned the target contract, wherein the client of the signing party is in communication connection with the signing terminal. A contractor that expires without signing the target contract may sign the target contract with its client.
In the embodiment of the present disclosure, step S130 and step S140 are not in sequence, and after the signing terminal executes step S130, when the signing party that overdue and unsigned the target contract signs the target contract, the signing terminal may execute a subsequent signing process, for example, when the signing party that overdue and unsigned the target contract is the signing party with the last signature of the target contract, the signing is completed on the target contract, and when the signing party that overdue and unsigned the target contract is not the signing party with the last signature, the signing is performed on the target contract by sending the target contract to the next signing party. And when the signatory of the overdue unsigned target contract does not sign the target contract, updating the number of overdue unsigned times in the signing record, and then determining to execute the step S130 or the step S140 according to the updated number of overdue unsigned times.
Step S140, in response to that the number of times of overdue unsigned of the target contract is greater than the first preset number of times and less than or equal to the second preset number of times, the signing terminal sends a re-signing request to the signed signing party of the target contract.
Wherein the re-signing request comprises the target contract. The second preset number of times may be set according to an actual situation, where the second preset number of times is greater than the first preset number of times, for example, the second preset number of times may be 2 times.
In one implementation, the contract record may also include the contractors signed for the target contract. When the signing terminal determines that the number of the overdue unsigned times of the target contract is larger than a first preset number of times and smaller than or equal to a second preset number of times, the signing terminal determines a signing party signed on the target contract according to the signing record of the target contract and sends a re-signing request to a client side of the signing party signed on the target contract.
Step S150, in response to the signing terminal receiving the determined re-signing instruction sent by the signed signing party of the target contract for the re-signing request, the signing terminal sends a contract signing request for the target contract to the signing party which has not signed the target contract for an overdue period.
When the signed signing party determines that a target contract is signed again, the client of the signed signing party sends a determining and re-signing instruction aiming at the re-signing request to a signing terminal;
in one implementation mode, when a signing terminal receives a re-signing refusing instruction sent by a signed signing party in a target contract aiming at a re-signing request, the signing terminal sets a preset watermark on the target contract so as to invalidate the target contract; the signing terminal signs the target contract provided with the preset watermark by using the private key of the public-private key pair to obtain a revocation contract; the voided contract is uploaded to the blockchain storage.
In the embodiment of the disclosure, different processing modes are performed on the overdue unsigned target contract according to the actual condition of the overdue unsigned target contract, so that the effect of re-signing only for the signatory who does not sign the target contract is realized, the process of repeatedly signing the overdue unsigned target contract by the signed signatory is avoided, and the use experience of a user is improved. In addition, in the embodiment of the disclosure, when the number of times of overdue unsigned target contracts is less than or equal to the first preset number of times, without user operation, the signing terminal directly sends a contract signing request for the target contract to the signing party of the overdue unsigned target contract, which not only avoids that the target contract is not signed due to forgetting of the user, but also directly invalidates the target contract which is not signed due to overdue unsigned target contract, so that the user needs to initiate a signing flow again when signing the target contract, thereby improving the signing efficiency of the target contract, and further improving the use experience of the user without user operation.
In an optional embodiment, as shown in fig. 2, the method for processing an overdue contract based on a blockchain according to an embodiment of the present disclosure further includes the following steps:
and step S210, in response to the fact that the number of times of the target contract which is not signed for a long time is larger than a second preset number of times, the signing terminal sets a preset watermark on the target contract so as to invalidate the target contract.
The style and content of the preset watermark may be preset at the signing terminal, for example, the content of the preset watermark may be "obsolete", and the style may include: transparency of "voiding", font size, location of display in the target contract, etc. The signing terminal can add a preset watermark in the target contract through watermark loading software or program, and the target contract is invalidated.
And step S220, the signing terminal signs the target contract provided with the preset watermark by using the private key of the public-private key pair to obtain a revocation contract.
Wherein a target contract with a private key generated signature and a preset watermark may be referred to as a revocation contract. The public-private key pair comprises a public key and a private key, the public key in the public-private key pair is used for verifying a signature generated by the private key in the public-private key pair, and the private key in the public-private key pair is used for signing data or information and the like. The signing terminal may generate the public-private key pair using a public SM2 algorithm, a symmetric encryption algorithm, or an asymmetric encryption algorithm.
In one implementation mode, when the signing terminal determines that the number of overdue unsigned times of the target contract is smaller than or equal to a first preset number, the signing terminal sends a contract signing request aiming at the target contract to a signing party which overdue unsigned the target contract, and when the signing party which overdue unsigned the target contract does not sign the target contract within the specified signing time, the number of the overdue unsigned times in the signing record is updated.
The subscribing terminal executes step S120, and when the subscribing terminal determines, according to the updated number of overdue unsigned times obtained in step S120, that the updated number of overdue unsigned times satisfies the condition of the number of overdue unsigned times in step S130 (less than or equal to a first preset number), the subscribing terminal executes the operation of step S130, when the updated number of overdue unsigned times satisfies the condition of the number of overdue unsigned times in step S140 (greater than the first preset number and less than or equal to a second preset number), the subscribing terminal executes the operation of step S140, and when the updated number of overdue unsigned times satisfies the condition of the number of overdue unsigned times in step S210 (greater than the second preset number), the subscribing terminal executes the operation of step S210.
In step S230, the invalidation contract is uploaded to the blockchain storage.
Wherein the contracting terminal may store the revocation contract in the blockchain. The signing terminal can also send a target contract signing failure message and a memory address of the voiding contract to all signing parties of the target contract.
In an alternative embodiment, as shown in fig. 3, step S110 of the embodiment of the present disclosure may further include the following steps:
step S111, in response to the signing terminal detecting the overdue unsigned target contract, determining whether the signature of the signing party of the target contract is included in the target contract.
When the signing terminal detects the target contract which is not signed for a long time, the signing terminal determines whether the signature of the signing party is included in the target contract or not.
In one implementation, whether signed contractors are included in the contract record of the target contract may be checked, and when signed contractors are included in the contract record of the target contract, the signature of the contractors of the target contract may be determined to be included in the target contract, e.g., when 1 signed contractor is included in the contract record of the target contract, then one of the contractors of the target contract is represented to sign the target contract.
In one implementation, after a contractor signs a target contract, the signing terminal records the signed contractor in a signature record.
Step S112, in response to the signature of at least one contractor including the target contract in the target contract, obtains a contract signing record of the target contract from the blockchain.
When the signing terminal determines that the target contract comprises the signature of at least one signing party of the target contract, the signing terminal acquires the signing record of the target contract from the block chain.
In an optional embodiment, the method for processing an overdue contract based on a blockchain according to the embodiment of the present disclosure further includes: and in response to the target contract not comprising the signature of the contractor of the target contract, the signing terminal sets a preset watermark on the target contract to invalidate the target contract.
When the signing terminal detects the target contract which is not signed for a period of time, the signing terminal determines whether the signature of the signing party is included in the target contract, and when the signing terminal determines that the signed signing party is not included in the signing record of the target contract, the signing terminal can determine that the target contract does not include the signature of the signing party of the target contract.
In one implementation mode, when the target contract does not include the signature of the signing party of the target contract, the signing terminal sets a preset watermark on the target contract so as to invalidate the target contract; the signing terminal signs the target contract provided with the preset watermark by using the private key of the public-private key pair to obtain a revocation contract; a voiding contract is uploaded to the blockchain storage.
In the embodiment of the disclosure, when it is determined that the target contract has no signature of the contracting party and the target contract has expired without signature, it indicates that all the contracting parties of the target contract do not sign the target contract, and at this time, the target contract is set as void without user operation, and the contracting terminal automatically voids the target contract, thereby simplifying the contracting process and improving the user experience.
The following is an application embodiment of the block chain-based overdue contract processing method in the embodiment of the present disclosure, where a contracted terminal is provided with a specified contracted duration, and taking a target contract having two contracting parties as an example, the contracting parties of the target contract are a contracting party a and a contracting party B, respectively, as shown in fig. 4, a contracted flow of the target contract at the contracted terminal includes the following steps:
step 1, a signing terminal sends a first contract signing request (contract signing request) to a signing party A, wherein the first contract signing request comprises a target contract;
step 2, detecting whether a signing party A signs a target contract within a specified signing time, when the signing party A does not sign the target contract within the specified signing time, detecting the target contract which is not signed for an overdue by a signing terminal, executing the step 3 by the signing terminal, and when the signing party A signs the target contract within the specified signing time, executing the step 6 by the signing terminal;
step 3, the signing terminal determines whether the target contract which is not signed for a long time comprises the signature of the signing party of the target contract, at the moment, the signing party A signs the target contract firstly, so the target contract does not comprise the signatures of the signing party A and the signing party B, and the signing terminal executes the step 4;
step 4, the signing terminal sets a preset watermark on the target contract to invalidate the target contract;
step 5, the signing terminal signs the target contract provided with the preset watermark by using the private key of the public-private key pair to obtain a revocation contract; uploading the invalidation contract to the blockchain for storage, and then not executing subsequent operations of the embodiment;
step 6, the signing terminal sends a second contract signing request (contract signing request) to the signing party B, wherein the second contract signing request comprises a target contract signed by the existing signing party A;
step 7, detecting whether a signing party B signs a target contract signed by an existing signing party A within a specified signing time, when the signing party B does not sign the target contract signed by the existing signing party A within the specified signing time, detecting an overdue unsigned target contract by a signing terminal, executing step 8 by the signing terminal, when the signing party B signs the target contract signed by the existing signing party A within the specified signing time, detecting the overdue unsigned target contract by the signing terminal, and executing step 19 by the signing terminal;
step 8, the signing terminal determines whether the target contract which is not signed for a long time comprises the signature of the signing party of the target contract, at the moment, the signing terminal executes step 9 because the signing party A signs the target contract and the target contract comprises the signature of the signing party A;
step 9, the signing terminal compares the number of overdue unsigned times included in the signing record with a first preset number of times and a second preset number of times, when the number of overdue unsigned times is less than or equal to the first preset number of times, the signing terminal executes the step 10, when the number of overdue unsigned times is more than the first preset number of times and less than or equal to the second preset number of times, the signing terminal executes the step 12, and when the number of overdue unsigned times is more than the second preset number of times, the signing terminal executes the step 17;
step 10, sending a second contract signing request to a signing party B (signing party not signing the target contract for an overdue period), detecting whether the signing party B signs the target contract signed by the existing signing party a within a specified signing time, and executing step 11 when the signing party B signs the target contract signed by the existing signing party a within the specified signing time; when the signatory B does not sign the target contract signed by the signatory A within the specified signing duration, updating the number of overdue unsigned times in the signing record and executing the step 9 based on the updated number of overdue unsigned times;
step 11, completing signing of the target contract to obtain a signed target contract, wherein the signed target contract has the signatures of a signing party A and a signing party B, and then subsequent operations of the embodiment are not executed;
step 12, the signing terminal sends a re-signing request to a signing party A (signed signing party of a target contract), the re-signing request comprises a target contract signed by the existing signing party A, the signing terminal determines whether a determined re-signing instruction sent by the signing party A for the re-signing request is received, when the signing terminal receives the determined re-signing instruction sent by the signing party A for the re-signing request, step 13 is executed, when the signing terminal receives a refusal re-signing instruction sent by the signing party A for the re-signing request, step 15 is executed;
step 13, the signing terminal sends a second contract signing request to the signing party B, detects whether the signing party B signs the target contract signed by the existing signing party A in the specified signing time, and executes step 14 when the signing party B signs the target contract signed by the existing signing party A in the specified signing time; when the signatory B does not sign the target contract signed by the signatory A within the specified signing duration, updating the number of overdue unsigned times in the signing record and executing the step 9 based on the updated number of overdue unsigned times;
step 14, completing signing of the target contract to obtain a signed target contract, wherein the signed target contract has the signatures of a signing party A and a signing party B, and then subsequent operations of the embodiment are not executed;
step 15, the signing terminal sets a preset watermark on the target contract to invalidate the target contract;
step 16, the signing terminal signs the target contract provided with the preset watermark by using the private key of the public-private key pair to obtain a revocation contract; uploading the invalidation contract to the blockchain for storage, and then not executing subsequent operations of the embodiment;
step 17, the signing terminal sets a preset watermark on the target contract to invalidate the target contract;
step 18, the signing terminal signs the target contract provided with the preset watermark by using the private key of the public-private key pair to obtain a revocation contract; uploading the invalidation contract to the blockchain for storage, and then not executing subsequent operations of the embodiment;
and step 19, completing the signing of the target contract to obtain a signed target contract, wherein the signed target contract has the signatures of a signing party A and a signing party B.
In an optional embodiment, as shown in fig. 5, the method for processing an overdue contract based on a blockchain according to an embodiment of the present disclosure further includes the following steps:
step S310, in response to the target contract not including the signature of the signing party of the target contract, the signing terminal performs hash calculation on the target contract to obtain the verification information of the target contract.
When the signing terminal determines that the target contract does not include the signature of the signing party of the target contract, the signing terminal can perform hash calculation on the target contract through a hash algorithm, and correspondingly, the verification information of the target contract can be the hash value of the target contract.
In step S320, the verification information is bound with the revocation contract, and uploaded to the block chain for storage.
Wherein the verification information of the target contract can be bound with the voiding contract to form a corresponding relation between the verification information and the voiding contract.
In one implementation manner, when a user reuses a voided target contract, whether the voided target contract is modified is verified, the user can upload the voided target contract to a signing terminal, the signing terminal performs hash calculation on the voided target contract to obtain a hash value of the voided target contract, the signing terminal can obtain the voided contract corresponding to the voided target contract from a block chain and obtain verification information corresponding to the voided contract, the signing terminal determines whether the hash value of the voided target contract is the same as the verification information corresponding to the voided contract, and when the hash value of the voided target contract is the same as the verification information corresponding to the voided contract, the voided target contract is determined not to be modified.
Fig. 6 shows a block diagram of an over-term contract processing apparatus based on a block chain in an embodiment of the present disclosure. As shown in fig. 5, the block chain-based overrun contract processing apparatus of this embodiment includes:
a first obtaining module 410, configured to, in response to a signing terminal detecting an overdue unsigned target contract, obtain a signing record of the target contract from a block chain;
a second obtaining module 420, configured to obtain the number of times of overdue unsigned contracts of the target contract according to the contract signing record of the target contract;
a first sending module 430, configured to, in response to the number of times of overdue unsigned of the target contract being less than or equal to a first preset number of times, send, by the signing terminal, a contract signing request for the target contract to a contractor who overdue unsigned the target contract, so that the contractor who overdue unsigned the target contract signs the target contract;
a second sending module 440, configured to, in response to that the number of times of overdue unsigned of the target contract is greater than the first preset number of times and less than or equal to a second preset number of times, send, by the signing terminal, a re-signing request to a signed signing party of the target contract, where the re-signing request includes the target contract;
a third sending module 450, configured to, in response to the receiving, by the signing terminal, of the re-signing instruction for determining to send the re-signing request by the signed signing party of the target contract, send a contract signing request for the target contract to the signing party that has not signed the target contract for an overdue period.
In an optional embodiment, the apparatus for processing an overdue contract based on a blockchain in an embodiment of the present disclosure further includes:
the watermark setting module is used for responding that the number of times of the target contract which is not signed for a long time is larger than the second preset number of times, and the signing terminal sets a preset watermark on the target contract so as to invalidate the target contract;
the signing module is used for signing the target contract provided with the preset watermark by the signing terminal through a public-private key pair and a private key to obtain a revocation contract;
and the storage module is used for uploading the invalidation contract to the block chain for storage.
In an optional embodiment, the first obtaining module 410 in the embodiment of the present disclosure includes:
a determining submodule, configured to determine, in response to the signing terminal detecting the target contract that is not signed for an overdue period, whether a signature of a signing party of the target contract is included in the target contract;
and the acquisition sub-module is used for responding to the signature of at least one contractor including the target contract in the target contract, and acquiring the contract signing record of the target contract from the block chain.
In an optional embodiment, the apparatus for processing an overrun contract based on a blockchain in the embodiment of the present disclosure further includes:
and the execution module is used for responding to the target contract which does not comprise the signature of the signing party of the target contract, and executing the operation that the signing terminal sets the preset watermark on the target contract so as to invalidate the target contract.
In an optional embodiment, the apparatus for processing an overdue contract based on a blockchain in an embodiment of the present disclosure further includes:
the calculation module is used for responding that the target contract does not comprise the signature of the signing party of the target contract, and the signing terminal carries out hash calculation on the target contract to obtain the verification information of the target contract;
and the binding storage module is used for binding the verification information with the invalidation contract and uploading the verification information to the block chain for storage.
In addition, an embodiment of the present disclosure also provides an electronic device, including:
a memory for storing a computer program;
a processor, configured to execute the computer program stored in the memory, and when the computer program is executed, implement the block chain-based overdue contract processing method according to any of the above embodiments of the present disclosure.
Fig. 7 is a schematic structural diagram of an embodiment of an electronic device according to the present disclosure. Next, an electronic apparatus according to an embodiment of the present disclosure is described with reference to fig. 7. The electronic device may be either or both of the first device and the second device, or a stand-alone device separate from them, which stand-alone device may communicate with the first device and the second device to receive the acquired input signals therefrom.
As shown in fig. 7, the electronic device includes one or more processors and memory.
The processor may be a Central Processing Unit (CPU) or other form of processing unit having data processing capabilities and/or instruction execution capabilities, and may control other components in the electronic device to perform desired functions.
The memory may include one or more computer program products that may include various forms of computer-readable storage media, such as volatile memory and/or non-volatile memory. The volatile memory may include, for example, random Access Memory (RAM), cache memory (cache), and/or the like. The non-volatile memory may include, for example, read Only Memory (ROM), hard disk, flash memory, etc. One or more computer program instructions may be stored on the computer-readable storage medium and executed by a processor to implement the block chain based out-of-date contract processing method of the various embodiments of the present disclosure described above and/or other desired functionality.
In one example, the electronic device may further include: an input device and an output device, which are interconnected by a bus system and/or other form of connection mechanism (not shown).
The input means may also comprise, for example, a keyboard, a mouse, etc.
The output device may output various information including the determined distance information, direction information, and the like to the outside. The output devices may include, for example, a display, speakers, a printer, and a communication network and remote output devices connected thereto, among others.
Of course, for simplicity, only some of the components of the electronic device relevant to the present disclosure are shown in fig. 7, omitting components such as buses, input/output interfaces, and so forth. In addition, the electronic device may include any other suitable components, depending on the particular application.
In addition to the above methods and apparatus, embodiments of the present disclosure may also be a computer program product comprising computer program instructions that, when executed by a processor, cause the processor to perform the steps in the block chain based over-run contract processing method according to various embodiments of the present disclosure described in the above section of this specification.
The computer program product may write program code for carrying out operations for embodiments of the present disclosure in any combination of one or more programming languages, including an object oriented programming language such as Java, C + + or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computing device, partly on the user's device, as a stand-alone software package, partly on the user's computing device and partly on a remote computing device, or entirely on the remote computing device or server.
Furthermore, embodiments of the present disclosure may also be a computer-readable storage medium having stored thereon computer program instructions that, when executed by a processor, cause the processor to perform the steps in the block chain based excess contract processing method according to various embodiments of the present disclosure described in the above section of this specification.
The computer readable storage medium may take any combination of one or more readable media. The readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may include, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or a combination of any of the foregoing. More specific examples (a non-exhaustive list) of the readable storage medium include: an electrical connection having one or more wires, a portable diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
Those of ordinary skill in the art will understand that: all or part of the steps for implementing the method embodiments may be implemented by hardware related to program instructions, and the program may be stored in a computer readable storage medium, and when executed, the program performs the steps including the method embodiments; and the aforementioned storage medium includes: various media that can store program codes, such as ROM, RAM, magnetic or optical disks.
The foregoing describes the general principles of the present disclosure in conjunction with specific embodiments, however, it is noted that the advantages, effects, etc. mentioned in the present disclosure are merely examples and are not limiting, and they should not be considered essential to the various embodiments of the present disclosure. Furthermore, the foregoing disclosure of specific details is for the purpose of illustration and description and is not intended to be limiting, since the disclosure will be described in detail with reference to specific details.
In the present specification, the embodiments are described in a progressive manner, and each embodiment focuses on differences from other embodiments, and the same or similar parts in each embodiment are referred to each other. For the system embodiment, since it basically corresponds to the method embodiment, the description is relatively simple, and for the relevant points, reference may be made to the partial description of the method embodiment.
The block diagrams of devices, apparatuses, systems referred to in this disclosure are only given as illustrative examples and are not intended to require or imply that the connections, arrangements, configurations, etc. must be made in the manner shown in the block diagrams. These devices, apparatuses, devices, systems may be connected, arranged, configured in any manner, as will be appreciated by those skilled in the art. Words such as "including," "comprising," "having," and the like are open-ended words that mean "including, but not limited to," and are used interchangeably therewith. As used herein, the words "or" and "refer to, and are used interchangeably with, the word" and/or, "unless the context clearly dictates otherwise. The word "such as" is used herein to mean, and is used interchangeably with, the phrase "such as but not limited to".
The methods and apparatus of the present disclosure may be implemented in a number of ways. For example, the methods and apparatus of the present disclosure may be implemented by software, hardware, firmware, or any combination of software, hardware, and firmware. The above-described order for the steps of the method is for illustration only, and the steps of the method of the present disclosure are not limited to the order specifically described above unless specifically stated otherwise. Further, in some embodiments, the present disclosure may also be embodied as programs recorded in a recording medium, the programs including machine-readable instructions for implementing the methods according to the present disclosure. Thus, the present disclosure also covers a recording medium storing a program for executing the method according to the present disclosure.
It is also noted that in the devices, apparatuses, and methods of the present disclosure, each component or step can be decomposed and/or recombined. Such decomposition and/or recombination should be considered as equivalents of the present disclosure.
The previous description of the disclosed aspects is provided to enable any person skilled in the art to make or use the present disclosure. Various modifications to these aspects will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other aspects without departing from the scope of the disclosure. Thus, the present disclosure is not intended to be limited to the aspects shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.
The foregoing description has been presented for purposes of illustration and description. Furthermore, the description is not intended to limit embodiments of the disclosure to the form disclosed herein. While a number of example aspects and embodiments have been discussed above, those of skill in the art will recognize certain variations, modifications, alterations, additions and sub-combinations thereof.

Claims (10)

1. An overdue contract processing method based on a block chain is characterized by comprising the following steps:
acquiring a signing record of a target contract from a block chain in response to a signing terminal detecting an overdue unsigned target contract;
acquiring the number of times of overdue unsigned target contracts according to the signing records of the target contracts;
in response to the number of times of overdue unsigned of the target contract being less than or equal to a first preset number of times, the signing terminal sends a contract signing request for the target contract to a signing party who overdue unsigned the target contract, so that the signing party who overdue unsigned the target contract signs the target contract;
in response to the number of times of overdue unsigned times of the target contract being greater than the first preset number of times and less than or equal to a second preset number of times, the signing terminal sending a re-signing request to a signed signing party of the target contract, wherein the re-signing request comprises the target contract;
in response to the signing terminal receiving a determined re-signing instruction sent by a signed signing party of the target contract for the re-signing request, the signing terminal sends a contract signing request for the target contract to a signing party that is out of date for signing the target contract.
2. The method of claim 1, further comprising:
in response to the fact that the number of times of overdue unsigned of the target contract is larger than the second preset number of times, the signing terminal sets a preset watermark on the target contract to invalidate the target contract;
the signing terminal signs the target contract provided with the preset watermark by using a public-private key and a private key to obtain a revocation contract;
and uploading the invalidation contract to the block chain storage.
3. The method of claim 2, wherein the retrieving a contract record for a target contract from a blockchain in response to a contracted terminal detecting an overdue unsigned target contract comprises:
in response to the signing terminal detecting the target contract that is overdue and unsigned, determining whether a signature of a signatory of the target contract is included in the target contract;
and acquiring a signing record of the target contract from the blockchain in response to the target contract comprising the signature of at least one signing party of the target contract.
4. The method of claim 3, further comprising:
and in response to the target contract not comprising the signature of the signing party of the target contract, executing the operation that the signing terminal sets a preset watermark on the target contract to invalidate the target contract.
5. The method of claim 3 or 4, further comprising:
in response to the target contract not comprising the signature of the signing party of the target contract, the signing terminal performs hash calculation on the target contract to obtain verification information of the target contract;
and binding the verification information with the voiding contract, and uploading the verification information to the block chain for storage.
6. An over-time contract processing device based on a block chain is characterized by comprising:
the first acquisition module is used for responding to a target contract which is detected by a signing terminal and is not signed for a period of time, and acquiring a signing record of the target contract from a block chain;
the second acquisition module is used for acquiring the number of times of overdue unsigned target contracts according to the signing records of the target contracts;
the first sending module is used for responding that the number of times of overdue unsigned of the target contract is smaller than or equal to a first preset number of times, and the signing terminal sends a contract signing request aiming at the target contract to a signing party which overdue unsigned the target contract so that the signing party which overdue unsigned the target contract signs the target contract;
a second sending module, configured to, in response to that the number of times of overdue unsigned contracts of the target contract is greater than the first preset number of times and less than or equal to a second preset number of times, send, by the signing terminal, a re-signing request to a signed signing party of the target contract, where the re-signing request includes the target contract;
and a third sending module, configured to, in response to the receiving, by the signing terminal, of a determination re-signing instruction sent by a signed signing party of the target contract for the re-signing request, send, by the signing terminal, a contract signing request for the target contract to a signing party that has not signed the target contract for an overdue period.
7. The apparatus of claim 6, further comprising:
the watermark setting module is used for responding to the fact that the number of times of overdue unsigned contracts of the target contract is larger than the second preset number of times, and the signing terminal sets a preset watermark on the target contract so as to invalidate the target contract;
the signing module is used for signing the target contract provided with the preset watermark by the signing terminal through a public-private key pair and a private key to obtain a revocation contract;
and the storage module is used for uploading the invalidation contract to the block chain for storage.
8. The apparatus of claim 7, wherein the first obtaining module comprises:
a determining submodule, configured to determine, in response to the signing terminal detecting the target contract that is not signed for an overdue period, whether a signature of a signing party of the target contract is included in the target contract;
and the acquisition sub-module is used for acquiring the signing record of the target contract from the block chain in response to the signature of at least one signing party of the target contract included in the target contract.
9. An electronic device, comprising:
a memory for storing a computer program;
a processor for executing a computer program stored in the memory, and when executed, implementing the method of any of the preceding claims 1-5.
10. A computer-readable storage medium, on which a computer program is stored which, when being executed by a processor, carries out the method of any one of the preceding claims 1 to 5.
CN202211442336.4A 2022-11-18 2022-11-18 Block chain based overdue contract processing method and device, equipment and medium Active CN115495770B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211442336.4A CN115495770B (en) 2022-11-18 2022-11-18 Block chain based overdue contract processing method and device, equipment and medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211442336.4A CN115495770B (en) 2022-11-18 2022-11-18 Block chain based overdue contract processing method and device, equipment and medium

Publications (2)

Publication Number Publication Date
CN115495770A true CN115495770A (en) 2022-12-20
CN115495770B CN115495770B (en) 2023-01-20

Family

ID=84901832

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211442336.4A Active CN115495770B (en) 2022-11-18 2022-11-18 Block chain based overdue contract processing method and device, equipment and medium

Country Status (1)

Country Link
CN (1) CN115495770B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117336099A (en) * 2023-11-22 2024-01-02 成都天府通数字科技有限公司 Signing method and signing system for intelligent contract based on block chain technology

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109492983A (en) * 2018-09-26 2019-03-19 深圳壹账通智能科技有限公司 E-seal based on block chain intelligence contract signs method and apparatus
US20210279828A1 (en) * 2018-10-31 2021-09-09 Advanced New Technologies Co., Ltd. Method for generating target contract and terminal device
CN115131029A (en) * 2022-06-28 2022-09-30 蚂蚁区块链科技(上海)有限公司 Block chain-based digital file signing method and device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109492983A (en) * 2018-09-26 2019-03-19 深圳壹账通智能科技有限公司 E-seal based on block chain intelligence contract signs method and apparatus
US20210279828A1 (en) * 2018-10-31 2021-09-09 Advanced New Technologies Co., Ltd. Method for generating target contract and terminal device
CN115131029A (en) * 2022-06-28 2022-09-30 蚂蚁区块链科技(上海)有限公司 Block chain-based digital file signing method and device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117336099A (en) * 2023-11-22 2024-01-02 成都天府通数字科技有限公司 Signing method and signing system for intelligent contract based on block chain technology
CN117336099B (en) * 2023-11-22 2024-02-09 成都天府通数字科技有限公司 Signing method and signing system for intelligent contract based on block chain technology

Also Published As

Publication number Publication date
CN115495770B (en) 2023-01-20

Similar Documents

Publication Publication Date Title
EP3520047B1 (en) Immutable cryptographically secured ledger-backed databases
CN110879903A (en) Evidence storage method, evidence verification method, evidence storage device, evidence verification device, evidence storage equipment and evidence verification medium
US20230078996A1 (en) Peer node recovery via approximate hash verification
US20230046965A1 (en) Reduced-step blockchain verification of media file
CN111163182B (en) Block chain-based device registration method and apparatus, electronic device, and storage medium
CN108199852B (en) Authentication method, authentication system and computer readable storage medium
US11711202B2 (en) Committing data to blockchain based on approximate hash verification
US11258611B2 (en) Trusted data verification
CN110489946B (en) Copyright authentication method, device, equipment and storage medium based on block chain
CN110598434B (en) House information processing method and device based on blockchain network, electronic equipment and storage medium
CN115495770B (en) Block chain based overdue contract processing method and device, equipment and medium
CN116150234A (en) Block chain-based data certification method, device, equipment and medium
CN107203724B (en) File submission method and device
CN111445250B (en) Block chain key testing method and device
CN110347750B (en) Block chain-based data processing method and device
CN111538566A (en) Mirror image file processing method, device and system, electronic equipment and storage medium
CN115603982A (en) Vehicle-mounted terminal security authentication method and device, electronic equipment and storage medium
CN112100178A (en) Delegation authorization verification method and system
CN112766755A (en) Service processing method, device, equipment and medium
CN111786936A (en) Method and device for authentication
CN110704451A (en) Ownership registration and evidence-providing method and device based on block chain
CN115987683B (en) Node access control method, device, equipment and medium in block chain network
CN116166736B (en) Block chain data uplink method, device and medium based on application program interface
CN115357548B (en) Block chain-based electronic contract query method, device, equipment and medium
CN115345760B (en) Multi-party signing method and device based on block chain, electronic equipment and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant