IP Library Granted Patent US 9,794,068
Granted Patent B2
US 9,794,068 · App. 14/869,470 · Granted Oct 17, 2017

Cryptographic processing device and cryptographic processing method

Inventor: Masaya Yasuda (Kawasaki, JP)
Assignee: FUJITSU LIMITED
H04L9/3093H04L9/008H04L9/14H04L2209/24
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 9,794,068
App. No.
14/869,470
Granted
Oct 17, 2017
Kind
B2
Abstract

A memory stores therein a first vector. A processor generates a first encrypted polynomial by encrypting a first polynomial that corresponds to a first binary vector obtained by performing a binary transformation on elements of the first vector. A transmitter transmits to a cryptographic operation device cryptographic information that represents the first encrypted polynomial. The cryptographic operation device multiplies the first encrypted polynomial by a second encrypted polynomial that is generated by encrypting a second polynomial that corresponds to a second binary vector obtained by performing a binary transformation on elements of a second vector, so as to generate a third encrypted polynomial. When assigning 2 to a variable in a prescribed portion of a third polynomial obtained by decrypting the third encrypted polynomial, a result of an operation of the first vector and the second vector is obtained.

Claims (28)

1. A cryptographic processing device comprising:

a memory that stores therein a first vector;

a processor that generates a first encrypted polynomial by encrypting a first polynomial that corresponds to a first binary vector obtained by performing a binary transformation on elements of the first vector; and

a transmitter that transmits cryptographic information that represents the first encrypted polynomial to a cryptographic operation device that multiplies the first encrypted polynomial by a second encrypted polynomial to generate a third encrypted polynomial,

wherein the processor or another cryptographic processing device generates the second encrypted polynomial by encrypting a second polynomial that corresponds to a second binary vector obtained by performing a binary transformation on elements of a second vector, and

wherein an analysis device obtains a result of an operation of the first vector and the second vector by assigning 2 to a variable in a prescribed portion of a third polynomial obtained by decrypting the third encrypted polynomial.

2. The cryptographic processing device according to claim 1 , wherein

the processor generates the first binary vector by transforming each of the elements of the first vector into a bit string including a plurality of bits and by inserting a bit string including a plurality of bit values that represent a plurality of zeros between two bit strings that correspond to two of the elements of the first vector.

3. The cryptographic processing device according to claim 2 , wherein

the number of bits in the bit string including the plurality of bit values that represent the plurality of zeros is equal to the number of bits d in the bit string including the plurality of bits, the prescribed portion of the third polynomial corresponds to terms that are included in the third polynomial and whose degree is not higher than 2(d-1), and the result of the operation is an inner product of the first vector and the second vector.

4. A cryptographic processing method comprising:

generating a first encrypted polynomial by encrypting, by a cryptographic processing device, a first polynomial that corresponds to a first binary vector obtained by performing a binary transformation on elements of a first vector; and

transmitting, by the cryptographic processing device, cryptographic information that represents the first encrypted polynomial to a cryptographic operation device that multiplies the first encrypted polynomial by a second encrypted polynomial to generate a third encrypted polynomial,

wherein the cryptographic processing device or another cryptographic processing device generates the second encrypted polynomial by encrypting a second polynomial that corresponds to a second binary vector obtained by performing a binary transformation on elements of a second vector, and

wherein an analysis device obtains a result of an operation of the first vector and the second vector by assigning 2 to a variable in a prescribed portion of a third polynomial obtained by decrypting the third encrypted polynomial.

5. The cryptographic processing method according to claim 4 , wherein

the generating the first encrypted polynomial generates the first binary vector by transforming each of the elements of the first vector into a bit string including a plurality of bits and by inserting a bit string including a plurality of bit values that represent a plurality of zeros between two bit strings that correspond to two of the elements of the first vector.

6. The cryptographic processing method according to claim 5 , wherein

the number of bits in the bit string including the bit value that represents the plurality of zeros is equal to the number of bits d in the bit string including the plurality of bits, the prescribed portion of the third polynomial corresponds to terms that are included in the third polynomial and whose degree is not higher than 2(d-1), and the result of the operation is an inner product of the first vector and the second vector.

7. A non-transitory computer-readable recording medium having stored therein a cryptographic processing program for causing a computer to execute a cryptographic process comprising:

generating a first encrypted polynomial by encrypting a first polynomial that corresponds to a first binary vector obtained by performing a binary transformation on elements of a first vector; and

transmitting cryptographic information that represents the first encrypted polynomial to a cryptographic operation device that multiplies the first encrypted polynomial by a second encrypted polynomial to generate a third encrypted polynomial,

wherein the computer or a cryptographic processing device generates the second encrypted polynomial by encrypting a second polynomial that corresponds to a second binary vector obtained by performing a binary transformation on elements of a second vector, and

wherein an analysis device obtains a result of an operation of the first vector and the second vector by assigning 2 to a variable in a prescribed portion of a third polynomial obtained by decrypting the third encrypted polynomial.

8. The non-transitory computer-readable recording medium according to claim 7 , wherein

the generating the first encrypted polynomial generates the first binary vector by transforming each of the elements of the first vector into a bit string including a plurality of bits and by inserting a bit string including a plurality of bit values that represent a plurality of zeros between two bit strings that correspond to two of the elements of the first vector.

9. The non-transitory computer-readable recording medium according to claim 8 , wherein

the number of bits in the bit string including the bit value that represents the plurality of zeros is equal to the number of bits d in the bit string including the plurality of bits, the prescribed portion of the third polynomial corresponds to terms that are included in the third polynomial and whose degree is not higher than 2(d-1), and the result of the operation is an inner product of the first vector and the second vector.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 23, 2015
From: YASUDA, MASAYA
To: FUJITSU LIMITED
Reel/Frame 036870/0370 →
Priority Claims (1)
JP 2014-254548 · Dec 16, 2014 · national
Continuity (1)
Related Publication 20160197726A1 · Jul 7, 2016