암호학 대중과학|그 놀라운 고전 암호학
PlatON云图
2021-03-30 10:40
本文约3533字,阅读全文需要约14分钟
PlatON은 암호화를 소개합니다.


작성자 | PlatON 기술 준비 그룹 Silas

사진출처 | 언스플래쉬


암호학(Cryptography)은 정보를 암호화하여 가공 및 전송하고, 암호화된 정보를 분석하는 주체입니다. RSA로 대표되는 공개키 암호화 시스템의 등장에 따라 암호의 발전과정은 고전암호와 현대암호의 두 부분으로 나눌 수 있다. 고전 암호는 "대체 방식"과 "대체 방식"을 기반으로 하며 주로 군사 및 정보 분야에서 사용되며 현대 암호는 수학, 컴퓨터 및 통신 과학을 기반으로 합니다. 정보 암호화 외에도 전자 서명, 데이터 무결성 , 신원 인증 등도 현대 암호학의 연구 주제입니다.

그리고그리고현대 암호화주요 차이점은 컴퓨터 사용에 있습니다.일반적으로 고전 암호화는 문자를 기반으로 하는 반면 현대 암호화는 이진 비트를 기반으로 합니다.

암호화의 개념은 사람들이 일반적으로 웹 사이트에 로그인하고 은행 계좌를 사용할 때 사용하는 "비밀번호"와 동일하지 않습니다. 인증을 위한 이러한 "암호"는 보다 정확하게는 암호로 번역되며 현대 암호화의 많은 응용 프로그램 중 하나입니다.

일반적으로 고전적인 암호화에는 주로 대체와 순열이라는 두 가지 범주가 포함됩니다.

대체 방법은 일정한 규칙에 따라 원본 정보의 문자 순서를 변경하는 방법이며, 대체 방법은 원본 정보의 문자를 일정한 규칙에 따라 다른 문자로 교체하는 방법입니다. 순열 방식과 치환 방식의 보안성이 취약하여 고대 아랍 학자들은 암호화된 정보를 해독하는 과학——암호 분석을 창안했으며 주파수 분석 방법을 통해 대체 암호화 방식을 해독했습니다.

바꾸다

대체 암호는 일반 텍스트의 문자를 다른 문자로 바꾸는 것입니다. 즉,대체 변환, 전체 암호화 과정에서 각 문자가 동일한 테이블로 대체되면단일 테이블 대체 암호마찬가지로, 전체 암호화 과정에서 각 문자가 다른 테이블로 대체되면다중 테이블 대체 암호첫 번째 레벨 제목

시저 암호


카이사르 암호(Caesar cipher)는 평문의 모든 문자를 알파벳의 뒤(또는 앞으로) 고정된 수의 오프셋으로 바꾼 다음 암호문으로 바꾸는 것이다. 예를 들어 오프셋이 3이면 모든 문자 A는 D로 바뀌고 B는 E가 됩니다. 일반 텍스트 Hello World의 암호화 프로세스는 다음과 같습니다.

  • 3의 오프셋을 취하십시오.

  • H의 마지막 3자리를 K로 계산

  • 등등

  • 암호문은 Khoor Zruog입니다.

마찬가지로 암호 해독 프로세스는 다음과 같습니다.

  • K의 처음 3자리를 H로 계산

  • 등등

  • 일반 텍스트는 다음과 같습니다. Hello World

첫 번째 레벨 제목

베이컨 암호

베이컨의 암호가 암호화되면 평문의 각 문자는 5개의 영문자 집합으로 변환됩니다. 변환은 다음 표에 따라 다릅니다.

위의 표에 따르면 평문 hello의 암호문은 AABBBBAABAAABABBABABBBABBBA이며, 분명히 암호문의 길이는 평문 길이의 5배입니다. 소문자 일반 텍스트를 암호화하는 데 사용되는 위의 테이블 외에도 대문자 일반 텍스트를 암호화하는 데 사용되는 테이블이 있습니다.

첫 번째 레벨 제목

버지니아 코드

버지니아 암호는 일련의 카이사르 암호를 사용하여 암호 알파벳을 형성하는 암호화 알고리즘입니다.

이 테이블은 26개의 알파벳 행으로 구성되며 각 행은 이전 행에서 왼쪽으로 1비트 이동됩니다. 행은 일반 텍스트 행이고 열은 키 열이며 암호문은 테이블에 있습니다. 일반 텍스트 HELLOWORLD의 암호화 결과는 다음과 같습니다.

  • SECRET과 같은 키워드를 키로 선택하십시오.

  • 평문의 첫 글자 H는 키의 첫 글자 S에 해당하므로 표의 S행 알파벳을 사용하여 암호화하여 암호문의 첫 글자 Z를 얻습니다.

  • 비유하자면, 키의 길이가 일반 텍스트의 길이보다 작으면 키의 첫 번째 문자로 이동하여 루프를 계속하고 마지막으로 암호문 ZINCSPGVNU를 얻습니다.

마찬가지로 암호 해독 프로세스는 다음과 같습니다.

  • 키의 첫 글자 S에 해당하는 S행 알파벳에 따르면 암호문의 첫 글자 Z는 H열에 위치하므로 평문의 첫 글자는 H이다.

  • 등등

첫 번째 레벨 제목

대사

첫 번째 레벨 제목

울타리 암호


울타리 암호라고도 하는 레일펜스 암호는 암호화할 평문을 n개의 그룹으로 나눈 후 각 그룹의 첫 번째 단어를 연결한 다음 각 그룹의 두 번째 단어를 연결하여 유추하여 불규칙한 문장을 형성한다. . 일반 텍스트 Hello World의 암호화 프로세스는 다음과 같습니다.

  • 공백 제거: HelloWorld

  • 5인조: Hello, World

  • 각 그룹의 첫 글자를 빼십시오: HW

  • 각 그룹의 두 번째 문자를 제거하십시오: eo

  • 등등

  • 함께 연결됨: HWeolrllod

  • 적절한 공백 추가: HWeol rllod

마찬가지로 암호 해독 프로세스는 다음과 같습니다.

  • 공백 제거: HWeolrlod

  • 5개의 열로 구분: HW, eo, lr, ll, od

  • 각 열의 첫 글자를 빼십시오: Hello

  • 등등

  • 함께 연결: HelloWorld

  • 적절한 공백 추가: Hello World

첫 번째 레벨 제목

다른

전당포 비밀번호

첫 번째 레벨 제목

돼지우리 비밀번호


Masonic 암호라고도 하는 Pigpen 암호는 격자를 기반으로 하는 간단한 대체 암호입니다. 다음 그림은 피그스티 암호에 사용된 기호와 26개의 영어 문자 간의 대응 관계를 보여줍니다.

평문 X MARKS THE SPOT의 암호화 결과는 다음과 같다.

천년 이상 동안 고전적인 암호화는 순열 및 대체 방법을 기반으로 계속 발전해 왔습니다. 버지니아 암호로 대표되는 다중 알파벳 대체 암호화 방법은 여러 개의 서로 다른 대체 암호표를 차례로 사용하여 평문의 문자를 차례로 암호화합니다. 제2차 세계대전 당시 독일군이 사용했던 '에니그마'는 복잡한 다중 테이블 교체 암호화 원리를 기반으로 한 기계식 암호기지만, 결국 자체 암호화 알고리즘의 결함으로 인해 " 튜링이 설계한 폭탄"

Hugh Whitemore의 희곡 Breaking the Code는 제2차 세계 대전 중에 영국이 Enigma 기계의 암호를 해독하는 데 도움을 준 Alan Turing의 삶을 따릅니다.

1996년 영국 베스트셀러 작가 로버트 해리스의 소설 "에니그마"는 에니그마를 해독한 블레츨리 파크의 암호학자들의 이야기를 들려줍니다. 2001년 이 소설은 영화 '에니그마'로 만들어졌다.

조나단 모스토우 감독의 2000년 영화 U-571은 에니그마 기계를 포획하기 위해 독일 잠수함을 점령하는 미국 잠수함 그룹에 관한 것입니다. 영화 속 에니그마 기계는 수집가의 손에 들린 진짜 물건이다. 이 영화의 줄거리는 역사적 전개를 엄격히 따르지 않는다.영국 왕립해군은 1941년 독일 잠수함 U-110을 격파하고 최초로 독일 해군 암호기를 손에 넣었다. 571. U-보트가 상륙하기 전에 나포되었습니다.

2014년 개봉한 영화 '이미테이션 게임'은 앨런 튜링을 비롯한 영국 수학자·논리학자들이 에니그마 암호 기계를 해독하는 데 군대를 돕는 이야기를 담고 있다.

2019년 NetEase는 비대칭 안티 서스펜스 모바일 게임 "제5인격"을 출시했습니다.생존자는 5개의 암호 기계를 해독하여 게이트 전원을 켜고 코드를 입력하여 탈출해야 합니다.해독해야 하는 5개의 암호 기계는 Enigma 암호입니다. 기계.

순열 및 대체 암호화의 약점은 암호문에서 평문의 일부 기능을 완전히 제거하지 못하고 평문의 일부 정보를 유지한다는 것입니다. 19세기 아우구스트 커크호프가 제안한 커크호프의 원리(Kerckhoff's Principle)는 일반적으로 암호화 알고리즘이 따라야 할 설계 원칙을 요약한 것이다. 암호화 시스템은 안전해야 합니다.

암호화 알고리즘의 보안 문제의 본질은 공격자가 암호화 알고리즘을 알고 있고 충분히 긴 암호문 조각을 가지고 있다는 전제에서 올바른 키를 추측할 가능성을 줄이는 방법입니다.

1948년 Shannon은 정보 이론을 창시하고 이듬해 논문에서 수학적 관점에서 암호화 시스템을 논의했으며 사람들은 과학적 관점에서 암호화의 신비를 탐구하기 시작했습니다.


PlatON Network 기술 연구 커뮤니티에 오신 것을 환영합니다.

Discord 개발자 커뮤니티

https://discord.com/invite/jAjFzJ3Cff


Reference:

[1] https://howiezhao.github.io/2018/08/10/classical-crypto/

[2] https://www.chainnews.com/articles/577594859080.htm

[3] The Code Book, Simon Singh (1999)

[4] The Code Breakers, David Kahn (1996)

[5] https://en.wikipedia.org/wiki/Enigma_machine


PlatON云图
作者文库