메뉴 건너뛰기
.. 내서재 .. 알림
소속 기관/학교 인증
인증하면 논문, 학술자료 등을  무료로 열람할 수 있어요.
한국대학교, 누리자동차, 시립도서관 등 나의 기관을 확인해보세요
(국내 대학 90% 이상 구독 중)
로그인 회원가입 고객센터 ENG
주제분류

추천
검색

논문 기본 정보

자료유형
학위논문
저자정보

김성재 (인하대학교, 인하대학교 대학원)

지도교수
이한호
발행연도
2022
저작권
인하대학교 논문은 저작권에 의해 보호받습니다.

이용수139

표지
AI에게 요청하기
추천
검색

이 논문의 연구 히스토리 (2)

초록· 키워드

오류제보하기
본 논문에서는 양자내성암호(Post-Quantum Cryptography)를 위한 Crystals-Kyber 암호 알고리즘에 기반한 고성능 Crystals-Kyber 암호 아키텍처를 제안한다. Crystals-Kyber 암호 알고리즘은 NIST(National Institute of Standards and Technology)에서 양자내성암호 표준화를 위한 공모전 후보 중 하나로 Round 3에 진출한 알고리즘 중 하나이다[2]. 제안하는 Crystals-Kyber 암호 아키텍처는 크게 세가지 모듈로 구성되며 공개키(Public key)와 비밀키(Secret key)를 생성하는Key Generator 모듈과 사용자의 메시지를 암호화하는 Encryptor 모듈 암호화된 암호문(Ciphertext)를 복호화하는 Decryptor 모듈로 구성되어 있다.
격자-기반 암호 알고리즘은 LWE(Learning With Error) 문제를 사용해왔다. LWE는 암호화 과정에서 에러를 추가하여 에러가 포함된 선형방정식으로부터 균일한 랜덤 벡터로부터 구별하는 LWE(Learning with Errors) 문제를 기반으로 한다. 하지만 계산시에 키의 크기가 커지는 단점과 연산속도가 느리다는 단점이 있어 이를 변형한 다항식 환(Ring) 안에서 수행하는 Ring-LWE문제를 사용한다. Crystals-Kyber암호 알고리즘은 Ring-LWE 문제를 기반으로 Module-LWE를 사용한다[15]. Crystals-Kyber의 Module-LWE는 다항식 환 Rq를 파라미터 k값에 따라 여러 번 Sampling 하여 만들어진 다항식 행렬을 NTT(Number Theoretic Transform) 도메인에서 곱셈 연산을 한다. Crystals-Kyber의 Sampling 과정은 NIST에 의해 표준화가 된 Keccak 알고리즘[17]을 사용한 해시 함수 SHA3(Secure Hash Algorithm3) 를 이용하며 세부적으로는 SHA3-512, SHAKE-128, SHAKE-256을 사용한다. Crystals-Kyber의 암호 알고리즘은 가장 연산 시간이 긴 다항식 곱셈을 연산 시간을 줄이기 위해 NTT를 활용한다. 따라서 본 논문에서 제안하는 Crystals-Kyber는 파이프라인이 가능한 구조인 2병렬-MDF(Multi-path Delay Feedback) NTT를 사용하여 연산 시간을 크게 줄인 하드웨어 아키텍처를 구현한다.
Crystals-Kyber의 암호 알고리즘은 보안 강도에 따라 Security level이 각 1, 3, 5, 로 나뉜다. 제안하는 Crystals-Kyber 암호 아키텍처는 Security level 5 에 해당하는 하드웨어 구현을 하였고, 파라미터는 n=256, q=3329, k=4 에 해당한다. Module-LWE를 사용하는 Crystals-Kyber 알고리즘은 파라미터 n과 q를 고정으로 하며 k 값만을 변경하여 Security level이 변경 가능하기 때문에 확장성이 용이하다는 장점이 있다.
제안하는 고성능 Crystals-Kyber 암호 아키텍처는 Xilinx VIVADO툴을 이용하여 Virtex-7 FPGA 플랫폼에서 설계 및 구현 하였다. Crystals-Kyber 암호 아키텍처는 NTT(Number Theoretic Transform) 도메인에서 곱셈 연산이 이루어지기 때문에 구조적으로 파이프라인이 가능한 Multi-path Delay Feedback(MDF)방식 NTT모듈과 INTT모듈을 사용하여 데이터 처리율을 향상 시켰다. 면적과 데이터 처리율 간에 적절한 합의점으로 2-병렬 구조로 설계하였다. 제안하는 Crystals-Kyber-1024 암호 아키텍처는 2-병렬-MDF NTT를 사용해 연산 시간을 크게 단축시켰으며 높은 클럭주파수에서 동작이 가능하도록 설계 되었다. 또한 면적과 연산 시간을 고려한 ATP(Area Time Product)는 높은 효율성을 나타냈다.
본 논문에서 제안하는 양자내성암호를 위한 고성능 Crystals-Kyber 암호 아키텍처는 정보화 시대에 있어 양자컴퓨터와 기존컴퓨터 모두로부터 보안성이 보장된 암호 알고리즘으로 다양한 곳에서 고성능 Crystals-Kyber 암호 아키텍처가 사용될 수 있을 것으로 기대된다.

목차

제 1 장 서 론 1
제 2 장 본 론 5
제 1 절 배경 지식 5
1.1. 대칭키 암호 6
1.2. 공개키 암호 6
1.3. NIST(National Institute of Standards and Technology) 양자내성암호 공모전 7
1.4. 격자-기반(Lattice-based) 암호 알고리즘 9
1.5. Module-LWE 암호 시스템 10
1.6. 해시 함수 11
제 2 절 Crystals-Kyber 암호 알고리즘 13
2.1. Crystals-Kyber 알고리즘 14
2.2. Key Generation 알고리즘 16
2.3. Encryption 알고리즘 16
2.4. Decryption 알고리즘 18
2.5. Rejection Sampling 알고리즘 19
2.6. Binomial Sampling 알고리즘 22
2.7. Decode 알고리즘 23
2.8. Montgomery reduction 알고리즘 23
2.9. Barrett reduction 알고리즘 24
제 3 절 NTT 코어 아키텍처 26
3.1. NTT-기반 다항식 곱셈기 26
1) Number Theoretic Transform 26
3.2. 파이프라인-기반 NTT 구조 29
1) SDF(Single-path Delay Feedback) NTT 구조 30
2) MDF(Multi-path Delay Feedback) NTT 구조 30
제 4 절 Crystals-Kyber 암호 아키텍처 34
4.1. Crystals-Kyber 아키텍처 34
4.2. Crystals-Kyber 세부 모듈 36
1) PRNG(Pseudo Random Number Generator) 코어 36
2) Rejection Uniform 37
3) CBD(Centered Binomial Distribution) 38
4) Montgomery Reduction 38
5) Barrett Reduction 39
6) NTT 40
7) INTT 42
8) Compress 43
9) Decompress 44
10) Encoder, Decoder 46
11) Point-Wise multiplication 48
4.3. Key generator 49
4.4. Encryptor 50
4.5. Decryptor 51
제 5 절 구현 및 성능 비교 53
5.1. Crystals-Kyber 암호 아키텍처 시뮬레이션 결과 53
5.2. 제안된 Crystals-Kyber-1024 암호 아키텍처 구현 결과 분석 58
제 3 장 결 론 61
참고문헌 63

최근 본 자료

전체보기

댓글(0)

0