Detailed Description
The technical solutions in the embodiments of the present disclosure will be clearly and completely described below with reference to the drawings in the embodiments of the present disclosure, and it is obvious that the described embodiments are only a part of the embodiments of the present disclosure, and not all of the embodiments. All other embodiments obtained by a person skilled in the art based on the embodiments in the present specification without any inventive step should fall within the scope of protection of the present specification.
The block chain is a distributed account book which organizes a plurality of data blocks in a chain structure according to the time sequence and ensures safety, traceability and non-falsification by a cryptographic algorithm. The blockchain may include a public blockchain, a federated blockchain (also referred to as a federation blockchain), a private blockchain, and so forth. The distributed ledger is maintained collectively by a plurality of node devices in a blockchain network. The block chain network is formed by a plurality of node devices through a consensus mechanism.
By deploying intelligent contracts (Smart contracts) in a blockchain, the blockchain can be made to function as intelligent contracts. The intelligent contract is a computer program capable of running on a node device of a blockchain network. The deployment of the smart contracts may be effected through transactions. For example, a business person may write an intelligent contract using a computer high-level language. Bytecodes can be obtained by compiling the written intelligent contract. Node devices of the blockchain may construct transactions to deploy the smart contract from the bytecode. The smart contracts may be deployed in blockchains by submitting transactions to deploy the smart contracts to blockchain networks.
Please refer to fig. 1 and fig. 2 together. The embodiment of the specification provides a data processing system based on a block chain.
In some embodiments, the data processing system may include a terminal device, a traffic server, and a blockchain network.
The data processing system may include one or more user-oriented terminal devices. The terminal device includes but is not limited to a smart phone, a tablet electronic device, a portable computer, a desktop computer, a smart wearable device, and the like.
The data processing system may include a plurality of business servers set up by a plurality of institutions. The organization is capable of providing services to users. For example, the institution may be a financial institution (e.g., a banking institution, a third party payment institution, etc.) that is capable of providing debit and credit services to the user. Alternatively, the establishment may be an enterprise capable of providing shopping services to users. The service server may be a single server, a server cluster composed of a plurality of servers, or a server deployed in the cloud.
The blockchain network may include a plurality of node devices. The plurality of node devices may be set up by all of the plurality of institutions. For example, the data processing system may include business server A1, business server B1, and business server C1. The blockchain network may include node device a2, node device B2, and node device C2. Service server a1 and node device a2 are set up by institution a, service server B1 and node device B2 are set up by institution B, and service server C1 and node device C2 are set up by institution C. Alternatively, the plurality of node apparatuses may also be set up by some of the plurality of institutions. In this way, some organizations can only set up the service server without setting up node equipment, thereby lightening the economic burden of part of organizations. For example, the data processing system may include business server A1, business server B1, business server C1, and business server D. The blockchain network may include node device a2, node device B2, and node device C2. Service server a1 and node device a2 are set up by institution a, service server B1 and node device B2 are set up by institution B, service server C1 and node device C2 are set up by institution C, and service server D is set up by institution D.
One or more node devices in the blockchain network may locally set a ciphertext set. The set of ciphertexts may include a user identification and a user identification cipher text. And the user identification in the ciphertext set and the user identification ciphertext have a corresponding relation. The corresponding relationship between the user identifier and the user identifier ciphertext may be: the user identification ciphertext is obtained by encrypting the user identification. The user identifier is used for identifying the user, and can be a mobile phone number, an identity card number, an electronic mailbox or the like of the user.
Each terminal device may communicate with some or all of the plurality of service servers. Each service server may communicate with one or more node devices agreed upon in the blockchain network. The service server and the node device having the agreed relationship may be set up by the same organization, or may be set up by different organizations. Continuing with the previous example, service server a1 and service server D may communicate with an agreed upon node device a2, service server B1 may communicate with an agreed upon node device B2, and service server C1 may communicate with an agreed upon node device C2.
In some embodiments, the terminal device may send a service application request to a service server (hereinafter referred to as a first service server). For example, the terminal device may install an application. The user can perform service application operation through the application program. The terminal device may send a service application request to the first service server after detecting the service application operation. The service application request may include a user identifier (hereinafter referred to as a first user identifier). The first user identifier may be used to identify the user, and specifically may be a mobile phone number, an identification number, an email, or the like of the user. The service application request may be a loan application request or a credit card application request, etc. The first service server may receive the service application request; a service may be provided to the user. In order to evaluate the risk condition of the user, the first service server may further send a service application number query request to an appointed node device (hereinafter, referred to as a first node device). The service application frequency query request may include the first user identifier. The service application frequency query request can be a loan application frequency query request, or a credit card application frequency query request, and the like.
The first node device may receive the service application number query request. The first node device may determine a query time corresponding to the service application number query request as a first time. Specifically, the first node device may obtain a current time as a first time. The current time may be a time when the first node device receives the service application frequency query request. Or, the service application number query request may further include a time. The first node device may obtain a time in the service application number query request as a first time.
The first node device may encrypt the first user identifier by using its own key to obtain a first user identifier ciphertext; the first subscriber identity cryptogram and the first time may be stored on a blockchain. The first node device may further store the first user identifier ciphertext and the first user identifier in a local ciphertext set in a corresponding manner. Specifically, the first node device may use the first user identifier ciphertext as a user identifier ciphertext in a ciphertext set, and may use the first user identifier as a user identifier in the ciphertext set.
Other node devices (hereinafter referred to as second node devices) in the blockchain network can obtain a first user identification ciphertext and a first time from a blockchain; the first user identification ciphertext can be encrypted by using a self key to obtain a second user identification ciphertext; the second subscriber identity cryptogram, the first subscriber identity cryptogram and the first time instant may be stored on the blockchain. Of course, the first node device may also encrypt the first user identification ciphertext by using its own key to obtain a second user identification ciphertext; the second subscriber identity cryptogram, the first subscriber identity cryptogram and the first time instant may be stored on the blockchain. Therefore, each node device in the block chain can encrypt the first user identification ciphertext by using the key of the node device to obtain a second user identification ciphertext; the second subscriber identity cryptogram, the first subscriber identity cryptogram and the first time instant may be stored on the blockchain. It should be noted that the keys of different node devices in the block chain network are different, and thus, different node devices encrypt the first user identification ciphertext to obtain different second user identification ciphertext.
In some embodiments, the first node device may obtain, according to the first user identification ciphertext, a corresponding third user identification ciphertext from a blockchain; acquiring a corresponding second moment from the block chain according to a third user identification ciphertext; determining the service application times of the first user identifier according to the number of the second time; the service application times of the first subscriber identity may be sent to the first service server. Specifically, the block chain stores a second user identifier ciphertext, a first user identifier ciphertext, and a first time that have a correspondence. The first node device may obtain at least one second user identification ciphertext from the blockchain as a third user identification ciphertext according to the first user identification ciphertext. The first node device may obtain at least one first time from the block chain as a second time according to the third user identification ciphertext.
The first service server may receive the number of service applications of the first subscriber identity; the risk condition of the user can be evaluated according to the service application times of the first user identifier; early warning can be carried out according to the risk condition. For example, when the number of service applications is less than or equal to a preset threshold, the first service server may evaluate the risk condition of the user as low risk. When the service application times are greater than the preset threshold value, the first service server can evaluate the risk condition of the user as high risk; reminder information may be generated. The reminding information is used for reminding business personnel of the risk condition of the user.
In some embodiments, the second node device may further obtain, from a local ciphertext set, a second user identifier and a fourth user identifier ciphertext that correspond to each other; acquiring a corresponding fifth user identification ciphertext from the blockchain according to the fourth user identification ciphertext; acquiring a corresponding third moment from the block chain according to the fifth user identification ciphertext; determining the number of service application times of the second user identifier according to the number of the third time; the number of service applications of the second subscriber identity may be transmitted to an agreed service server (hereinafter, referred to as a second service server). Specifically, the ciphertext of the second node device centrally stores the user identifier and the user identifier ciphertext having a corresponding relationship. The second node device may obtain the user identifier and the user identifier ciphertext from the local ciphertext set, may use the obtained user identifier as the second user identifier, and may use the obtained user identifier ciphertext as the fourth user identifier ciphertext. In addition, a second user identification ciphertext, a first user identification ciphertext and a first time which have a corresponding relation are stored in the block chain. The second node device may obtain at least one second subscriber identity ciphertext from the blockchain as a fifth subscriber identity ciphertext according to the fourth subscriber identity ciphertext. The second node device may obtain at least one first time from the block chain as a third time according to the fourth user identifier ciphertext. In addition, the fourth user identification ciphertext and the first user identification ciphertext may be user identification ciphertexts. The fifth user identification ciphertext, the third user identification ciphertext, and the second user identification ciphertext may be ciphertexts of a user identification ciphertext.
The second service server may receive the number of service applications of the second user identifier; the risk condition of the user can be evaluated according to the service application times of the second user identifier; early warning can be carried out according to the risk condition of the user. The process of the second business server evaluating the risk condition is similar to the process of the first business server evaluating the risk condition. Therefore, when a certain node device in the blockchain network receives a service application frequency query request aiming at the first user identifier and further determines the service application frequency of the first user identifier so as to perform early warning on the first user identifier, other node devices in the blockchain network can determine the service application frequency of the second user identifier so as to perform early warning on the second user identifier. The second subscriber identity and the first subscriber identity may be the same or different.
In some embodiments, the blockchain may be pre-deployed with intelligent contracts, such that node devices in the blockchain network may perform storage operations by invoking the intelligent contracts. For example, the first node device may store a first user identification ciphertext and a first time on the blockchain by invoking the intelligent contract. As another example, the first node device may store the second user identification ciphertext, the first user identification ciphertext, and the first time on the block chain by invoking the intelligent contract. As another example, the second node device may store the second user identification ciphertext, the first user identification ciphertext, and the first time on the block chain by invoking the intelligent contract. By deploying intelligent contracts in the block chain in advance, node equipment can be dynamically added in the block chain network, and a new mechanism can be added into the data processing system conveniently.
An example of a multi-headed loan scenario for an embodiment of the present specification is described below.
The multi-headed loan may refer to the borrower applying for a loan at 2 or more financial institutions. The blockchain-based data processing system may include a borrower's terminal device, a service server a1 set up by financial institution a, a node device a2 set up by financial institution a, a service server B1 set up by financial institution B, a node device B2 set up by financial institution B, a service server C1 set up by financial institution C, and a node device C2 set up by financial institution C. The node device a2, the node device B2, and the node device C2 may construct a blockchain network based on a blockchain technique.
In the initial state, no borrower makes a loan application to financial institution a, financial institution B, and financial institution C. The ciphertext sets of node device A2, node device B2, and node device C2 are all empty sets. There is no content stored on the blockchain.
In the present scenario example, at time t1, the borrower Alice wishes to make a loan application to financial institution A. The borrower Alice can install an application program issued by the financial institution A in the terminal equipment; the loan application operation may be performed by an application. The terminal device may send a loan application request to the service server a1 after detecting a loan application operation by the borrower Alice. The loan application request may include a user identification uid of the borrower Alice. The service server a1 may receive a loan application request; the borrower Alice may be provided with a borrowing service. To assess the risk of the borrower Alice, the service server a1 may also send a query request query1 to the node device a 2. The query request query1 may include a user identification uid.
Node device A2 may receive a query request query 1; the current time t1 can be obtained as the time corresponding to the query request query 1; the user identifier uid can be encrypted by using the own key a to obtain a user identifier ciphertext uida(ii) a User identification ciphertext uidaAnd time t1 is stored on the blockchain. In addition, node device a2 may also encrypt the user identification uidaAnd the ciphertext set which is stored locally corresponding to the user identifier uid.
Node device a2 may use its own key a to identify the secret uid to the useraEncrypting to obtain user identification ciphertext uidaa(ii) a User identification ciphertext uidaaUser identification ciphertext uidaAnd time t1 is stored on the blockchain. Node device B2 may obtain user identification ciphertext uid from the blockchainaAnd time t 1; user identification ciphertext uid can be identified by using own key baEncrypting to obtain user identification ciphertext uidab(ii) a The user identification ciphertext uidabUser identification ciphertext uidaAnd time t1 is stored on the blockchain. Similarly, node device C2 may obtain user identification ciphertext uid from the blockchainaAnd time t 1; user identification ciphertext uid can be identified by using own secret key caEncrypting to obtain user identification ciphertext uidac(ii) a User identification ciphertext uidacUser identification ciphertext uidaAnd time t1 is stored on the blockchain.
Node device a2 may be based on the user identification ciphertext uidaAnd acquiring corresponding user identification ciphertext uid from the blockchainaa、uidab、uidac(ii) a Can be based on the user identification ciphertext uidaaObtaining a corresponding time t1 from the block chain; can be based on the user identification ciphertext uidabObtaining a corresponding time t1 from the block chain; can be based on the user identification ciphertext uidacThe corresponding time t1 is obtained from the block chain. Since a time t1 is obtained from the block chain, the node apparatus a2 may determine that the number of service applications of the user identifier uid is 1. The node device a2 may send the service application number 1 to the service server a 1. The service server a1 may receive the service application number 1. The business server a1 may evaluate the risk profile of the user identification uid as low risk.
After time t1, the ciphertext set of node device A2 may be as shown in Table 1 below. The ciphertext set of node device B2 may be as shown in table 2 below. The ciphertext set of node device C2 may be as shown in table 3 below. The contents stored on the blockchain are shown in table 4 below.
TABLE 1
User identification
|
User identification ciphertext
|
Uid
|
uida |
TABLE 2
User identification
|
User identification ciphertext
|
|
|
TABLE 3
User identification
|
User identification ciphertext
|
|
|
TABLE 4
In Table 4, the contents of line 2 (uid)aT1) to line 5 (uid)ac、uidaT1) may each be considered as a transaction in the blockchain. The contents of row 2 may be stored in one data chunk of a chunk chain. The contents of line 3 to line 5 may be stored in one data chunk of the chunk chain, or may be stored in different data chunks of the chunk chain.
In this scenario example, at time t2, the borrower Alice again wishes to make a loan application to financial institution B. The borrower Alice can install an application program issued by the financial institution B in the terminal equipment; the loan application operation may be performed by an application program. The terminal device may send a loan application request to the service server B1 after detecting a loan application operation by the borrower Alice. The loan application request may include a user identification uid of the borrower Alice. The service server B1 may receive a loan application request; the borrower Alice may be provided with a borrowing service. To assess the risk of the borrower Alice, the service server B1 may also send a query request 2 to the node device B2. The query request query2 may include a user identification uid.
Node B2 may receive a query request query 2; the current time t2 can be obtained as the corresponding time of the query request query 2; the user identifier uid can be encrypted by using the own key b to obtain a user identifier ciphertext uidb(ii) a User identification ciphertext uidbAnd time t2 is stored on the blockchain. In addition, node device B2 may encrypt the user identification uidbAnd the ciphertext set which is stored locally corresponding to the user identifier uid.
Node B2 may use its own key B to identify the secret uid to the userbEncrypting to obtain user identification ciphertext uidbb(ii) a User identification ciphertext uidbbUser identification ciphertext uidbAnd time t2 is stored on the blockchain. Node device a2 may be obtained from a blockchainUser identification ciphertext uidbAnd time t 2; user identification ciphertext uid can be identified by using own secret key abEncrypting to obtain user identification ciphertext uidba(ii) a User identification ciphertext uidbaUser identification ciphertext uidbAnd time t2 is stored on the blockchain. Similarly, node device C2 may obtain user identification ciphertext uid from the blockchainbAnd time t 2; user identification ciphertext uid can be identified by using own secret key cbEncrypting to obtain user identification ciphertext uidbc(ii) a User identification ciphertext uidbcUser identification ciphertext uidbAnd time t2 is stored on the blockchain.
Node device B2 may be based on the user identification ciphertext uidbAnd acquiring corresponding user identification ciphertext uid from the blockchainba、uidbb、uidbc(ii) a Can be based on the user identification ciphertext uidbaObtaining respective times t2 and t1 from the blockchain; can be based on the user identification ciphertext uidbbObtaining a corresponding time t2 from the block chain; can be based on the user identification ciphertext uidbcThe corresponding time t2 is obtained from the block chain. Since two times t1 and t2 are obtained from the blockchain, the node B2 may determine that the number of service applications of the user identifier uid is 2. The node device B2 may send the service application number 2 to the service server B1. The service server B1 may receive the service application number 2. The business server B1 may evaluate the risk situation of the user identification uid as low risk.
In addition, the node device a2 may also obtain the user identification uid and the user identification ciphertext uid corresponding to each other from the local ciphertext seta(ii) a Can be based on the user identification ciphertext uidaAnd acquiring corresponding user identification ciphertext uid from the blockchainaa、uidab、uidac(ii) a Can be based on the user identification ciphertext uidaaObtaining a corresponding time t1 from the block chain; can be based on the user identification ciphertext uidabObtaining respective times t2 and t1 from the blockchain; can be based on the user identification ciphertext uidacThe corresponding time t1 is obtained from the block chain. Since two are obtained from the block chainAt times t1 and t2, node device a2 may determine that the number of service applications for the user identifier uid is 2. The node device a2 may send the service application number 2 to the service server a 1. The service server a1 may receive the service application number 2. The business server a1 may evaluate the risk profile of the user identification uid as low risk.
After time t2, the ciphertext set of node device A2 may be as shown in Table 5 below. The ciphertext set of node device B2 may be as shown in table 6 below. The ciphertext set of node device C2 may be as shown in table 7 below. The contents stored on the blockchain are shown in table 8 below.
TABLE 5
User identification
|
User identification ciphertext
|
uid
|
uida |
TABLE 6
User identification
|
User identification ciphertext
|
uid
|
uidb |
TABLE 7
TABLE 8
In Table 8, the contents (uid) of row 2aT1) to line 9 (uid)bc、uidbT2) may each be considered as a transaction in the blockchain. The contents of row 2 may be stored in one data chunk of a chunk chain. The contents of line 3 to line 5 may be stored in one data chunk of the chunk chain, or may be stored in different data chunks of the chunk chain. The contents of row 6 may be stored in one data chunk of a chunk chain. The contents of line 7 to line 9 may be stored in one data chunk of the chunk chain, or may be stored in different data chunks of the chunk chain. In addition, the user identification ciphertext uidabAnd user identification ciphertext uidbaAre equal.
In this scenario example, at time t3, the borrower Alice again wishes to make a loan application to financial institution C. The borrower Alice can install an application program issued by the financial institution C in the terminal equipment; the loan application operation may be performed by an application. The terminal device may send a loan application request to the service server C1 after detecting the loan application operation of the borrower Alice. The loan application request may include a user identification uid of the borrower Alice. The service server C1 may receive a loan application request; the lending service may be provided to the borrower Alice. In order to evaluate the risk condition of the borrower Alice, the service server C1 may also send a query request 3 to the node device C2. The query request query3 may include a user identification uid.
Node device C2 mayTo receive query request query 3; the current time t3 can be obtained as the corresponding time of the query request query 3; the user identifier uid can be encrypted by using the own secret key c to obtain a user identifier ciphertext uidc(ii) a User identification ciphertext uidcAnd time t3 is stored on the blockchain. In addition, the node device C2 may also encrypt the user identification uidcAnd the ciphertext set which is stored locally corresponding to the user identifier uid.
Node device C2 may use its own key C to identify the user identification ciphertext uidcEncrypting to obtain user identification ciphertext uidcc(ii) a User identification ciphertext uidccUser identification ciphertext uidcAnd time t3 is stored on the blockchain. Node device a2 may obtain user identification ciphertext uid from blockchaincAnd time t 3; user identification ciphertext uid can be identified by using own secret key acEncrypting to obtain user identification ciphertext uidca(ii) a User identification ciphertext uidcaUser identification ciphertext uidcAnd time t3 is stored on the blockchain. Similarly, node device B2 may obtain user identification ciphertext uid from the blockchaincAnd time t 3; user identification ciphertext uid can be identified by using own secret key bcEncrypting to obtain user identification ciphertext uidcb(ii) a User identification ciphertext uidcbUser identification ciphertext uidcAnd time t3 is stored on the blockchain.
Node device C2 may be configured to generate a user identification ciphertext uidcAnd acquiring corresponding user identification ciphertext uid from the blockchainca、uidcb、uidcc(ii) a Can be based on the user identification ciphertext uidcaObtaining respective times t3 and t1 from the blockchain; can be based on the user identification ciphertext uidcbObtaining respective times t3 and t2 from the blockchain; can be based on the user identification ciphertext uidccThe corresponding time t3 is obtained from the block chain. Since three times t1, t2, and t3 are obtained from the block chain, the node apparatus C2 may determine that the number of service applications of the user identifier uid is 3. The node apparatus C2 may send the service application number 2 to the service server C1. Business serverC1 may receive service application number 3. The business server C1 may evaluate the risk profile of the user identification uid as high risk.
After time t3, the ciphertext set of node device A2 may be as shown in Table 9 below. The ciphertext set of node B2 may be as shown in table 10 below. The ciphertext set of node device C2 may be as shown in table 11 below. The contents stored on the blockchain may be as shown in table 12 below.
TABLE 9
User identification
|
User identification ciphertext
|
uid
|
uida |
Watch 10
User identification
|
User identification ciphertext
|
uid
|
uidb |
TABLE 11
User identification
|
User identification ciphertext
|
uid
|
uidc |
TABLE 12
In Table 12, the contents (uid) of row 2aT1) to line 13 (uid)cb、uidcT3) may each be considered as a transaction in the blockchain. The contents of row 2 may be stored in one data chunk of a chunk chain. The contents of line 3 to line 5 may be stored in one data chunk of the chunk chain, or may be stored in different data chunks of the chunk chain. The contents of row 6 may be stored in one data chunk of a chunk chain. The contents of line 7 to line 9 may be stored in one data chunk of the chunk chain, or may be stored in different data chunks of the chunk chain. The contents of row 10 may be stored in one data chunk of a chunk chain. The contents of line 11 to line 13 may be stored in one data chunk of the chunk chain, or may be stored in different data chunks of the chunk chain. In addition, the user identification ciphertext uidabAnd user identification ciphertext uidbaAre equal. User identification ciphertext uidacAnd user identification ciphertext uidcaAre equal. User identification ciphertext uidbcAnd user identification ciphertext uidcbAre equal.
The embodiment of the specification further provides a data processing method based on the block chain. The data processing method can be applied to node equipment in a block chain network. The following describes the data processing method in detail by taking the example that the data processing method is applied to the first node device. Referring to fig. 3, the data processing method may include the following steps.
Step S101: and acquiring a service application frequency query request, wherein the service application frequency query request comprises a user identifier.
In some embodiments, the service application number query request may be a loan application number query request or a credit card application number query request. The service application times inquiry request may include a user identifier. The user identifier may be used to identify a user, and specifically may be a mobile phone number, a user identifier, an email, or the like of the user. Of course, the service application number query request may further include other information, such as a time of day.
In some embodiments, the first node device may receive a service application number query request sent by a service server. For example, the terminal device may install an application. The user can perform service application operation through the application program. The terminal device may send a service application request to the service server after detecting the service application operation. The service application request may include a user identification of the user. The service server can receive the service application request; a service may be provided to the user. In order to evaluate the risk condition of the user, the service server may further send a service application number query request to the first node device. The service application times query request may include the user identifier.
Step S103: and encrypting the user identification by using the own secret key to obtain a first user identification ciphertext.
In some embodiments, the first node device may encrypt the user identifier by using an encryption algorithm to obtain a first user identifier ciphertext. The encryption algorithm may have an alternation. The alternation means that: using cryptographic algorithms, based on two or moreThe encryption key is used for carrying out iterative encryption on the plaintext data, and the encryption result is the same as the encryption result of the iterative encryption on the plaintext data according to two or more encryption keys after the sequence is changed. For example, using an encryption algorithm, plaintext data e is iteratively encrypted according to encryption keys k1 and k2 to obtain an encryption result ek1k2And carrying out iterative encryption on the plaintext data e according to the encryption keys k2 and k1 to obtain an encryption result ek2k1. Then, ek1k2=ek2k1。
The encryption algorithm may be a symmetric encryption algorithm. The symmetric encryption algorithm includes but is not limited to DES algorithm, AES algorithm, IDEA algorithm, and the like. The key may be a key of a symmetric encryption algorithm. Alternatively, the encryption algorithm may also be an asymmetric encryption algorithm. The asymmetric encryption algorithm includes, but is not limited to, RSA algorithm and ECC (Elliptic Curve Cryptography), etc. The key may be a private key of an asymmetric cryptographic algorithm.
In some embodiments, the first node device may further store the first user identifier ciphertext and the user identifier correspondence in a local ciphertext set. Specifically, the first node device may use the first user identification ciphertext as a user identification ciphertext in a ciphertext set; the user identifier may be used as a user identifier in the ciphertext set. In this way, the ciphertext set of the first node device may include the user identifier and the user identifier ciphertext having a corresponding relationship. The corresponding relationship between the user identifier and the user identifier ciphertext may be: the user identification ciphertext is obtained by encrypting the user identification.
Step S105: storing a first user identification ciphertext and a first moment on a block chain by taking the query moment corresponding to the service application frequency query request as the first moment; and other node equipment in the block chain network can conveniently acquire the first user identification ciphertext and the first moment from the block chain, encrypt the first user identification ciphertext by using a self key to acquire a second user identification ciphertext, and store the second user identification ciphertext, the first user identification ciphertext and the first moment on the block chain.
In some embodiments, the first node device may determine, as the first time, a time corresponding to the service application number query request. Specifically, the first node device may obtain a current time as a first time. The current time may be a time when the first node device receives the query request for the number of service applications. Or, the service application number query request may include a time. The first node device may obtain a time in the service application number query request as a first time.
In some embodiments, the first node device may construct a first transaction with a first user identification ciphertext and a first time according to a transaction format supported by a blockchain; the first transaction may be broadcast in a blockchain network. Each node device in the blockchain network may perform consensus processing on the first transaction. After the consensus is achieved, the first transaction is packaged into a data block by the node equipment with the accounting authority in the block chain network, and the data block is added into the block chain.
After storing the first subscriber identity ciphertext and the first time on the blockchain, other node devices (hereinafter referred to as second node devices) in the blockchain network may obtain the first subscriber identity ciphertext and the first time from the blockchain; the first user identification ciphertext can be encrypted by using a self key to obtain a second user identification ciphertext; the second subscriber identity cryptogram, the first subscriber identity cryptogram and the first time instant may be stored on the blockchain. Specifically, the number of the second node devices may be one or more. Each second node device may obtain a first user identification ciphertext and a first time from the block chain; the first user identification ciphertext can be encrypted by using a self key to obtain a second user identification ciphertext; a second transaction can be constructed by utilizing the second user identification ciphertext, the first user identification ciphertext and the first moment according to the transaction format supported by the block chain; the second transaction may be broadcast in a blockchain network. Each node device in the blockchain network may perform consensus processing on the second transaction. And after the consensus is achieved, the node equipment with the accounting authority in the block chain network packs the second transaction into a data block, and the data block is added into the block chain.
In some embodiments, the first node device may also encrypt the first user identification ciphertext using a key of the first node device to obtain a second user identification ciphertext; the second subscriber identity cryptogram, the first subscriber identity cryptogram and the first time instant may be stored on the blockchain. In this way, each node device in the block chain can encrypt the first user identification ciphertext by using the key of the node device to obtain a second user identification ciphertext; the second subscriber identity cryptogram, the first subscriber identity cryptogram and the first time instant may be stored on the blockchain. It should be noted that the keys of different node devices in the block chain network are different, and thus, different node devices encrypt the first user identification ciphertext to obtain different second user identification ciphertext.
Step S107: and acquiring a corresponding third user identification ciphertext from the block chain according to the first user identification ciphertext.
In some embodiments, the blockchain stores a second user identification ciphertext, a first user identification ciphertext and a first time. The first node device may obtain at least one second user identification ciphertext from the blockchain as a third user identification ciphertext according to the first user identification ciphertext. The third user identification ciphertext obtained by the first node device may include the second user identification ciphertext obtained by encrypting with the key of the second node device in step S105, or may also include the second user identification ciphertext obtained by encrypting with the key of the first node device in step S105.
Step S109: and acquiring a corresponding second moment from the block chain according to the third user identification ciphertext.
In some embodiments, the blockchain stores a second user identification ciphertext, a first user identification ciphertext and a first time. For each obtained third user identification ciphertext, the first node device may obtain, as the second time, at least one first time from the block chain according to the third user identification ciphertext.
Step S111: and determining the service application times of the user identification according to the number of the second time.
In some embodiments, the second time instants obtained according to different third user identification ciphertexts may be the same, or may be different, or may be partially the same. The first node device may perform deduplication processing at a second time obtained from the blockchain; the number of service application times of the user identifier may be determined according to the number of the second time after the deduplication processing. For example, the first node device may use the number of the second time after the deduplication processing as the number of service application times of the user identifier.
Step S113: and sending the service application times of the user identification.
In some embodiments, the first power saving device may feed back the number of service applications of the user identifier to a service server. The service server can receive the service application times of the user identification; the risk condition of the user can be evaluated according to the service application times of the user identification; early warning can be carried out according to the risk condition.
For example, when the number of service applications is less than or equal to a preset threshold, the service server may evaluate the risk condition of the user as low risk. When the service application times are greater than the preset threshold value, the service server can evaluate the risk condition of the user as high risk; reminder information may be generated. The reminding information is used for reminding business personnel of the risk condition of the user.
The data processing method in the embodiments of the present description can determine the service application times of the user according to the number of times obtained from the block chain, and ensure the correctness of the obtained service application times.
The embodiment of the specification also provides another data processing method based on the block chain. The data processing method can be applied to node equipment in a block chain network. The data processing method is described in detail below by taking the example that the data processing method is applied to the second node device. Referring to fig. 4, the data processing method may include the following steps.
Step S201: and acquiring a first user identification ciphertext and a first time which correspond to each other from the block chain.
In some embodiments, a first node device in the blockchain network may obtain a service application times query request, where the service application times query request includes a user identifier. The first node device can encrypt the user identifier by using a key of the first node device to obtain a first user identifier ciphertext; the query time corresponding to the service application number query request may be used as a first time, and the first user identification ciphertext and the first time may be stored in the block chain. The specific process is shown in step S101-step S105.
After the first node device stores the first user identification ciphertext and the first time on the block chain, the block chain is added with the first user identification ciphertext and the first time. The second node device may obtain the newly added first user identifier ciphertext and the first time from the blockchain.
Step S203: and encrypting the first user identification ciphertext by using the own secret key to obtain a second user identification ciphertext.
In some embodiments, the process of the second node device encrypting the first user identification ciphertext by using its own key may refer to the process of the first node device encrypting the first user identification ciphertext by using its own key in step S103.
Step S205: storing the second user identification ciphertext, the first user identification ciphertext and the first moment in the block chain; and other node equipment in the block chain network can conveniently acquire a corresponding third user identification ciphertext from the block chain according to the first user identification ciphertext, acquire a corresponding second moment from the block chain according to the third user identification ciphertext, and determine the service application times of the first user identification according to the number of the second moments, wherein the first user identification is the user identification corresponding to the first user identification ciphertext.
In some embodiments, the second node device may construct a second transaction using the second user identification ciphertext, the first user identification ciphertext, and the first time according to a transaction format supported by the blockchain; the second transaction may be broadcast in a blockchain network. Each node device in the blockchain network may perform consensus processing on the second transaction. And after the consensus is achieved, the node equipment with the accounting authority in the block chain network packs the second transaction into a data block, and the data block is added into the block chain. In this way, the first node device may obtain a corresponding third user identification ciphertext from the blockchain according to the first user identification ciphertext; acquiring a corresponding second moment from the block chain according to the third user identification ciphertext; the number of service applications of the first subscriber identity may be determined according to the number of the second time instants. And the first user identification is the user identification corresponding to the first user identification ciphertext. The specific process can be seen from step S107 to step S111.
In some embodiments, the second node device may further obtain, from a local ciphertext set, a second user identifier and a fourth user identifier ciphertext that correspond to each other; acquiring a corresponding fifth user identification ciphertext from the blockchain according to the fourth user identification ciphertext; acquiring a corresponding third moment from the block chain according to the fifth user identification ciphertext; determining the number of service application times of the second user identifier according to the number of the third time; the service application times of the second user identifier may be sent to an agreed service server. The service server can receive the service application times of the second user identifier; the risk condition of the user can be evaluated according to the service application times of the second user identifier; early warning can be carried out according to the risk condition.
And the user identification ciphertext with the corresponding relation are stored in the ciphertext set of the second node device. The second node device may obtain the user identifier and the user identifier ciphertext from the local ciphertext set, may use the obtained user identifier as the second user identifier, and may use the obtained user identifier ciphertext as the fourth user identifier ciphertext. The fourth subscriber identity cryptogram may be the same as or different from the first subscriber identity cryptogram. The second subscriber identity may be the same or different from the first subscriber identity. In addition, a second user identification ciphertext, a first user identification ciphertext and a first time which have a corresponding relation are stored in the block chain. The second node device may obtain at least one second subscriber identity ciphertext from the blockchain as a fifth subscriber identity ciphertext according to the fourth subscriber identity ciphertext. The second node device may obtain at least one first time from the block chain as a third time according to the fourth user identifier ciphertext.
The process of the second node device obtaining the fifth user identification ciphertext from the block chain may refer to the process of the first node device obtaining the third user identification ciphertext from the block chain in step S107. The process of the second node device obtaining the third time from the block chain may refer to the process of the first node device obtaining the second time from the block chain in step S109. The process of determining the service application times of the second user identifier by the second node device may refer to the process of determining the service application times of the user identifier by the first node device in step S111.
The data processing method in the embodiments of the present description can determine the service application times of the user according to the number of times obtained from the block chain, and ensure the correctness of the obtained service application times.
Please refer to fig. 5. The specification also provides a data processing device based on the block chain. The data processing device can be applied to a node device in a block chain network and can comprise the following units.
A first obtaining unit 301, configured to obtain a service application frequency query request, where the service application frequency query request includes a user identifier;
an encrypting unit 303, configured to encrypt the user identifier by using a key of the user identifier, to obtain a first user identifier ciphertext;
a storage unit 305, configured to store the first user identifier ciphertext and the first time on the block chain by using a query time corresponding to the service application frequency query request as the first time; other node equipment in the block chain network can conveniently acquire a first user identification ciphertext and a first moment from the block chain, encrypt the first user identification ciphertext by using a self key to acquire a second user identification ciphertext, and store the second user identification ciphertext, the first user identification ciphertext and the first moment on the block chain;
a second obtaining unit 307, configured to obtain, according to the first user identifier ciphertext, a corresponding third user identifier ciphertext from the block chain;
a third obtaining unit 309, configured to obtain a corresponding second time from the block chain according to the third user identifier ciphertext;
a determining unit 311, configured to determine, according to the number of the second time, the number of service applications of the user identifier;
a sending unit 313, configured to send the service application times of the user identifier.
Please refer to fig. 6. The specification also provides a data processing device based on the block chain. The data processing device can be applied to a node device in a block chain network and can comprise the following units.
An obtaining unit 401, configured to obtain a first user identifier ciphertext and a first time from a block chain, where the first user identifier ciphertext and the first time correspond to each other;
an encrypting unit 403, configured to encrypt the first user identification ciphertext by using a key of the encrypting unit, to obtain a second user identification ciphertext;
a storage unit 405, configured to store the second user identifier ciphertext, the first user identifier ciphertext, and the first time on the block chain; and other node equipment in the block chain network can conveniently acquire a corresponding third user identification ciphertext from the block chain according to the first user identification ciphertext, acquire a corresponding second moment from the block chain according to the third user identification ciphertext, and determine the service application times of the first user identification according to the number of the second moments, wherein the first user identification is the user identification corresponding to the first user identification ciphertext.
Please refer to fig. 7. The embodiment of the specification also provides a computing device.
The computing device may include a memory and a processor.
In the present embodiment, the Memory includes, but is not limited to, a Dynamic Random Access Memory (DRAM), a Static Random Access Memory (SRAM), and the like. The memory may be used to store computer instructions.
In this embodiment, the processor may be implemented in any suitable manner. For example, the processor may take the form of, for example, a microprocessor or processor and a computer-readable medium that stores computer-readable program code (e.g., software or firmware) executable by the (micro) processor, logic gates, switches, an Application Specific Integrated Circuit (ASIC), a programmable logic controller, an embedded microcontroller, and so forth. The processor may be configured to execute the computer instructions to implement the embodiments corresponding to fig. 3 or fig. 4.
It should be noted that, in the present specification, each embodiment is described in a progressive manner, and the same or similar parts in each embodiment may be referred to each other, and each embodiment focuses on differences from other embodiments. In particular, for the apparatus embodiment and the computing device embodiment, since they are substantially similar to the method embodiment, the description is relatively simple, and reference may be made to some descriptions of the method embodiment for relevant points. In addition, it is understood that one skilled in the art, after reading this specification document, may conceive of any combination of some or all of the embodiments listed in this specification without the need for inventive faculty, which combinations are also within the scope of the disclosure and protection of this specification.
In the 90 s of the 20 th century, improvements in a technology could clearly distinguish between improvements in hardware (e.g., improvements in circuit structures such as diodes, transistors, switches, etc.) and improvements in software (improvements in process flow). However, as technology advances, many of today's process flow improvements have been seen as direct improvements in hardware circuit architecture. Designers almost always obtain the corresponding hardware circuit structure by programming an improved method flow into the hardware circuit. Thus, it cannot be said that an improvement in the process flow cannot be realized by hardware physical modules. For example, a Programmable Logic Device (PLD), such as a Field Programmable Gate Array (FPGA), is an integrated circuit whose Logic functions are determined by programming the Device by a user. A digital system is "integrated" on a PLD by the designer's own programming without requiring the chip manufacturer to design and fabricate application-specific integrated circuit chips. Furthermore, nowadays, instead of manually making an Integrated Circuit chip, such Programming is often implemented by "logic compiler" software, which is similar to a software compiler used in program development and writing, but the original code before compiling is also written by a specific Programming Language, which is called Hardware Description Language (HDL), and HDL is not only one but many, such as abel (advanced Boolean Expression Language), ahdl (alternate Hardware Description Language), traffic, pl (core universal Programming Language), HDCal (jhdware Description Language), lang, Lola, HDL, laspam, hardward Description Language (vhr Description Language), vhal (Hardware Description Language), and vhigh-Language, which are currently used in most common. It will also be apparent to those skilled in the art that hardware circuitry that implements the logical method flows can be readily obtained by merely slightly programming the method flows into an integrated circuit using the hardware description languages described above.
The systems, devices, modules or units illustrated in the above embodiments may be implemented by a computer chip or an entity, or by a product with certain functions. One typical implementation device is a computer. In particular, the computer may be, for example, a personal computer, a laptop computer, a cellular telephone, a camera phone, a smartphone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or a combination of any of these devices.
From the above description of the embodiments, it is clear to those skilled in the art that the present specification can be implemented by software plus a necessary general hardware platform. Based on such understanding, the technical solutions of the present specification may be essentially or partially implemented in the form of software products, which may be stored in a storage medium, such as ROM/RAM, magnetic disk, optical disk, etc., and include instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to execute the methods described in the embodiments or some parts of the embodiments of the present specification.
The description is operational with numerous general purpose or special purpose computing system environments or configurations. For example: personal computers, server computers, hand-held or portable devices, tablet-type devices, multiprocessor systems, microprocessor-based systems, set top boxes, programmable consumer electronics, network PCs, minicomputers, mainframe computers, distributed computing environments that include any of the above systems or devices, and the like.
This description may be described in the general context of computer-executable instructions, such as program modules, being executed by a computer. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. The specification may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote computer storage media including memory storage devices.
While the specification has been described with examples, those skilled in the art will appreciate that there are numerous variations and permutations of the specification that do not depart from the spirit of the specification, and it is intended that the appended claims include such variations and modifications that do not depart from the spirit of the specification.