중국시가넷 - 개인 서명 - 블록 체인 사용의 보안을 어떻게 보장합니까?
블록 체인 사용의 보안을 어떻게 보장합니까?
실제로 블록 체인은 현대 암호학의 기본 원리를 사용하여 보안 메커니즘을 보장합니다. 암호학과 보안 분야에 관련된 지식 체계는 매우 복잡하다. 해시 알고리즘, 암호화 알고리즘, 정보 요약 및 디지털 서명, 0 지식 증명, 양자 암호 등 블록 체인과 관련된 암호학의 기초만 소개하겠습니다. 이 단원에서는 암호학에서 블록 체인의 기밀성, 무결성, 인증 및 부정성을 보장하는 방법을 배웁니다.
기초 수업 7 과 블록 체인 안전 기본 사항
첫째, 해시 알고리즘 (해시 algorithm)
해시 함수라고도 하는 해시 함수입니다. Hash 함수: hash (raw information) = 모든 길이의 이진 일반 텍스트 문자열을 더 짧은 (보통 고정 길이) 이진 문자열 (해시 값) 에 매핑할 수 있는 추상 정보입니다.
좋은 해시 알고리즘에는 다음 네 가지 특징이 있습니다.
1, 일대일 대응: 동일한 일반 텍스트 입력 및 해시 알고리즘은 항상 동일한 추상 정보 출력을 얻을 수 있습니다.
2. 입력 민감도: 일반 텍스트 입력이 약간 변경되더라도 새로 생성된 추상 정보는 원본 출력과 크게 다를 수 있습니다.
3. 검증 용이: 일반 텍스트 입력 및 해시 알고리즘이 모두 공개되어 누구나 출력의 해시 값이 정확한지 계산할 수 있습니다.
4. 비가역성: 출력 해시 값만 있는 경우 해시 알고리즘을 통해 일반 텍스트를 파생할 수 없습니다.
5. 충돌 방지: 두 가지 내용이 다른 일반 텍스트를 찾기가 어렵습니다. 해시 값이 같습니다 (충돌).
예를 들면 다음과 같습니다.
해시 (장삼이 이사 65438+ 만원 6 개월 빌려준 것) = 1234567890 12.
장부에는 1234567890 12 가 기록되어 있다.
해시 함수에는 네 가지 기능이 있습니다.
정보 단순화
해시 후의 정보가 짧아졌다는 것을 쉽게 이해할 수 있다.
식별 정보
원본 정보는 1234567890 12 로 식별할 수 있으며, 요약 정보는 원본 정보의 id 라고도 합니다.
숨겨진 정보
호적본은 1234567890 12 의 기록으로 원본 정보가 숨겨져 있다.
인증 정보
이 4 가 상환할 때 속이면 장 3 마리가 이 4 만 5 천 원을 빌려주면 양측은 이전에 기록한 해시값 123456790 12 로 원본 정보를 확인할 수 있다.
해시 (장삼이 이차원 5 만원을 빌려 6 개월) =98765432 1098.
98765432 1098 은 1234567890 12 와 완전히 달리 이사가 거짓말을 하고 정보의 변조성을 보장하는 데 성공했다는 것을 증명한다.
일반적인 해시 알고리즘으로는 MD4, MD5, SHA 시리즈 알고리즘이 있으며, 현재 주류 분야에서는 기본적으로 SHA 시리즈 알고리즘을 사용하고 있습니다. SHA (보안 해시 알고리즘) 는 알고리즘이 아니라 해시 알고리즘 세트입니다. 원래 SHA- 1 시리즈, SHA-224, SHA-256, SHA-384, SHA-5 12 (일반적으로 SHA-2 로 알려짐)
MD5 는 매우 고전적인 해시 알고리즘이지만, 유감스럽게도 SHA- 1 알고리즘과 함께 해독되어 업계에서는 그 보안이 상업 시나리오에 적용하기에 충분하지 않다고 생각합니다. 일반적으로 최소한 SHA2-256 이상의 보안 알고리즘을 사용하는 것이 좋습니다.
해시 알고리즘은 블록 체인에서 널리 사용됩니다. 예를 들어, 한 블록에서 마지막 블록은 이전 블록의 해시 값을 포함하고, 다음 블록의 내용+이전 블록의 해시 값 * * * 은 마지막 블록의 해시 값과 동일하며, 체인의 연속성과 변조성을 보장합니다.
둘째, 암호화 및 암호 해독 알고리즘
암호화 암호 해독 알고리즘은 암호학의 핵심 기술로, 설계 개념에서 대칭 암호화 알고리즘과 비대칭 암호화 알고리즘의 두 가지 기본 유형으로 나눌 수 있습니다. 암호화 및 암호 해독 과정에서 사용되는 키가 같은지 여부에 따라 두 모드는 서로 다른 요구 사항에 적용되지만 상호 보완적인 관계를 형성하며 때로는 혼합 암호화 메커니즘을 형성하기 위해 결합될 수도 있습니다.
대칭 암호 (공개 키 암호라고도 함) 는 동일한 암호화 및 암호 해독 키를 가지고 있어 계산 효율이 높고 암호화 강도가 높다는 장점이 있습니다. 그 단점은 열쇠를 미리 즐길 필요가 있어 잃어버린 열쇠를 쉽게 누설할 수 있다는 것이다. 일반적인 알고리즘으로는 DES, 3DES, AES 등이 있습니다.
비대칭 암호 (공개 키 암호라고도 함) 는 암호화 및 암호 해독 키와 달리 미리 키를 받을 필요가 없다는 장점이 있습니다. 단점은 계산 효율이 낮아 짧은 내용만 암호화할 수 있다는 것이다. 일반적인 알고리즘으로는 RSA, SM2, ElGamal 및 타원 곡선 시리즈 알고리즘이 있습니다. 대량의 데이터 암호화 및 암호 해독 프로세스에 적합한 대칭 암호화 알고리즘 장면에 서명하는 데 사용할 수 없습니다. 일반적으로 미리 키를 배포해야 합니다. 비대칭 암호화 알고리즘은 일반적으로 서명 장면이나 키 협상에는 적용되지만 대량의 데이터를 암호화하고 해독하는 데는 적용되지 않습니다.
셋. 정보 요약 및 디지털 서명
이름에서 알 수 있듯이 정보 요약은 원래 전체 정보 내용 대신 고유한 요약 값을 얻기 위해 정보 내용을 해시하는 것입니다. 정보 요약은 해시 알고리즘의 가장 중요한 용도 중 하나입니다. 해시 함수의 충돌 방지 기능을 사용하면 정보 다이제스트를 통해 내용이 변조되지 않은 문제를 해결할 수 있습니다.
디지털 서명은 종이 계약을 체결하여 계약 내용을 확인하고 신분을 증명하는 것과 비슷하다. 디지털 서명은 비대칭 암호화를 기반으로 하며 원본 (또는 부인할 수 없음) 을 확인하면서 디지털 컨텐츠의 무결성을 증명하는 데 사용할 수 있습니다.
우리는 디지털 서명에 대한 두 가지 특수한 요구 사항을 가지고 있어서, 우리의 적수가 서명을 쓰는 것에 대한 기대와 일치되게 한다. 첫째, 당신만이 직접 서명할 수 있지만 누구나 그 유효성을 확인할 수 있습니다. 둘째, 서명은 특정 파일에만 관련되고 다른 파일은 지원되지 않기를 바랍니다. 이 모든 것은 우리의 비대칭 암호화 알고리즘을 통해 디지털 서명을 할 수 있다.
실제로 비대칭 암호화 알고리즘의 효율성에 따라 정보 자체가 아닌 정보의 해시 값에 서명하는 경우가 많습니다. 블록 체인에 해당하는 해시 포인터가 서명됩니다. 이 방법을 사용하면 해시 포인터 자체뿐만 아니라 전체 구조가 앞에 있습니다.
넷째, 제로 지식 증명 (Zero Knowledge proof)
0 지식 증명은 입증인이 추가 정보를 제공하지 않고 검증자를 설득하여 옳다고 주장하는 것을 의미합니다.
제로 지식 증명은 일반적으로 세 가지 조건을 충족시킵니다.
1. 완전성: 실제 증명은 입증인이 성공적으로 검증할 수 있도록 합니다.
합리성: 거짓 증명은 검증자가 검증을 통과하도록 할 수 없습니다.
3. 0 지식: 증명을 받으면 증명 과정에서 증명 정보 이외의 정보를 얻을 수 없습니다.
동사 (verb 의 약어) 양자 암호
양자 컴퓨팅 및 양자 통신에 대한 연구가 점점 더 중시됨에 따라 양자 암호는 미래의 암호 정보 보안에 큰 영향을 미칠 것입니다.
양자 계산의 핵심 원리는 양자 비트가 동시에 여러 개의 일관된 중첩 상태에 있을 수 있다는 것이다. 이론적으로 소량의 양자 비트로 대량의 정보를 표현할 수 있으며, 동시에 처리하여 계산 속도를 크게 높일 수 있다.
이 경우 현재 대량의 암호화 알고리즘은 이론적으로 신뢰할 수 없고 해독될 수 있어 암호화 알고리즘을 업그레이드해야 합니다. 그렇지 않으면 양자 계산에 의해 해독됩니다.
양자 계산은 아직 이론적 단계에 있는 것으로 알려져 있으며, 대규모 상업과는 아직 멀었다. 그러나 차세대 암호화 알고리즘은 이러한 상황의 가능성을 고려해야 합니다.