Patent matching method and device based on privacy protection

By processing and scoring patent demand vector data using homomorphic encryption technology, candidate patents are screened and reviewed, solving the problem of privacy leakage in patent search and matching, realizing a secure and efficient patent matching process, and ensuring data privacy and auditability.

CN121834897APending Publication Date: 2026-04-10HAINAN UNIV
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
HAINAN UNIV
Filing Date
2026-01-22
Publication Date
2026-04-10

AI Technical Summary

Technical Problem

Existing patent search and matching methods have shortcomings in protecting user privacy and technical information security. In particular, during cross-institutional collaboration and cross-cycle interaction, key technical information is easily leaked, threatening core technology research and development and trade secrets.

Method used

The patent demand vector data is encrypted using a homomorphic encryption method. Similarity is calculated and scored through a patent matching platform. A safety belt coefficient and similarity threshold are set to screen candidate patents. The patents are then reviewed with minimal exposure. Finally, key parameters are uploaded to the blockchain to support post-verification and auditing.

Benefits of technology

It achieves end-to-end privacy protection, ensuring that data is not written in plaintext during the patent matching process, supports post-verification and lightweight auditing, improves the security and auditability of patent matching, and forms a closed loop of "storage isolation + encrypted computation + audit traceability", balancing privacy, efficiency and accuracy.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121834897A_ABST
    Figure CN121834897A_ABST
Patent Text Reader

Abstract

The invention provides a patent matching method and device based on privacy protection, and the method comprises the steps: carrying out the vectorization processing and L2 normalization processing of a demand document through a patent demand end, obtaining demand vector data, carrying out the homomorphic encryption of the demand vector data according to a preset first homomorphic encryption algorithm, obtaining first encrypted data of the demand vector and uploading the first encrypted data to a patent matching platform; performing data similarity calculation according to the demand vector first encrypted data and the patent vector data through the patent matching platform to obtain a score ciphertext; the score ciphertext comprises similarity scores of the demand vector first encrypted data and the patent vector data; carrying out decryption processing on the score ciphertext sent by the patent matching platform through the patent demand side to obtain a similarity score between the first encrypted data of the demand vector and the data of each patent vector; the patent demand end determines a plurality of matched patents according to the similarity score, the preset similarity threshold and the safety belt coefficient, so that the safety of patent matching is improved.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of patent matching, and particularly relates to a patent matching method and device based on privacy protection. BACKGROUND

[0002] With the continuous progress and development of network technology, intellectual property transactions, especially patent-related transactions, have covered multiple complex links, including right confirmation, retrieval, valuation, matching, and settlement operations. These operations often involve cross-institution collaboration and cross-cycle frequent interaction, and all operation records are completely stored in network servers to ensure the traceability and transparency of the transaction process. However, in this process, when the demand side wants to retrieve patents through technical points to match patents related to its demand, the technical point information used for retrieval is also recorded in the network server. Although this recording method helps to improve retrieval efficiency and accuracy, it also poses a potential risk that technical points may be leaked due to improper storage or management. Once these technical points are obtained by unscrupulous individuals, they may have a serious impact on the core technology research and development or business secrets of the demand side. Therefore, from the perspective of security, the existing patent retrieval matching method has obvious defects, especially in protecting user privacy and technical information security, and needs to be further improved and perfected. SUMMARY

[0003] The purpose of the present application is to overcome the shortcomings and deficiencies in the prior art and provide a patent matching method and device based on privacy protection.

[0004] The first aspect of the embodiment of the present application provides a patent matching method based on privacy protection, applied to a patent demand side and a patent matching platform; wherein the patent matching platform stores a plurality of patent vector data, wherein the patent vector data is vector data obtained by vectorizing and L2 normalizing patent plaintext data; the method comprises:

[0005] After the demand vector data is obtained by vectorizing and L2 normalizing the demand document by the patent demand side, the demand vector data is homomorphically encrypted according to a preset first homomorphic encryption algorithm, and demand vector first encrypted data is obtained and uploaded to the patent matching platform;

[0006] The patent matching platform calculates the data similarity according to the demand vector first encrypted data and the patent vector data, and obtains score ciphertext; the score ciphertext includes the similarity scores of the demand vector first encrypted data and each patent vector data;

[0007] The score ciphertext issued by the patent demand end to the patent matching platform is decrypted to obtain the similarity score of the demand vector first encrypted data and each patent vector data;

[0008] A plurality of matching patents are determined by the patent demand end according to the similarity score, a preset similarity threshold, and a safety belt coefficient.

[0009] As an implementation mode, after the demand document is vectorized and L2 normalized to obtain the demand vector data by the patent demand end, the demand vector data is homomorphically encrypted according to a preset first homomorphic encryption algorithm to obtain the demand vector first encrypted data and upload to the patent matching platform, including:

[0010] The demand vector data is obtained according to the following formula:

[0011]

[0012] wherein, represents the demand vector data, represents the embedding vector of the demand document, represents the L2 norm;

[0013] The demand vector first encrypted data is obtained according to the following formula:

[0014]

[0015] wherein, represents the demand vector first encrypted data; represents a CKKS encoding operator for encoding a real value vector into a plaintext polynomial; represents a CKKS encryption operator for encrypting a plaintext polynomial into a query ciphertext.

[0016] As an implementation mode, the step of obtaining the score ciphertext by the patent matching platform according to the demand vector first encrypted data and the patent vector data, including:

[0017] The score ciphertext is obtained according to the following formula:

[0018]

[0019] wherein, represents the score ciphertext; represents a rescaling; represents a slot cyclic rotation operator of a homomorphic encryption algorithm; represents the demand vector first encrypted data; represents a multiplication calculation of plaintext and ciphertext; Diagonal plaintext of patent vector data.

[0020] As an implementation, the step of determining the plurality of matching patents by the patent demand end according to the similarity score, the preset similarity threshold and the safety belt coefficient comprises:

[0021] The patent corresponding to the similarity score greater than the sum of the similarity threshold and the safety belt coefficient is determined as the matching patent by the patent demand end.

[0022] As an implementation, the step of determining the plurality of matching patents by the patent demand end according to the similarity score, the preset similarity threshold and the safety belt coefficient further comprises:

[0023] The patent corresponding to the similarity score less than the difference between the similarity threshold and the safety belt coefficient is determined as a non-matching patent by the patent demand end.

[0024] The patent corresponding to the similarity score less than or equal to the sum of the similarity threshold and the safety belt coefficient and greater than or equal to the difference between the similarity threshold and the safety belt coefficient is determined as a candidate patent by the patent demand end.

[0025] As an implementation, after the step of determining the patent corresponding to the similarity score less than or equal to the sum of the similarity threshold and the safety belt coefficient and greater than or equal to the difference between the similarity threshold and the safety belt coefficient as a candidate patent by the patent demand end, the following step is further included:

[0026] The demand vector first encrypted data corresponding to the candidate patent is decoded, fixed and re-encrypted by the patent demand end to obtain demand vector second encrypted data;

[0027] The demand vector second encrypted data and the corresponding session policy are uploaded to the patent matching platform by the patent demand end;

[0028] The inner product of the demand vector second encrypted data and the patent vector data is obtained by the patent matching platform according to the session policy and the patent vector data;

[0029] The difference value ciphertext is obtained by the patent matching platform according to the difference between the inner product and the preset same scale threshold and is transmitted to the patent demand end;

[0030] The candidate patent corresponding to the difference value ciphertext greater than or equal to 0 is determined as a matching patent by the patent demand end.

[0031] As an implementation, the step of decoding, fixing point and re-encrypting the demand vector first encrypted data corresponding to the candidate patent by the patent demand end to obtain demand vector second encrypted data comprises:

[0032] The step of decoding the demand vector first encrypted data corresponding to the candidate patent by the patent demand end to obtain demand vector decoding data comprises:

[0033] The step of re-encoding the demand vector decoding data according to a preset amplification factor by the patent demand end to obtain demand vector re-encoding data comprises:

[0034] The step of encrypting the demand vector re-encoding data according to a preset second homomorphic encryption algorithm by the patent demand end to obtain demand vector second encrypted data comprises:

[0035] As an implementation, the step of decoding the demand vector first encrypted data corresponding to the candidate patent by the patent demand end to obtain demand vector decoding data comprises:

[0036] The demand vector decoding data is obtained according to the following formula:

[0037]

[0038] Wherein, The demand vector decoding data is represented by; The demand vector first encrypted data is represented by; The CKKS decryption operator is used to restore the ciphertext to represent the plaintext polynomial; The CKKS decoding operator is used to decode the plaintext polynomial to represent the real value vector; The CKKS decoding error vector is represented by; The upper bound of the infinite norm of the vector level error is represented by; The demand vector data is represented by;

[0039] The step of re-encoding the demand vector decoding data according to a preset demand amplification factor by the patent demand end to obtain demand vector re-encoding data comprises:

[0040] The demand vector re-encoding data is obtained according to the following formula:

[0041]

[0042] Wherein, The demand vector re-encoding data is represented by; The rounding operation is represented by; The demand amplification factor is represented by; The demand vector data is represented by;

[0043] The demand vector re-encoded data is encrypted by the patent demand end according to a preset second homomorphic encryption algorithm, to obtain demand vector second encrypted data, including:

[0044] The demand vector second encrypted data is obtained according to the following formula: represents

[0045]

[0046] Wherein, The demand vector second encrypted data is represented by; The BFV encryption operator is represented by.

[0047] As an implementation mode, the fixed point inner product of the demand vector second encrypted data and the patent vector data is obtained by the patent matching platform according to the session strategy and the patent vector data, including:

[0048] The fixed point inner product is obtained according to the following formula:

[0049]

[0050] Wherein, The fixed point inner product of the demand vector second encrypted data and the jth patent vector data is represented by; The demand vector second encrypted data is represented by; The jth patent vector data amplified by the patent amplification factor is represented by; The patent amplification factor is represented by; The demand amplification factor is represented by; The real similarity is represented by; The limited quantization error caused by rounding is represented by.

[0051] Compared with the related art, the patent matching method based on privacy protection in the application carries out patent matching in a homomorphic encryption manner, first carries out a high-efficiency preliminary matching on the encrypted query and the patent library, and quickly screens out most of the obviously matched patents or unmatched patents; then a safety belt of "threshold neighborhood" is set, a small number of patents close to the threshold and unstable in judgment are marked as candidate patents; only these candidate patents enter a more rigorous review process under the premise of minimum exposure, forming a clear "pass / fail" conclusion consistent with the business threshold; finally, the candidate set is output, and the key parameters and the summary of the result are chained to ensure that the plaintext is not seen throughout the process and the calculation and audit can be performed afterwards. The whole process does not fall into plaintext, and the platform does not see the query or score plaintext; to support post-verification and light audit, only the candidate set commitment, rule result hash, and parameter version summary are chained (such as based on Hyperledger Fabric), supporting dispute calculation and responsibility tracking. Thus, a closed loop of "storage isolation + ciphertext calculation + audit trace" is formed: the efficiency of CKKS is retained on non-critical samples, the threshold neighborhood is passed through BFV to obtain a deterministic semantic judgment, an engineering balance is achieved between privacy, efficiency, accuracy, and auditability, and the security of patent matching is improved.

[0052] The second aspect of the embodiment of the application provides a patent matching device based on privacy protection, comprising a patent demand end and a patent matching platform; the patent matching platform stores a plurality of patent vector data, wherein the patent vector data is vector data obtained by performing vectorization processing and L2 normalization processing on patent plaintext data;

[0053] The patent demand end is configured to perform vectorization processing and L2 normalization processing on a demand document to obtain demand vector data, perform homomorphic encryption on the demand vector data according to a preset first homomorphic encryption algorithm, obtain demand vector first encrypted data, and upload the demand vector first encrypted data to the patent matching platform;

[0054] The patent matching platform is configured to perform data similarity calculation on the demand vector first encrypted data and the patent vector data to obtain score ciphertext; the score ciphertext comprises similarity scores of the demand vector first encrypted data and each patent vector data;

[0055] The patent demand end is configured to perform decryption processing on the score ciphertext issued by the patent matching platform to obtain the similarity scores of the demand vector first encrypted data and each patent vector data;

[0056] The patent demand end is configured to determine a plurality of matched patents according to the similarity scores, a preset similarity threshold, and a safety belt coefficient.

[0057] Compared with the related art, the patent matching device based on privacy protection of the application matches patents based on the homomorphic encryption mode. First, the encrypted query and the patent library are preliminarily matched at high efficiency, and most of the obviously matched patents or unmatched patents that do not pass the matching are quickly screened out. Then, a safety belt of a "threshold neighborhood" is set, and a small number of bar codes close to the threshold and unstable in judgment are marked as candidate patents. Only these candidate patents are subjected to a more rigorous review process under the premise of minimum exposure, and a clear "pass / fail" conclusion consistent with the business threshold is formed. Finally, the candidate set is output, and the key parameters and the summary of the result are chained to ensure that the plaintext is not seen throughout the process and can be calculated and audited afterwards. The whole process does not fall into plaintext, and the platform does not see the query or score plaintext. To support post-verification and lightweight audit, only the candidate set commitment, rule result hash, and parameter version summary are chained (such as based on Hyperledger Fabric) to support dispute calculation and responsibility tracking. Thus, a closed loop of "storage isolation + ciphertext calculation + audit traces" is formed: the high efficiency of CKKS is retained on non-critical samples, the definite semantic judgment is obtained by BFV in the threshold neighborhood, an engineering balance is achieved between privacy, efficiency, accuracy, and auditability, and the security of patent matching is improved.

[0058] In order to make the application clearer, the specific embodiments of the application will be described below in conjunction with the accompanying drawings. BRIEF DESCRIPTION OF DRAWINGS

[0059] Figure 1 The interaction flowchart of the patent demand end and the patent matching platform of an embodiment of the application.

[0060] Figure 2 The review schematic diagram of the patent matching flow of an embodiment of the application. DETAILED DESCRIPTION

[0061] In order to make the application clearer, the specific embodiments of the application will be described below in conjunction with the accompanying drawings.

[0062] It should be clear that the described embodiments are only part of the embodiments of the application, not all the embodiments. Based on the embodiments in the embodiments of the application, all other embodiments obtained by those of ordinary skill in the art without creative labor belong to the scope of protection of the embodiments of the application.

[0063] The following description refers to the accompanying drawings. Unless otherwise noted, like elements in different drawings have the same or similar notation, and the same or similar elements in different figures are represented with the same or similar reference numerals. In the description of the present application, it is to be understood that the terms "first", "second", "third", etc., merely mean different or separate objects, and are not necessarily used to describe a particular sequential or chronological order, nor are they used to indicate or imply relative importance. The specific meanings of the above terms in the present application can be understood according to the specific circumstances by those of ordinary skill in the art. The singular forms "a", "an", and "the" used in the present application and the appended claims are intended to include plural forms, unless the context clearly indicates otherwise. The word "if" used herein can be interpreted as "when" or "upon" or "in response to determining".

[0064] In addition, in the description of the present application, "multiple" means two or more, unless otherwise specified. The association relationship of the associated objects described by "and / or" indicates that there can be three relationships, for example, A and / or B can represent the three cases of A existing alone, A and B existing together, and B existing alone. The character " / " generally represents an "or" relationship between the associated objects before and after it.

[0065] A first aspect of the embodiments of the present application provides a patent matching method based on privacy protection, applied to a patent demand end and a patent matching platform; wherein the patent matching platform stores a plurality of patent vector data, wherein the patent vector data is vector data obtained by performing vectorization processing and L2 normalization processing on patent plaintext data;

[0066] Please refer to Figure 1 The interaction process between the patent demand end and the patent matching platform involved in the method is shown in Figure 1 as including:

[0067] After the demand document is subjected to vectorization processing and L2 normalization processing by the patent demand end to obtain demand vector data, the demand vector data is subjected to homomorphic encryption according to a preset first homomorphic encryption algorithm to obtain demand vector first encrypted data and upload the demand vector first encrypted data to the patent matching platform;

[0068] The patent matching platform performs data similarity calculation according to the demand vector first encrypted data and the patent vector data to obtain score ciphertext; the score ciphertext includes the similarity scores of the demand vector first encrypted data and each patent vector data;

[0069] The patent demand end performs decryption processing on the score ciphertext issued by the patent matching platform to obtain the similarity scores of the demand vector first encrypted data and each patent vector data;

[0070] The patent demand end determines a plurality of matching patents according to the similarity score, a preset similarity threshold, and a safety belt coefficient.

[0071] In a feasible embodiment, after the patent demand end obtains demand vector data by performing vectorization processing and L2 normalization processing on the demand document, and according to a preset first homomorphic encryption algorithm, the step of homomorphically encrypting the demand vector data to obtain demand vector first encrypted data and uploading the demand vector first encrypted data to the patent matching platform, includes:

[0072] The demand vector data is obtained according to the following formula:

[0073]

[0074] wherein, represents the demand vector data, represents the embedding vector of the demand document, represents the L2 norm;

[0075] The demand vector first encrypted data is obtained according to the following formula:

[0076]

[0077] wherein, represents the demand vector first encrypted data; represents a CKKS encoding operator, used for encoding a real value vector into a plaintext polynomial; represents a CKKS encryption operator, used for encrypting a plaintext polynomial into query ciphertext.

[0078] wherein, the first homomorphic encryption algorithm is CKKS, CKKS is a kind of homomorphic encryption scheme for approximate real number field, which allows linear algebraic operation on ciphertext. For high-dimensional real value features represented by embedding in patent transaction retrieval, the approximate real number semantics of CKKS is consistent with vector similarity (dot product / cosine). And its high throughput can significantly reduce the computing overhead of large-scale patent library, so CKKS has a natural advantage here.

[0079] In a feasible embodiment, the step of calculating data similarity by the patent matching platform according to the demand vector first encrypted data and the patent vector data to obtain score ciphertext, includes:

[0080] The score ciphertext is obtained according to the following formula:

[0081]

[0082] wherein, represents the score ciphertext; represents rescaling; a slot cycle rotation operator representing a homomorphic encryption algorithm; a first encrypted data of the demand vector; a multiplication calculation of the plaintext and the ciphertext; a diagonal plaintext of the patent vector data.

[0083] In a feasible embodiment, the step of determining the plurality of matching patents by the patent demand end according to the similarity score, the preset similarity threshold, and the safety belt coefficient comprises:

[0084] The patent corresponding to the similarity score greater than the sum of the similarity threshold and the safety belt coefficient is determined as the matching patent by the patent demand end, as shown in the following formula:

[0085]

[0086] wherein, represents the number of matching patents, represents the similarity score of the first encrypted data of the demand vector and the jth patent vector data, represents the similarity threshold, represents the safety belt coefficient.

[0087] In a feasible embodiment, the step of determining the plurality of matching patents by the patent demand end according to the similarity score, the preset similarity threshold, and the safety belt coefficient further comprises:

[0088] The patent corresponding to the similarity score less than the difference between the similarity threshold and the safety belt coefficient is determined as the non-matching patent by the patent demand end, as shown in the following formula:

[0089]

[0090] wherein, represents the number of non-matching patents;

[0091] The patent corresponding to the similarity score less than or equal to the sum of the similarity threshold and the safety belt coefficient, and greater than or equal to the difference between the similarity threshold and the safety belt coefficient is determined as the candidate patent by the patent demand end, as shown in the following formula:

[0092]

[0093] wherein, represents the number of candidate patents.

[0094] It should be noted that the matching patents, non-matching patents and candidate patents determined by the patent demand end can be realized by the identification of the patents, such as the publication number, the application number and the like ID identification. Then, the patent demand end requests to obtain the graphic content of the patent according to the identification of the matching patent.

[0095] In addition, the similarity threshold is specified by the demand side at the beginning of the session, and the safety belt coefficient can be updated by the principle of "offline baseline + online lightweight adaptive", for example: first obtain an offline baseline with fixed parameters and circuit As a safety belt coefficient, small adaptive adjustments are made around the business expected "critical trigger rate" (e.g. 5%-20%). The offline baseline is determined by the analysis upper bound and the empirical quantile, as shown in the following formula:

[0096]

[0097] wherein, is the offline baseline, is the theoretical / conservative upper bound of the CKKS circuit under the given parameters (polynomial degree, modulus chain, scale), is the error on the calibration pair, is the robust margin, , is the minimum radius of the safety belt.

[0098] During online operation, the patent demand end statistics the trigger rate in a window, and the current safety belt coefficient is adjusted to the target value in a smooth manner. The update method does not reduce the safety baseline, as shown in the following formula:

[0099]

[0100] wherein, is the updated safety belt coefficient, is the current safety belt coefficient, is the offline baseline, is a small constant to prevent zero, is the trigger probability, , is the number of candidate patents (or critical samples), is the number of all patents (or samples), is the expected critical trigger rate, is the step scaling coefficient, used to control the update rate when adjusting the safety belt coefficient according to the statistical deviation, represents the maximum value.

[0101] As Figure 2 shown, the candidate patents (Figure 2 The review process introduces a SafeSwitch to complete the "double switching of semantics and system", so in a feasible embodiment, after the step of determining the patents corresponding to the similarity scores less than or equal to the sum of the similarity threshold and the safety belt coefficient and greater than or equal to the difference between the similarity threshold and the safety belt coefficient as candidate patents by the patent demand side, the following steps are further included:

[0102] Decoding, fixing point, and re-encrypting the demand vector first encrypted data corresponding to the candidate patents by the patent demand side to obtain demand vector second encrypted data;

[0103] Uploading the demand vector second encrypted data and the corresponding session policy to the patent matching platform by the patent demand side; wherein the session policy at least includes a demand amplification factor and an integer agreement;

[0104] Obtaining the fixed point inner product of the demand vector second encrypted data and the patent vector data by the patent matching platform according to the session policy and the patent vector data;

[0105] Obtaining the difference value ciphertext by the patent matching platform according to the difference between the fixed point inner product and the preset same scale threshold and transmitting it to the patent demand side;

[0106] Determining the candidate patents corresponding to the difference value ciphertext greater than or equal to 0 as matching patents by the patent demand side.

[0107] It should be noted that the SafeSwitch referred to in this embodiment is not a general "ciphertext to ciphertext conversion", but a minimum re-encoding and re-encryption for threshold judgment tasks; its output is only the BFV ciphertext and parameter traces of the query, and the platform side does not touch any query plaintext or score plaintext, thereby achieving an auditable compromise between correctness and privacy. Among them, considering that the demand side naturally holds the query plaintext (the plaintext of the demand document), the minimum trust domain is deployed locally on the demand side, and only the critical set (the set of candidate patents) triggers a fixed point quantization and system switching once.

[0108] In a feasible embodiment, the step of decoding, fixing point, and re-encrypting the demand vector first encrypted data corresponding to the candidate patents by the patent demand side to obtain demand vector second encrypted data includes:

[0109] Decoding the demand vector first encrypted data corresponding to the candidate patents by the patent demand side to obtain demand vector decoding data;

[0110] The patent demand end performs fixed-point recoding on the demand vector decoding data according to a preset amplification factor to obtain demand vector recoded data.

[0111] The patent demand end encrypts the demand vector recoded data according to a preset second homomorphic encryption algorithm to obtain the second encrypted demand vector data.

[0112] The second homomorphic encryption algorithm is BFV (Brakerski-Fan-Vercauteren), a fully homomorphic encryption scheme based on the Ring-LWE (Learning with Errors on Rings) problem, which allows arbitrary computations to be performed directly on encrypted data without decryption.

[0113] In a feasible embodiment, the first encrypted data of the demand vector corresponding to the candidate patent is decoded through the patent demand terminal to obtain demand vector decoded data, including:

[0114] The demand vector decoding data is obtained according to the following formula:

[0115]

[0116] in, This represents the demand vector decoding data; This represents the first encrypted data in the demand vector; This represents the CKKS decryption operator, used to restore the ciphertext to its plaintext polynomial representation; This represents the CKKS decoding operator, used to decode plaintext polynomials into real-valued vectors; This represents the CKKS decoding error vector; This represents the upper bound of the infinity norm with respect to vector-level errors; Represents demand vector data;

[0117] The patent demand side performs fixed-point recoding on the demand vector decoded data according to a preset demand amplification factor to obtain demand vector recoded data, including:

[0118] The demand vector recoded data is obtained according to the following formula:

[0119]

[0120] in, This indicates that the demand vector has been recoded. This indicates the rounding operation; Indicates the demand amplification factor; Represents demand vector data;

[0121] The patent demand end re-encodes the demand vector data according to a preset second homomorphic encryption algorithm to obtain demand vector second encrypted data, including:

[0122] The demand vector second encrypted data is obtained according to the following formula:

[0123]

[0124] wherein, represents the demand vector second encrypted data; represents a BFV encryption operator.

[0125] In a feasible embodiment, the patent matching platform obtains a fixed point inner product of the demand vector second encrypted data and the patent vector data according to the session strategy and the patent vector data, including:

[0126] The fixed point inner product is obtained according to the following formula:

[0127]

[0128] wherein, represents the fixed point inner product of the demand vector second encrypted data and the jth patent vector data; represents the demand vector second encrypted data; represents the jth patent vector data amplified by a patent amplification factor; represents the patent amplification factor; represents a demand amplification factor; represents a real similarity; represents a limited quantization error caused by rounding.

[0129] wherein, the values of the demand amplification factor and the patent amplification factor are determined according to the vector dimension, the similarity accuracy requirement, and the homomorphic encryption parameter constraint. Specifically, the product of the demand amplification factor and the patent amplification factor needs to meet the upper bound requirement of the fixed point quantization error, and the value of the demand amplification factor also needs to be limited by the BFV ciphertext noise growth, and the value of the patent amplification factor needs to avoid overflow of the plaintext inner product result. In some embodiments, the demand amplification factor and the patent amplification factor are powers of 2.

[0130] Compared with the related art, the patent matching method based on privacy protection provided in the application performs patent matching in a homomorphic encryption manner. First, the encrypted query and the patent library are subjected to a high-efficiency preliminary matching, and most of the obviously matched patents or unmatched patents are quickly screened out. Then, a "threshold neighborhood" safety belt is set, and a small number of patents close to the threshold and unstable in judgment are marked as candidate patents. Only these candidate patents are subjected to a more rigorous review process under the premise of minimum exposure, and a clear "pass / fail" conclusion consistent with the business threshold is formed. Finally, the candidate set is output, and the key parameters and the summary of the result are chained to ensure that the plaintext is not seen throughout the process and the result can be recalculated and audited afterwards. The whole process does not fall into plaintext, and the platform does not see the plaintext of the query or the score. To support post-verification and lightweight auditing, only the candidate set commitment, rule result hash, and parameter version summary are chained (such as based on Hyperledger Fabric) to support dispute resolution and responsibility tracking. Thus, a closed loop of "storage isolation + ciphertext calculation + audit trace" is formed: the high efficiency of CKKS is retained on non-critical samples, the definite semantic judgment is obtained by BFV in the threshold neighborhood, an engineering balance is achieved between privacy, efficiency, accuracy, and auditability, and the security of patent matching is improved.

[0131] In summary, to solve the problems of privacy leakage and low matching accuracy in patent matching, the application provides a hybrid homomorphic computing model for patent similarity matching. First, the CKKS encrypts the user patent demand vector, and the floating-point similarity is calculated in the patent demand ciphertext domain to realize the preliminary matching of patents. Second, the δ safety belt mechanism is designed to concentrate the samples that need to be accurately reviewed in the truly uncertain neighborhood, and the safety domain switching mechanism realizes the switching of the ciphertext from the CKKS approximate domain to the BFV fixed-point domain under the premise of minimum leakage. Finally, the similarity of these critical samples is calculated in the BFV to realize the accurate review of the patents, which can effectively support the privacy matching of the patent transaction scenario.

[0132] The second aspect of the application provides a patent matching device based on privacy protection, comprising a patent demand end and a patent matching platform; the patent matching platform stores a plurality of patent vector data, wherein the patent vector data is vector data obtained by vectorizing and L2 normalizing patent plaintext data;

[0133] The patent demand end is configured to vectorize and L2 normalize a demand document to obtain demand vector data, perform homomorphic encryption on the demand vector data according to a preset first homomorphic encryption algorithm, obtain demand vector first encrypted data, and upload the demand vector first encrypted data to the patent matching platform;

[0134] The patent matching platform is configured to perform data similarity calculation on the demand vector first encrypted data and the patent vector data according to the demand vector, to obtain score ciphertext; the score ciphertext includes similarity scores of the demand vector first encrypted data and each patent vector data.

[0135] The patent demand end is configured to decrypt the score ciphertext issued by the patent matching platform, to obtain the similarity scores of the demand vector first encrypted data and each patent vector data.

[0136] The patent demand end is configured to determine a plurality of matching patents according to the similarity scores, a preset similarity threshold, and a safety belt coefficient.

[0137] It should be noted that the patent matching device based on privacy protection provided by the second embodiment of the present application and the patent matching method based on privacy protection of the first embodiment of the present application belong to the same concept, and the implementation process is detailed in the method embodiment, which will not be repeated here.

[0138] The device embodiments described above are only schematic, wherein the components illustrated as separate components can or can not be physically separate, and the components illustrated as units can or can not be physical units, i.e., can be located in one place, or can be distributed on multiple network units. Part or all of the modules can be selected according to actual needs to achieve the purpose of the present application. Those skilled in the art can understand and implement without creative labor.

[0139] Those skilled in the art should understand that the embodiments of the present application can be provided as a method, a system, or a computer program product. Therefore, the present application can take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware aspects. Moreover, the present application can take the form of a computer program product implemented on one or more computer usable storage media (including but not limited to magnetic disk storage, CD-ROM, optical storage, etc.) containing computer usable program code.

[0140] The present application is described with reference to flowcharts and / or block diagrams according to the method, device (system), and computer program product of the present application. It should be understood that each flow and / or block in the flowcharts and / or block diagrams, and the combination of the flows and / or blocks in the flowcharts and / or block diagrams can be implemented by computer program instructions. These computer program instructions can be provided to a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing devices to produce a machine, so that the instructions executed by the computer or other programmable data processing devices produce a device that implements the functions described in the flowcharts and / or block diagrams. Figure 1 Each flow or multiple flows and / or blocks Figure 1apparatus for performing a selected function in a block or a plurality of blocks. These computer program instructions can also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instructions which implement the flow Figure 1 flow or flows and / or blocks Figure 1 selected function in a block or a plurality of blocks.

[0141] These computer program instructions can also be loaded into computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the flow Figure 1 flow or flows and / or blocks Figure 1 selected function in a block or a plurality of blocks.

[0142] In one typical configuration, the computing device includes one or more processors (CPUs), input / output interfaces, network interfaces, and memory.

[0143] The memory can include non-persistent memory and / or volatile memory, such as random access memory (RAM) about which the processor can execute instructions. The memory can also include non-volatile memory, such as read only memory (ROM), electrically programmable read only memory (EPROM), electrically erasable programmable read only memory (EEPROM), flash memory, or other memory technologies, CD-ROM, digital versatile disc (DVD), or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other non-transitory medium that can be used to store information for access by a computing device. In no case does the disclosure rely on a transitory medium to provide a durable signal carrying program code for the practice of the disclosed embodiments.

[0144] Computer readable media includes permanent and non-permanent, removable and non-removable media that can be implemented by any method or technology for storage of information. The information can be computer readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read only memory (ROM), electrically programmable read only memory (EEPROM), flash memory or other memory technologies, compact disc read only memory (CD-ROM), digital versatile disc (DVD) or other optical storage, magnetic cassette, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other non-transitory medium that can be used to store information that can be accessed by a computing device. According to the definition in this application, computer readable media does not include transitory media, such as modulated data signals and carrier waves.

[0145] It should also be noted that the terms "comprising", "comprises" or other variations thereof are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but can also include other elements not expressly listed or inherent to such process, method, article, or apparatus.

[0146] The above embodiments are only used to illustrate the present application, but not to limit it. Instead of the above, various modifications and changes can be made to the application by those skilled in the art. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the application shall fall into the scope of the claims of the application.

Claims

1. A privacy-preserving patent matching method, characterized in that, This method is applied to patent demand and patent matching platforms; wherein the patent matching platform stores multiple patent vector data, and the patent vector data are vector data obtained by vectorization and L2 normalization of patent plaintext data; the method includes: After the patent demand side performs vectorization and L2 normalization on the demand document to obtain demand vector data, the demand vector data is homomorphically encrypted according to the preset first homomorphic encryption algorithm to obtain the first encrypted demand vector data and upload it to the patent matching platform. The patent matching platform calculates data similarity based on the first encrypted demand vector data and the patent vector data to obtain a score ciphertext; the score ciphertext includes the similarity score between the first encrypted demand vector data and each of the patent vector data. The patent demand side decrypts the encrypted score sent by the patent matching platform to obtain the similarity score between the first encrypted data of the demand vector and each patent vector data. Based on the similarity score, preset similarity threshold, and seatbelt coefficient, the patent demand side identifies multiple matching patents.

2. The patent matching method based on privacy protection according to claim 1, characterized in that, After obtaining demand vector data by vectorizing and L2 normalizing the demand document through the patent demand side, the demand vector data is homomorphically encrypted according to a preset first homomorphic encryption algorithm to obtain the first encrypted demand vector data, and then uploaded to the patent matching platform. The steps include: The demand vector data is obtained according to the following formula: in, Represents demand vector data. This represents the embedding vector of the requirements document. Represents the L2 norm; The first encrypted data of the demand vector is obtained according to the following formula: in, This represents the first encrypted data of the demand vector; This represents the CKKS encoding operator, used to encode real-valued vectors into plaintext polynomials; This indicates the CKKS encryption operator, used to encrypt a plaintext polynomial into a query ciphertext.

3. The patent matching method based on privacy protection according to claim 1, characterized in that, The step of calculating the score ciphertext by means of the patent matching platform based on the first encrypted data of the demand vector and the patent vector data includes: The fractional ciphertext is obtained using the following formula: in, This represents the ciphertext of the fraction; Indicates rescaling; This represents the slot rotation operator for homomorphic encryption algorithms; This represents the first encrypted data of the demand vector; This represents the multiplication of plaintext and ciphertext. This is the diagonal plaintext of the patent vector data.

4. The patent matching method based on privacy protection according to claim 1, characterized in that, The steps for determining multiple matching patents through the patent demand side based on the similarity score, a preset similarity threshold, and a seatbelt coefficient include: Patents whose similarity scores are greater than the sum of the similarity threshold and the seat belt coefficient are identified as the matching patents by the patent demand side.

5. The patent matching method based on privacy protection according to claim 4, characterized in that, The step of determining multiple matching patents through the patent demand side based on the similarity score, a preset similarity threshold, and a seatbelt coefficient also includes: Patents with similarity scores that are less than the difference between the similarity threshold and the seat belt coefficient are identified as mismatched patents by the patent demand side. Patents with similarity scores that are less than or equal to the sum of the similarity threshold and the seat belt coefficient, and greater than or equal to the difference between the similarity threshold and the seat belt coefficient, are identified as candidate patents by the patent demand side.

6. The patent matching method based on privacy protection according to claim 5, characterized in that, After determining patents with similarity scores that are less than or equal to the sum of the similarity threshold and the seatbelt coefficient, and greater than or equal to the difference between the similarity threshold and the seatbelt coefficient, as candidate patents through the patent demand side, the method further includes the following steps: The patent demand side decodes, pinpoints, and re-encrypts the first encrypted data of the demand vector corresponding to the candidate patent to obtain the second encrypted data of the demand vector. The patent demand side uploads the second encrypted data of the demand vector and the corresponding session strategy to the patent matching platform. The patent matching platform obtains the fixed-point inner product of the second encrypted data of the demand vector and the patent vector data based on the session strategy and the patent vector data. The patent matching platform obtains the difference ciphertext based on the difference between the fixed-point inner product and a preset threshold of the same scale, and transmits it to the patent demand end. The candidate patents corresponding to the ciphertext with a difference greater than or equal to 0 are identified as matching patents by the patent demand side.

7. The patent matching method based on privacy protection according to claim 6, characterized in that, The steps of decoding, pinpointing, and re-encrypting the first encrypted data of the demand vector corresponding to the candidate patent through the patent demand end to obtain the second encrypted data of the demand vector include: The first encrypted data of the demand vector corresponding to the candidate patent is decoded through the patent demand end to obtain the demand vector decoded data. The patent demand end performs fixed-point recoding on the demand vector decoding data according to a preset amplification factor to obtain demand vector recoded data. The patent demand end encrypts the demand vector recoded data according to a preset second homomorphic encryption algorithm to obtain the second encrypted demand vector data.

8. The patent matching method based on privacy protection according to claim 7, characterized in that, The first encrypted data of the demand vector corresponding to the candidate patent is decoded through the patent demand side to obtain the demand vector decoded data, including: The demand vector decoding data is obtained according to the following formula: in, This represents the demand vector decoding data; This represents the first encrypted data in the demand vector; This represents the CKKS decryption operator, used to restore the ciphertext to its plaintext polynomial representation. This represents the CKKS decoding operator, used to decode plaintext polynomials into real-valued vectors; This represents the CKKS decoding error vector; This represents the upper bound of the infinity norm with respect to vector-level errors; Represents demand vector data; The patent demand side performs fixed-point recoding on the demand vector decoded data according to a preset demand amplification factor to obtain demand vector recoded data, including: The demand vector recoded data is obtained according to the following formula: in, This indicates that the demand vector has been recoded. This indicates the rounding operation; Indicates the demand amplification factor; Represents demand vector data; The patent demand end encrypts the demand vector recoded data according to a preset second homomorphic encryption algorithm to obtain the second encrypted demand vector data, including: The second encrypted data of the demand vector is obtained according to the following formula: (representing...) in, This represents the second encrypted data in the demand vector; This represents the BFV encryption operator.

9. The patent matching method based on privacy protection according to claim 6, characterized in that, The patent matching platform obtains the fixed-point inner product of the second encrypted data of the demand vector and the patent vector data based on the session strategy and patent vector data, including: The inner product of the fixed point is obtained according to the following formula: in, This represents the fixed-point inner product of the second encrypted data of the demand vector and the j-th patent vector data; This represents the second encrypted data in the demand vector; This represents the patent vector data after being amplified by the patent amplification factor for the j-th patent. Indicates the patent amplification factor; Indicates the demand amplification factor; Indicates true similarity; This indicates the finite quantization error caused by rounding.

10. A patent matching device based on privacy protection, characterized in that, It includes a patent demand side and a patent matching platform; the patent matching platform stores multiple patent vector data, wherein the patent vector data is vector data of patent plaintext data after vectorization and L2 normalization. The patent demand side is used to perform vectorization and L2 normalization on the demand document to obtain demand vector data, and then perform homomorphic encryption on the demand vector data according to the preset first homomorphic encryption algorithm to obtain the first encrypted demand vector data and upload it to the patent matching platform. The patent matching platform is used to calculate data similarity based on the first encrypted data of the demand vector and the patent vector data to obtain a score ciphertext; the score ciphertext includes the similarity score between the first encrypted data of the demand vector and each of the patent vector data. The patent demand side is used to decrypt the encrypted score sent by the patent matching platform to obtain the similarity score between the first encrypted data of the demand vector and each patent vector data. The patent demand side is used to determine multiple matching patents based on the similarity score, a preset similarity threshold, and a seatbelt coefficient.