1 |
1
시드 값에 기초하여 하나 이상의 키 테이블을 생성하는 단계;라운드 트윅(tweak) 비트 열 및 페이스텔(Feistel) 구조의 입력 브랜치(branch)들 중 하나로 입력되는 입력 비트 열을 이용하여 상기 입력 비트 열을 상기 입력 비트 열의 길이보다 확장된 길이를 가지는 제1 임의의 비트 열로 변환하는 제1 변환 함수를 생성하는 단계;상기 하나 이상의 키 테이블을 참조하여 생성되는 제2 임의의 비트 열을 상기 입력 비트 열과 동일한 길이를 가지는 제3 임의의 비트 열로 변환하는 제2 변환 함수를 생성하는 단계;상기 하나 이상의 키 테이블, 상기 제1 변환 함수 및 상기 제2 변환 함수가 적용된 라운드 함수를 포함하는 페이스텔 구조의 블록 암호 알고리즘을 생성하는 단계를 포함하는 암호 알고리즘 생성 방법
|
2 |
2
청구항 1에 있어서,상기 하나 이상의 키 테이블에 대한 입력 비트 열 및 출력 비트 열의 길이는, 가용 메모리의 크기에 기초하여 동적으로 결정되는 암호 알고리즘 생성 방법
|
3 |
3
청구항 1에 있어서,상기 제1 임의의 비트 열의 길이는, 기 설정된 키 테이블 참조 횟수 및 상기 하나 이상의 키 테이블에 대한 입력 비트 열 길이에 기초하여 결정되는 암호 알고리즘 생성 방법
|
4 |
4
청구항 1에 있어서,상기 라운드 함수는, 상기 제1 변환 함수를 이용하여 상기 입력 브랜치들 중 하나로 입력되는 입력 비트 열을 상기 제1 임의의 비트 열로 변환하고, 기 설정된 테이블 참조 횟수에 따라 상기 하나 이상의 키 테이블을 참조하여 상기 제1 임의의 비트 열을 상기 제2 임의의 비트 열로 변환하며, 상기 제2 변환 함수를 이용하여 상기 제2 임의의 비트 열을 상기 제3 임의의 비트 열로 변환하도록 구성되는 암호 알고리즘 생성 방법
|
5 |
5
청구항 4에 있어서,상기 라운드 함수는, 상기 테이블 참조 횟수에 기초하여 상기 제1 임의의 비트 열을 각각 L(이때, L은 상기 하나 이상의 키 테이블에 대한 입력 비트 열의 길이)비트 길이를 가지는 d(이때, d는 상기 테이블 참조 횟수)개의 비트 열로 분할하고, 상기 하나 이상의 키 테이블을 상기 테이블 참조 횟수만큼 참조하여 상기 L비트 길이를 가지는 d개의 비트 열을 m(이때, m은 상기 하나 이상의 키 테이블에 대한 출력 비트 열의 길이)비트 길이를 가지는 d개의 비트 열로 변환하고, 상기 m 비트 길이를 가지는 d개의 비트 열을 연결하여 상기 제2 임의의 비트 열을 생성하도록 구성되는 암호 알고리즘 생성 방법
|
6 |
6
하나 이상의 프로세서;메모리; 및하나 이상의 프로그램을 포함하는 장치로서,상기 하나 이상의 프로그램은 상기 메모리에 저장되고 상기 하나 이상의 프로세서에 의해 실행되도록 구성되며,상기 프로그램은,시드 값에 기초하여 하나 이상의 키 테이블을 생성하는 단계;라운드 트윅(tweak) 비트 열 및 페이스텔(Feistel) 구조의 입력 브랜치(branch)들 중 하나로 입력되는 입력 비트 열을 이용하여 상기 입력 비트 열을 상기 입력 비트 열의 길이보다 확장된 길이를 가지는 제1 임의의 비트 열로 변환하는 제1 변환 함수를 생성하는 단계;상기 하나 이상의 키 테이블을 참조하여 생성되는 제2 임의의 비트 열을 상기 입력 비트 열과 동일한 길이를 가지는 제3 임의의 비트 열로 변환하는 제2 변환 함수를 생성하는 단계;상기 하나 이상의 키 테이블, 상기 제1 변환 함수 및 상기 제2 변환 함수가 적용된 라운드 함수를 포함하는 페이스텔 구조의 블록 암호 알고리즘을 생성하는 단계를 실행하기 위한 명령어들을 포함하는 암호 알고리즘 생성 장치
|
7 |
7
청구항 6에 있어서,상기 하나 이상의 키 테이블에 대한 입력 비트 열 및 출력 비트 열의 길이는, 가용 메모리의 크기에 기초하여 동적으로 결정되는 암호 알고리즘 생성 장치
|
8 |
8
청구항 6에 있어서,상기 제1 임의의 비트 열의 길이는, 기 설정된 키 테이블 참조 횟수 및 상기 하나 이상의 키 테이블에 대한 입력 비트 열 길이에 기초하여 결정되는 암호 알고리즘 생성 장치
|
9 |
9
청구항 6에 있어서,상기 라운드 함수는, 상기 제1 변환 함수를 이용하여 상기 입력 브랜치들 중 하나로 입력되는 입력 비트 열을 상기 제1 임의의 비트 열로 변환하고, 기 설정된 테이블 참조 횟수에 따라 상기 하나 이상의 키 테이블을 참조하여 상기 제1 임의의 비트 열을 상기 제2 임의의 비트 열로 변환하며, 상기 제2 변환 함수를 이용하여 상기 제2 임의의 비트 열을 상기 제3 임의의 비트 열로 변환하도록 구성되는 암호 알고리즘 생성 장치
|
10 |
10
청구항 9에 있어서,상기 라운드 함수는, 상기 테이블 참조 횟수에 기초하여 상기 제1 임의의 비트 열을 각각 L(이때, L은 상기 하나 이상의 키 테이블에 대한 입력 비트 열의 길이)비트 길이를 가지는 d(이때, d는 상기 테이블 참조 횟수)개의 비트 열로 분할하고, 상기 하나 이상의 키 테이블을 상기 테이블 참조 횟수만큼 참조하여 상기 L비트 길이를 가지는 d개의 비트 열을 m(이때, m은 상기 하나 이상의 키 테이블에 대한 출력 비트 열의 길이)비트 길이를 가지는 d개의 비트 열로 변환하고, 상기 m 비트 길이를 가지는 d개의 비트 열을 연결하여 상기 제2 임의의 비트 열을 생성하도록 구성되는 암호 알고리즘 생성 장치
|
11 |
11
라운드 트윅(tweak) 비트 열을 생성하는 단계;제1 변환 함수를 이용하여 상기 라운드 트윅 비트 열 및 페이스텔(Feistel) 구조의 입력 브랜치(branch)들 중 하나로 입력되는 제1 입력 비트 열을 상기 제1 입력 비트 열의 길이보다 확장된 길이를 가지는 제1 임의의 비트 열로 변환하는 단계;하나 이상의 키 테이블을 참조하여 상기 제1 임의의 비트 열을 제2 임의의 비트 열로 변환하는 단계;제2 변환 함수를 이용하여 상기 제2 임의의 비트 열을 상기 제1 입력 비트 열과 동일한 길이를 가지는 제3 임의의 비트 열로 변환하는 단계; 및상기 제3 임의의 비트 열과 상기 페이스텔 구조의 브랜치 들 중 다른 하나로 입력되는 제2 입력 비트 열 사이의 배타적 논리 합 연산을 수행하는 단계를 포함하는 암호화 방법
|
12 |
12
청구항 11에 있어서,상기 제1 임의의 비트 열의 길이는, 기 설정된 키 테이블 참조 횟수 및 상기 하나 이상의 키 테이블에 대한 입력 비트 열 길이에 기초하여 결정되는 암호화 방법
|
13 |
13
청구항 11에 있어서,상기 제2 임의의 비트 열로 변환하는 단계는, 기 설정된 테이블 참조 횟수에 따라 상기 하나 이상의 키 테이블을 참조하여 상기 제1 임의의 비트 열을 상기 제2 임의의 비트 열로 변환하는 암호화 방법
|
14 |
14
청구항 13에 있어서,상기 제2 임의의 비트 열로 변환하는 단계는, 상기 테이블 참조 횟수에 기초하여 상기 제1 임의의 비트 열을 L(이때, L은 상기 하나 이상의 키 테이블에 대한 입력 비트 열의 길이)비트 길이를 가지는 d(이때, d는 상기 테이블 참조 횟수)개의 비트 열로 분할하는 단계; 상기 하나 이상의 키 테이블을 상기 테이블 참조 횟수만큼 참조하여 상기 L비트 길이를 가지는 d개의 비트 열을 m(이때, m은 상기 하나 이상의 키 테이블에 대한 출력 비트 열의 길이)비트 길이를 가지는 d개의 비트 열로 변환하는 단계; 및상기 m 비트 길이를 가지는 d개의 비트 열을 연결하여 상기 제2 임의의 비트 열을 생성하는 단계를 포함하는 암호화 방법
|
15 |
15
하나 이상의 프로세서;메모리; 및하나 이상의 프로그램을 포함하는 장치로서,상기 하나 이상의 프로그램은 상기 메모리에 저장되고 상기 하나 이상의 프로세서에 의해 실행되도록 구성되며,상기 프로그램은,라운드 트윅(tweak) 비트 열을 생성하는 단계;제1 변환 함수를 이용하여 상기 라운드 트윅 비트 열 및 페이스텔(Feistel) 구조의 입력 브랜치(branch)들 중 하나로 입력되는 제1 입력 비트 열을 상기 제1 입력 비트 열의 길이보다 확장된 길이를 가지는 제1 임의의 비트 열로 변환하는 단계;하나 이상의 키 테이블을 참조하여 상기 제1 임의의 비트 열을 제2 임의의 비트 열로 변환하는 단계;제2 변환 함수를 이용하여 상기 제2 임의의 비트 열을 상기 제1 입력 비트 열과 동일한 길이를 가지는 제3 임의의 비트 열로 변환하는 단계; 및상기 제3 임의의 비트 열과 상기 페이스텔 구조의 브랜치 들 중 다른 하나로 입력되는 제2 입력 비트 열 사이의 배타적 논리 합 연산을 수행하는 단계를 실행하기 위한 명령어들을 포함하는 암호화 장치
|
16 |
16
청구항 15에 있어서,상기 제1 임의의 비트 열의 길이는, 기 설정된 키 테이블 참조 횟수 및 상기 하나 이상의 키 테이블에 대한 입력 비트 열 길이에 기초하여 결정되는 암호화 장치
|
17 |
17
청구항 15에 있어서,상기 제2 임의의 비트 열로 변환하는 단계는, 기 설정된 테이블 참조 횟수에 따라 상기 하나 이상의 키 테이블을 참조하여 상기 제1 임의의 비트 열을 상기 제2 임의의 비트 열로 변환하는 암호화 장치
|
18 |
18
청구항 17에 있어서,상기 제2 임의의 비트 열로 변환하는 단계는, 상기 테이블 참조 횟수에 기초하여 상기 제1 임의의 비트 열을 L(이때, L은 상기 하나 이상의 키 테이블에 대한 입력 비트 열의 길이)비트 길이를 가지는 d(이때, d는 상기 테이블 참조 횟수)개의 비트 열로 분할하는 단계; 상기 하나 이상의 키 테이블을 상기 테이블 참조 횟수만큼 참조하여 상기 L비트 길이를 가지는 d개의 비트 열을 m(이때, m은 상기 하나 이상의 키 테이블에 대한 출력 비트 열의 길이)비트 길이를 가지는 d개의 비트 열로 변환하는 단계; 및상기 m 비트 길이를 가지는 d개의 비트 열을 연결하여 상기 제2 임의의 비트 열을 생성하는 단계를 포함하는 암호화 장치
|