CN111611609B - Risk data sharing method and system based on secure multiparty calculation and blockchain - Google Patents

Risk data sharing method and system based on secure multiparty calculation and blockchain Download PDF

Info

Publication number
CN111611609B
CN111611609B CN202010266336.8A CN202010266336A CN111611609B CN 111611609 B CN111611609 B CN 111611609B CN 202010266336 A CN202010266336 A CN 202010266336A CN 111611609 B CN111611609 B CN 111611609B
Authority
CN
China
Prior art keywords
node
loan
overdue
user node
user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010266336.8A
Other languages
Chinese (zh)
Other versions
CN111611609A (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.)
Bubi Beijing Network Technology Co ltd
Original Assignee
Bubi Beijing Network Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Bubi Beijing Network Technology Co ltd filed Critical Bubi Beijing Network Technology Co ltd
Priority to CN202010266336.8A priority Critical patent/CN111611609B/en
Publication of CN111611609A publication Critical patent/CN111611609A/en
Application granted granted Critical
Publication of CN111611609B publication Critical patent/CN111611609B/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/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
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/176Support for shared access to files; File sharing support
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • 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/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/03Credit; Loans; Processing thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures

Abstract

The invention discloses a risk data sharing method and system based on secure multiparty calculation and blockchain, wherein the method comprises the following steps: acquiring a user node ID, calculating a hash value of the user node ID, and inquiring historical loan information of the user node according to the hash value; acquiring historical loan amount private certificates of the user nodes, and calculating overdue amount private certificates and overdue duration private certificates by utilizing the private keys of the user nodes and inquiring the acquired historical loan information; constructing multi-party security evidence of overdue amount and overdue duration of the user node loan; sharing the loan information after processing obtained by the inquiry to a request node; the method realizes the common building of the wind control data alliance by a plurality of Internet financial institutions through secure multiparty calculation, and the distributed real-time secure calculation ensures the freshness, the effectiveness and the accuracy of the data under the condition that the original data is not delivered, thereby ensuring the safety of the business and the data to the greatest extent and meeting the supervision requirements.

Description

Risk data sharing method and system based on secure multiparty calculation and blockchain
Technical Field
The invention relates to the technical field of information, in particular to a risk data sharing method and system based on secure multiparty calculation and blockchain.
Background
The data are basic stones supporting the financial wind control of the whole Internet, and the gold company can identify the fraud risk of the client through big data technologies such as user portraits, data mining, deep learning and the like by collecting, arranging and cleaning the client information. In order to reduce the overdue bad account rate of the pneumatic control, the financial company obviously provides great help for complete user data, and has guiding significance for different adaptation of different risk interest rate products for users.
The blockchain technology is used as a distributed ledger wall technology, brings deep influence to the financial field and drives a new round of technology innovation and application innovation. Under the background of blockchain, cloud computing, big data and other technologies, the financial industry breeds and generates various financial products, on one hand, the services and the applications provide accurate and personalized services for users, and on the other hand, collect relevant information of the users, and although great convenience is brought to life of people, the collected information often contains a large amount of sensitive information including medical history, income, identity, interests, positions and the like, and operations such as sharing, collecting, publishing, analyzing and utilizing the information can directly or indirectly reveal user privacy, so that great threat and trouble are brought to the users.
Disclosure of Invention
In order to solve the problem that sensitive information sharing in a block chain environment in the background art can directly or indirectly cause privacy disclosure of a user, the invention provides a risk data sharing method and system based on secure multiparty computing and block chains, wherein the risk data sharing method based on the secure multiparty computing and the block chains comprises the following steps:
acquiring a user node ID, calculating a hash value of the user node ID, and inquiring historical loan information of the user node according to the hash value;
acquiring historical loan amount private certificates of the user nodes, and calculating overdue amount private certificates and overdue duration private certificates by utilizing the private keys of the user nodes and inquiring the acquired historical loan information;
constructing multi-party security evidence of overdue amount and overdue duration of the user node loan;
sharing the overdue multi-party security certificate, historical loan amount private certificate, overdue time private certificate and signature of the user node loan submitting material to a request node; the requesting node is a data sharing initiator.
Further, the querying the historical loan information of the user node according to the hash value includes:
The pointer simultaneously traverses the linked list in clockwise and anticlockwise bidirectional circulation to inquire the hash value in the current position of the bidirectional circulating linked list in the cache;
if the hash value is found, extracting historical loan information of the user node corresponding to the hash value, and adding 1 to the access times of the position of the hash value;
if the hash value is not found after the bidirectional cycle traversal is performed for one week, accessing a database and extracting historical loan information of the user node in the database; and continuously moving the pointer of the bidirectional circular linked list in a bidirectional way, finding out the lowest cache position of the first access position, filling and replacing the hash value to the position, and adding 1 to the access times of the replaced position.
Further, the historical loan amount privacy credential calculation formula includes:
c loan =r u G+v loan H
the overdue amount private certificate calculation formula comprises:
c overdue =r B G+v overdue H
the formula for calculating the privacy credential for the overdue duration comprises the following steps:
c d =r B G+d overdue H
wherein said r u For private key of user node, r is as follows B To share node private key, the v loan To inquire the loan amount in the acquired historical loan information, the v overdue The overdue amount of the user node in the historical loan information obtained by inquiring is d overdue For inquiring the overdue time of user node in the acquired historical loan information G and H are elliptic curve base points, and c is loan Private voucher for historical loan amount, said c overdue A private voucher for overdue amount, c d Privacy vouchers for the timeout period;
the formula for calculating the multi-party security evidence of the overdue duration comprises the following steps:
Figure GDA0004139292670000031
wherein f (x d ,y d ) Multiparty security evidence for overdue duration, x d For the overdue duration of the user node, the y d A timeout duration threshold for the requesting node;
the overdue amount multiparty safety certificate calculation formula comprises:
Figure GDA0004139292670000032
wherein f (x v ,y v ) For overdue amount multiparty security certification, the x v For the overdue amount of the user node, y v Is the threshold of the overdue amount for the requesting node.
Further, the method for constructing the multiparty security certificate comprises the following steps:
generating a system public-private key pair through a homomorphic encryption key generation algorithm, and sending the system public key to a request node;
encrypting each element in the shared node parameter set by utilizing a system public key according to a homomorphic encryption algorithm to generate a ciphertext set; the sharing node parameter set comprises a parameter true value and n-1 confusion values, wherein n is a positive integer greater than 1;
sending the ciphertext set to a requesting node;
the request node generates a request node parameter set, wherein the request node parameter set comprises a threshold value true value corresponding to a parameter true value in a sharing node parameter set and n-1 confusion values;
The request node integrates and calculates elements in the request node parameter set and elements in the ciphertext set to obtain a set to be replaced;
receiving a permuted set obtained by randomly permuting the set to be permuted, which is sent by the request node;
decrypting the permuted set to obtain a decryption result; the decryption result comprises a constructed multiparty security certificate;
the parameter true value in the sharing node parameter set comprises an overdue amount and an overdue duration, and the parameter true value in the request node parameter set comprises an overdue amount threshold and an overdue duration threshold; the multiparty security certificate comprises overdue amount multiparty security certificates and overdue duration multiparty security certificates.
Further, the integrated calculation formula includes:
E(z di )=E(x di -y di )
E(f di )=E(x di -2x di y di +y di )
E(s di )=E(s d (i -1 )+f di ) Wherein s is d0 =0
E(r di )=E(z di +s di s d(i-1) )
Wherein, E (m) is the homomorphic encryption algorithm, encrypting plaintext m by using the system public key; said E (x) di ) For the ith element in the ciphertext set, the y di For the i-th element in the request node parameter set, the z di As a first intermediate variable, said f di As a second intermediate variable, said s di As a third intermediate variable, the E (r di ) An i element in the set to be replaced;
The random permutation calculation formula includes:
Figure GDA0004139292670000041
wherein E (m) is the homomorphic additionSecret algorithm, x di To share the ith element in the node parameter set, the y di For the i-th element in the request node parameter set, the s di As a third intermediate variable, the E (r di ) For the i-th element in the set to be permuted, the E θ (r di ) And (3) the i element in the permuted set.
The method for carrying out loan auditing by using the risk data sharing method comprises the following steps:
receiving loan material information submitted by a user node according to a preset format;
encrypting the loan material information and the loan material information signature according to an asymmetric encryption algorithm by using a user node public key to obtain a ciphertext, storing the ciphertext into a distributed file system, and storing a hash value of the ciphertext into a blockchain network; the loan material information signature is obtained by encrypting a private key of a user node;
sending a user node ID to a sharing node, and receiving processed loan information obtained by the sharing node according to the risk data sharing method; the processed loan information comprises overdue multi-party security evidence, overdue duration multi-party security evidence, historical loan amount private evidence, overdue duration private evidence and signature of loan materials submitted by a user node at a sharing node;
And auditing the user node according to the received processed loan information, and judging whether to pay the user node or not through a preset rule.
Further, before the receiving the loan material information submitted by the user node according to the preset format, the method further includes:
the user node registers to the identity authentication node by providing identity information, the identity authentication node audits the identity information of the user node, and if the audit passes, a user ID and a public and private key pair of the user node are generated and distributed to the user node;
the sharing node, the request node and the audit node register with the identity authentication node by providing enterprise qualification information, the identity authentication node verifies the enterprise qualification information, and after verification, respective node ID and public and private key pairs are generated for the sharing node, the request node and the audit node and distributed to the corresponding nodes;
the identity authentication node registers the user ID, the sharing node ID, the request node ID and the audit node ID into the blockchain network.
Further, the verifying the user node according to the received processed loan information, and determining whether to pay the user node according to a preset rule includes:
Verifying the validity of the historical loan amount private certificate, the overdue amount private certificate and the overdue duration private certificate through a private certificate verification function;
judging the overdue condition of the user node in the sharing node according to the overdue amount multiparty safety certificate and the overdue duration multiparty safety certificate;
verifying the validity of submitting the loan material signature at the sharing node by the user node through a signature verification function;
and comprehensively evaluating and determining whether to pay the loan according to the loan information of the user node.
Further, the user node utilizes the private key of the user node to submit the loan amount in the loan material information to generate a loan amount private certificate;
the user node synthesizes the private key of the user node and the public key of the audit node into a re-encryption key, and encrypts the ciphertext through the re-encryption key to obtain a re-encryption ciphertext;
and issuing the loan amount private certificate and the re-encrypted ciphertext to a blockchain, and verifying the validity of the loan information through the auditing node.
Further, the verifying, by the auditing node, the validity of the loan information includes:
the auditing node decrypts the encrypted ciphertext by using the private key of the auditing node to obtain loan material information of the user node, a loan material information signature of the user node and a loan amount private certificate;
The auditing node verifies the validity of the signature of the user node through a signature verification function;
if the signature verification is valid, obtaining the loan amount of the user node through the loan material information of the user node, and constructing a certificate according to the user public key and the loan amount of the user node;
if the construction certificate is equal to the loan amount private certificate, judging that the loan is valid;
construction certificate c θ The calculation formula comprises:
c θ =R A +vH
wherein c θ To construct the voucher, R A V is the loan amount of the user node, and H is the base point of the elliptic curve.
The risk data sharing system based on secure multiparty computing and blockchain comprises:
user nodes, sharing nodes and request nodes;
the user node initiates a loan application to the request node;
the request node sends a loan history information query request to the sharing node and receives a query result;
the sharing node acquires a user node ID, calculates a hash value of the user node ID, and inquires historical loan information of the user node according to the hash value;
the sharing node acquires a user node historical loan amount private certificate;
the sharing node calculates the overdue amount private certificate and the overdue duration private certificate by using the private key and the historical loan information obtained by inquiry;
The sharing node builds a multiparty security certificate of overdue amount of the user node loan and a multiparty security certificate of overdue duration;
and the sharing node shares the signature of the overdue multi-party security certificate, the overdue duration multi-party security certificate, the historical loan amount private certificate, the overdue duration private certificate and the user node loan submitting material to the requesting node.
Further, the sharing node comprises a loan information inquiry unit;
the loan information inquiry unit inquires the hash value through a bidirectional buffer linked list in a buffer, and the linked list pointer traverses the linked list in a clockwise and anticlockwise bidirectional circulation mode at the current position of the bidirectional circulation linked list;
if the hash value is found, extracting historical loan information of the user node corresponding to the hash value, and adding 1 to the access times of the position of the hash value;
if the hash value is not found after the bidirectional cycle traversal is performed for one week, accessing a database and extracting historical loan information of the user node in the database; and continuously moving the pointer of the bidirectional circular linked list in a bidirectional way, finding out the lowest cache position of the first access position, filling and replacing the hash value to the position, and adding 1 to the access times of the replaced position.
Further, the historical loan amount privacy credential calculation formula includes:
c loan =r u G+v loan H
the overdue amount private certificate calculation formula comprises:
c overdue =r B G+v overdue H
the formula for calculating the privacy credential for the overdue duration comprises the following steps:
c d =r B G+d overdue H
wherein said r u For private key of user node, r is as follows B To share node private key, the v loan To inquire the loan amount in the acquired historical loan information, the v overdue The overdue amount of the user node in the historical loan information obtained by inquiring is d overdue For inquiring the overdue time length of the user node in the acquired historical loan information, G and H are elliptic curve base points, and c loan Private voucher for historical loan amount, said c overdue A private voucher for overdue amount, c d Privacy vouchers for the timeout period;
the formula for calculating the multi-party security evidence of the overdue duration comprises the following steps:
Figure GDA0004139292670000071
wherein f (x d ,y d ) Multiparty security evidence for overdue duration, x d For the overdue duration of the user node, the y d A timeout duration threshold for the requesting node;
the overdue amount multiparty safety certificate calculation formula comprises:
Figure GDA0004139292670000072
wherein f (x v ,y v ) For overdue amount multiparty security certification, the x v For the overdue amount of the user node, y v Is the threshold of the overdue amount for the requesting node.
Further, the sharing node comprises a multiparty security certificate construction unit;
the multiparty safety certificate construction unit generates a system public and private key pair through a homomorphic encryption key generation algorithm, and sends the system public key to a request node;
the multiparty security certificate construction unit encrypts each element in the shared node parameter set by utilizing a system public key according to a homomorphic encryption algorithm to generate a ciphertext set; the sharing node parameter set comprises a parameter true value and n-1 confusion values, wherein n is a positive integer greater than 1;
the multiparty security certificate construction unit sends the ciphertext set to a request node;
the request node generates a request node parameter set, wherein the request node parameter set comprises a threshold value true value corresponding to a parameter true value in a sharing node parameter set and n-1 confusion values;
the request node integrates and calculates elements in the request node parameter set and elements in the ciphertext set to obtain a set to be replaced;
the multiparty safety certificate construction unit receives a replaced set obtained by randomly replacing a set to be replaced, which is sent by the request node;
the multiparty safety certificate construction unit decrypts the replaced set to obtain a decryption result; the decryption result comprises a constructed multiparty security certificate;
The parameter true value in the sharing node parameter set comprises an overdue amount and an overdue duration, and the parameter true value in the request node parameter set comprises an overdue amount threshold and an overdue duration threshold; the multiparty security certificate comprises overdue amount multiparty security certificates and overdue duration multiparty security certificates.
Further, the integrated calculation formula includes:
E(z di )=E(x di -y di )
E(f di )=E(x di -2x di y di +y di )
E(s di )=E(s d(i-1) +f di ) Wherein s is d0 =0
E(r di )=E(z di +s di s d(i-1) )
Wherein, E (m) is the homomorphic encryption algorithm, encrypting plaintext m by using the system public key; said E (x) di ) For the ith element in the ciphertext set, the y di For the i-th element in the request node parameter set, the z di As a first intermediate variable, said f di As a second intermediate variable, said s di As a third intermediate variable, the E (r di ) An i element in the set to be replaced;
the random permutation calculation formula includes:
Figure GDA0004139292670000091
wherein E (m) is the homomorphic encryption algorithm, x di To share the ith element in the node parameter set, the y di To requesting nodeAn i-th element in the parameter set, the s di As a third intermediate variable, the E (r di ) For the i-th element in the set to be permuted, the E θ (r di ) And (3) the i element in the permuted set.
The system for performing loan audit by using the risk data sharing system comprises:
the request node receives loan material information submitted by a user node according to a preset format;
the request node encrypts the loan material information and the loan material information signature by using a public key of the user node according to an asymmetric encryption algorithm to obtain a ciphertext, the ciphertext is stored in a distributed file system, and a hash value of the ciphertext is stored in a blockchain network; the loan material information signature is obtained by encrypting a private key of a user node;
the request node sends a user node ID to a sharing node, and receives processed loan information obtained by the sharing node according to the risk data sharing method; the processed loan information comprises overdue multi-party security evidence, overdue duration multi-party security evidence, historical loan amount private evidence, overdue duration private evidence and signature of loan materials submitted by a user node at a sharing node;
and the request node carries out auditing on the user node according to the received processed loan information, and judges whether to pay the money to the user node or not through a preset rule.
Further, the system also comprises an identity authentication node, wherein the identity authentication node is used for receiving identity information of the user node, the sharing node, the request node and the audit node and distributing corresponding public and private key pairs and node IDs;
the identity authentication node registers the identity information provided by the user node and checks the identity information of the user node; if the verification is passed, a user ID and a public and private key pair of the user node are generated and distributed to the user node;
the identity authentication node registers enterprise qualification information provided by the sharing node, the request node and the audit node, and verifies the enterprise qualification information; after verification is passed, generating respective node ID and public and private key pairs for the sharing node, the requesting node and the auditing node, and distributing the node ID and the public and private key pairs to the corresponding nodes;
the identity authentication node registers the user ID, the sharing node ID, the request node ID and the audit node ID into the blockchain network.
Further, the request node verifies the validity of the historical loan amount private certificate, the overdue amount private certificate and the overdue duration private certificate through a private certificate verification function;
the request node judges the overdue condition of the user node in the sharing node according to the overdue amount multiparty safety certificate and the overdue duration multiparty safety certificate;
The request node verifies the validity of submitting the loan material signature at the sharing node by the user node through the signature verification function;
and the request node comprehensively evaluates and decides whether to pay the loan according to the loan information of the user node.
Further, the user node generates a loan amount private certificate by utilizing the private key of the user node and submitting the loan amount in the loan material information;
the user node synthesizes the private key of the user node and the public key of the audit node into a re-encryption key, and encrypts the ciphertext through the re-encryption key to obtain a re-encryption ciphertext;
and the request node issues the loan amount private certificate and the re-encrypted ciphertext to a blockchain, and the auditing node verifies the validity of the loan information.
Further, the auditing node decrypts the encrypted ciphertext by using the private key to obtain loan material information of the user node, a loan material information signature of the user node and a loan amount private certificate;
the auditing node verifies the validity of the signature of the user node through a signature verification function;
if the signature verification is valid, obtaining the loan amount of the user node through the loan material information of the user node, and constructing a certificate according to the user public key and the loan amount of the user node; if the construction certificate is equal to the loan amount private certificate, judging that the loan is valid;
Construction certificate c θ The calculation formula comprises:
c θ =R A +vH
wherein c θ To construct the voucher, R A V is the loan amount of the user node, and H is the base point of the elliptic curve.
The beneficial effects of the invention are as follows: the invention provides a risk data sharing method and system based on secure multiparty calculation and blockchain, wherein the method realizes the co-construction of a wind control data alliance by a plurality of Internet financial institutions through secure multiparty calculation, and the distributed real-time secure calculation ensures the freshness, the effectiveness and the accuracy of data under the condition that original data are not delivered, thereby maximally ensuring the safety of business and data and meeting the supervision requirement; the financial institution may also authorize the audit institution to view the lending information and verify the validity of the private data by proxy re-encryption.
Drawings
Exemplary embodiments of the present invention may be more completely understood in consideration of the following drawings:
FIG. 1 is a flow chart of a risk data sharing method based on secure multiparty computing and blockchain according to an embodiment of the present invention;
FIG. 2 is a flow chart of a method for loan audit using the risk data sharing method described above, in accordance with an embodiment of the invention;
FIG. 3 is a block diagram of a risk data sharing system based on secure multi-party computing and blockchain in accordance with an embodiment of the present invention;
fig. 4 is a block diagram of a system for performing loan audit using the risk data sharing system described above, according to an embodiment of the invention.
Detailed Description
The exemplary embodiments of the present invention will now be described with reference to the accompanying drawings, however, the present invention may be embodied in many different forms and is not limited to the examples described herein, which are provided to fully and completely disclose the present invention and fully convey the scope of the invention to those skilled in the art. The terminology used in the exemplary embodiments illustrated in the accompanying drawings is not intended to be limiting of the invention. In the drawings, like elements/components are referred to by like reference numerals.
Unless otherwise indicated, terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art. In addition, it will be understood that terms defined in commonly used dictionaries should be interpreted as having a meaning that is consistent with their meaning in the context of the relevant art and will not be interpreted in an idealized or overly formal sense.
FIG. 1 is a flow chart of a risk data sharing method based on secure multiparty computing and blockchain according to an embodiment of the present invention; as shown in fig. 1, the method includes:
step 110, obtaining user node ID, calculating hash value of user node ID, inquiring historical loan information of user node according to the hash value;
the data sharing process is initiated by a data request node, the data request node sends a historical loan information inquiry request of a loan user to the data sharing node, and the sharing node finishes the operation of inquiring the loan information of the user according to the user node ID of the loan user.
The query is performed according to the principle that the cache is queried firstly and the database is queried if the cache is not present.
The buffer memory adopts a bidirectional circular chain table structure, the design mode of double pointers can improve half of searching efficiency, and the buffer memory position pointed by each pointer in the chain table marks historical access times. The method for inquiring the cache position of the hash value by calculating the hash value of the user node ID is as follows:
the pointer searches the hash value from the current position of the bidirectional circular linked list by traversing the linked list in a clockwise and anticlockwise bidirectional circular mode;
If the hash value is found, extracting historical loan information of the user node corresponding to the hash value, and adding 1 to the access times of the position of the hash value;
if the hash value is not found after the bidirectional cycle traversal for one week, accessing a database and extracting the historical loan information of the user node in the database; and simultaneously, continuously moving the pointer of the bidirectional circular linked list in two directions, finding out the lowest cache position of the first access position, filling and replacing the hash value to the position, and adding 1 to the access times of the replacement position.
Step 120, obtaining the historical loan amount private certificate of the user node, and calculating the overdue amount private certificate and the overdue duration private certificate by using the private key of the user node and inquiring the obtained historical loan information;
the historical loan amount privacy credential calculation formula comprises:
c loan =r u G+v loan H
the overdue amount private certificate calculation formula comprises:
c overdue =r B G+v overdue H
the formula for calculating the privacy credential for the overdue duration comprises the following steps:
c d =r B G+d overdue H
wherein said r u For private key of user node, r is as follows B A private key is shared for the node; the v is loan To inquire the loan amount in the acquired historical loan information, the v overdue The overdue amount of the user node in the historical loan information obtained by inquiring is d overdue The overdue time of the user node in the historical loan information obtained by inquiring; the c loan Private voucher for historical loan amount, said c overdue A private voucher for overdue amount, c d Privacy vouchers for the timeout period;
the base points G and H are elliptic curve base points, for example, the base point G is an array constant of a given length of 64 bytes, such as g= {0x86,0xbe,0x66,0x7e, …,0xb8}, where h=hash (G, 62) +{0x04,0x45 = {0x50,0x92,0x9b, …,0x 3,0x89,0x04,0x45}, that is, the base point H is the first 62 bytes of the hash value of the base point G, and the 63 rd and 64 th bits of the base point H are padded with {0x04,0x45 }.
Step 130, constructing a multiparty security certificate of overdue amount of the user node loan and a multiparty security certificate of overdue duration;
in order to realize the distributed real-time safe calculation under the condition that the original data is not delivered, the safe multiparty calculation is adopted to construct the multiparty safe evidence of overdue amount and overdue duration, and the overdue condition of the user loan is obtained under the encryption condition; in the whole process, the request node does not know whether the loan record of the user node of the financial machine has overdue conditions or not, the sharing node does not explicitly tell the request node about overdue finance and overdue time, and the request node compares the overdue threshold of the request node with the overdue threshold of the sharing node and the overdue time threshold of the overdue time through safe multiparty calculation.
The calculation formula of the multi-party safety certificate of the overdue duration is as follows:
Figure GDA0004139292670000131
wherein f (x d ,y d ) Multiparty security evidence for overdue duration, x d For the overdue duration of the user node, the y d A timeout duration threshold for the requesting node;
the overdue amount multiparty safety certificate has the following calculation formula:
Figure GDA0004139292670000132
wherein f (x v ,y v ) For overdue amount multiparty security certification, the x v For the overdue amount of the user node, y v Is the threshold of the overdue amount for the requesting node.
Taking the expiration time as an example, the construction process of the multiparty security certificate is specifically described:
the input data comprises a sharing node parameter set and a request node parameter set, wherein the sharing node parameter set comprises n elements, and the n elements comprise an overdue duration true value and n-1 confusion values; the request node parameter set also comprises n elements, wherein the n elements comprise an overdue duration threshold value true value and n-1 confusion values; and n is a positive integer greater than 1.
The output data is f (x d ,y d ) And f (x) d ,y d ) The method meets the following conditions:
Figure GDA0004139292670000142
firstly, generating a system public-private key pair by utilizing a Paillier homomorphic encryption key generation algorithm, and transmitting the system public key to a request node;
the key generation algorithm is as follows:
1. two large prime numbers p and q are selected, and p is approximately equal to q;
2. Calculating n=p×q, λ=Φ (N), where Φ (N) is an euler function;
3. selecting a random number g;
4. calculate μ= (L (g) λ modn 2 )) -1 Wherein
Figure GDA0004139292670000141
5. The system public key is (n, g), and the system private key SK is (lambda, mu).
And then, encrypting each element in the shared node parameter set by utilizing a shared node public key according to a Paillier homomorphic encryption algorithm to generate a ciphertext set, wherein the Paillier homomorphic encryption algorithm meets the requirements of addition and multiplication homomorphism, and the specific calculation process is as follows:
1. encryption process:
selecting a random number r, satisfying gcd (r, n) =1;
encrypting plaintext m to obtain ciphertext c, wherein c=e (m, r) =g m ·r n mod n 2
2. Decryption:
m=D(c)=L(c λ mod n 2 )·μmod n
where m is plaintext and c is ciphertext.
Then, the ciphertext set is sent to a request node, and the request node integrates and calculates elements in the parameter set of the request node and elements in the ciphertext set to obtain a set to be replaced; the integrated calculation formula is as follows:
E(z di )=E(x di -y di )
E(f di )=E(x di -2x di y di +y di )
E(s di )=E(s d(i-1) +f di ) Wherein s is d0 =0
E(r di )=E(z di +s di s d(i-1) )
Wherein, E (m) is the homomorphic encryption algorithm, encrypting plaintext m by using the system public key; said E (x) di ) For the ith element in the ciphertext set, the y di For the i-th element in the request node parameter set, the z di As a first intermediate variable, said f di As a second intermediate variable, said s di As a third intermediate variable, the E (r di ) An i element in the set to be replaced;
the set to be permuted is denoted as { E (r) d1 ),E(r d2 ),…,E(r dn ) The request node carries out random permutation on the set to be permuted to obtain a permuted set { E } θ (r d1 ),E θ (r d2 ),…,E θ (r dn ) -sending the permuted set to a sharing node; the random permutation principle is as follows:
Figure GDA0004139292670000151
wherein E (m) is the homomorphic encryption algorithm, x di To share the ith element in the node parameter set, the y di For the i-th element in the request node parameter set, the s di As a third intermediate variable, the E (r di ) For the i-th element in the set to be permuted, the E θ (r di ) And (3) the i element in the permuted set.
Finally, decrypting the permuted set to obtain a decryption result; the decryption result comprises the built overdue duration multiparty security certificate, i.e. v is necessarily present in the decryption result d Satisfy v d ∈{+1,-1},f(x d ,y d )=v d Said f (x d ,y d ) The multi-party security certificate of the overdue time length is obtained.
Similarly, the overdue amount multiparty security certificate can be constructed in the same method, namely, a parameter true value in the sharing node parameter set comprises overdue amount and overdue duration, and a parameter true value in the request node parameter set comprises an overdue amount threshold and an overdue duration threshold; the multiparty security certificate comprises overdue amount multiparty security certificates and overdue duration multiparty security certificates.
Step 140, sharing the signature of the overdue multi-party security certificate, the overdue duration multi-party security certificate, the historical loan amount secret certificate, the overdue duration secret certificate and the user node loan submitting material to the requesting node; the request node is a data sharing initiator;
the sharing node processes the query information and then sends the query information to the requesting node, and the requesting node performs subsequent processing.
FIG. 2 is a flow chart of a method for loan audit using the risk data sharing method described above, in accordance with an embodiment of the invention; as shown in fig. 2, the method includes:
step 210, receiving loan material information submitted by a user node according to a preset format;
before receiving loan material information submitted by the user node according to the preset format, the method further comprises:
the user node registers to the identity authentication node by providing identity information, the identity authentication node audits the identity information of the user node, and if the audit passes, a user ID and a public and private key pair of the user node are generated and distributed to the user node;
the sharing node, the request node and the audit node register with the identity authentication node by providing enterprise qualification information, the identity authentication node verifies the enterprise qualification information, and after verification, respective node ID and public and private key pairs are generated for the sharing node, the request node and the audit node and distributed to the corresponding nodes; the enterprise qualification information comprises unified social credit codes, business license plates, legal person information, organization names and the like;
The identity authentication node registers the user ID, the sharing node ID, the request node ID and the audit node ID into the blockchain network.
The loan material information comprises identity information, bank running water, social security information and loan amount;
the user node signs the loan material information through a private key distributed by the identity authentication node, and the loan material information signature is sent to the requesting node together.
Step 220, encrypting the loan material information and the loan material information signature according to an asymmetric encryption algorithm by using a public key of a user node to obtain a ciphertext, storing the ciphertext in a distributed file system, and storing a hash value of the ciphertext in a blockchain network; the loan material information signature is obtained by encrypting a private key of a user node;
the asymmetric encryption algorithm adopts an elliptic curve encryption algorithm, and the calculation formula is as follows:
Figure GDA0004139292670000171
wherein m is su For the encrypted ciphertext, eccEncrypt is an elliptic curve encryption algorithm, m u In order to loan material information,
Figure GDA0004139292670000172
signature for loan material information, R u Is the public key of the user.
Step 230, sending a user node ID to a sharing node, and receiving the processed loan information obtained by the sharing node according to the risk data sharing method; the processed loan information comprises overdue multi-party security evidence, overdue duration multi-party security evidence, historical loan amount private evidence, overdue duration private evidence and signature of loan materials submitted by a user node at a sharing node;
According to the risk data sharing method based on secure multiparty calculation and blockchain, the processed loan information obtained by inquiring the sharing node is obtained, wherein the processed loan information comprises overdue multiparty security evidence, historical loan amount private evidence, overdue duration private evidence and signature of loan materials submitted by the user node at the sharing node.
Step 240, auditing the user node according to the received processed loan information, and judging whether to pay the user node or not through a preset rule;
according to the historical loan information of the user node obtained by inquiry, the request node can carry out auditing and risk assessment on the user node to determine whether to pay the money or not; the method comprises the following steps:
firstly, verifying the validity of a historical loan amount private certificate, an overdue amount private certificate and an overdue duration private certificate of a user node at a sharing node through a private certificate verification function;
then, judging the overdue condition of the user node in the sharing node according to the overdue amount multiparty safety certificate and the overdue duration multiparty safety certificate;
then, verifying the validity of submitting the loan material signature at the sharing node by the user node through a signature verification function;
And finally, comprehensively evaluating and determining whether to pay the loan according to the loan information of the user node.
In addition, the invention can also complete audit and supervision of financial activities, and the specific method is as follows:
the user node utilizes the private key of the user node to submit the loan amount in the loan material information to generate a loan amount private certificate;
the user node synthesizes the private key of the user node and the public key of the audit node into a re-encryption key, and the encrypted ciphertext m in the step 220 is subjected to the re-encryption key su Re-encrypting to obtain re-encrypted ciphertext m su→Audit
Issuing the loan amount private certificate and the re-encrypted ciphertext to a blockchain, and verifying the validity of loan information through the auditing node;
the audit node decrypts the received re-encrypted ciphertext m by using the private key of the audit node su→Audit Obtaining loan material information m of user node u Loan material information signature for user nodes
Figure GDA0004139292670000181
Private certificates of loan amount;
the audit node verifies the signature of the user node through a signature verification function
Figure GDA0004139292670000182
Is effective in (1);
if the signature verification is valid, loan material information m through the user node u Obtaining a user node loan amount, and constructing a credential according to a user public key and the user node loan amount;
If the construction certificate is equal to the loan amount private certificate, judging that the loan is valid;
construction certificate c θ The calculation formula comprises:
c θ =R A +vH
wherein c θ To construct the voucher, R A V is the loan amount of the user node, and H is the base point of the elliptic curve.
FIG. 3 is a block diagram of a risk data sharing system based on secure multi-party computing and blockchain in accordance with an embodiment of the present invention; as shown in fig. 3, the system is deployed in a blockchain, the system comprising:
user node 310, sharing node 320, requesting node 330;
the user node 310 initiates a loan application to the requesting node 330;
the request node 330 sends a loan history information query request to the sharing node 320 and receives a query result;
the sharing node 320 obtains the user node ID, calculates the hash value of the user node ID, and queries the historical loan information of the user node according to the hash value;
the sharing node 320 includes a loan information query unit 3201;
the loan information inquiry unit 3201 inquires the hash value through a bidirectional buffer linked list in a buffer, and the linked list pointer simultaneously traverses the linked list in a clockwise and anticlockwise bidirectional circulation at the current position of the bidirectional circulation linked list;
If the hash value is found, extracting historical loan information of the user node corresponding to the hash value, and adding 1 to the access times of the position of the hash value;
if the hash value is not found after the bidirectional cycle traversal is performed for one week, accessing a database and extracting historical loan information of the user node in the database; the pointer of the bidirectional circular linked list continuously moves bidirectionally, a cache position with the lowest first access position is found, the hash value is filled and replaced to the position, and the access times of the replacement position are increased by 1;
the sharing node 320 obtains a user node historical loan amount private certificate; the sharing node 320 calculates the overdue amount private certificate and the overdue duration private certificate by using the private key and the historical loan information obtained by inquiry;
the historical loan amount privacy credential calculation formula comprises:
c loan =r u G+v loan H
the overdue amount private certificate calculation formula comprises:
c overdue =r B G+v overdue H
the formula for calculating the privacy credential for the overdue duration comprises the following steps:
c d =r B G+d overdue H
wherein said r u For private key of user node, r is as follows B To share node private key, the v loan To inquire the loan amount in the acquired historical loan information, the v overdue The overdue amount of the user node in the historical loan information obtained by inquiring is d overdue For inquiring the overdue time length of the user node in the acquired historical loan information, G and H are elliptic curve base points, and c loan Private voucher for historical loan amount, said c overdue A private voucher for overdue amount, c d Privacy vouchers for the timeout period;
the sharing node 320 constructs a multiparty security proof of overdue amount and overdue duration of the user node loan;
the formula for calculating the multi-party security evidence of the overdue duration comprises the following steps:
Figure GDA0004139292670000201
wherein f (x d ,y d ) Multiparty security evidence for overdue duration, x d For the overdue duration of the user node, the y d A timeout duration threshold for the requesting node;
the overdue amount multiparty safety certificate calculation formula comprises:
Figure GDA0004139292670000202
wherein f (x v ,y v ) For overdue amount multiparty security certification, the x v For the overdue amount of the user node, y v A threshold value of overdue amount for the requesting node;
the sharing node 320 includes a multiparty security certificate construction unit 3202;
the multiparty security certificate construction unit 3202 generates a system public key pair through a homomorphic encryption key generation algorithm, and sends the system public key to a request node;
the multiparty security certificate construction unit 3202 encrypts each element in the shared node parameter set by using a system public key according to a homomorphic encryption algorithm to generate a ciphertext set; the sharing node parameter set comprises a parameter true value and n-1 confusion values, wherein n is a positive integer greater than 1;
The multiparty security document construction unit 3202 sends the ciphertext set to the requesting node 330;
the request node 330 generates a request node parameter set, where the request node parameter set includes a threshold value true value corresponding to a parameter true value in a shared node parameter set and n-1 confusion values;
the request node 330 integrates and calculates the elements in the request node parameter set and the elements in the ciphertext set to obtain a set to be replaced;
the integrated calculation formula comprises:
E(z di )=E(x di -y di )
E(f di )=E(x di -2x di y di +y di )
E(s di )=E(s d(i-1) +f di ) Wherein s is d0 =0
E(r di )=E(z di +s di s d(i-1) )
Wherein, E (m) is the homomorphic encryption algorithm, encrypting plaintext m by using the system public key; said E (x) di ) For the ith element in the ciphertext set, the y di For the i-th element in the request node parameter set, the z di As a first intermediate variable, said f di As a second intermediate variable, said s di As a third intermediate variable, the E (r di ) An i element in the set to be replaced;
the multiparty security certificate construction unit 3202 receives a permuted set obtained by randomly permuting a set to be permuted sent by the request node 330;
the random permutation calculation formula includes:
Figure GDA0004139292670000211
wherein E (m) is the homomorphic encryption algorithm, x di To share the ith element in the node parameter set, the y di For the i-th element in the request node parameter set, the s di As a third intermediate variable, the E (r di ) For the i-th element in the set to be permuted, the E θ (r di ) And (3) the i element in the permuted set.
The multiparty security certificate construction unit 3202 decrypts the replaced set to obtain a decryption result; the decryption result comprises a constructed multiparty security certificate;
the parameter true value in the sharing node parameter set comprises an overdue amount and an overdue duration, and the parameter true value in the request node parameter set comprises an overdue amount threshold and an overdue duration threshold; the multiparty security certificate comprises overdue amount multiparty security certificates and overdue duration multiparty security certificates;
the sharing node 320 shares the overdue multi-party security certificate, historical loan amount secret certificate, overdue time secret certificate, and signature of the user node loan submitting material to the requesting node 330.
FIG. 4 is a block diagram of a system for loan audit using the risk data sharing system described above, in accordance with an embodiment of the invention; as shown in fig. 4:
The system includes an identity authentication node 410, where the identity authentication node 410 is configured to receive identity information of the user node 310, the sharing node 320, the request node 330, and the audit node 420 and distribute a corresponding public-private key pair and a node ID;
the identity authentication node 410 registers identity information provided by the user node 310 and performs auditing on the identity information of the user node 310; if the verification is passed, a user ID and a user node public and private key pair are generated and distributed to the user node 310;
the identity authentication node 410 registers the enterprise qualification information provided by the sharing node 320, the request node 330 and the audit node 420, and verifies the enterprise qualification information; after the verification is passed, generating respective node IDs and public and private key pairs for the sharing node 320, the requesting node 330 and the auditing node 420, and distributing the node IDs and public and private key pairs to corresponding nodes;
the authentication node 410 registers the user ID, the sharing node ID, the requesting node ID, and the auditing node ID into the blockchain network.
The request node 330 receives loan material information submitted by the user node 310 according to a preset format;
the request node 330 encrypts the loan material information and the loan material information signature according to an asymmetric encryption algorithm by using a user node public key to obtain a ciphertext, stores the ciphertext in a distributed file system, and stores a hash value of the ciphertext in a blockchain network; the loan material information signature is obtained by encrypting a private key of a user node;
The request node 330 sends a user node ID to the sharing node 320, and receives the processed loan information obtained by the sharing node 320 according to the risk data sharing method; the processed loan information comprises overdue multi-party security evidence, overdue duration multi-party security evidence, historical loan amount private evidence, overdue duration private evidence and signature of the loan material submitted by the user node 310 at the sharing node 320;
the request node 330 examines the user node 310 according to the received processed loan information, and determines whether to pay the user node 310 according to a preset rule;
the request node 330 verifies the validity of the historical loan amount private credential, the overdue amount private credential, and the overdue duration private credential through a private credential verification function;
the requesting node 330 determines the overdue status of the user node 310 at the sharing node 320 according to the overdue amount multi-party security certificate and the overdue duration multi-party security certificate;
the request node 330 verifies the validity of the loan material signature submitted by the user node 310 at the sharing node 320 through the signature verification function;
the requesting node 330 decides whether to pay the loan according to the comprehensive evaluation of the loan information of the user node 310.
In addition, the system can be used for completing audit supervision on financial activities;
the user node 310 generates a loan amount private certificate by using the self private key and submitting the loan amount in the loan material information;
the user node 310 synthesizes the private key of the user node and the public key of the audit node into a re-encryption key, and encrypts the ciphertext through the re-encryption key to obtain a re-encryption ciphertext;
the request node 330 issues the loan amount secret credential and the re-encrypted ciphertext to a blockchain, and the validity of the loan information is verified through the audit node 420;
the auditing node 420 decrypts the encrypted ciphertext by using the private key to obtain the loan material information of the user node 310, the loan material information signature of the user node 310 and the loan amount private certificate;
the auditing node 420 verifies the validity of the user node signature through a signature verification function;
if the signature verification is valid, obtaining the user node loan amount through the loan material information of the user node 310, and constructing a credential according to the user public key and the user node loan amount; if the construction certificate is equal to the loan amount private certificate, judging that the loan is valid;
construction certificate c θ The calculation formula comprises:
c θ =R A +vH
wherein c θ To construct the voucher, R A V is the loan amount of the user node, and H is the base point of the elliptic curve.
In the description provided herein, numerous specific details are set forth. However, it is understood that embodiments of the disclosure may be practiced without these specific details. In some instances, well-known methods, structures and techniques have not been shown in detail in order not to obscure an understanding of this description.
Those skilled in the art will appreciate that the modules in the apparatus of the embodiments may be adaptively changed and disposed in one or more apparatuses different from the embodiments. The modules or units or components of the embodiments may be combined into one module or unit or component and, furthermore, they may be divided into a plurality of sub-modules or sub-units or sub-components. Any combination of all features disclosed in this specification (including any accompanying claims, abstract and drawings), and all of the processes or units of any method or apparatus so disclosed, may be used in combination, except insofar as at least some of such features and/or processes or units are mutually exclusive. Each feature disclosed in this specification (including any accompanying claims, abstract and drawings), may be replaced by alternative features serving the same, equivalent or similar purpose, unless expressly stated otherwise. Reference to step numbers in this specification is used solely to distinguish between steps and is not intended to limit the time or logical relationship between steps, including the various possible conditions unless the context clearly indicates otherwise.
Furthermore, those skilled in the art will appreciate that while some embodiments described herein include some features but not others included in other embodiments, combinations of features of different embodiments are meant to be within the scope of the disclosure and form different embodiments. For example, any of the embodiments claimed in the claims may be used in any combination.
Various component embodiments of the present disclosure may be implemented in hardware, or in software modules running on one or more processors, or in a combination thereof. The present disclosure may also be implemented as an apparatus or system program (e.g., a computer program and a computer program product) for performing a portion or all of the methods described herein. Such a program embodying the present disclosure may be stored on a computer readable medium, or may have the form of one or more signals. Such signals may be downloaded from an internet website, provided on a carrier signal, or provided in any other form.
It should be noted that the above-mentioned embodiments illustrate rather than limit the disclosure, and that those skilled in the art will be able to design alternative embodiments without departing from the scope of the appended claims. The word "comprising" does not exclude the presence of elements or steps not listed in a claim. The word "a" or "an" preceding an element does not exclude the presence of a plurality of such elements. The disclosure may be implemented by means of hardware comprising several distinct elements, and by means of a suitably programmed computer. In the unit claims enumerating several means, several of these means may be embodied by one and the same item of hardware.
The foregoing is merely a specific embodiment of the disclosure, and it should be noted that it will be apparent to those skilled in the art that several improvements, modifications, and variations can be made without departing from the spirit of the disclosure, and these improvements, modifications, and variations are to be considered within the scope of the present application.

Claims (14)

1. A secure multiparty computing and blockchain based risk data sharing method, the method comprising:
acquiring a user node ID, calculating a hash value of the user node ID, and inquiring historical loan information of the user node according to the hash value;
acquiring historical loan amount private certificates of the user nodes, and calculating overdue amount private certificates and overdue duration private certificates by utilizing the private keys of the user nodes and inquiring the acquired historical loan information;
constructing multi-party security evidence of overdue amount and overdue duration of the user node loan;
sharing the overdue multi-party security certificate, historical loan amount private certificate, overdue time private certificate and signature of the user node loan submitting material to a request node; the request node is a data sharing initiator;
The historical loan amount privacy credential calculation formula comprises:
c loan =r u G+v loan H
the overdue amount private certificate calculation formula comprises:
c overdue =r B G+v overdue H
the formula for calculating the privacy credential for the overdue duration comprises the following steps:
C d =r B G+d overdue H
wherein said r u For private key of user node, r is as follows B To share node private key, the v loan To inquire the loan amount in the acquired historical loan information, the v overdue The overdue amount of the user node in the historical loan information obtained by inquiring is d overdue For inquiring the overdue time length of the user node in the acquired historical loan information, G and H are elliptic curve base points, and c loan Private voucher for historical loan amount, said c overdue A private voucher for overdue amount, c d Privacy vouchers for the timeout period;
the formula for calculating the multi-party security evidence of the overdue duration comprises the following steps:
Figure QLYQS_1
wherein f (x d ,y d ) Multiparty security evidence for overdue duration, x d For the overdue duration of the user node, the y d A timeout duration threshold for the requesting node;
the overdue amount multiparty safety certificate calculation formula comprises:
Figure QLYQS_2
wherein f (x v ,y v ) For overdue amount multiparty security certification, the x v For the overdue amount of the user node, y v A threshold value of overdue amount for the requesting node;
the method for constructing the multiparty security certificate comprises the following steps:
Generating a system public-private key pair through a homomorphic encryption key generation algorithm, and sending the system public key to a request node;
encrypting each element in the shared node parameter set by utilizing a system public key according to a homomorphic encryption algorithm to generate a ciphertext set; the sharing node parameter set comprises a parameter true value and n-1 confusion values, wherein n is a positive integer greater than 1;
sending the ciphertext set to a requesting node;
the request node generates a request node parameter set, wherein the request node parameter set comprises a threshold value true value corresponding to a parameter true value in a sharing node parameter set and n-1 confusion values;
the request node integrates and calculates elements in the request node parameter set and elements in the ciphertext set to obtain a set to be replaced;
receiving a permuted set obtained by randomly permuting the set to be permuted, which is sent by the request node;
decrypting the permuted set to obtain a decryption result; the decryption result comprises a constructed multiparty security certificate;
the parameter true value in the sharing node parameter set comprises an overdue amount and an overdue duration, and the parameter true value in the request node parameter set comprises an overdue amount threshold and an overdue duration threshold; the multiparty security certificate comprises overdue amount multiparty security certificates and overdue duration multiparty security certificates;
The integrated calculation formula comprises:
E(z di )=E(x di -y di )
E(f di )=E(x di -2x di y di +y di )
E(s di )=E(s d(i-1) +f di ) Wherein s is d0 =0
E(r di )=E(z di +s di s d(i-1) )
Wherein, E (m) is the homomorphic encryption algorithm, encrypting plaintext m by using the system public key; said E (x) di ) For the ith element in the ciphertext set, the y di For the i-th element in the request node parameter set, the z di As a first intermediate variable, said f di As a second intermediate variable, said s di As a third intermediate variable, the E (r di ) An i element in the set to be replaced;
the random permutation calculation formula includes:
Figure QLYQS_3
wherein E (m) is the homomorphic encryption algorithm, x di To share the ith element in the node parameter set, the y di For the i-th element in the request node parameter set, the s di As a third intermediate variable, the E (r di ) For the i-th element in the set to be permuted, the E θ (r di ) And (3) the i element in the permuted set.
2. The method of claim 1, wherein querying the historical loan information for the user node based on the hash value comprises:
the pointer simultaneously traverses the linked list in clockwise and anticlockwise bidirectional circulation to inquire the hash value in the current position of the bidirectional circulating linked list in the cache;
if the hash value is found, extracting historical loan information of the user node corresponding to the hash value, and adding 1 to the access times of the position of the hash value;
If the hash value is not found after the bidirectional cycle traversal is performed for one week, accessing a database and extracting historical loan information of the user node in the database; and continuously moving the pointer of the bidirectional circular linked list in a bidirectional way, finding out the lowest cache position of the first access position, filling and replacing the hash value to the position, and adding 1 to the access times of the replaced position.
3. A method of loan auditing using the risk data sharing method of claim 1, the method comprising:
receiving loan material information submitted by a user node according to a preset format;
encrypting the loan material information and the loan material information signature according to an asymmetric encryption algorithm by using a user node public key to obtain a ciphertext, storing the ciphertext into a distributed file system, and storing a hash value of the ciphertext into a blockchain network; the loan material information signature is obtained by encrypting a private key of a user node;
sending a user node ID to a sharing node, and receiving processed loan information obtained by the sharing node according to the risk data sharing method; the processed loan information comprises overdue multi-party security evidence, overdue duration multi-party security evidence, historical loan amount private evidence, overdue duration private evidence and signature of loan materials submitted by a user node at a sharing node;
And auditing the user node according to the received processed loan information, and judging whether to pay the user node or not through a preset rule.
4. The method of claim 3, wherein prior to receiving the loan material information submitted by the user node in the preset format, the method further comprises:
the user node registers to the identity authentication node by providing identity information, the identity authentication node audits the identity information of the user node, and if the audit passes, a user ID and a public and private key pair of the user node are generated and distributed to the user node;
the sharing node, the request node and the audit node register with the identity authentication node by providing enterprise qualification information, the identity authentication node verifies the enterprise qualification information, and after verification, respective node ID and public and private key pairs are generated for the sharing node, the request node and the audit node and distributed to the corresponding nodes;
the identity authentication node registers the user ID, the sharing node ID, the request node ID and the audit node ID into the blockchain network.
5. The method of claim 3, wherein the auditing the user node based on the received processed loan information, determining whether to refund the user node via a preset rule, comprises:
Verifying the validity of the historical loan amount private certificate, the overdue amount private certificate and the overdue duration private certificate through a private certificate verification function;
judging the overdue condition of the user node in the sharing node according to the overdue amount multiparty safety certificate and the overdue duration multiparty safety certificate;
verifying the validity of submitting the loan material signature at the sharing node by the user node through a signature verification function;
and comprehensively evaluating and determining whether to pay the loan according to the loan information of the user node.
6. A method according to claim 3, characterized in that:
the user node utilizes the private key of the user node to submit the loan amount in the loan material information to generate a loan amount private certificate;
the user node synthesizes the private key of the user node and the public key of the audit node into a re-encryption key, and encrypts the ciphertext through the re-encryption key to obtain a re-encryption ciphertext;
and issuing the loan amount private certificate and the re-encrypted ciphertext to a blockchain, and verifying the validity of the loan information through the auditing node.
7. The method of claim 6, wherein said verifying, by the audit node, the validity of loan information comprises:
the auditing node decrypts the encrypted ciphertext by using the private key of the auditing node to obtain loan material information of the user node, a loan material information signature of the user node and a loan amount private certificate;
The auditing node verifies the validity of the signature of the user node through a signature verification function;
if the signature verification is valid, obtaining the loan amount of the user node through the loan material information of the user node, and constructing a certificate according to the user public key and the loan amount of the user node;
if the construction certificate is equal to the loan amount private certificate, judging that the loan is valid;
construction certificate c θ The calculation formula comprises:
c θ =R A +vH
wherein c θ To construct the voucher, R A V is the loan amount of the user node, and H is the base point of the elliptic curve.
8. A secure multiparty computing and blockchain based risk data sharing system, the system comprising:
user nodes, sharing nodes and request nodes;
the user node initiates a loan application to the request node;
the request node sends a loan history information query request to the sharing node and receives a query result;
the sharing node acquires a user node ID, calculates a hash value of the user node ID, and inquires historical loan information of the user node according to the hash value;
the sharing node acquires a user node historical loan amount private certificate;
the sharing node calculates the overdue amount private certificate and the overdue duration private certificate by using the private key and the historical loan information obtained by inquiry;
The sharing node builds a multiparty security certificate of overdue amount of the user node loan and a multiparty security certificate of overdue duration;
the sharing node shares the signature of the overdue multi-party security certificate, the overdue duration multi-party security certificate, the historical loan amount private certificate, the overdue duration private certificate and the user node loan submitting material to the requesting node;
the historical loan amount privacy credential calculation formula comprises:
c loan =r u G+v loan H
the overdue amount private certificate calculation formula comprises:
c overdue =r B G+v overdue H
the formula for calculating the privacy credential for the overdue duration comprises the following steps:
c d =r B G+d overdue H
wherein said r u For private key of user node, r is as follows B To share node private key, the v loan To inquire the loan amount in the acquired historical loan information, the v overdue The overdue amount of the user node in the historical loan information obtained by inquiring is d overdue For inquiring the overdue time length of the user node in the acquired historical loan information, G and H are elliptic curve base points, and c loan Private voucher for historical loan amount, said c overdue A private voucher for overdue amount, c d Privacy vouchers for the timeout period;
the formula for calculating the multi-party security evidence of the overdue duration comprises the following steps:
Figure QLYQS_4
Wherein f (x d ,y d ) Multiparty security evidence for overdue duration, x d For the overdue duration of the user node, the y d A timeout duration threshold for the requesting node;
the overdue amount multiparty safety certificate calculation formula comprises:
Figure QLYQS_5
wherein f (x v ,y v ) For overdue amount multiparty security certification, the x v For the overdue amount of the user node, y v A threshold value of overdue amount for the requesting node;
the sharing node comprises a multiparty security certificate construction unit;
the multiparty safety certificate construction unit generates a system public and private key pair through a homomorphic encryption key generation algorithm, and sends the system public key to a request node;
the multiparty security certificate construction unit encrypts each element in the shared node parameter set by utilizing a system public key according to a homomorphic encryption algorithm to generate a ciphertext set; the sharing node parameter set comprises a parameter true value and n-1 confusion values, wherein n is a positive integer greater than 1;
the multiparty security certificate construction unit sends the ciphertext set to a request node;
the request node generates a request node parameter set, wherein the request node parameter set comprises a threshold value true value corresponding to a parameter true value in a sharing node parameter set and n-1 confusion values;
The request node integrates and calculates elements in the request node parameter set and elements in the ciphertext set to obtain a set to be replaced;
the multiparty safety certificate construction unit receives a replaced set obtained by randomly replacing a set to be replaced, which is sent by the request node;
the multiparty safety certificate construction unit decrypts the replaced set to obtain a decryption result; the decryption result comprises a constructed multiparty security certificate;
the parameter true value in the sharing node parameter set comprises an overdue amount and an overdue duration, and the parameter true value in the request node parameter set comprises an overdue amount threshold and an overdue duration threshold; the multiparty security certificate comprises overdue amount multiparty security certificates and overdue duration multiparty security certificates;
the integrated calculation formula comprises:
E(z di )=E(x di -y di )
E(f di )=E(x di -2x di y di +y di )
E(s di )=E(s d(i-1) +f di ) Wherein s is d0 =0
E(r di )=E(z di +s di s d(i-1) )
Wherein, E (m) is the homomorphic encryption algorithm, encrypting plaintext m by using the system public key; said E (x) di ) For the ith element in the ciphertext set, the y di For the i-th element in the request node parameter set, the z di As a first intermediate variable, said f di As a second intermediate variable, said s di As a third intermediate variable, the E (r di ) An i element in the set to be replaced;
the random permutation calculation formula includes:
Figure QLYQS_6
wherein E (m) is the homomorphic encryption algorithm, x di To share the ith element in the node parameter set, the y di For the i-th element in the request node parameter set, the s di As a third intermediate variable, the E (r di ) For the i-th element in the set to be permuted, the E θ (r di ) And (3) the i element in the permuted set.
9. The system according to claim 8, wherein:
the sharing node comprises a loan information inquiry unit;
the loan information inquiry unit inquires the hash value through a bidirectional buffer linked list in a buffer, and the linked list pointer traverses the linked list in a clockwise and anticlockwise bidirectional circulation mode at the current position of the bidirectional circulation linked list;
if the hash value is found, extracting historical loan information of the user node corresponding to the hash value, and adding 1 to the access times of the position of the hash value;
if the hash value is not found after the bidirectional cycle traversal is performed for one week, accessing a database and extracting historical loan information of the user node in the database; and continuously moving the pointer of the bidirectional circular linked list in a bidirectional way, finding out the lowest cache position of the first access position, filling and replacing the hash value to the position, and adding 1 to the access times of the replaced position.
10. A system for loan auditing using the risk data sharing system of claim 8, characterized by:
the request node receives loan material information submitted by a user node according to a preset format;
the request node encrypts the loan material information and the loan material information signature by using a public key of the user node according to an asymmetric encryption algorithm to obtain a ciphertext, the ciphertext is stored in a distributed file system, and a hash value of the ciphertext is stored in a blockchain network; the loan material information signature is obtained by encrypting a private key of a user node;
the request node sends a user node ID to a sharing node, and receives processed loan information obtained by the sharing node according to a risk data sharing method; the processed loan information comprises overdue multi-party security evidence, overdue duration multi-party security evidence, historical loan amount private evidence, overdue duration private evidence and signature of loan materials submitted by a user node at a sharing node;
and the request node carries out auditing on the user node according to the received processed loan information, and judges whether to pay the money to the user node or not through a preset rule.
11. The system according to claim 10, wherein:
the system also comprises an identity authentication node, wherein the identity authentication node is used for receiving identity information of the user node, the sharing node, the request node and the audit node and distributing corresponding public and private key pairs and node IDs;
the identity authentication node registers the identity information provided by the user node and checks the identity information of the user node; if the verification is passed, a user ID and a public and private key pair of the user node are generated and distributed to the user node;
the identity authentication node registers enterprise qualification information provided by the sharing node, the request node and the audit node, and verifies the enterprise qualification information; after verification is passed, generating respective node ID and public and private key pairs for the sharing node, the requesting node and the auditing node, and distributing the node ID and the public and private key pairs to the corresponding nodes;
the identity authentication node registers the user ID, the sharing node ID, the request node ID and the audit node ID into the blockchain network.
12. The system according to claim 10, wherein:
the request node verifies the validity of the historical loan amount private certificate, the overdue amount private certificate and the overdue duration private certificate through a private certificate verification function;
The request node judges the overdue condition of the user node in the sharing node according to the overdue amount multiparty safety certificate and the overdue duration multiparty safety certificate;
the request node verifies the validity of submitting the loan material signature at the sharing node by the user node through the signature verification function;
and the request node comprehensively evaluates and decides whether to pay the loan according to the loan information of the user node.
13. The system according to claim 10, wherein:
the user node utilizes the private key of the user node and submits the loan amount in the loan material information to generate a loan amount private certificate;
the user node synthesizes the private key of the user node and the public key of the audit node into a re-encryption key, and encrypts the ciphertext through the re-encryption key to obtain a re-encryption ciphertext;
and the request node issues the loan amount private certificate and the re-encrypted ciphertext to a blockchain, and the auditing node verifies the validity of the loan information.
14. The system according to claim 13, wherein:
the auditing node decrypts the encrypted ciphertext by using the private key of the auditing node to obtain loan material information of the user node, a loan material information signature of the user node and a loan amount private certificate;
The auditing node verifies the validity of the signature of the user node through a signature verification function;
if the signature verification is valid, obtaining the loan amount of the user node through the loan material information of the user node, and constructing a certificate according to the user public key and the loan amount of the user node; if the construction certificate is equal to the loan amount private certificate, judging that the loan is valid;
construction certificate c θ The calculation formula comprises:
c θ =R A +vH
wherein c θ To construct the voucher, R A V is the loan amount of the user node, and H is the base point of the elliptic curve.
CN202010266336.8A 2020-04-07 2020-04-07 Risk data sharing method and system based on secure multiparty calculation and blockchain Active CN111611609B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010266336.8A CN111611609B (en) 2020-04-07 2020-04-07 Risk data sharing method and system based on secure multiparty calculation and blockchain

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010266336.8A CN111611609B (en) 2020-04-07 2020-04-07 Risk data sharing method and system based on secure multiparty calculation and blockchain

Publications (2)

Publication Number Publication Date
CN111611609A CN111611609A (en) 2020-09-01
CN111611609B true CN111611609B (en) 2023-05-23

Family

ID=72199342

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010266336.8A Active CN111611609B (en) 2020-04-07 2020-04-07 Risk data sharing method and system based on secure multiparty calculation and blockchain

Country Status (1)

Country Link
CN (1) CN111611609B (en)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112184219A (en) * 2020-09-22 2021-01-05 远光软件股份有限公司 Secure multiparty computing method, electronic device and storage medium
CN112884564B (en) * 2021-01-08 2022-09-09 四川新网银行股份有限公司 Real-time debt sharing risk management and control system and method based on multi-party security calculation
CN112613077B (en) * 2021-01-22 2021-07-23 支付宝(杭州)信息技术有限公司 Privacy-protecting multi-party data processing method, device and system
CN113449336B (en) * 2021-06-11 2022-11-04 电子科技大学 Shared data processing method based on safe multi-party privacy protection in block chain
CN113496436A (en) * 2021-07-08 2021-10-12 杭州煋辰数智科技有限公司 Wind control model parameter analysis method based on safe multi-party calculation and application thereof
CN113674077A (en) * 2021-07-23 2021-11-19 华南理工大学 Consumption credit risk prevention method, system, equipment and storage medium
CN113706145B (en) * 2021-08-02 2023-05-30 杭州复杂美科技有限公司 Proxy transaction method, device and storage medium for hiding transaction amount
CN113591131B (en) * 2021-08-20 2024-02-13 南京可信区块链与算法经济研究院有限公司 Loan amount calculation method for protecting user privacy
CN116862668B (en) * 2023-09-05 2023-11-24 杭州度言软件有限公司 Intelligent collecting accelerating method for improving collecting accelerating efficiency

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019159083A1 (en) * 2018-02-13 2019-08-22 Andrew Morabito Method and system for a value based attestation of counterparty credibility

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105373955B (en) * 2015-12-08 2020-07-10 布比(北京)网络技术有限公司 Digital asset processing method and device based on multiple signatures
US10521780B1 (en) * 2015-12-16 2019-12-31 United Services Automobile Association (Usaa) Blockchain based transaction management
CN113111388A (en) * 2017-03-31 2021-07-13 唐晓领 Method, device and system for sharing transaction metadata information by financing parties based on block chain
US20190114706A1 (en) * 2017-10-17 2019-04-18 SALT Lending Holdings, Inc. Blockchain oracle for managing loans collateralized by digital assets
CN107944887A (en) * 2017-12-14 2018-04-20 法信公证云(厦门)科技有限公司 A kind of personalized lending Risk Pre-control method based on block chain
CN108492175A (en) * 2018-03-28 2018-09-04 深圳市元征科技股份有限公司 A kind of financial credit risk control method and server
CN110490723A (en) * 2018-05-15 2019-11-22 全球智能股份有限公司 Loan administration method and system under block chain
CN110661610B (en) * 2018-06-29 2020-11-03 创新先进技术有限公司 Input acquisition method and device of secure multi-party computing protocol
CN109472690A (en) * 2018-10-25 2019-03-15 深圳壹账通智能科技有限公司 The loan measures and procedures for the examination and approval, device, storage medium and electronic equipment based on block chain
JP6647731B2 (en) * 2018-11-07 2020-02-14 アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited Managing blockchain sensitive transactions
CN110430161B (en) * 2019-06-27 2021-08-17 布比(北京)网络技术有限公司 Unsupervised data anonymous sharing method and system based on block chain

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019159083A1 (en) * 2018-02-13 2019-08-22 Andrew Morabito Method and system for a value based attestation of counterparty credibility

Also Published As

Publication number Publication date
CN111611609A (en) 2020-09-01

Similar Documents

Publication Publication Date Title
CN111611609B (en) Risk data sharing method and system based on secure multiparty calculation and blockchain
US11720891B2 (en) Method and system for zero-knowledge and identity based key management for decentralized applications
US10121143B1 (en) Method and system for blockchain-based combined identity, ownership, integrity and custody management
Mishra et al. Privacy protected blockchain based architecture and implementation for sharing of students’ credentials
US20190205875A1 (en) System and methods for validating and performing operations on homomorphically encrypted data
Nagaraju et al. Trusted framework for online banking in public cloud using multi-factor authentication and privacy protection gateway
JP6884642B2 (en) Computer implementation systems and methods for protecting sensitive data through data re-encryption
CN105743645A (en) PUF (Physical Unclonable Function)-based stream key generation device and method and data encryption and decryption method
Danezis et al. Towards ensuring client-side computational integrity
Niu et al. A third-party E-payment protocol based on quantum multi-proxy blind signature
Calhoun et al. Physical unclonable function (PUF)-based e-cash transaction protocol (PUF-Cash)
Alharbi et al. Survey on homomorphic encryption and address of new trend
KR20210102291A (en) Aggregation of encrypted network values
Srivastava et al. Attack resistant blockchain-based healthcare record system using modified RSA Algorithm
Poorvadevi et al. Enhancing distributed data integrity verification scheme in cloud environment using machine learning approach
Xiao et al. Quantum broadcasting multiple blind signature with constant size
CN110445756B (en) Method for realizing searchable encryption audit logs in cloud storage
Sangeetha et al. Development of novel blockchain technology for certificate management system using cognitive image steganography techniques
KR20210107750A (en) Avoid data manipulation by using multiple aggregation servers
Suwarjono et al. Cryptography Implementation for electronic voting security
Sniatala et al. Homomorphic Encryption
Saranya et al. A modified blowfish algorithm for improving the cloud security
Fun et al. Securing Big Data Processing with Homomorphic Encryption
Take et al. E-certificate generation using blockchain for p2p network: An overview
Parbat et al. Democracy in Your Hands!: Practical Multi-key Homomorphic E-Voting

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