1 |
1
하나 이상의 프로세서들, 및 상기 하나 이상의 프로세서들에 의해 실행되는 하나 이상의 프로그램들을 저장하는 메모리를 구비한 컴퓨팅 장치에서 수행되는 방법으로서,생성함수(G)를 이용하여, k*N 비트(k는 2 이상의 자연수)의 랜덤한 수열을 생성하는 수열 생성기,입력값 및 상기 수열 중 기 설정된 제1 위치의 N비트에 대하여, 기 설정된 유한체 내에서의 곱셈 연산을 수행하고, 상기 곱셉 연산의 결과값 및 상기 수열 중 기 설정된 제2 위치의 N비트에 대한 모듈로 덧셈 연산을 수행하여 출력값을 생성하는 선형 레이어, 및기 설정된 비선형 레이어를 이용하여,N비트의 암호키(K)에 대하여, 상기 선형 레이어 및 상기 비선형 레이어를 기 설정된 횟수(r) 만큼 반복 적용하는 단계; 및상기 반복 적용의 결과값 및 상기 암호키를 모듈로 덧셈 연산하여 키 수열을 생성하는 단계를 포함하는, 대칭키 암호화 방법
|
2 |
2
청구항 1에 있어서,상기 수열 생성기는, 목표 보안강도 크기(λ 비트) 이상의 논스(nc, nonce) 및 카운터(ctr)를 입력받고, 기 설정된 상기 생성함수(G)를 이용하여 상기 선형 레이어의 각 라운드 별 서로 다른 k*N 비트의 랜덤한 수열을 생성하는, 대칭키 암호화 방법
|
3 |
3
청구항 1에 있어서,상기 유한체 내에서의 곱셈 연산은, 기 설정된 기약다항식과 상기 제1 위치의 N비트로부터 생성되는 행렬(M)과 상기 선형 레이어의 입력값으로 구성되는 벡터(x)간의 벡터곱 연산을 통해 수행되는, 대칭키 암호화 방법
|
4 |
4
청구항 3에 있어서,상기 기약다항식은, 다음의 수학식χn - a(이때, n은 2의 거듭제곱, a는 유한체 Zt*의 생성원, t는 소수)으로 정의되는, 대칭키 암호화 방법
|
5 |
5
청구항 4에 있어서,상기 제1 위치의 N비트로부터 생성되는 수열을 a = (a1,
|
6 |
6
청구항 5에 있어서,상기 제2 위치의 N비트로부터 생성되는 수열을 b = (b1,
|
7 |
7
청구항 1에 있어서,상기 키수열 및 평문을 모듈로 덧셈하여 암호문을 생성하는 단계를 더 포함하는, 대칭키 암호화 방법
|
8 |
8
청구항 1에 있어서,상기 키수열 및 암호문을 모듈로 뺄셈하여 평문을 복원하는 단계를 더 포함하는, 대칭키 암호화 방법
|
9 |
9
하나 이상의 명령어를 저장하는 메모리; 및상기 하나 이상의 명령어를 실행하는 하나 이상의 프로세서를 포함하고,상기 하나 이상의 프로세서는, 상기 하나 이상의 명령어들이 실행됨에 따라,생성함수(G)를 이용하여, k*N 비트(k는 2 이상의 자연수)의 랜덤한 수열을 생성하는 수열 생성기,입력값 및 상기 수열 중 기 설정된 제1 위치의 N비트에 대하여, 기 설정된 유한체 내에서의 곱셈 연산을 수행하고, 상기 곱셉 연산의 결과값 및 상기 수열 중 기 설정된 제2 위치의 N비트에 대한 모듈로 덧셈 연산을 수행하여 출력값을 생성하는 선형 레이어, 및기 설정된 비선형 레이어를 이용하여,N비트의 암호키(K)에 대하여, 상기 선형 레이어 및 상기 비선형 레이어를 기 설정된 횟수(r) 만큼 반복 적용하는 단계; 및상기 반복 적용의 결과값 및 상기 암호키를 모듈로 덧셈 연산하여 키 수열을 생성하는 단계를 수행하는, 대칭키 암호화 장치
|
10 |
10
청구항 9에 있어서,상기 수열 생성기는, 목표 보안강도 크기(λ 비트) 이상의 논스(nc, nonce) 및 카운터(ctr)를 입력받고, 기 설정된 상기 생성함수(G)를 이용하여 상기 선형 레이어의 각 라운드 별 서로 다른 k*N 비트의 랜덤한 수열을 생성하는, 대칭키 암호화 장치
|
11 |
11
청구항 9에 있어서,상기 유한체 내에서의 곱셈 연산은, 기 설정된 기약다항식과 상기 제1 위치의 N비트로부터 생성되는 행렬(M)과 상기 선형 레이어의 입력값으로 구성되는 벡터(x) 간의 벡터곱 연산을 통해 수행되는, 대칭키 암호화 장치
|
12 |
12
청구항 11에 있어서,상기 기약다항식은, 다음의 수학식χn - a(이때, n은 2의 거듭제곱, a는 유한체 Zt*의 생성원, t는 소수)으로 정의되는, 대칭키 암호화 장치
|
13 |
13
청구항 12에 있어서,상기 제1 위치의 N비트로부터 생성되는 수열을 a = (a1,
|
14 |
14
청구항 13에 있어서,상기 제2 위치의 N비트로부터 생성되는 수열을 b = (b1,
|
15 |
15
청구항 9에 있어서,상기 하나 이상의 프로세서는, 상기 하나 이상의 명령어들이 실행됨에 따라,상기 키수열 및 평문을 모듈로 덧셈하여 암호문을 생성하는 단계를 더 수행하는, 대칭키 암호화 장치
|
16 |
16
청구항 9에 있어서,상기 하나 이상의 프로세서는, 상기 하나 이상의 명령어들이 실행됨에 따라,상기 키수열 및 암호문을 모듈로 뺄셈하여 평문을 복원하는 단계를 더 수행하는, 대칭키 암호화 장치
|
17 |
17
비일시적 컴퓨터 판독 가능한 저장매체(non-transitory computer readable storage medium)에 저장된 컴퓨터 프로그램으로서,상기 컴퓨터 프로그램은 하나 이상의 명령어들을 포함하고, 상기 명령어들은 하나 이상의 프로세서들을 갖는 컴퓨팅 장치에 의해 실행될 때, 상기 컴퓨팅 장치로 하여금,생성함수(G)를 이용하여, k*N 비트(k는 2 이상의 자연수)의 랜덤한 수열을 생성하는 수열 생성기,입력값 및 상기 수열 중 기 설정된 제1 위치의 N비트에 대하여, 기 설정된 유한체 내에서의 곱셈 연산을 수행하고, 상기 곱셉 연산의 결과값 및 상기 수열 중 기 설정된 제2 위치의 N비트에 대한 모듈로 덧셈 연산을 수행하여 출력값을 생성하는 선형 레이어, 및기 설정된 비선형 레이어를 이용하여,N비트의 암호키(K)에 대하여, 상기 선형 레이어 및 상기 비선형 레이어를 기 설정된 횟수(r) 만큼 반복 적용하는 단계; 및상기 반복 적용의 결과값 및 상기 암호키를 모듈로 덧셈 연산하여 키 수열을 생성하는 단계를 수행하도록 하는, 컴퓨터 프로그램
|