| 번호 | 청구항 |
|---|---|
| 1 | 제1 기저에 기초하여 생성된 제1 암호문 데이터를 출력하는 동형 암호화 장치; 및상기 제1 기저에 기초한 암호문 데이터를 제2 기저에 기초한 제2 암호문 데이터로 변환하기 위한 기저 변환 표 및 상기 동형 암호화 장치로부터 수신한 상기 제1 암호문 데이터를 저장하는 스토리지 장치, 그리고 상기 제1 암호문 데이터를 상기 제2 기저에 기초한 제2 암호문 데이터로 변환하도록, 상기 제1 암호문 데이터에 대해 상기 기저 변환 표를 사용하여 미리 설정된 연산을 수행하는 동형 암호화 연산 장치를 포함하는 동형 암호화 서버를 포함하는 동형 연산 시스템. |
| 2 | 제1항에 있어서,상기 제1 암호문 데이터는 복수의 계수를 포함하고, 상기 동형 암호화 연산 장치는, 상기 복수의 계수를 전달받아 곱셈 및 누적(Multiply and accumulate, MAC) 연산을 수행하여 복수의 누적 출력 값을 생성하고, 상기 복수의 누적 출력 값 각각에 대해 모듈러 연산을 수행하여 상기 제2 암호문 데이터의 계수에 대응하는 결과 값을 생성하는 복수의 레인, 상기 기저 변환 표에 기초하여 상기 제1 암호문 데이터의 복수의 계수 각각에 대응하는 기저 변환 값을 공급하는 복수의 브로드 캐스팅 유닛, 및 상기 복수의 브로드캐스팅 유닛의 동작 주기를 설정하는 동형 연산 관리 회로를 포함하는, 동형 연산 시스템. |
| 3 | 제2항에 있어서,상기 동형 연산 관리 회로는 미리 설정된 방식에 따라 상기 복수의 레인 각각에 대응하는 상기 복수의 계수를 결정하고, 상기 복수의 레인 각각은 복수의 MAC 유닛을 포함하고, 상기 복수의 레인 중 제1 레인은 상기 복수의 계수 중 제1 계수를 전달받고, 상기 제1 레인의 복수의 MAC 유닛 중 제1 MAC 유닛은 복수의 요소 값을 포함하는 상기 제1 계수 내 제1 요소 값 및 상기 기저 변환 표 중 상기 제1 MAC 유닛에 대응하는 제1 기저 변환 값에 대해 MAC 연산을 수행하여 상기 복수의 누적 출력 값 중 제1 누적 출력 값을 생성하는, 동형 연산 시스템. |
| 4 | 제3항에 있어서,상기 제1 레인 내의 MAC 유닛의 개수와 상기 복수의 브로드 캐스팅 유닛의 개수는 동일한, 동형 연산 시스템. |
| 5 | 제3항에 있어서,상기 제1 레인은 상기 제1 레인 내 복수의 MAC 유닛 각각으로부터의 복수의 누적 출력 값을 입력받고, 상기 동형 연산 시스템은,상기 동형 연산 관리 회로에 의해 상기 복수의 누적 출력 값 중 하나의 값을 선택하는 멀티플렉서; 및상기 멀티플렉서에 연결되어 상기 복수의 누적 출력 값 각각에 대해 모듈로 연산을 수행하는 모듈로 연산 장치를 더 포함하는, 동형 연산 시스템. |
| 6 | 제5항에 있어서,상기 제1 MAC 유닛은,상기 스토리지 장치로부터 상기 제1 계수 내 복수의 요소 값을 순차적으로 입력받아 저장하는 복수의 입력 버퍼,상기 제1 MAC 유닛에 대응하는 제1 기저 변환 값을 상기 브로드 캐스팅 유닛으로부터 수신하는 브로드캐스팅 버퍼, 및상기 복수의 입력 버퍼 및 상기 브로드캐스팅 버퍼에 연결되어 상기 복수의 요소 값 및 상기 제1 기저 변환 값을 곱하여 곱셈 값을 생성하는 곱셈기를 포함하는, 동형 연산 시스템. |
| 7 | 제6항에 있어서,상기 곱셈 값은 상기 제1 계수 내 복수의 요소 값 중 제1 요소 값 및 상기 제1 기저 변환 값을 곱한 제1 곱셈 값을 포함하고, 상기 곱셈기는 상기 복수의 요소 값 중 제2 요소 값 및 상기 제1 기저 변환 값을 곱하여 제2 곱셈 값을 생성하며,상기 제1 MAC 유닛은, 상기 곱셈기로부터의 곱셈 값을 저장하는 복수의 출력 버퍼, 및상기 복수의 출력 버퍼 및 상기 곱셈기에 연결되고, 상기 제1 곱셈 값 및 상기 제2 곱셈 값을 더하여 제3 덧셈 값을 생성하는 덧셈기를 더 포함하는, 동형 연산 시스템. |
| 8 | 제7항에 있어서,상기 제1 MAC 유닛은 상기 덧셈기에 연결되어 상기 동형 연산 관리 회로의 제어에 따라 상기 제3 덧셈 값을 상기 출력 버퍼 또는 상기 멀티플렉서에 전달하는 디멀티플렉서를 더 포함하는, 동형 연산 시스템. |
| 9 | 제7항에 있어서,상기 복수의 MAC 유닛 중 제2 MAC 유닛은 상기 제1 MAC 유닛의 상기 입력 버퍼로부터 상기 제1 계수를 전달받고, 상기 제2 MAC 유닛은 상기 제1 계수 내 제2 요소 값 및 상기 기저 변환 표 중 상기 제2 MAC 유닛에 대응하는 제2 기저 변환 값에 대해 MAC 연산을 수행하는, 동형 연산 시스템. |
| 10 | 제7항에 있어서,상기 동형 연산 관리 회로는 상기 복수의 입력 버퍼의 개수 및 상기 복수의 출력 버퍼의 개수에 기초하여 상기 브로드캐스팅 유닛의 동작 주기를 설정하는, 동형 연산 시스템. |