분산 컴퓨팅, 메커니즘 설계 및 암호화 알고리즘은 블록 체인 기술의 삼위 일체를 형성합니다. 분산 컴퓨팅은 분산 형 컴퓨터 네트워크를 활용하며 토렌트 네트워크의 형태로 블록 체인 이전에 존재했습니다..

그러나 토렌트 사이트는 참여자의 행동을 통제 할 수단이 없었으며, 메커니즘 설계가 블록 체인에 들어가는 곳입니다. 네트워크 참여자가 네트워크의 이익을 위해 일하도록 인센티브를 제공합니다..

암호화는 이러한 인센티브를 보호하기위한 보안 역할을합니다. 중요한 비트 코인 백서는 금융 거래에서 제 3자가 필요로하지 않는 안전한 P2P 가치 교환을 형성하기 위해이 세 가지 과학 원칙이 어떻게 함께 작용할 수 있는지 설명했습니다..

이러한 각 원칙에는 자체 설명이 필요하지만이 기사에서는 암호화와 암호화 알고리즘이 블록 체인을 제공하는 방법에 중점을 둡니다..

암호화의 간략한 역사

고대 이집트 시대 이후로 어떤 형태의 암호화가 사용되었습니다. 컴퓨팅 시대 이전에는 메시지를 전송하기 위해 암호라고하는 간단한 암호화 알고리즘을 사용하는 것을 의미했습니다. 가장 자주 인용되는 것 중 하나는 시저 암호, 줄리어스 카이사르가 로마 제국의 장군들과 의사 소통하기 위해 사용했습니다. Caesar 암호는 메시지의 각 문자를 알파벳에서 세 자리 뒤에 오는 문자로 대체하므로 A는 D가되고 B는 E가됩니다. 암호문 생성에 사용 된 시스템이 비밀로 유지되는 한 메시지는 비공개로 유지 될 수도 있습니다..

줄리어스 시저

Caesar는 훌륭한 샐러드를 만드는 것 이상을했습니다.

나중에 16 세기에 Vigenere는 암호화 된 메시지를 해독 할 수있는 암호화 알고리즘에 암호화 키 개념을 도입했습니다. 사용 Vigenere 암호, 메시지 텍스트는 원본 메시지의 문자 길이와 일치 할 때까지 반복되는 단일 키워드로 변환되었습니다. 이 키워드는 테이블을 사용하여 암호문을 생성합니다..

여기서 중요한 발전은 Vigener 암호를 사용하여 전송 된 메시지의 보안이 시스템 자체가 아니라 키의 비밀에 의존한다는 것입니다..

20 세기 개발

이러한 종류의 코드의 문제점은 문자 빈도를 분석하여 쉽게 깨질 수 있다는 것입니다. 독일인들은 광범위하게 수수께끼 기계 제 2 차 세계 대전 중에는 글자 빈도를 분석하여 깨지지 않는 암호문을 생성 할 수 있었기 때문입니다..

이 기계는 여러 개의 로터 시스템을 사용하여 암호문을 생성했습니다. 따라서 원본 메시지의 문자 “e”는 암호 텍스트의 다양한 문자에 해당합니다. 핵심은 로터의 초기 설정이었습니다..

수수께끼 기계

수수께끼 기계는 깨지지 않는 것으로 생각되었습니다

독일인들은 코드가 깨지지 않는다고 생각했지만 Enigma는 폴란드어에 의해 금이 1932 년에 이미 전설적인 앨런 튜링 자신을 포함하여 블레 츨리 파크에서 영국군을 위해 일하는 암호 학자들은 나중에 독일인이 사용하는 일일 키를 알아내는 방법을 찾았습니다..

컴퓨팅의 시작

전후 기업의 비밀을 보호하는 수단으로 비즈니스 및 상업 공간에서 암호화에 대한 요구가 증가했습니다. 1970 년대에 IBM은 DES (Data Encryption Standard) 암호화 알고리즘을 개발했습니다. 그러나 작은 암호화 키를 사용했습니다. 컴퓨팅 시대가 밝아지면서 DES는 무차별 대입하기가 쉬워 졌기 때문에 업데이트에 대한 요구가있었습니다. 2000 년에 채택 된 고급 암호화 표준.

많은 사람들이 인식하지 못하더라도 암호화는 이제 일상 생활의 일부입니다. 웹 사이트의 이메일 및 문자 메시지, 비밀번호 및 SSL 레이어는 모두 암호화를 사용합니다. 또한 암호 화폐의 중추를 형성합니다. 있습니다 다양한 유형 다양한 사용 사례를 다루는 암호화 알고리즘의 대부분은 이미 구식입니다. 그러나 블록 체인에서 암호화 사용은 디지털 서명과 해싱으로 구성됩니다..

디지털 서명

암호 화폐 결제에는 개인 키 형태의 디지털 서명이 필요합니다. 누군가 결제 거래에 대해 개인 키를 입력하면 거래가 암호화됩니다. 결제가 목적지에 도달하면 수신자는 발신자의 공개 키를 사용하여 거래를 해독 할 수 있습니다..

이것은 암호화에 의해 함께 연결된 키 쌍에 의존하기 때문에 비대칭 암호화로 알려져 있습니다. 보낸 사람과받는 사람 모두 동일한 키를 사용하는 대칭 암호화보다 안전합니다. 이 경우 키 자체도 결제와 함께 전송되어야하므로 키를 보호하기 위해 추가 보안 계층이 필요합니다..

해싱

블록 체인도 해싱에 의존합니다. 해싱은 모든 종류의 데이터를 문자열로 변환하는 암호화 방법입니다. 해싱은 암호화를 통해 보안을 제공 할뿐만 아니라 해시 크기가 고정되어있어보다 효율적인 데이터 저장소를 생성합니다..

해싱 암호화 알고리즘의 특성

암호화 해싱 알고리즘이 효과적이려면 특정 기준을 충족해야합니다.

  • 동일한 입력은 항상 동일한 출력을 생성해야합니다. 해싱 알고리즘을 통해 데이터를 얼마나 많이 넣었는지에 관계없이 문자열에 동일한 문자로 동일한 해시를 일관되게 생성해야합니다.
  • 입력은 출력을 사용하여 추론하거나 계산할 수 없습니다. 원래 데이터 세트를보기 위해 해싱 프로세스를 되돌릴 방법이 없어야합니다.
  • 입력을 변경하면 완전히 다른 출력이 생성되어야합니다. 데이터 세트에서 한 문자의 대소 문자를 변경하더라도 상당히 다른 해시를 생성해야합니다.
  • 해시는 입력으로 사용되는 데이터의 크기 또는 유형에 관계없이 고정 된 수의 문자 여야합니다.
  • 해시 생성은 컴퓨팅 성능을 많이 사용하지 않는 빠른 프로세스 여야합니다..

해싱 알고리즘의 모습

해시 알고리즘이 해시를 생성하는 방법. 이미지 크레딧 : Wikimedia Commons

해싱 작동 원리?

블록 체인은 각 트랜잭션을 블록으로 묶기 전에 해시합니다. 해시 포인터는 이전 블록에있는 데이터의 해시를 보유하여 각 블록을 이전 블록에 연결합니다. 각 블록은 이전 블록과 연결되기 때문에 블록 체인의 데이터는 변경할 수 없습니다. 해싱 기능은 모든 트랜잭션의 변경이 완전히 다른 해시를 생성하여 모든 후속 블록의 해시를 변경 함을 의미합니다. 블록 체인 전체에 변경 사항을 전파하려면 네트워크의 51 %가 이에 동의해야합니다. 따라서 “51 % 공격”이라는 용어는.

다른 블록 체인은 다른 암호화 알고리즘을 사용합니다. 비트 코인 블록 체인은 32 바이트 해시를 생성하는 SHA256 알고리즘을 사용합니다. Dogecoin과 Litecoin은 모두 더 빠르고 가벼운 암호화 알고리즘 중 하나 인 Scrypt를 사용합니다..

암호화는 블록 체인의 범위를 넘어서는 복잡하고 상세한 과학입니다. 암호화에 대한 더 많은 읽을 거리가 있습니다. 특히 과학적 또는 수학적으로 더 많은 것을 탐구 할 수있는 흥미로운 주제입니다..