IP Library › Granted Patent US 12,640,922
Granted Patent B2
US 12,640,922 · App. 18/848,222 · Granted May 26, 2026

Matching system, matching apparatus, matching method, and program

Inventors: Toshiyuki Isshiki (Tokyo, JP); Kengo Mori (Tokyo, JP); Haruna Fukuda (Tokyo, JP)
Assignee: NEC CORPORATION
H04L9/3073H04L9/008H04L9/0866
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,640,922
App. No.
18/848,222
Granted
May 26, 2026
Kind
B2
Abstract

A (secure) matching system includes a user-side apparatus; and a service-side apparatus. The user-side apparatus includes a user key generation part and a registration part that registers a registration ciphertext in the service-side apparatus. The service-side apparatus includes a service key generation part, a conversion key generation part that generates a conversion key for converting a first ciphertext encrypted with a service public key into a second ciphertext encrypted with a user public key without executing a decryption process, and a matching part. The service-side apparatus generates a second ciphertext with the conversion key after generating a first ciphertext obtained by encrypting features used as a matching source with the service public key and matches the second ciphertext against a registered ciphertext.

Claims (76)

1 . A matching system, comprising:

a user-side apparatus; and

a service-side apparatus;

wherein the user-side apparatus includes:

a user key generation part that generates a pair of a user public key and a user secret key, and

a registration part that registers a registration ciphertext obtained by encrypting a plurality of features used as a matching destination with the user public key in the service-side apparatus;

wherein the service-side apparatus includes:

a service key generation part that generates a pair of a service public key and a service secret key,

a conversion key generation part that generates a conversion key for converting a first ciphertext encrypted with the service public key into a second ciphertext encrypted with the user public key without executing a decryption process, and

a matching part that matches the second ciphertext against the registered ciphertext; and

wherein the service-side apparatus generates a second ciphertext with the conversion key after generating a first ciphertext obtained by encrypting features used as a matching source with the service public key and matches the second ciphertext against a registered ciphertext.

2 . The matching system according to claim 1 ; wherein the service-side apparatus further includes

an encryption part that receives features used as a matching source, and obtains a first ciphertext by encrypting the features with the service public key, and

a re-encryption part that converts the first ciphertext into a second ciphertext with the conversion key.

3 . The matching system according to claim 1 ; wherein, the conversion key generation part generates the conversion key by using a user public key and the service secret key.

4 . The matching system according to claim 1 ;

wherein the matching part in the service-side apparatus calculates a similarity between the registered ciphertext and the second ciphertext while keeping these encrypted data secret; and

wherein the user-side apparatus further includes:

a decryption part that decrypts the encrypted similarity by using the user secret key, and

a determination part that determines whether the decrypted similarity falls within an acceptable range.

5 . The matching system according to claim 4 ;

wherein at least the second ciphertext is based on a fully homomorphic encryption in which a homomorphic operation is defined regarding a plurality of multiplications and additions; and

wherein the matching part obtains a similarity by calculating a distance between features based on the registered ciphertext and features based on the second ciphertext through a homomorphic operation.

6 . The matching system according to claim 4 , comprising:

a registration user apparatus including the user key generation part and the registration part;

a registration server apparatus including the service key generation part and the conversion key generation part;

a matching server apparatus including the encryption part, the re-encryption part, and the matching part; and

a matching user apparatus including the decryption part and the determination part.

7 . A matching apparatus, comprising:

a service key generation part that generates a pair of a service public key and a service secret key;

a conversion key generation part that generates, by using a plurality of user public keys and the service secret key, conversion keys, each of which is for converting a first ciphertext encrypted with the service public key into a second ciphertext encrypted with a corresponding one of the user public keys without executing a decryption process;

a registration part that obtains a registration ciphertext by encrypting a plurality of features used as a matching destination with a corresponding user public key;

an encryption part that receives matching target features and obtains a first ciphertext by encrypting the features with the service public key;

a re-encryption part that converts the first ciphertext into the second ciphertext with the conversion key; and

a matching part that matches the second ciphertext against the registered ciphertext.

8 . A matching method, comprising:

generating a pair of a user public key and a user secret key;

generating a pair of a service public key and a service secret key;

generating a conversion key for converting a first ciphertext encrypted with the service public key into a second ciphertext encrypted with the user public key without executing a decryption process;

obtaining a registration ciphertext by encrypting a plurality of features used as a matching destination with the user public key;

receiving features used as a matching source, and obtaining the first ciphertext by encrypting the features with the service public key;

converting the first ciphertext into the second ciphertext with the conversion key; and

matching the second ciphertext against the registered ciphertext.

9 . The matching method according to claim 8 ;

wherein, in the matching process, a similarity between the registered ciphertext and the second ciphertext is calculated with these encrypted data kept secret; and

wherein the matching method further includes:

decrypting the encrypted similarity by using the user secret key; and

determining whether the decrypted similarity falls within an acceptable range.

10 . A non-transitory computer readable medium storing a program, causing a computer to execute:

processing for generating a pair of a user public key and a user secret key;

processing for generating a pair of a service public key and a service secret key;

processing for generating a conversion key for converting a first ciphertext encrypted with the service public key into a second ciphertext encrypted with the user public key without executing a decryption process;

processing for obtaining a registration ciphertext by encrypting a plurality of features used as a matching candidate with the user public key;

processing for receiving features used as a matching target, and obtaining the first ciphertext by encrypting the features with the service public key;

processing for converting the first ciphertext into the second ciphertext with the conversion key; and

processing for matching the second ciphertext against the registered ciphertext.

11 . The matching apparatus according to claim 7 ; further comprising:

an encryption part that receives features used as a matching source, and obtains a first ciphertext by encrypting the features with the service public key, and

a re-encryption part that converts the first ciphertext into a second ciphertext with the conversion key.

12 . The matching apparatus according to claim 7 ; wherein the matching part calculates a similarity between the registered ciphertext and the second ciphertext while keeping these encrypted data secret.

13 . The matching apparatus according to claim 12 ;

wherein at least the second ciphertext is based on a fully homomorphic encryption in which a homomorphic operation is defined regarding a plurality of multiplications and additions; and

wherein the matching part obtains a similarity by calculating a distance between features based on the registered ciphertext and features based on the second ciphertext through a homomorphic operation.

14 . The matching method according to claim 8 ; wherein the conversion key is generated by using a user public key and the service secret key.

15 . The matching method according to claim 8 ;

wherein at least the second ciphertext is based on a fully homomorphic encryption in which a homomorphic operation is defined regarding a plurality of multiplications and additions; and

wherein a similarity is obtained by calculating a distance between features based on the registered ciphertext and features based on the second ciphertext through a homomorphic operation.

16 . The non-transitory computer readable medium storing the program according to claim 10 ;

wherein, in the processing for matching, a similarity between the registered ciphertext and the second ciphertext is calculated with these encrypted data kept secret; and

wherein the program further causing a computer to execute:

processing for decrypting the encrypted similarity by using the user secret key; and

processing for determining whether the decrypted similarity falls within an acceptable range.

17 . The non-transitory computer readable medium storing the program according to claim 10 ; wherein the conversion key is generated by using a user public key and the service secret key.

18 . The non-transitory computer readable medium storing the program according to claim 10 ;

wherein at least the second ciphertext is based on a fully homomorphic encryption in which a homomorphic operation is defined regarding a plurality of multiplications and additions; and

wherein a similarity is obtained by calculating a distance between features based on the registered ciphertext and features based on the second ciphertext through a homomorphic operation.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 18, 2024
From: ISSHIKI, TOSHIYUKI; MORI, KENGO; FUKUDA, HARUNA
To: NEC CORPORATION
Reel/Frame 068621/0207 →
Continuity (1)
Related Publication 20250211439A1 · Jun 26, 2025
References Cited (17)
US 11128462B2 · Higo · 2021 [cited by examiner]
US 20130318351A1 · Hirano et al. · 2013 [cited by applicant]
US 20150043735A1 · Fujii · 2015 [cited by examiner]
US 20180278410A1 · Hirano et al. · 2018 [cited by applicant]
US 20200344049A1 · Yasuda et al. · 2020 [cited by applicant]
US 20200358611A1 · Hoang · 2020 [cited by examiner]
US 20220012359A1 · Burceanu · 2022 [cited by examiner]
US 20220050999A1 · Zheng · 2022 [cited by examiner]
US 20230370248A1 · Imabayashi · 2023 [cited by examiner]
JP 6962629B1 · 2021 [cited by examiner]
WO 2019130528A1 · 2012 [cited by applicant]
WO 2012114452A1 · 2014 [cited by applicant]
WO 2014010202A1 · 2016 [cited by applicant]
WO 2017061024A1 · 2017 [cited by applicant]
International Search Report for PCT Application No. PCT/JP2022/013466, mailed on Jun. 7, 2022. [cited by applicant]
ISO/IEC DIS 24745:2020(E), “Information security, cybersecurity and privacy protection—Biometric information protection”, pp. 1-70. [cited by applicant]
Keita Xagawa, Keisuke Tanaka, “Proxy Re-Encryption based on Learning with Errors”, SCIS 2010, pp. 1-6. [cited by applicant]