루시퍼 (암호)
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.
1. 개요
루시퍼는 암호 해독의 초기 형태로, 전치와 치환 암호화를 결합하여 사용했다. 1971년 호스트 페이스텔은 48비트 키와 48비트 블록을 사용하는 변형을 설명했으며, 이후 128비트 키와 128비트 블록을 사용하는 더 강력한 변형을 제시했다. IBM은 페이스텔 네트워크 버전의 루시퍼를 데이터 암호화 표준(DES)의 후보로 제출했으며, 이는 미국 국가 안보국(NSA)의 요구에 따라 키 크기 축소 및 차분 암호 분석에 대한 저항력 확보를 통해 DES로 발전했다. 1984년 아서 소킨은 16라운드 페이스텔 네트워크 구조를 가진 루시퍼 버전을 발표했는데, 128비트 키와 블록 크기를 사용하며, 각 라운드에서 64비트 서브키와 8개의 상호 교환 제어 비트를 활용한다.
더 읽어볼만한 페이지
- 데이터 암호화 표준 - 트리플 DES
트리플 DES는 DES의 보안 취약점을 보완하기 위해 개발된 블록 암호화 알고리즘으로, DES를 세 번 적용하여 112비트 또는 168비트의 유효 키 길이를 제공하지만, 보안 취약점과 낮은 효율성으로 AES로 대체되는 추세이다. - 파이스텔 암호 - SEED
SEED는 대한민국에서 개발된 128비트 블록 암호 알고리즘으로, 16라운드 파이스텔 네트워크 구조와 2개의 S-box, 복잡한 키 스케줄을 사용하며, 여러 표준 프로토콜에서 채택되었으나, 브라우저 지원 중단과 국제적 사용 미비로 인해 논의가 진행되었다. - 파이스텔 암호 - 카멜리아 (암호)
카멜리아는 128비트 블록 크기에 128/192/256비트 키 길이를 지원하는 피스텔 암호로, AES와 호환되며 안전성을 인정받아 ISO/IEC, NESSIE, CRYPTREC 등에서 사용이 승인되었다. - 블록 암호 - 데이터 암호화 표준
데이터 암호화 표준(DES)은 미국 국립표준기술연구소에서 개발되어 널리 사용되었던 대칭키 암호 알고리즘이지만, 짧은 키 길이와 취약점 때문에 고급 암호화 표준(AES)으로 대체되었고, 트리플 DES 형태로 일부 시스템에서 사용되며 암호학 발전에 기여한 역사적 의미가 있다. - 블록 암호 - 고급 암호화 표준
고급 암호화 표준(AES)은 미국 국립표준기술연구소에서 제정한 대칭 키 암호화 블록 암호 표준으로, 치환-순열 네트워크 구조에 기반하여 128비트 블록 크기와 다양한 키 크기를 지원하며, 빠른 속도와 효율성으로 널리 사용된다.
루시퍼 (암호) | |
---|---|
개요 | |
이름 | 루시퍼 |
종류 | 블록 암호 |
최초 발표 | 1971년 |
설계자 | 호르스트 파이스텔 등 |
파생 | DES |
구조 | SPN 구조, 파이스텔 구조 |
라운드 수 | 16 |
암호 세부 정보 | |
키 크기 | 48, 64 또는 128 비트 |
블록 크기 | 48, 32 또는 128 비트 |
2. 역사
루시퍼는 전치와 치환 암호화를 결합한 암호 해독 기술의 초기 형태이다. 1970년대 초, IBM의 호스트 페이스텔(Horst Feistel)과 돈 코퍼스미스(Don Coppersmith)를 중심으로 한 연구팀이 개발했다.[2]
초기 루시퍼는 다양한 형태로 개발되었다. 1971년 페이스텔은 48비트 키와 48비트 블록을 사용하는 치환-순열 네트워크(SPN) 구조의 변형을 특허 출원했다.[8] 같은 해 존 L. 스미스(John L. Smith)는 64비트 키와 32비트 블록을 사용하는 다른 변형을 개발했다.[3] 이후 페이스텔은 128비트 키와 128비트 블록을 사용하는 더 강력한 버전을 개발했고,[4] 1984년 아서 소킨(Arthur Sorkin)은 16라운드 페이스텔 네트워크 구조의 루시퍼를 설명했지만, 이는 차분 암호 분석에 취약한 것으로 알려졌다.[5]
IBM은 페이스텔 네트워크 버전의 루시퍼를 데이터 암호화 표준(DES)의 후보로 제출했다. 국가 안보국(NSA)은 키 크기를 56비트로 줄이고 블록 크기를 64비트로 조정하는 등 설계를 변경하고, 차분 암호 분석에 대한 내성을 강화하여 1977년 DES로 채택했다.[6]
"루시퍼"라는 이름은 페이스텔이 작업 중이던 개인 정보 보호 시스템 "데몬스트레이션(Demonstration)"의 약칭인 "데몬(Demon)"에서 따온 말장난이다.[7]
2. 1. 초기 버전 (1971년)
루시퍼는 암호 해독의 출발점으로 전치와 치환 암호화를 결합하여 사용한다. 1971년 페이스텔이 설명한 한 변형은[2] 48비트 키를 사용하고 48비트 블록에서 작동한다. 이 암호는 치환-순열 네트워크이며 두 개의 4비트 S-box를 사용한다. 키는 어떤 S-box를 사용할지 선택한다. 특허는 한 번에 24비트에서 작동하는 암호의 실행과 한 번에 8비트에서 작동하는 순차적 버전을 설명한다. 같은 해 존 L. 스미스가 개발한 또 다른 변형[3]은 64비트 키를 사용하고, 32비트 블록에서 작동하며, 모듈로 4의 덧셈과 단일 4비트 S-box를 사용한다. 이 구조는 클럭 사이클당 4비트에서 작동하도록 설계되었다. 이는 알려진 가장 작은 블록 암호 구현 중 하나일 수 있다.1971년 7월에 발행된 《미국 특허 번호 3,798,359》[8]에서는 48비트 키를 사용하여 48비트 블록을 조작한다. SPN 구조로 두 개의 4비트 S-box를 사용한다. 키에 따라 어느 S-box를 사용할지 결정한다. 특허에는 24비트를 한 번에 조작하는 방식과 8비트씩 순차적으로 조작하는 방식이 기재되어 있다.
1971년 11월에 발행된 《미국 특허 번호 3,796,830》[9]에서는 64비트 키를 사용하여 32비트 블록을 조작한다. 덧셈과 4를 법으로 하는 합동식 연산, 하나의 4비트 S-box를 사용한다. 4비트씩 처리하는 방식이다. 블록 암호 구현으로서는 매우 작다.
2. 2. 페이스텔의 개선 버전 (1973년)
Feistel영어은 1973년에 128비트 키와 128비트 블록을 사용하는 더 강력한 루시퍼 버전을 설명했다.[4] 이 버전은 SPN 구조로, 두 개의 4비트 S-box를 사용하며 키에 따라 어떤 S-box를 사용할지 결정한다.[10]아서 소킨(Arthur Sorkin)은 1984년에 16라운드 페이스텔 네트워크를 사용하는 루시퍼를 설명했는데, 이 또한 128비트 블록과 128비트 키를 사용한다.[5] 그러나 이 버전은 차분 암호 분석에 취약하여, 키의 약 절반에 대해 236개의 선택 평문과 236의 시간 복잡도로 암호를 해독할 수 있다.[6]
2. 3. 소킨의 16라운드 페이스텔 네트워크 버전 (1984년)
Sorkin|소킨영어[5]은 루시퍼를 16라운드 페이스텔 네트워크로 설명하며, 128비트 블록과 128비트 키를 사용한다고 하였다.[5] 이 버전은 차분 암호 분석에 취약하다. 키의 약 절반에 대해 236개의 선택 평문과 236의 시간 복잡도로 암호를 해독할 수 있다.[6]Sorkin|소킨영어[11]에 기술된 버전에 따르면, DES와 마찬가지로 16 라운드의 페이스텔 라운드를 사용하지만, 처음과 마지막의 정렬은 없다. 키와 블록 크기는 모두 128비트이다. 페이스텔 함수는 64비트 서브키 및 8개의 "상호 교환 제어 비트"(ICB)와 함께 64비트 데이터 블록의 절반에 대해 작동한다. ICB는 스와핑(swapping) 작업을 제어한다. 64비트 데이터 블록은 8개의 8비트 바이트로 구성된 일련의 배열로 간주되며, 특정 바이트에 해당하는 ICB가 0이면 왼쪽 및 오른쪽 4비트 절반(니블)이 교환된다. ICB가 1이면 해당 바이트는 변경되지 않는다. 각 바이트는 두 개의 4×4비트 S-box (S0 및 S1)에 의해 처리된다. S0는 왼쪽 4비트 니블, S1은 오른쪽 4비트 니블에 작동한다. 그 후 결과 출력을 연결하고 XOR을 사용하여 서브키와 결합한다. 이를 "키 중단"이라고 한다. 이는 두 단계의 순열 작업으로 이어진다. 첫 번째는 고정 순열에 따라 각 바이트를 순열하고, 두 번째 단계는 바이트 간에 비트를 혼합한다.
키 스케줄링 알고리즘은 비교적 단순하다. 먼저 128개의 키 비트가 시프트 레지스터에 로드된다. 각 라운드에서 레지스터의 왼쪽 64비트는 서브키를 형성하고 오른쪽 8비트는 ICB 비트를 형성한다. 각 라운드 후 레지스터는 왼쪽으로 56비트 회전한다.
3. 데이터 암호화 표준(DES)으로의 발전
IBM은 페이스텔 네트워크 버전의 루시퍼를 데이터 암호화 표준(고급 암호화 표준 과정 비교)의 후보로 제출했다.[5] 국가 안보국은 암호의 키 크기를 56비트로 줄이고 블록 크기를 64비트로 줄였으며, 당시 IBM과 NSA만 알고 있던 차분 암호 분석에 대한 저항력을 갖도록 하여 DES가 되었다.[6]
IBM은 Feistel 구조 버전의 루시퍼를 DES의 후보로 제출했다. 설계를 수정한 후 (키를 56비트, 블록 길이를 64비트로 줄이고, 차분 공격에 대한 내성을 강화) 1977년에 데이터 암호화 표준으로 채택되었다.[11]
4. 소킨 버전의 구조 (1984년)
Sorkin영어, 소킨|한국어(1984)[11]에 기술된 버전은 DES와 마찬가지로 16 라운드의 피스텔 구조를 사용하지만, 처음과 마지막의 정렬은 없다. 키와 블록 크기는 모두 128비트이다. 피스텔 함수는 64비트 서브키 및 8개의 "상호 교환 제어 비트"(ICB)와 함께 64비트 데이터 블록의 절반에 대해 작동한다. ICB는 스와핑 작업을 제어한다. 64비트 데이터 블록은 8개 8비트 바이트의 집합으로, 특정 바이트에 해당하는 ICB가 0이면 왼쪽 및 오른쪽 4비트 절반(니블)이 교환된다. ICB가 1이면 바이트는 변경되지 않은 상태로 유지된다. 각 바이트는 2개의 4×4비트 S-box (S0 및 S1)에 의해 작동된다. S0는 왼쪽 4비트 니블에 대해 작동하고 S1은 오른쪽에 대해 작동한다. 결과 출력은 연결된 다음 XOR을 사용하여 서브키와 결합된다. 이것은 "키 중단"이라고 한다. 이는 두 단계의 순열 작업으로 이어진다. 첫 번째는 고정 순열에 따라 각 바이트를 순열한다. 두 번째 단계는 바이트 간에 비트를 혼합한다.[11]
4. 1. 특징
Lucifer영어는 피스텔 라운드를 16개 가지지만 초기 또는 최종 순열은 없다. 키와 블록 크기는 모두 128비트이다. 피스텔 함수는 64비트 서브키 및 8개의 "상호 교환 제어 비트"(ICB)와 함께 64비트 데이터 블록의 절반에 대해 작동한다. ICB는 스와핑 작업을 제어한다. 64비트 데이터 블록은 8개 8비트 바이트의 집합으로, 특정 바이트에 해당하는 ICB가 0이면 왼쪽 및 오른쪽 4비트 절반(니블)이 교환된다. ICB가 1이면 바이트는 변경되지 않은 상태로 유지된다. 각 바이트는 2개의 4×4비트 S-box (S0 및 S1)에 의해 작동된다. S0는 왼쪽 4비트 니블에 대해 작동하고 S1은 오른쪽에 대해 작동한다. 결과 출력은 연결된 다음 XOR을 사용하여 서브키와 결합된다. 이것은 "키 중단"이라고 한다. 이는 두 단계의 순열 작업으로 이어진다. 첫 번째는 고정 순열에 따라 각 바이트를 순열한다. 두 번째 단계는 바이트 간에 비트를 혼합한다.[11]키 스케줄링 알고리즘은 비교적 간단하다. 처음에는 128개의 키 비트가 시프트 레지스터에 로드된다. 각 라운드에서 레지스터의 왼쪽 64비트는 서브키를 형성하고 오른쪽 8비트는 ICB 비트를 형성한다. 각 라운드 후 레지스터는 왼쪽으로 56비트 회전한다.[11]
4. 2. 키 스케줄링
키 스케줄 알고리즘은 비교적 단순하다. 128비트의 키가 시프트 레지스터에 로드된다. 각 라운드에서 레지스터의 왼쪽 64비트는 서브키를 형성하고 오른쪽 8비트는 ICB 비트를 형성한다. 각 라운드 후 레지스터는 왼쪽으로 56비트 회전한다.[11]참조
[1]
웹사이트
QDLPluginEncryptionPS Reference - QDLPlgLucifer
http://www.patisoftw[...]
2020-11-22
[2]
특허
Block Cipher Cryptographic System
IBM
1971-06-30
[3]
특허
Recirculating Block Cipher Cryptographic System
IBM
1971-11-02
[4]
간행물
Cryptography and Computer Privacy
1973-05
[5]
논문
Lucifer: a cryptographic algorithm
1984
[6]
논문
Differential Cryptanalysis of Lucifer
1996
[7]
서적
Computer Security and Cryptography
https://books.google[...]
John Wiley & Sons
[8]
특허
Block Cipher Cryptographic System
IBM
1971-06-30
[9]
특허
Recirculating Block Cipher Cryptographic System
IBM
1971-11-02
[10]
간행물
Cryptography and Computer Privacy
1973-05
[11]
간행물
LUCIFER: a cryptographic algorithm
1984
[12]
논문
Differential Cryptanalysis of Lucifer
1996
본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.
문의하기 : help@durumis.com