A method, medium and system for preventing information leakage during telephone charge recharge process

By using pseudo-mantissa substitution and identity matrix encryption technology during the phone recharge process, the problem of insufficient encryption strength of recharge information in the existing technology is solved, efficient confidentiality of user information is achieved, and the risk of privacy leakage is significantly reduced.

CN118200905BActive Publication Date: 2025-01-21青岛网信信息科技有限公司
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202410297136.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-03-15
Publication Date
2025-01-21
Estimated Expiration
2044-03-15

AI Technical Summary

Technical Problem

In the process of recharge of phone bills, the encryption strength of recharge information is limited, and it is impossible to effectively ensure the confidentiality of user information, and there is a risk of privacy leakage.

Method used

By obtaining the user's recharge information and identity information, a pseudo mantissa is generated and replaced with the last four digits of the recharge number, combined with the identity matrix for encryption processing, to form an encrypted data, and transmit it to the bank together with the recharge data. The bank uses feature matching and linear equations to resolve the user's real recharge number.

Benefits of technology

It effectively isolates the way of leakage of private information. Even if the encrypted data is stolen, the user's real number cannot be parsed. It significantly improves the encryption strength of the recharge number and ensures the confidentiality of user information.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118200905B_ABST
    Figure CN118200905B_ABST
Patent Text Reader

Abstract

The invention provides a method, medium and system for preventing information leakage in a telephone charge recharging process, belonging to the technical field of information leakage prevention, and comprising: a terminal user recharging information acquisition module and a bank recharging module; wherein the terminal user recharging information module specifically performs the following steps: taking the last four digits of a recharging number as a true mantissa, temporarily storing the true mantissa, and establishing a four-digit pseudo mantissa, wherein the pseudo mantissa is obtained by randomly arranging four digits of the true mantissa, replacing the last four digits in the recharging number with the pseudo mantissa, and using the recharging information after the replacement operation as recharging data; splitting the true mantissa into an array in which each element corresponds to a single digit, recorded as a true mantissa array; extracting features from mobile phone identity information to obtain an identity matrix; filling the true mantissa array at multiple random positions in a first vector, and setting the remaining bits of the first vector to 0; and transmitting the product of the first vector and the identity matrix as encrypted data to a bank.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the technical field of information leakage prevention, and in particular, relates to a method, medium and system for preventing information leakage during a telephone charge recharging process. Background Art

[0002] With the rapid development of mobile Internet and e-commerce, more and more users choose to make various online payments through mobile phones, such as phone recharge, bill payment, etc. At the same time, since personal privacy information is easily stolen and abused, users' privacy security issues are increasingly valued.

[0003] At present, the common process of mobile phone recharge is: users fill in the recharge number and recharge amount on the mobile phone APP or website, and pay the corresponding fee. In this process, the user's recharge number, amount and other information need to be transmitted to the operator or service provider's server through the network, and then the server processes the recharge request. However, due to the openness and uncertainty of the network environment, the user's privacy information is very likely to be eavesdropped or intercepted during the transmission process, resulting in the risk of privacy leakage.

[0004] In order to protect user privacy, the prior art has proposed a variety of encryption and anonymization schemes. Among them, a common practice is to encrypt the user's recharge information and then transmit the encrypted data to the server. For example, the recharge number and amount can be encrypted using a symmetric encryption algorithm (such as AES) or an asymmetric encryption algorithm (such as RSA). Another approach is to use anonymization technology to replace the user's real identity information with a virtual identity or random identifier, thereby hiding the user's real identity.

[0005] Although existing technologies have improved the security of data transmission to a certain extent, and although the encryption strength of algorithms such as AES and RSA is relatively high, since the recharge information may pass through multiple suppliers before reaching the bank, this process is not absolutely safe and there is still a risk of being cracked. Once the key is leaked, the user's privacy information will also be exposed. Summary of the invention

[0006] In view of this, the present invention provides a method, medium and system for preventing information leakage during the phone charge recharge process, which can solve the problem that the encryption strength of the recharge information is limited during the phone charge recharge process in the prior art and the user information cannot be kept confidential.

[0007] The present invention is achieved in that:

[0008] The first aspect of the present invention provides a method for preventing information leakage during a telephone charge recharge process, which includes a terminal user recharge information acquisition module and a bank recharge module;

[0009] The terminal user recharge information acquisition module specifically performs the following steps:

[0010] S11, obtaining the collected information of the user during the mobile phone recharge process, including the filled recharge information and the mobile phone identity information, wherein the recharge information includes the recharge number and the recharge amount, and the mobile phone identity information is one of the authentication fingerprint, authentication voice or authentication face information;

[0011] S12, taking the last four digits of the recharge number as the true mantissa, temporarily storing the true mantissa, and creating a four-digit pseudo mantissa, wherein the pseudo mantissa is obtained by randomly arranging four digits of the true mantissa, and the pseudo mantissa is different from the true mantissa, and replacing the last four digits of the recharge number with the pseudo mantissa, and using the recharge information after the replacement operation as the recharge data;

[0012] S13, splitting the true mantissa into an array in which each element corresponds to a single digit, recorded as a true mantissa array, wherein the order of elements in the true mantissa array is the same as the order of digits in the true mantissa;

[0013] S14, extracting features from the mobile phone identity information to obtain an identity matrix;

[0014] S15, establishing a first vector, wherein the number of elements of the first vector is equal to the number of rows of the identity matrix, in which the true tail arrays are filled at multiple random positions, and all filled true tail arrays are not overlapped, and the remaining bits of the first vector are set to 0;

[0015] S16, taking the product of the first vector and the identity matrix as encrypted data, and transmitting the recharge data and the encrypted data to a bank;

[0016] The bank recharge module specifically performs the following steps:

[0017] S21, parsing the recharge data and the encrypted data from the received data;

[0018] S22, using the encrypted data to match with the identity matrix database stored in the bank, obtaining multiple authentication data features with the highest similarity as multiple parsed identity matrices;

[0019] S23, traversing the parsed identity matrix, and solving to obtain a vector equal to the encrypted data for multiplication with the parsed identity matrix as a target vector;

[0020] S24, if the four repeated digits in the target vector and the pseudo mantissa in the recharge data have the same digits, the four repeated digits in the target vector are used as the true mantissa for parsing, and the traversal is stopped;

[0021] S25, replacing the pseudo-decimals in the recharge data with the real decimals to obtain the parsed recharge number for recharging.

[0022] On the basis of the above technical solution, the method for preventing information leakage during the telephone charge recharge process of the present invention can also be improved as follows:

[0023] Among them, when the mobile phone identity information is fingerprint information, the step of extracting features from the mobile phone identity information uses a directional field algorithm, a Gabor filter algorithm or a wavelet transform algorithm as a fingerprint feature extraction algorithm to extract features from the original fingerprint image to obtain a fingerprint feature matrix.

[0024] Wherein, when the mobile phone identity information is voice information, the step of extracting features from the mobile phone identity information uses a Mel-frequency cepstral coefficient algorithm to extract features from the voice signal to obtain a voice feature matrix.

[0025] Among them, when the mobile phone identity information is facial information, the step of extracting features from the mobile phone identity information uses a principal component analysis algorithm or a face recognition algorithm based on deep learning to extract features from the facial image to obtain a facial feature matrix.

[0026] The number of the true tail array filled in the first vector is 20% to 40% of the number of elements in the vector.

[0027] Wherein, in the step of matching the encrypted data with the identity matrix database stored in the bank, the matching method is cosine similarity.

[0028] Among them, the step of solving a vector that is used to multiply the analytical identity matrix and is equal to the encrypted data as a target vector is specifically: when the analytical identity matrix is ​​a full rank matrix, the Gaussian elimination method is used to solve the linear equations; when the analytical identity matrix is ​​a sparse matrix, the Jacobi iteration method or the Gauss-Seidel iteration method is used to solve the linear equations.

[0029] Furthermore, in the step of solving a vector as a target vector for multiplying the parsed identity matrix with the encrypted data, a residual threshold ε is introduced. As long as the residual between the product of the target vector and the parsed identity matrix and the encrypted data is less than ε, they are considered equal. The value of ε is 1% to 5% of the encrypted data.

[0030] A second aspect of the present invention provides a computer-readable storage medium, wherein the computer-readable storage medium stores program instructions, and when the program instructions are executed, they are used to execute the above-mentioned method for preventing information leakage during a telephone charge recharging process.

[0031] A third aspect of the present invention provides a system for preventing information leakage during a phone charge recharging process, which includes the above-mentioned computer-readable storage medium.

[0032] Compared with the prior art, the method, medium and system for preventing information leakage in the process of telephone charge recharge provided by the present invention have the following beneficial effects: the present invention adopts a new privacy protection mechanism, which not only encrypts the user's recharge information, but also hides the last digit of the real recharge number in a random vector, thereby effectively isolating the path of privacy information leakage. Even if the encrypted data is stolen, the user's real number cannot be parsed out from it. In the entire telephone charge recharge business process, each supplier through which the recharge data passes cannot decrypt the last four digits of the recharged mobile phone number. Only the bank can decrypt it according to the user's authentication information, and the encryption and decryption do not adopt the commonly used inverse method, but adopt the random vector and similarity matching method to obtain it, which greatly improves the encryption strength of the recharge number and solves the problem that the encryption strength of the recharge information is limited in the process of telephone charge recharge in the prior art, and the user information cannot be kept confidential safely. BRIEF DESCRIPTION OF THE DRAWINGS

[0033] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the accompanying drawings required for use in the description of the embodiments of the present invention will be briefly introduced below. Obviously, the accompanying drawings in the following description are only some embodiments of the present invention. For ordinary technicians in this field, other accompanying drawings can be obtained based on these accompanying drawings without paying creative labor.

[0034] Figure 1 A flowchart of the steps executed by the module for acquiring the recharge information of the terminal user;

[0035] Figure 2 Flowchart of the steps executed for the bank recharge module. DETAILED DESCRIPTION

[0036] In order to make the purpose, technical solution and advantages of the embodiments of the present invention more clear, the technical solution in the embodiments of the present invention will be clearly and completely described below in conjunction with the accompanying drawings in the embodiments of the present invention.

[0037] like Figures 1-2 As shown, it is a flow chart of a method for preventing information leakage in a telephone charge recharge process provided by the present invention. The method comprises the following steps: wherein, it comprises a terminal user recharge information acquisition module and a bank recharge module;

[0038] The terminal user recharge information acquisition module specifically performs the following steps:

[0039] S11, obtaining the collected information of the user during the mobile phone recharge process, including the filled recharge information and the mobile phone identity information, wherein the recharge information includes the recharge number and the recharge amount, and the mobile phone identity information is one of the authentication fingerprint, authentication voice or authentication face information;

[0040] S12, taking the last four digits of the recharge number as the true mantissa, temporarily storing the true mantissa, and creating a four-digit pseudo mantissa, the pseudo mantissa being obtained by randomly arranging the four digits of the true mantissa, the pseudo mantissa being different from the true mantissa, replacing the last four digits of the recharge number with the pseudo mantissa, and using the recharge information after the replacement operation as the recharge data;

[0041] S13, split the true mantissa into an array in which each element corresponds to a single digit, recorded as the true mantissa array, and the order of the elements in the true mantissa array is the same as the order of the digits in the true mantissa;

[0042] S14, extracting features from the mobile phone identity information to obtain an identity matrix;

[0043] S15, establishing a first vector, the number of elements of the first vector being equal to the number of rows of the identity matrix, filling true tail arrays at multiple random positions in the first vector, and all filled true tail arrays are not overlapped, and setting the remaining bits of the first vector to 0;

[0044] S16, taking the product of the first vector and the identity matrix as encrypted data, and transmitting the recharge data and the encrypted data to the bank;

[0045] The bank recharge module specifically performs the following steps:

[0046] S21, parsing the recharge data and the encrypted data from the received data;

[0047] S22, using the encrypted data to match the identity matrix database stored in the bank, to obtain multiple authentication data features with the highest similarity as multiple parsed identity matrices;

[0048] S23, traversing the parsing identity matrix, and obtaining a vector equal to the encrypted data for multiplication with the parsing identity matrix as a target vector;

[0049] S24, if the four repeated digits in the target vector and the pseudo mantissa in the recharge data have the same digits, the four repeated digits in the target vector are used as the true mantissa for parsing, and the traversal is stopped;

[0050] S25. Replace the pseudo-decimals in the recharge data with the real decimals to obtain the parsed recharge number for recharge.

[0051] The specific implementation methods of the above steps are described in detail below:

[0052] The specific implementation method of step S11 is: first, the system needs to obtain the recharge information filled in by the user during the mobile phone recharge process, such as the recharge number and the recharge amount. At the same time, the system also needs to obtain the identity information of the user's mobile phone as an authentication credential for the user's identity. The so-called identity information mainly includes biometric information such as fingerprint information, voice information and facial information. This information is generally considered to be unique and can effectively verify the identity of the user. In practical applications, the system can use hardware devices such as fingerprint sensors, microphones or cameras to collect this information. By collecting the user's recharge information and identity information, the system can process and encrypt this information in subsequent steps to ensure the security and privacy protection of the recharge process.

[0053] The specific implementation method of step S12 is: first, the system extracts the last four digits from the recharge number filled in by the user and temporarily stores them as the true mantissa. For example, if the recharge number filled in by the user is 13912345678, then the true mantissa is 5678. Next, the system needs to generate a four-digit pseudo mantissa that is different from the true mantissa. A common practice is to use a random number generation algorithm to randomly select four digits from ten digits from 0 to 9 and randomly arrange them into a four-digit number. In the present invention, a linear congruential generator (LCG) can be used to generate a pseudo-random number sequence.

[0054] Among them, X(n) is the nth pseudo-random number, and a, c, and m are the parameters of the algorithm. When the appropriate parameter values ​​and the initial seed X(0) are given, a pseudo-random number sequence can be generated according to the above formula. When selecting the four-digit pseudo-tail, the system can take out four non-repeating numbers from the sequence and randomly arrange them. Finally, the system replaces the last four digits of the recharge number filled in by the user with the generated pseudo-tail, thereby obtaining a new recharge data. The purpose of this replacement operation is to hide the real recharge number and avoid leaking the user's privacy information during the transmission process.

[0055] The specific implementation of step S13 is: split the true mantissa stored in step S12 into an array in which each element corresponds to a single digit according to its numerical order, that is, if the true mantissa is 5678, then the obtained true mantissa array is [5, 6, 7, 8]. The purpose of this step is to facilitate the subsequent processing and encryption of the true mantissa.

[0056] The specific implementation method of step S14 is: perform feature extraction on the user identity information obtained in step S11 to obtain an identity matrix. The so-called feature extraction is to extract a numerical value or vector that can effectively characterize the sample characteristics from the original data. Specifically, if the user's identity information is a fingerprint, the system can use a common fingerprint feature extraction algorithm, such as a directional field algorithm, a Gabor filter algorithm, or a wavelet transform algorithm, to extract some numerical feature vectors from the original fingerprint image. If the identity information is voice, the Mel frequency cepstral coefficient algorithm can be used to extract feature vectors from the voice signal. If the identity information is facial information, the principal component analysis algorithm or a face recognition algorithm based on deep learning can be used to extract facial feature vectors.

[0057] Regardless of the feature extraction algorithm used, a feature matrix used to characterize the user's identity will eventually be obtained. It should be noted that different feature extraction algorithms correspond to different matrix dimensions and value ranges, so in practical applications, the algorithm parameters need to be tuned to obtain better feature representation effects. In addition, given the sensitivity of user identity information, encryption or anonymization measures should be taken during feature extraction and storage to protect user privacy.

[0058] The specific implementation of step S15 is: establish a first vector, the number of elements of which is equal to the number of rows of the identity matrix obtained in step S14. Then, fill the true tail array obtained in step S13 at multiple random positions in the first vector, and ensure that all filled true tail arrays do not overlap each other. In other words, if a position has been filled with an element of the true tail array, then other positions cannot be filled with the element. Finally, all the remaining positions in the first vector are set to 0.

[0059] The purpose of this step is to merge the user's real identity information (i.e., true tail) with the feature matrix and introduce a certain degree of randomness, thereby increasing the difficulty of cracking. In the implementation process, a random number generation algorithm can be used to determine the position in the vector where the true tail array elements need to be filled. Specifically, the LCG algorithm mentioned above can be used to generate a pseudo-random number sequence, and then the filling position can be determined based on the numerical value in the sequence. In addition, in order to avoid overlapping of filling positions, a marker array can be introduced to record whether each position has been filled. During the filling process, as long as the marker array is checked, the filled positions can be discovered and skipped in time.

[0060] It is worth mentioning that in this step, the number of elements to be filled in the true tail array needs to be determined. Generally speaking, the more padding, the more difficult the subsequent parsing will be and the better the privacy protection effect will be. However, too much padding will also lead to a sharp increase in the amount of calculation in the parsing process, which will bring greater computing pressure to the system. Therefore, in practical applications, it is necessary to weigh the amount of calculation and the privacy protection effect and choose a reasonable padding number. According to experience, the padding number can be set to 20% to 40% of the number of rows in the identity matrix as a reference range.

[0061] The specific implementation of step S16 is: multiply the first vector obtained in step S15 by the identity matrix obtained in step S14 to obtain an encrypted data. Next, the recharge data generated in step S12 is transmitted to the bank together with the encrypted data. It should be noted that during the transmission process, a secure communication protocol (such as SSL / TLS) and encryption algorithm (such as AES or RSA) should be used to prevent the data from being stolen or eavesdropped.

[0062] The purpose of this step is to merge the user's identity information (true tail number) with the recharge information to form an encrypted data, thereby hiding the real recharge number. At the same time, since the identity information itself is unique and non-replicable, even if the encrypted data is stolen, it is difficult to decrypt and crack.

[0063] During the implementation, it is necessary to pay attention to the rules of matrix multiplication. Specifically, if the dimension of the first vector is 1×m and the dimension of the identity matrix is ​​m×n, then their product is a 1×n matrix, that is, the encrypted data. In actual calculations, common matrix multiplication algorithms can be used, such as the naive matrix multiplication algorithm. However, since the dimension of the identity matrix is ​​usually high, the computational efficiency of the naive algorithm may be low. In order to increase the calculation speed, you can consider using technical means such as parallel computing or GPU acceleration.

[0064] In general, the purpose of steps S11 to S16 is to encrypt the user's recharge information and identity information, generate a secure encrypted data, and transmit it to the bank. In this process, a variety of algorithms and principles are involved, including random number generation, feature extraction, matrix operation, etc. Through these steps, the user's real recharge number and identity information can be effectively hidden, thereby preventing privacy leakage and improving the security of the recharge process.

[0065] The specific implementation of step S21 is as follows: First, the bank's recharge module parses the recharge data and encrypted data from the data transmitted by the terminal user. The purpose of this step is to separate the original data and prepare for subsequent processing.

[0066] During the parsing process, common data parsing techniques can be used, such as regular expression matching, finite state machines, etc. Specifically, a data format can be predefined, such as using a specific delimiter (such as a comma or a line break) to separate the recharge data and the encrypted data. Then, the system can traverse the original data, split the data into multiple parts according to the position of the delimiter, and then obtain the recharge data and the encrypted data.

[0067] It should be noted that in actual applications, the transmitted raw data may be formatted incorrectly or damaged, so the system also needs to perform data verification and exception handling. For example, the length of the recharge data and encrypted data can be checked. If the length does not meet expectations, it is considered invalid data and processed accordingly (such as discarding or requesting retransmission). In addition, in order to improve the robustness of the system, data redundancy checks can also be introduced, such as using a cyclic redundancy check algorithm to calculate the checksum of the data and compare it at the receiving end to detect whether the data has been damaged during transmission.

[0068] The specific implementation of step S22 is: using the encrypted data obtained in step S21 to match with the identity matrix database stored in the bank, obtaining multiple authentication data features with the highest similarity as multiple parsed identity matrices. The purpose of this step is to find several candidate matrices that best match the encrypted data from the known identity matrix library, in preparation for subsequent parsing operations.

[0069] In the implementation process, a feature matching algorithm can be used to measure the similarity between the encrypted data and each identity matrix in the database. Common similarity measurement methods include Euclidean distance, cosine similarity, Jaccard similarity coefficient, etc. Specifically, if the encrypted data is represented as vector A and a certain identity matrix in the database is represented as vector B, then the Euclidean distance between them can be calculated as:

[0070] d(A,B)=sqrt(sum((A i -B i ) 2 ));

[0071] Among them, A i and B i Respectively represent the i-th element of A and B. The smaller the Euclidean distance, the more similar the two vectors are.

[0072] In addition to Euclidean distance, other similarity measures can also be considered. For example, cosine similarity is defined as the ratio of the dot product of two vectors to the product of their magnitudes:

[0073]

[0074] The value range of cosine similarity is [-1, 1]. The closer the value is to 1, the more similar the two vectors are.

[0075] When calculating similarity, multiple measurement methods can be considered at the same time, and their results can be weighted and summed to obtain a comprehensive similarity score. Based on this score, the system can filter out the top N identity matrices that are most similar to the encrypted data from the database as candidates for parsing the identity matrix. The value of N needs to be determined according to the actual situation, and can usually be set between 5 and 10.

[0076] It is worth noting that in the feature matching process, the situation of "birds of a feather flock together" may occur, that is, the similarity scores of multiple identity matrices are very close, making it difficult to distinguish the best match. To solve this problem, you can consider introducing other auxiliary information, such as the user's geographic location, device fingerprint, etc., to improve the accuracy of matching. In addition, you can also use machine learning technology to train a similarity scoring model based on historical data to score and sort the new encrypted data.

[0077] The specific implementation of step S23 is: traverse the multiple parsing identity matrices obtained in step S22, and solve to obtain a vector equal to the encrypted data for multiplication with the parsing identity matrix as the target vector. The purpose of this step is to try to restore the first vector generated in step S15, so as to obtain the true mantissa information hidden therein.

[0078] During the traversal process, for each parsed identity matrix, the system needs to construct a linear equation system, where the unknowns are the elements of the target vector. Specifically, assuming that the parsed identity matrix is ​​M, the encrypted data is E, and the target vector is X, the following equation system can be listed:

[0079] M 11 *X1+M 12 *X2+...+M 1n *X n =E1;

[0080] M 21 *X1+M 22 *X2+...+M 2n *X n =E2;

[0081] …

[0082] M m1 *X1+M m2 *X2+...+M mn *X n =E m ;

[0083] Among them, Mij represents the element in the i-th row and j-th column of the matrix M, E i represents the i-th element of the encrypted data E, n is the number of columns of the parsed identity matrix, and m is the number of rows of the parsed identity matrix.

[0084] For this linear equation system, numerical algorithms can be used to solve it. Common methods include Gaussian elimination, Jacobi iteration, Gauss-Seidel iteration, etc. Among them, Gaussian elimination is a direct solution method with the advantages of fast calculation speed and high accuracy, but it requires the matrix to meet the strict diagonal dominance condition. Jacobi iteration and Gauss-Seidel iteration are iterative solution methods. They have looser requirements on the matrix, but the convergence speed is slow, and reasonable termination conditions need to be set (such as the upper limit of the number of iterations or the residual threshold).

[0085] In practical applications, the appropriate solution algorithm can be selected according to the characteristics of the matrix. For example, if the analytic identity matrix is ​​a full-rank matrix, the Gaussian elimination method can be used directly to solve it; if the analytic identity matrix is ​​a sparse matrix, the Jacobi iteration method or the Gauss-Seidel iteration method can be considered to improve the computational efficiency.

[0086] No matter which algorithm is used, an approximate solution will be obtained in the end, that is, the target vector X. Next, it is necessary to determine whether the vector meets the conditions, that is, whether the product with the analytical identity matrix is ​​equal to the encrypted data E. If it is equal, it means that the analytical identity matrix is ​​correct, and the corresponding target vector X is what we want; if it is not equal, it is necessary to continue to traverse the next analytical identity matrix and repeat the above process.

[0087] It is worth mentioning that due to calculation errors and rounding errors, the product of the target vector X and the analytical identity matrix is ​​difficult to be strictly equal to the encrypted data E. Therefore, a residual threshold ε can be introduced in the implementation. As long as the residual between the two is less than ε, they are considered equal. The value of ε needs to be determined according to the actual situation, and can usually be set to about 1% to 5% of the encrypted data E.

[0088] The specific implementation of step S24 is: first, check whether there are four repeated digits in the target vector solved in step S23. If so, take these four repeated digits as the parsed true mantissa. Next, compare the parsed true mantissa with the recharge data generated in step S12. If the four digits in the parsed true mantissa have exactly the same digits (out of order) as the pseudo mantissa in the recharge data, the parsing is considered successful and the traversal is stopped. If they are not the same, continue to traverse the next parsed identity matrix and repeat the operations of steps S23 and S24.

[0089] The purpose of this step is to restore the user's real recharge number tail number and verify its correctness. The reason why the true tail number can be parsed from the target vector is that in step S15, the true tail array has been randomly filled into the first vector. By solving the target vector, the hidden true tail number information can be restored.

[0090] In the implementation process, the target vector can be scanned first to find out whether there are four identical elements. If so, these four elements are used as candidate true mantissas. Next, the candidate true mantissas need to be compared with the pseudo mantissas in the recharge data to determine whether they contain the same digits.

[0091] The comparison process can use the method of set operation. Specifically, first convert the candidate true mantissa and pseudo mantissa into digital sets respectively, and then calculate the intersection of the two sets. If the number of elements in the intersection is equal to 4, it means that the two contain exactly the same four numbers and the parsing is successful; otherwise, the parsing fails and it is necessary to continue traversing the next parsing identity matrix.

[0092] It should be noted that the order of the numbers should be ignored when comparing, and only the numbers themselves should be considered to be the same. For example, the true mantissa 5678 and the pseudo mantissa 8765 should be considered the same because they both contain 4 identical digits (5, 6, 7, 8).

[0093] In addition, in order to improve efficiency, the digital set can be constructed during the target vector scanning process, so there is no need for repeated conversion. At the same time, it is also possible to consider optimizing the set operation, such as using bit operations or hash table data structures to speed up the intersection calculation.

[0094] Once the analysis is successful, the bank can restore the user's real recharge number based on the analyzed true digits and perform subsequent recharge operations. If all identity matrix analysis fails to obtain the correct true digits, it may be caused by data transmission errors or system failures. At this time, the recharge should be stopped immediately and the user should be notified to re-operate.

[0095] In general, the purpose of steps S21 to S24 is to restore the user's real recharge number and complete the recharge process. In this process, a variety of algorithms and principles are involved, including data analysis, feature matching, linear equation solving, set operations, etc. Through these steps, the user's privacy information can be effectively prevented from being leaked, and the correctness and security of the recharge operation can also be ensured.

[0096] A second aspect of the present invention provides a computer-readable storage medium, wherein the computer-readable storage medium stores program instructions, and when the program instructions are executed, they are used to execute the above-mentioned method for preventing information leakage during a telephone charge recharging process.

[0097] A third aspect of the present invention provides a system for preventing information leakage during a phone charge recharging process, which includes the above-mentioned computer-readable storage medium.

[0098] The following is a specific embodiment of the present invention:

[0099] This embodiment is based on a mobile phone charge recharge application. When a user performs a recharge operation, the application will execute a method for preventing information leakage during the charge recharge process proposed by the present invention to ensure the security of the user's privacy information.

[0100] First, the user fills in the recharge number 13912345678 and the recharge amount 100 yuan on the recharge interface of the application. At the same time, the system asks the user to perform biometric authentication. The user chooses fingerprint authentication and uses the fingerprint sensor of the mobile phone to collect the fingerprint image. This process corresponds to step S11.

[0101] Secondly, the system extracts the last four digits 5678 from the recharge number 13912345678 filled in by the user and temporarily stores it as the true mantissa. Then, the system uses the linear congruential generator algorithm to randomly select four non-repeating digits from the ten digits from 0 to 9 and randomly arrange them to generate a pseudo mantissa 8126. The pseudo mantissa is different from the true mantissa 5678. Next, the system replaces the last four digits 5678 of the recharge number 13912345678 with the pseudo mantissa 8126 to obtain a new recharge data 13912348126, corresponding to step S12.

[0102] Then, the system splits the true tail 5678 into an array [5, 6, 7, 8] in numerical order, recorded as the true tail array, corresponding to step S13.

[0103] Next, the system uses the Gabor filtering algorithm to extract features from the fingerprint image collected by the user to obtain a 256×256 fingerprint feature matrix, corresponding to step S14.

[0104] After that, the system creates a first vector of length 256, and fills the 20th, 50th, 110th and 180th positions of the vector with four elements in the true tail array [5, 6, 7, 8] respectively to ensure that they do not overlap each other. The remaining 252 positions are all filled with 0. This process corresponds to step S15.

[0105] Then, the system multiplies the first vector with the fingerprint feature matrix to obtain a 1×256 encrypted data, corresponding to step S16. Finally, the system transmits the recharge data 13912348126 and the encrypted data to the bank server.

[0106] On the server side, first according to step S21, the recharge data 13912348126 and the encrypted data are parsed from the received data.

[0107] Then, corresponding to step S22, the server uses the stored identity matrix database for feature matching. Assuming that there are 1000 256×256 fingerprint feature matrices in the database, the server calculates the Euclidean distance between the encrypted data and these 1000 matrices, and combines the cosine similarity to obtain a comprehensive similarity score. According to the score sorted from high to low, the server selects the top 5 fingerprint feature matrices with the highest similarity as candidates for parsing the identity matrix.

[0108] Next, corresponding to step S23, the server traverses the five resolved identity matrices. Taking the first resolved identity matrix M as an example, the server constructs a linear equation system:

[0109] M 11 *X1+M 12 *X2+...+M 1256 *X 256 =E1;

[0110] M 21 *X1+M 22 *X2+...+M 2256 *X 256 =E2;

[0111] …

[0112] M 256 1*X1+M 2562 *X2+...+M 256256 *X 256 =E 256 ;

[0113] Among them, M is the parsed identity matrix, X is the target vector, and E is the encrypted data. Since M is a full-rank matrix, the server uses Gaussian elimination to solve the linear equations and obtain a 256-dimensional target vector X.

[0114] Then corresponding to step S24, the server scans the target vector X and finds that the element values ​​at the 20th, 50th, 110th and 180th positions are 5, 6, 7 and 8 respectively, that is, there are four repeated digits 5678. At the same time, these four digits and the pseudo-end 8126 in the recharge data 13912348126 contain exactly the same four digits 5, 6, 7 and 8 (in order).

[0115] Therefore, the server believes that the target vector X is the random vector that previously hid the true mantissa, and determines the four repeated digits 5678 as the parsed true mantissa. Finally, the server replaces the parsed true mantissa 5678 with the pseudo mantissa 8126 in the recharge data 13912348126, thereby obtaining the user's real recharge number 13912345678.

[0116] At this point, the server has successfully parsed the user's real recharge number and can perform identity authentication and subsequent recharge operations.

[0117] It should be noted that if the first four identity matrix resolutions fail to obtain the correct target vector, the server will continue to traverse the next identity matrix resolution until a target vector that meets the conditions is found. If all identity matrix resolutions fail, it may be caused by data transmission errors or system failures. At this time, the recharge should be stopped immediately and the user should be notified to re-operate.

[0118] In addition, in practical applications, the system can also introduce the following optimization measures:

[0119] 1. In step S15, the number of the true tail array filled by the first vector can be set to 30% of the number of elements in the vector to balance the privacy protection effect and the amount of calculation.

[0120] 2. In step S16, the SSL / TLS secure communication protocol and AES encryption algorithm may be used to prevent data from being stolen or eavesdropped during transmission.

[0121] 3. In step S22, the user's geographic location information can be used as an auxiliary feature to improve the accuracy of identity feature matching.

[0122] 4. In step S23, the residual threshold ε can be set to 3% of the encrypted data. As long as the residual between the product of the target vector and the parsed identity matrix and the encrypted data is less than the threshold, they are considered equal.

[0123] 5. In step S24, bitwise operations may be used to optimize the calculation process of set intersection to improve calculation efficiency.

[0124] 6. In step S21, the integrity of the original data may be checked, including checking the length of the recharge data and the encrypted data, and calculating the checksum using the CRC32 algorithm and performing a comparison.

[0125] 7. After completing step S24, the parsed real recharge number of the user can be compared with the pre-stored trusted number library to further verify the legitimacy of the number and prevent illegal recharge behavior.

[0126] 8. After the recharge is completed, the user's recharge record can be associated with the fingerprint feature information and stored, laying the foundation for subsequent user portrait analysis and personalized services.

[0127] Specifically, the principle of the present invention is to hide the user's identity information (the last digit of the real recharge number) in a random vector and merge it with other identity feature information of the user (such as fingerprint, face, etc.) to form an encrypted data. During the recharge process, the encrypted data will be transmitted to the bank server. The server side needs to restore the user's real identity information from the encrypted data to complete the identity authentication and recharge operation.

[0128] Specifically, the technical solution of the present invention includes the following key steps:

[0129] 1. User identity information collection. The system first collects the recharge information (such as recharge number, recharge amount) and identity authentication information (such as fingerprint, face, etc.) filled in by the user during the recharge process. Then, the last four digits are extracted from the recharge number as part of the real identity information (i.e. the true tail).

[0130] 2. Hiding the real identity information. The system constructs a random vector whose length is the same as the dimension of the user's identity feature information. Then, the four digits of the true tail are randomly filled into multiple positions of the vector to ensure that they do not overlap each other. The remaining positions are filled with 0.

[0131] 3. Encrypted data generation. The system multiplies the constructed random vector with the user's identity feature information (such as fingerprint feature vector) to obtain an encrypted data. At this point, the user's real identity information (i.e., the true tail) has been hidden in the encrypted data.

[0132] 4. Data transmission. The system transmits the encrypted data and disguised recharge information to the bank server.

[0133] 5. Identity information analysis. The server first analyzes the encrypted data and disguised recharge information from the received data. Then, it uses the stored identity feature information library to match and obtain the candidate identity features that are most similar to the encrypted data.

[0134] 6. Restoration of real identity information. For each candidate identity feature, the system constructs a linear equation system and solves it to obtain a vector. If there are four repeated digits in the vector, and these four digits are exactly the same as the last digits in the disguised recharge information, then the vector is considered to be a random vector that previously hid the true last digits, so that the user's real recharge number can be restored.

[0135] 7. Identity authentication and recharge. Once the user's real recharge number is parsed, the bank can perform identity authentication to prevent illegal recharge. After the authentication is passed, normal recharge operations can be performed.

[0136] The key to the effective protection of user privacy in this invention is that the real identity information is hidden in a random vector and integrated with other identity feature information of the user. Even if the encrypted data is stolen, it is difficult to parse the real identity information of the user from it unless the correct identity feature information is matched.

[0137] At the same time, since the user's identity feature information (such as fingerprints, faces, etc.) is unique and cannot be replicated, it can provide a reliable basis for identity authentication. By constructing and solving a linear equation system, the real identity information hidden in the encrypted data can be accurately restored, thereby ensuring the accuracy of identity authentication.

[0138] In addition, the calculation process of the present invention is mainly focused on solving the linear equations, the amount of calculation is relatively small, and the efficiency is high. Compared with the practice of the prior art that requires multiple encryption and decryption, the calculation efficiency of the present invention has been significantly improved.

[0139] In summary, the present invention proposes a new privacy protection idea, which hides the user's real identity information in a random vector and integrates it with other identity feature information, theoretically eliminating the possibility of privacy leakage. At the same time, through mathematical principles such as solving linear equations, the user's real identity information can be accurately restored, providing a reliable basis for identity authentication. This innovative technical solution can not only ensure the security of the recharge process, but also has high computing efficiency, and is an effective solution.

[0140] The above description is only a specific implementation mode of the present invention, but the protection scope of the present invention is not limited thereto. Any technician familiar with the technical field can easily think of changes or substitutions within the technical scope disclosed by the present invention, which should be covered by the protection scope of the present invention.

Claims

1. A method for preventing information leakage during phone charge recharge process, characterized in that: Including terminal user recharge information acquisition module and bank recharge module; The terminal user recharge information acquisition module specifically performs the following steps: S11, obtaining the collected information of the user during the mobile phone recharge process, including the filled recharge information and the mobile phone identity information, wherein the recharge information includes the recharge number and the recharge amount, and the mobile phone identity information is one of the authentication fingerprint, authentication voice or authentication face information; S12, taking the last four digits of the recharge number as the true mantissa, temporarily storing the true mantissa, and creating a four-digit pseudo mantissa, wherein the pseudo mantissa is obtained by randomly arranging four digits of the true mantissa, and the pseudo mantissa is different from the true mantissa, and replacing the last four digits of the recharge number with the pseudo mantissa, and using the recharge information after the replacement operation as the recharge data; S13, splitting the true mantissa into an array in which each element corresponds to a single digit, recorded as a true mantissa array, wherein the order of elements in the true mantissa array is the same as the order of digits in the true mantissa; S14, extracting features from the mobile phone identity information to obtain an identity matrix; S15, establishing a first vector, wherein the number of elements of the first vector is equal to the number of rows of the identity matrix, in which the true tail arrays are filled at multiple random positions, and all filled true tail arrays are not overlapped, and the remaining bits of the first vector are set to 0; S16, taking the product of the first vector and the identity matrix as encrypted data, and transmitting the recharge data and the encrypted data to a bank; The bank recharge module specifically performs the following steps: S21, parsing the recharge data and the encrypted data from the received data; S22, using the encrypted data to match with the identity matrix database stored in the bank, obtaining multiple authentication data features with the highest similarity as multiple parsed identity matrices; S23, traversing the parsed identity matrix, and solving to obtain a vector equal to the encrypted data for multiplication with the parsed identity matrix as a target vector; S24, if the four repeated digits in the target vector and the pseudo mantissa in the recharge data have the same digits, the four repeated digits in the target vector are used as the true mantissa for parsing, and the traversal is stopped; S25, replacing the pseudo-decimals in the recharge data with the real decimals to obtain the parsed recharge number for recharging.

2. A method for preventing information leakage during telephone charge recharge according to claim 1, characterized in that: When the mobile phone identity information is fingerprint information, the step of extracting features from the mobile phone identity information uses a directional field algorithm, a Gabor filter algorithm or a wavelet transform algorithm as a fingerprint feature extraction algorithm to extract features from the original fingerprint image to obtain a fingerprint feature matrix.

3. A method for preventing information leakage during telephone charge recharge according to claim 1, characterized in that: When the mobile phone identity information is voice information, the step of extracting features from the mobile phone identity information uses a Mel-frequency cepstral coefficient algorithm to extract features from the voice signal to obtain a voice feature matrix.

4. A method for preventing information leakage during telephone charge recharge according to claim 1, characterized in that: When the mobile phone identity information is facial information, the step of extracting features from the mobile phone identity information uses a principal component analysis algorithm or a face recognition algorithm based on deep learning to extract features from the facial image to obtain a facial feature matrix.

5. A method for preventing information leakage during telephone charge recharge according to claim 1, characterized in that: The number of the true tail array filled in the first vector is 20% to 40% of the number of elements in the vector.

6. A method for preventing information leakage during telephone charge recharge process according to claim 1, characterized in that: In the step of matching the encrypted data with the identity matrix database stored in the bank, the matching method is cosine similarity.

7. A method for preventing information leakage during telephone charge recharge according to claim 1, characterized in that: The step of solving a vector equal to the encrypted data and multiplying the parsed identity matrix as the target vector is specifically: during the traversal process, for each parsed identity matrix, a linear equation system is constructed, wherein the unknowns are the elements of the target vector. Specifically, assuming that the parsed identity matrix is ​​M, the encrypted data is E, and the target vector is X, the following linear equation system is listed: M 11 *X1+M 12 *X2+…+M 1n *X n =E1; M 21 *X1+M 22 *X2+…+M 2n *X n =E2; ... M m1 *X1+M m2 *X2+…+M mn *X n =E m ; Among them, M ij represents the element in the i-th row and j-th column of the matrix M, E i represents the i-th element of the encrypted data E, n is the number of columns of the parsed identity matrix, and m is the number of rows of the parsed identity matrix; When the analytical identity matrix is ​​a full-rank matrix, the Gaussian elimination method is used to solve the linear equations; when the analytical identity matrix is ​​a sparse matrix, the Jacobi iteration method or the Gauss-Seidel iteration method is used to solve the linear equations.

8. A method for preventing information leakage during telephone charge recharge according to claim 7, characterized in that: In the step of solving a vector as a target vector for multiplying the parsed identity matrix with the encrypted data, a residual threshold ε is introduced. As long as the residual between the product of the target vector and the parsed identity matrix and the encrypted data is less than ε, they are considered equal. The value of ε is 1% to 5% of the encrypted data.

9. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores program instructions, and when the program instructions are executed on a computer, the method for preventing information leakage during a telephone charge recharging process according to any one of claims 1 to 8 is used to execute the method.

10. A system for preventing information leakage during phone charge recharge process, characterized in that: A computer-readable storage medium comprising the computer-readable storage medium of claim 9.

Citation Information

Patent Citations

  • Dynamic encryption method and device for platform data

    CN106941407A

  • Internet-of-things-oriented service privacy protection voiceprint recognition method and system, and mobile terminal

    CN110166424A