Detailed Description
Example embodiments will now be described more fully with reference to the accompanying drawings. However, the exemplary embodiments can be embodied in many forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the concept of the example embodiments to those skilled in the art. The same reference numerals in the drawings denote the same or similar parts, and thus a repetitive description thereof will be omitted.
Furthermore, the described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments. In the following description, numerous specific details are provided to give a thorough understanding of embodiments of the disclosure. One skilled in the relevant art will recognize, however, that the disclosed aspects may be practiced without one or more of the specific details, or with other methods, components, devices, steps, etc. In other instances, well-known structures, methods, devices, implementations, materials, or operations are not shown or described in detail to avoid obscuring aspects of the disclosure.
The block diagrams depicted in the figures are merely functional entities and do not necessarily correspond to physically separate entities. That is, these functional entities may be implemented in software, or in one or more software-hardened modules, or in different networks and/or processor devices and/or microcontroller devices.
In an electronic commerce or trade event or other interpersonal social interaction, if a dispute or case occurs, a corresponding judicial program will be initiated. With the rapid development of computer technology, electronic data gradually proves an important carrier of case-related facts in the case approval process. The existing electronic data is stored by adopting a centralized data storage scheme, so that the electronic data stored in a centralized way has risks of being tamperable, deletable, replicable and the like, and can be difficult to be trusted when being used as judicial evidence; moreover, the electronic data are not recorded in the related authority departments of the government, and more supporting materials are required to be provided by the parties to prove the credibility of the electronic data, so that the difficulty in maintaining rights is high; in addition, the electronic evidence is difficult to identify in time effectiveness, the identity of the right main body cannot be confirmed, and the privacy and the security of data in the transmission process are difficult to guarantee.
Based on this, in the present exemplary embodiment, a blockchain-based evidence storage method is provided first, applied to a certification platform, the blockchain-based evidence storage method of the present disclosure may be implemented by a server, and the method described in the present disclosure may also be implemented by a terminal device, where the terminal described in the present disclosure may include a mobile terminal such as a mobile phone, a tablet computer, a notebook computer, a palm computer, a personal digital assistant (Personal Digital Assistant, PDA), and a fixed terminal such as a desktop computer. FIG. 1 schematically illustrates a schematic diagram of a blockchain-based evidence storage method flow in accordance with some embodiments of the present disclosure. Referring to fig. 1, the blockchain-based evidence storage method may include the steps of:
step S110, receiving the evidence file sent by the user terminal, storing the evidence file and determining the storage address of the evidence file.
Step S120, determining a file hash value of the evidence file, and sending the file hash value to the judicial service platform so that the judicial service platform stores the file hash value to the judicial blockchain.
And step S130, acquiring a file code determined by the judicial service platform according to the file hash value.
Step S140, storing the file hash value, the file code and the storage address in the evidence blockchain to complete the storage of the evidence file.
According to the evidence storage method based on the blockchain in the embodiment, on one hand, the authenticity and the credibility of the electronic evidence can be ensured by introducing technical support of the blockchain and storing the electronic evidence in the evidence storage platform through tamper-proof technical means of the blockchain. On the other hand, data communication between the evidence storage platform and the judicial service platform is established, and the judicial service platform stores file hash values of the electronic evidence at the same time, so that the authenticity and credibility of the electronic evidence can be approved by the judicial service platform.
Next, a block chain-based evidence storage method in the present exemplary embodiment will be further described.
In step S110, a proof file sent by the user terminal is received, the proof file is stored, and a storage address of the proof file is determined.
In some exemplary embodiments of the present disclosure, the evidence-based platform, also referred to as a data evidence-based platform, may be a platform that stores electronic evidence files and evidence file related information. The user side may be a terminal corresponding to a user using the method in the present disclosure. The user may be a user performing evidence storage and other related operations based on the methods in the present disclosure. The evidence file may be electronic evidence uploaded or used by the user through the user terminal, and the evidence file may include multiple file types, for example, the evidence file may be a text type, an image type, a video type, a file type, and the like. Electronic evidence may refer to any form of evidence information that a party presents to a court in digital form. The storage address may be a storage address of the evidence file in the file server after storing the evidence file in the file server, for example, the storage address may be represented by a uniform resource locator (Uniform Resource Locator, URL).
After receiving the evidence file sent by the user side, the evidence storage platform can upload the evidence file to the file server so as to store the evidence file in the file server and acquire the storage address of the evidence file in the file server.
According to some exemplary embodiments of the present disclosure, in response to a registration operation of a user based on a user side, performing identity authentication on the user and determining an authentication result; taking the user with the verification result passing the verification as an authorized user; receiving file uploading operation of an authorized user; the file uploading operation comprises an operation of uploading a data file. The user may be a user using a user side in the present disclosure. The registration operation may be a registration operation performed by the user based on the user terminal, and after the user performs the registration operation, the user has the authority to use the evidence storage platform to store the evidence file and obtain the evidence file. The authentication can be performed on the identity information of the user, and because the electronic evidence used by the user through the evidence storage platform is applied to the judicial field, the registered user needs to be subjected to real-name authentication so as to ensure the authority, serious and fairness of the judicial. The certification platform can verify the name, the personal photo and the certificate number input by the user to complete identity verification. The authentication result may be an authentication result of performing authentication on the identity information of the registered user. The authorized user can be the user with the verification result passing, and can log in the evidence storage platform to store and acquire evidence files. The file uploading operation may be an operation of authorizing a user to upload a document file through the user side.
When the user performs the registration operation through the user terminal, the certificate storage platform can respond to the registration operation of the user terminal to verify the registration information generated in the registration operation, namely, perform identity verification on the user, and determine the verification result of the identity verification. If the authentication result of the user is passed, the user is determined as an authorized user. When the authorized user carries out login operation through the user terminal, user information submitted by the user through the login operation can be obtained, the user information is verified, after the user information passes the verification, the file uploading operation of the authorized user is received, and evidence files contained in the file uploading operation are stored.
Referring to FIG. 2, FIG. 2 schematically illustrates a detailed process diagram of a blockchain-based evidence storage method. In step S210, the user may perform registration and login operations through the user side to perform real-name authentication; in step S211, after receiving the registration operation of the user, the card storage platform may acquire the user identity information in the registration operation data, and perform identity verification on the user. In step S220, the authorized user may perform a file uploading operation through the user side, and send the evidence file to the evidence-storing platform. In step S221, the certification platform may upload the evidence file included in the file upload operation to the file server in response to the file upload operation.
In step S120, a file hash value of the evidence file is determined, and the file hash value is sent to the judicial service platform, so that the judicial service platform stores the file hash value in the judicial blockchain.
In some exemplary embodiments of the present disclosure, the file hash value may be a hash value calculated by the certification platform corresponding to the evidence file. The judicial service platform can be a platform provided by authorities such as judicial institutions, for example, the judicial service platform can be an Internet court, an Internet inspection court and the like. The judicial blockchain may be a blockchain corresponding to a judicial service platform. After the evidence file is stored in the file server by the evidence storage platform, a file hash value corresponding to the evidence file can be calculated, and the file hash value is stored in an evidence storage block chain corresponding to the evidence storage platform. In addition, the certification platform can send the file hash value to the judicial service platform, so that the judicial service platform can store the file hash value with the time stamp and the digital signature into the corresponding judicial blockchain after adding the corresponding time stamp and the digital signature into the file hash value.
Referring to fig. 2, in step S230, after the evidence file is stored by the evidence platform, a file hash value of the evidence file may be calculated. Specifically, the specific process of calculating the file hash value is as follows: acquiring a binary file corresponding to the evidence file, calculating the binary file by adopting a secure hash Algorithm (Secure Hash Algorithm, SHA) to obtain an intermediate hash value, and performing an MD5 information Digest Algorithm (MD 5) on the intermediate hash value to obtain a file hash value; the MD5 operation may be a one-way operation that converts an arbitrary length data string into a short fixed length value. For example, the file Hash value Hash is calculated by: hash=md5 (sha256 (file binary)). In step S231, the proving blockchain may add a corresponding digital signature to the file hash value, store the file hash value with the digital signature in a new block, and link the block containing the file hash value as the latest block to the tail of the proving blockchain. In steps S240-S250, the certification platform may invoke an application program interface (Application Programming Interface, API) with a judicial service platform, such as the internet court, and push the file hash value to the internet court so that the internet court stores the file hash value in the corresponding judicial blockchain.
It should be noted that, the process of storing the file hash value in the judicial blockchain is similar to the process of storing the file hash value in the proving blockchain, which will not be described in detail in this disclosure.
In step S130, the file code determined by the judicial service platform according to the file hash value is obtained.
In some exemplary embodiments of the present disclosure, the file code may be a code corresponding to the evidence file determined based on the evidence file and the file hash value after the judicial service platform stores the evidence file to the judicial blockchain, and the file code may uniquely represent one evidence file. The file code may be a string that is randomly determined, or may be calculated in other ways to determine the character sequence, etc.
Referring to fig. 2, after storing the file hash value of the evidence file in the blockchain in step S260, a file code uniquely corresponding to the evidence file may be determined, and the file code may be returned to the certification platform.
In step S140, the file hash value, the file code, and the storage address are stored in the evidence blockchain to complete the storage of the evidence file.
In some example embodiments of the present disclosure, the prover blockchain may be a blockchain corresponding to a prover platform for storing information related to the evidence file. After the document hash value is calculated by the document storage platform, the storage address of the document is determined, and the document code returned by the judicial service platform is received, the corresponding relation among the evidence document, the document hash value, the document code and the storage address can be established to generate the relevant information corresponding to the evidence document, and the relevant information of the document is stored in the document storage block chain to finish the storage of the evidence document.
Referring to fig. 2, in step S270, the certification platform may establish a correspondence between the evidence file, the file hash value, the file code and the storage address, and use the correspondence as the file related information, and store the file related information, the file hash value, the file code and the storage address in the certification blockchain, thereby completing the storage of the evidence file.
According to some exemplary embodiments of the present disclosure, a file archive corresponding to an evidence file is generated from a file encoding; and returning the file archive to the user side so that the user can acquire the evidence file according to the file archive. The file archive may be a type of record file that records information about the evidence file. The evidence storage platform can establish the corresponding relation among the evidence file, the file hash value, the file code and the storage address. And generating a file archive of the evidence file according to the corresponding relation among the user information, the file codes and the generated file codes, and returning the file archive to the user side so that a subsequent user can acquire the evidence file according to the file archive.
In another exemplary embodiment of the present disclosure, a blockchain-based evidence verification method is provided, which is applied to a judicial service platform, and the blockchain-based evidence verification method of the present disclosure may be implemented by a server, and the method of the present disclosure may also be implemented by a terminal device, where the terminal described in the present disclosure may include a mobile terminal such as a mobile phone, a tablet computer, a notebook computer, a palm computer, a personal digital assistant (Personal Digital Assistant, PDA), and a fixed terminal such as a desktop computer. Fig. 3 schematically illustrates a schematic diagram of a blockchain-based evidence verification method flow in accordance with some embodiments of the present disclosure. Referring to fig. 3, the blockchain-based evidence verification method may include the steps of:
Step S310, receiving the file code of the evidence file sent by the user terminal, and obtaining the initial hash value of the evidence file from the judicial blockchain according to the file code.
Step S320, obtaining a comparison and verification result of the hash value of the evidence file determined by the evidence storage platform.
Step S330, if the comparison and verification result is that the verification is passed, the evidence file is obtained and the target hash value of the evidence file is determined.
Step S340, verifying whether the initial hash value is consistent with the target hash value, and determining the trust degree of the evidence file according to the verification result.
According to the evidence verification method based on the blockchain in the embodiment of the invention, on one hand, the initial hash value of the file can be obtained through the file coding of the evidence file, the evidence file stored by the evidence storage platform can be obtained according to the initial hash value, and the trust degree of the evidence file can be determined through comparing and verifying the initial hash value of the evidence file with the target hash value in the judicial service platform. On the other hand, the initial validity of the evidence file can be judged by acquiring the comparison and verification result of the hash value of the evidence file by the evidence storage platform, and if the initial validity is judged to be passed, the initial hash value of the file is compared with the target hash value stored in the judicial service platform, so that the authenticity of the evidence file can be further verified.
Next, a blockchain-based evidence verification method in the present exemplary embodiment will be further described.
In step S310, a file code of the evidence file sent by the user terminal is received, and an initial hash value of the evidence file is obtained from the judicial blockchain according to the file code.
In some exemplary embodiments of the present disclosure, the file code may be a file code included in a file profile sent by a user through a user terminal, and a certain evidence file may be uniquely determined through the file code. The initial Hash value may be a file Hash value obtained according to the file code, and the initial Hash value may be represented by Hash0.
Referring to FIG. 4, FIG. 4 schematically illustrates a detailed process diagram of a blockchain-based evidence verification method. In step S410, the user may submit a file through the user terminal; the file may include a file code. In step S420, after receiving the file code sent by the user terminal, the judicial service platform may obtain, from the judicial blockchain, an initial Hash value Hash0 corresponding to the evidence file according to the file code. Specifically, file related information such as a file hash value of the evidence file can be stored in the judicial blockchain.
In step S320, a comparison verification result of the hash value of the evidence file determined by the evidence platform is obtained.
In some exemplary embodiments of the present disclosure, the comparison verification result may be a comparison result obtained after the certification platform compares two different hash values of the obtained evidence file. The evidence storage platform can acquire two hash values corresponding to the evidence file determined at different stages according to the file codes, and performs comparison and verification on the two hash values to obtain a comparison and verification result. The certification platform can return the obtained comparison and verification result to the judicial service platform so that the judicial service platform can carry out the next step of judgment according to the comparison and verification result.
According to some exemplary embodiments of the present disclosure, a file encoding is sent to a certification platform, so that the certification platform obtains a first hash value and a storage address from a certification blockchain according to the file encoding; determining a second hash value generated by the evidence file according to the storage address by the evidence storage platform; and comparing whether the first hash value is consistent with the second hash value or not by the evidence storage platform, and determining a comparison and verification result. The first hash value may be a hash value of a evidence file pre-stored in the proving blockchain. The storage address may be a storage address of the evidence file in a file database. The second hash value may be a file hash value generated when the certification platform obtains the evidence file from the file database.
Referring to fig. 4, after the judicial service platform sends the file code to the evidence storing platform in steps S430 to S431, the evidence storing platform may obtain a first hash value of the evidence file from the evidence storing blockchain according to the file code, where the first hash value is a hash value of the evidence file pre-stored in the evidence storing blockchain; and obtaining the storage address of the evidence file. In steps S432 to S434, after the evidence storage platform obtains the storage address of the evidence file, the evidence storage platform may obtain the file stream of the evidence file from the file database, and when the evidence storage platform obtains the file stream of the evidence file, a corresponding file hash value, that is, a second hash value may be generated. In step S435, after determining the second hash value, the certification platform may compare whether the first hash value and the second hash value are consistent, and use the result obtained after comparison as a comparison verification result, so that the certification platform returns the comparison verification result to the judicial service platform.
In step S330, if the comparison verification result is that the verification is passed, the evidence file is acquired and the target hash value of the evidence file is determined.
In some example embodiments of the present disclosure, the verification pass may be a comparison of the verification result, and the verification pass may indicate that the first hash value is consistent with the second hash value. The target hash value may be a hash value corresponding to the evidence file generated when the judicial service platform obtains the file stream of the evidence file. When the evidence storage platform returns the comparison verification result to the judicial service platform, the judicial service platform judges whether the comparison verification result is verification passing or verification failing. Referring to fig. 4, in step S440, when the obtained comparison verification result is verification, the judicial service platform calculates a corresponding target Hash value according to the obtained evidence file, where the target Hash value may be represented by Hash 3. The target Hash value Hash3 may be calculated by Hash 3=md5 (sha256 (file binary)).
In step S340, it is verified whether the initial hash value is consistent with the target hash value, and the trust degree of the evidence file is determined according to the verification result.
In some exemplary embodiments of the present disclosure, the trust level of the evidence file may represent the trustworthiness of the evidence file, where when the trust level is 1, it may represent that the evidence file obtained according to the file code is not tampered, and has the trustworthiness, and may be approved by the judicial service platform; when the trust level is 0, it may indicate that the evidence file obtained according to the file code may be tampered, and has no trust, and cannot be accepted by the judicial service platform. Referring to fig. 4, after the judicial service platform calculates the target hash value in steps S460 to S470, it may be compared whether the initial hash value is consistent with the target hash value, so as to obtain a verification result. If the verification result is consistent, the trust degree of the evidence file is determined to be 1, which means that the evidence file has authenticity and credibility and can be approved by a judicial service platform; if the verification result is inconsistent, the trust degree of the evidence file is determined to be 0, which means that the evidence file can be tampered and can not be approved by the judicial service platform.
In yet another exemplary embodiment of the present disclosure, a blockchain-based evidence verification method is provided for use with a certification platform. Fig. 5 schematically illustrates a schematic diagram of a blockchain-based evidence verification method flow in accordance with some embodiments of the present disclosure. Referring to fig. 5, the blockchain-based evidence verification method may include the steps of:
step S510, receiving a file code of the evidence file sent by the judicial service platform, and acquiring a first hash value and a storage address of the evidence file from the evidence storage block chain according to the file code.
Step S520, obtaining the evidence file according to the storage address, and generating a second hash value.
In step S530, whether the first hash value is consistent with the second hash value is compared, and a comparison verification result is determined.
Step S540, the comparison verification result is returned to the judicial service platform, so that the judicial service platform determines the trust degree of the evidence file based on the comparison verification result.
According to the evidence verification method based on the blockchain in the embodiment of the present invention, on one hand, the evidence storage platform can preliminarily judge the authenticity of the evidence file by the hash value verification technology by comparing the consistency between the first hash value and the second hash value of the evidence file. On the other hand, the obtained comparison and verification result is sent to the judicial service platform, so that the judicial service platform can further judge the authenticity and the credibility of the evidence file, and the credibility of the evidence file is ensured.
Next, a blockchain-based evidence verification method in the present exemplary embodiment will be further described.
In step S510, a file code of the evidence file sent by the judicial service platform is received, and a first hash value and a storage address of the evidence file are obtained from the evidence block chain according to the file code.
In some exemplary embodiments of the present disclosure, when the certification platform receives the file code of the evidence file sent by the judicial service platform, the first hash value and the storage address of the evidence file stored in advance may be obtained from the certification blockchain according to the file code. Referring to fig. 4, in step S430 to step S433, the evidence storage platform may receive the file code sent by the judicial service platform, obtain a first hash value of the evidence file from the evidence storage blockchain through the file code, determine a file management relationship record corresponding to the evidence file according to the first hash value, and obtain a storage address of the evidence file from the file management relationship record, so that the evidence storage platform may pull a file stream of the evidence data file from the file database based on the storage address.
In step S520, the evidence file is acquired according to the storage address, and a second hash value is generated.
In some exemplary embodiments of the present disclosure, after the evidence platform pulls the stream of the evidence file from the file database according to the storage address, a second hash value may be generated according to the pulled evidence file. Referring to fig. 4, in step S434, the evidence platform may generate a second hash value of the evidence file when pulling the file stream of the evidence file.
In step S530, whether the first hash value and the second hash value are consistent is compared, and a comparison verification result is determined.
In some exemplary embodiments of the present disclosure, referring to fig. 4, after the certification platform obtains the first hash value and the second hash value, the certification platform may compare whether the first hash value and the second hash value are consistent and determine a comparison verification result in step S435.
In step S540, the comparison verification result is returned to the judicial service platform, so that the judicial service platform determines the trust level of the evidence file based on the comparison verification result.
In some exemplary embodiments of the present disclosure, the certification platform may return the determined comparison verification result to the judicial service platform, so that the judicial service platform determines the trust level of the evidence file according to the verification result. Specifically, when the comparison verification result is that the two hash values are inconsistent, the authenticity of the evidence file is considered to be problematic, and the evidence file may be tampered, so that the evidence file is not trusted. When the comparison verification result is that the two hash values are consistent, returning the result of the consistency verification to the judicial service platform, and the judicial service platform further calculates a target hash value according to the obtained file stream of the evidence file and compares the initial hash value with the target hash value to determine the trust degree of the evidence file.
It should be noted that the terms "first", "second", etc. are used in this disclosure only to distinguish between different hash values of evidence files, and should not be construed as limiting the disclosure in any way.
In summary, receiving an evidence file sent by a user terminal, storing the evidence file, determining a storage address and a file hash value of the evidence file, and sending the file hash value to a judicial service platform so that the judicial service platform stores the file hash value to a judicial blockchain; acquiring a file code determined by a judicial service platform according to the file hash value; storing the file hash value, the file code and the storage address in the evidence block chain to finish the storage of the evidence file. When receiving a file code sent by a user side, the evidence server can determine an initial hash value of an evidence file according to the file code and send the file code to a evidence storage platform, the evidence storage platform can carry out consistency judgment on the file hash value of the evidence file, if the evidence storage platform determines that the file hash value is consistent, the result of the consistent hash value is returned to a judicial service platform, and the judicial service platform can determine a target hash value according to the acquired evidence file and compare whether the initial hash value is consistent with the target hash value so as to determine the trust degree of the evidence file. On the one hand, the blockchain technology is introduced into the storage of the evidence file, the evidence file can be stored by utilizing the blockchain technology such as electronic signature, trusted time stamp, hash value verification and the like, and the safety and the authenticity of the stored evidence file can be ensured. On the other hand, the evidence file can be accessed by establishing data communication between the evidence storage platform and the judicial service platform and calling the evidence storage platform by an application program interface, so that the evidence storage platform is simple and easy to use. In still another aspect, after the evidence storage platform determines the hash value of the evidence file according to the file code, the authenticity and the credibility of the evidence file can be primarily judged through hash value comparison verification, a comparison verification result is sent to the judicial service platform, and the obtained authenticity and the credibility of the evidence file can be ensured through further hash value verification of the judicial service platform.
It should be noted that although the steps of the method of the present invention are depicted in the drawings in a particular order, this does not require or imply that the steps must be performed in that particular order or that all of the illustrated steps be performed in order to achieve desirable results. Additionally or alternatively, certain steps may be omitted, multiple steps combined into one step to perform, and/or one step decomposed into multiple steps to perform, etc.
Furthermore, in the present example embodiment, a blockchain-based evidence store is also provided. Referring to fig. 6, the blockchain-based evidence store 600 may include: an evidence receiving module 610, a hash value storage module 620, an encoding acquisition module 630, and an evidence storage module 640.
Specifically, the evidence receiving module 610 may be configured to receive an evidence file sent by a user terminal, store the evidence file, and determine a storage address of the evidence file; the hash value storage module 620 may be configured to determine a file hash value of the evidence file and send the file hash value to the judicial service platform, so that the judicial service platform stores the file hash value to the judicial blockchain; the code obtaining module 630 may be configured to obtain a file code determined by the judicial service platform according to the file hash value; the evidence storage module 640 may be configured to store the file hash value, the file encoding and the storage address in the evidence blockchain to complete the storage of the evidence file.
The evidence storage device 600 based on the blockchain receives the evidence file sent by the user, stores the evidence file in a file database, determines the file hash value and the storage address of the evidence file, stores the file hash value in the stored blockchain, can determine the file code of the evidence file, establishes the relation information among the file code, the file hash value and the storage address, and stores the relation information in the blockchain to finish the storage of the evidence file, thereby being an effective evidence storage device based on the blockchain.
In an exemplary embodiment of the disclosure, based on the foregoing, the evidence receiving module includes an evidence receiving unit for performing authentication of a user and determining an authentication result in response to a registration operation of the user based on a user side; taking the user with the verification result passing the verification as an authorized user; receiving file uploading operation of an authorized user; the file uploading operation comprises an operation of uploading a data file.
In an exemplary embodiment of the present disclosure, based on the foregoing, the blockchain-based evidence storage apparatus further includes an evidence obtaining module for generating a file archive corresponding to the evidence file according to the file encoding; and returning the file archive to the user side so that the user can acquire the evidence file according to the file archive.
In another example embodiment, a blockchain-based evidence verification device is also provided. Referring to fig. 7, the blockchain-based evidence verification device 700 may include: an initial hash value acquisition module 710, a verification result acquisition module 720, a target hash value acquisition module 730, and a verification module 740.
Specifically, the initial hash value obtaining module 710 may be configured to receive a file code of an evidence file sent by the user side, and obtain an initial hash value of the evidence file from the judicial blockchain according to the file code; the verification result obtaining module 720 may be configured to obtain a comparison verification result of the hash value of the evidence file determined by the evidence storage platform; the target hash value obtaining module 730 may be configured to obtain the evidence file and determine a target hash value of the evidence file if the comparison verification result is that the verification is passed; the verification module 740 may be configured to verify whether the initial hash value is consistent with the target hash value, and determine the trust level of the evidence file according to the verification result.
After the evidence verification device 700 based on the blockchain obtains the file code uploaded by the user side, an initial hash value of the evidence file can be determined according to the file code, the file code is sent to the evidence storage platform, the evidence storage platform can obtain a first hash value from the evidence storage blockchain according to the file code, a second hash value is generated when the evidence file is pulled, whether the first hash value is consistent with the second hash value is compared, a comparison result is sent to the judicial service platform, if the comparison result is consistent, the judicial service platform calculates a target hash value corresponding to the evidence file, the initial hash value is compared with the target hash value, and whether the evidence file is truly and credible is verified.
In an exemplary embodiment of the present disclosure, based on the foregoing, the verification result obtaining module includes a verification result obtaining unit for sending the file code to the certification platform so that the certification platform obtains the first hash value and the storage address from the certification blockchain according to the file code; determining a second hash value generated by the evidence file according to the storage address by the evidence storage platform; and comparing whether the first hash value is consistent with the second hash value or not by the evidence storage platform, and determining a comparison and verification result.
In yet another example embodiment, a blockchain-based evidence verification device is also provided. Referring to fig. 8, the blockchain-based evidence verification device 800 may include: the device comprises a code receiving module 810, a hash value obtaining module 820, a verification result determining module 830 and a trust determining module 840.
Specifically, the code receiving module 810 may be configured to receive a file code of an evidence file sent by the judicial service platform, and obtain, according to the file code, a first hash value and a storage address of the evidence file from a evidence block chain; the hash value obtaining module 820 may be configured to obtain the evidence file according to the storage address, and generate a second hash value; the verification result determining module 830 may be configured to compare whether the first hash value is consistent with the second hash value, and determine a comparison verification result; the trust determination module 840 may be configured to return the comparison verification result to the judicial service platform, so that the judicial service platform determines the trust of the evidence file based on the comparison verification result.
After receiving the file code of the evidence file, the evidence verification device 800 based on the blockchain can acquire the first hash value and the storage address of the evidence file from the evidence storage blockchain, and when the evidence storage platform pulls the evidence file according to the storage address, the evidence storage platform can generate a second hash value, compare the first hash value with the second hash value, and return the comparison verification result to the judicial service platform.
The details of each virtual blockchain-based evidence storage device and/or blockchain-based evidence verification device module in the foregoing are described in detail in the corresponding blockchain-based evidence storage method and/or blockchain-based evidence verification method, and thus are not described in detail herein.
It should be noted that although several modules or units of a blockchain-based evidence store are mentioned in the detailed description above, such partitioning is not mandatory. Indeed, the features and functionality of two or more modules or units described above may be embodied in one module or unit in accordance with embodiments of the present disclosure. Conversely, the features and functions of one module or unit described above may be further divided into a plurality of modules or units to be embodied.
In addition, in an exemplary embodiment of the present disclosure, an electronic device capable of implementing the above method is also provided.
Those skilled in the art will appreciate that the various aspects of the invention may be implemented as a system, method, or program product. Accordingly, aspects of the invention may be embodied in the following forms, namely: an entirely hardware embodiment, an entirely software embodiment (including firmware, micro-code, etc.) or an embodiment combining hardware and software aspects may be referred to herein as a "circuit," module "or" system.
An electronic device 900 according to such an embodiment of the invention is described below with reference to fig. 9. The electronic device 900 shown in fig. 9 is merely an example, and should not be construed as limiting the functionality and scope of use of embodiments of the present invention.
As shown in fig. 9, the electronic device 900 is embodied in the form of a general purpose computing device. Components of electronic device 900 may include, but are not limited to: the at least one processing unit 910, the at least one storage unit 920, a bus 930 connecting the different system components (including the storage unit 920 and the processing unit 910), and a display unit 940.
Wherein the storage unit stores program code that is executable by the processing unit 910 such that the processing unit 910 performs steps according to various exemplary embodiments of the present invention described in the above-described "exemplary methods" section of the present specification.
The storage unit 920 may include readable media in the form of volatile storage units, such as Random Access Memory (RAM) 921 and/or cache memory 922, and may further include Read Only Memory (ROM) 923.
The storage unit 920 may include a program/utility 924 having a set (at least one) of program modules 925, such program modules 925 including, but not limited to: an operating system, one or more application programs, other program modules, and program data, each or some combination of which may include an implementation of a network environment.
The bus 930 may be one or more of several types of bus structures including a memory unit bus or memory unit controller, a peripheral bus, an accelerated graphics port, a processing unit, or a local bus using any of a variety of bus architectures.
The electronic device 900 may also communicate with one or more external devices 970 (e.g., keyboard, pointing device, bluetooth device, etc.), one or more devices that enable a user to interact with the electronic device 900, and/or any device (e.g., router, modem, etc.) that enables the electronic device 900 to communicate with one or more other computing devices. Such communication may occur through an input/output (I/O) interface 950. Also, electronic device 900 may communicate with one or more networks such as a Local Area Network (LAN), a Wide Area Network (WAN), and/or a public network, such as the Internet, through network adapter 960. As shown, the network adapter 960 communicates with other modules of the electronic device 900 over the bus 930. It should be appreciated that although not shown, other hardware and/or software modules may be used in connection with electronic device 900, including, but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, data backup storage systems, and the like.
From the above description of embodiments, those skilled in the art will readily appreciate that the example embodiments described herein may be implemented in software, or in combination with the necessary hardware. Thus, the technical solution according to the embodiments of the present disclosure may be embodied in the form of a software product, which may be stored in a non-volatile storage medium (may be a CD-ROM, a U-disk, a mobile hard disk, etc.) or on a network, and includes several instructions to cause a computing device (may be a personal computer, a server, a terminal device, or a network device, etc.) to perform the method according to the embodiments of the present disclosure.
In an exemplary embodiment of the present disclosure, a computer-readable storage medium having stored thereon a program product capable of implementing the method described above in the present specification is also provided. In some possible embodiments, the various aspects of the invention may also be implemented in the form of a program product comprising program code for causing a terminal device to carry out the steps according to the various exemplary embodiments of the invention as described in the "exemplary methods" section of this specification, when said program product is run on the terminal device.
Referring to fig. 10, a program product 1000 for implementing the above-described method according to an embodiment of the present invention is described, which may employ a portable compact disc read only memory (CD-ROM) and include program code, and may be run on a terminal device, such as a personal computer. However, the program product of the present invention is not limited thereto, and in this document, a readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
The program product may employ any combination of one or more readable media. The readable medium may be a readable signal medium or a readable storage medium. The readable storage medium can be, for example, but is 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 would include the following: an electrical connection having one or more wires, a portable disk, a hard disk, random Access Memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
The computer readable signal medium may include a data signal propagated in baseband or as part of a carrier wave with readable program code embodied therein. Such a propagated data signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination of the foregoing. A readable signal medium may also be any readable medium that is not a readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
Program code embodied on a readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
Program code for carrying out operations of the present invention may be written 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, partly on a remote computing device, or entirely on the remote computing device or server. In the case of remote computing devices, the remote computing device may be connected to the user computing device through any kind of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or may be connected to an external computing device (e.g., connected via the Internet using an Internet service provider).
Furthermore, the above-described drawings are only schematic illustrations of processes included in the method according to the exemplary embodiment of the present invention, and are not intended to be limiting. It will be readily appreciated that the processes shown in the above figures do not indicate or limit the temporal order of these processes. In addition, it is also readily understood that these processes may be performed synchronously or asynchronously, for example, among a plurality of modules.
Other embodiments of the disclosure will be apparent to those skilled in the art from consideration of the specification and practice of the disclosure disclosed herein. This application is intended to cover any adaptations, uses, or adaptations of the disclosure following, in general, the principles of the disclosure and including such departures from the present disclosure as come within known or customary practice within the art to which the disclosure pertains. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the disclosure being indicated by the following claims.
It is to be understood that the present disclosure is not limited to the precise arrangements and instrumentalities shown in the drawings, and that various modifications and changes may be effected without departing from the scope thereof. The scope of the present disclosure is limited only by the appended claims.