블록 체인 기술이란 무엇입니까? 블록 체인의 작동 원리



이 블록 체인 블로그는 블록 체인의 작동 방식을 이해하는 데 도움이됩니다. 블록 체인 기술은 트랜잭션이 암호화 알고리즘에 의해 보호되고 네트워크 상태가 합의 알고리즘에 의해 유지되는 불변 기록의 분산 분산 데이터베이스입니다.

블록 체인은 새로운 인터넷입니까? 글쎄, 확실히!

블록 체인 기술은 인터넷 3.0 또는 프로토콜 인터넷입니다. 진화로 시작된 것이 점차 혁명이되고 있습니다. 현재 우리가 알고있는 것처럼 비즈니스를 변화시킬 잠재력이 있지만 그 방법을 이해하는 것은 그렇게 쉽지 않습니다. 그래서 다음은 Blockchain의 작동 원리를 이해할 수있는 전단지입니다.

  1. 블록 체인 기술이란 무엇입니까?
  2. 블록 체인은 어떻게 작동합니까?
    2.1 거래의 독립적 인 검증
    2.2 검증 된 거래의 집계
    2.3 블록 채굴
  3. 누군가 시스템을 해킹하려고하면 어떻게됩니까?





블록 체인 기술이란 무엇입니까?

블록 체인 이다 분산 형 분산 데이터베이스 거래가 강력한 암호화 알고리즘 네트워크 상태는 합의 알고리즘 .

디지털 타임 스탬프-블록 체인 작동 방식 -edureka

디지털 타임 스탬프



알고리즘 정렬 C ++

간단히 말해서 블록 체인은 정보를 포함하는 블록 체인입니다.

이 기술은 원래 1991 년에 설명되었으며 타임 스탬프 디지털 문서 기록의 백 데이트 또는 템퍼링을 방지합니다.

기술이 훌륭했지만 Satoshi Nakamoto가 디지털 암호 화폐를 만들기 위해 사용하기 전까지는 그 진정한 잠재력이 실현되지 않았습니다. ' 비트 코인 '.



블록 체인 기술 | 초보자를위한 블록 체인 튜토리얼 | Edureka

이제 블록 체인이 어떻게 작동하는지 살펴 보겠습니다.

블록 체인은 어떻게 작동합니까?

블록 체인 네트워크를 통해 간단한 트랜잭션으로 블록 체인이 작동하는 방식을 이해해 보겠습니다.

James가 5 BTC 그의 친구 케빈에게. 이제이 거래는 디지털 메시지.

디지털 메시지에는 고유 한 서명이 있습니다. 서명이 문서의 소유권 증명을 제공하는 것처럼 유사하게 전자 서명 증거를 제공합니다 거래는 정품입니다.

이제이 생성 된 트랜잭션이 전파되는 네트워크로 브로드 캐스트됩니다. 피어 투 피어.

트랜잭션은 네트워크에서 피어 투 피어로 전파됩니다.

위의 거래가 먼저 수신되었다고 가정합니다. 노드 A 네트워크에서.

거래의 독립적 인 검증

이웃에게 거래를 보내기 전에 거래를받는 각 비트 코인 노드는 처음에 거래를 확인합니다.이를 통해 유효한 트랜잭션 만 시스템 전체에 전파되고 유효하지 않은 트랜잭션은이를 수신하는 첫 번째 노드에서 처리됩니다. 모든 노드는 긴 기준 의제에 따라 각 트랜잭션을 확인합니다.

검증 된 거래의 집계

작업 증명 알고리즘을 통해 표시된 계산과 결합 된 채굴 노드를 통해 이러한 트랜잭션을 새로운 블록으로 독립적으로 집계합니다.

  • 수신 된 모든 트랜잭션을 전파하기 전에 자율적으로 확인함으로써 각 노드는 다음과 같이 알려진 유효한 (확인되지 ​​않은) 트랜잭션 풀을 제작합니다. 트랜잭션 풀, 메모리 풀 또는 mempool
  • 거래 도달 미디엄 인닝 노드 다른 노드와 마찬가지로 새로운 트랜잭션을 수집, 검증 및 중계합니다.
  • 다른 노드와 달리 마이너 노드는 이러한 트랜잭션을 후보 블록

예를 들어 이것을 더 잘 이해합시다.

Andy가 광부라고 가정 해 봅시다. (마이닝 노드는 2009 년 비트 코인 시스템이 시작된 이후 생성 된 모든 블록 목록 인 블록 체인의 로컬 사본을 유지합니다.)

이제 블록의 모든 트랜잭션을 수집 한 후 Andy는 블록 헤더를 구성해야합니다. 이제이 단계는 블록 체인의 작동 방식을 이해하는 데 중요합니다.

블록 헤더 구성

블록 헤더를 구성하려면 마이닝 노드가 표에 나열된대로 6 개의 필드를 채워야합니다.

크기 기술
4 바이트버전블록 헤더를 구성하려면 마이닝 노드가 나열된대로 6 개의 필드를 채워야합니다.
32 바이트이전 블록 해시체인에있는 이전 (상위) 블록의 해시에 대한 참조
32 바이트머클 루트이 블록의 트랜잭션 머클 트리 루트의 해시
4 바이트타임 스탬프이 블록의 대략적인 생성 시간 (Unix Epoch에서 초)
4 바이트난이도 목표이 블록의 작업 증명 알고리즘 난이도 목표
4 바이트로마 교황 사절작업 증명 알고리즘에 사용되는 카운터

Andy의 노드에 블록 헤더에 모든 필드가 채워지면 Andy는 채광 블록.

블록 채굴

  • 다른 모든 필드가 채워지면 블록 헤더가 완료되고 마이닝 프로세스를 시작할 수 있습니다.
  • 이제 목표는 로마 교황 사절 그 결과 난이도 목표보다 작은 블록 헤더 해시가 발생합니다.
  • 마이닝 노드는 요구 사항을 충족하는 nonce가 발견되기 전에 수십억 또는 수조 개의 nonce 값을 테스트해야합니다.

후보 블록이 Andy의 노드에 의해 구성되었으므로 Andy의 하드웨어 채굴 장비가 블록을 '채굴'하여 블록을 유효하게 만드는 작업 증명 알고리즘에 대한 솔루션을 찾을 때입니다.

작업 증명 생성하기 어렵고 (비용이 많이 들고, 시간이 많이 소요되는) 다른 사람들이 확인하기 쉽고 특정 요구 사항을 충족하는 데이터 조각입니다.

퍼즐 찾기-왜 어렵습니까?

  • 따라서 SHA-256은 단방향 기능이므로 무차별 대입 특정 출력 값에 대한 유일한 방법입니다.
  • 평균적으로 해결책을 찾기 위해 많은 무작위 추측이 필요하므로 도전이 어렵습니다.
  • 누군가가 솔루션의 특수 키를 찾는 데 평균 10 분 정도 걸립니다.

코인 분배를 예측 가능한 상태로 유지하기 위해 더 많은 사람들이 작업을 할 때 퍼즐을 풀기가 점점 더 어려워집니다.

이제 블록을 검증하려면 작업 증명 알고리즘, Andy의 마이닝 노드는 난이도 목표에 도달해야합니다.

난이도가 어떻게 표현되는지 봅시다.

난이도 표현

  • 블록에는 '난이도 비트'또는 '비트'라는 표기법으로 난이도 목표가 포함됩니다.
  • 블록에 난이도 비트가 0x1903a30c라고 가정 해 보겠습니다. 이 표기법은 난이도 목표를 계수 / 지수 형식으로 표현합니다. 지수는 처음 2 자리 16 진수이고 계수는 다음 6 자리 16 진수입니다.

이 표현에서 난이도 목표를 계산하는 공식은 다음과 같습니다.

그래서 Andy의 마이닝 노드가 난이도 목표에 도달하기 위해 정말 열심히 일한 난이도 계수입니다. 다음에 무슨 일이 일어나는지 봅시다.

성공적으로 블록 채굴

  • Andy는 여러 개의 하드웨어 채굴 장치를 가지고 있으며, 각각은 SHA256 놀라운 속도로 병렬 알고리즘
  • Andy의 데스크톱에서 실행되는 마이닝 노드는 블록 헤더를 마이닝 하드웨어로 전송하여 초당 수조 개의 논스 테스트를 시작합니다.
  • 채굴 블록을 시작한 지 거의 11 분 후 하드웨어 채굴 기계 중 하나가 솔루션을 찾아 채굴 노드로 다시 보냅니다.
  • 즉시 Andy의 마이닝 노드는 블록을 모든 피어에게 전송합니다.
  • 그들은 새로운 블록을 받고, 확인하고, 전파합니다. 블록이 네트워크를 통해 파급되면서

해당 블록이 네트워크에서 전파되면 각 전체 노드가 독립적으로 블록을 확인합니다.

각 블록의 독립적 인 확인

  • 비트 코인의 합의 메커니즘에서 각각의 새로운 블록은 네트워크의 모든 노드에서 독립적으로 검증됩니다.
  • 이렇게하면 유효한 블록 만 네트워크에 전파됩니다.
  • 노드는 모두 충족되어야하는 긴 기준 목록과 비교하여 블록을 확인하여 블록을 검증합니다.

블록 체인 조립 및 선택

노드가 새 블록의 유효성을 확인하면 블록을 기존 블록 체인에 연결하여 체인을 조립하려고합니다.

위의 네트워크에서 노드 (주황색)가 블록의 유효성을 검사하면 블록을 기존 블록 체인에 연결하여 체인을 조립합니다.

블록이 네트워크에 의해 확인되면 블록 체인의 일부가되고 블록 퍼즐을 성공적으로 해결하기 위해 채굴자는 보상을받습니다.

광부 보상

  • 채굴자는 귀중한 자원을 사용하여 블록을 검증하기 때문에 금전적 상
  • 비트 코인의 경우 새로 생성 된 비트 코인을 보상으로받습니다.

이제 질문이 생깁니다. 두 개 이상의 블록이 동시에 해결되면 어떻게 될까요?

네, 가능합니다! 이 경우 여러 가지가 존재합니다.

여러 지점

  • 문제는 어렵지만 동시에 두 개 이상의 블록이 해결 될 가능성이 있습니다.
  • 여러 지점 이러한 경우 블록 체인에서 가능합니다.
  • 누구나받은 첫 번째 블록 위에 블록을 구축하면됩니다.
  • 다른 노드는 다른 순서로 블록을 수신했을 수 있습니다.
  • 그들은 그들이 처음받는 블록에 구축 할 것입니다.

  • 이 상황이 연속적으로 여러 번 발생하는 경우는 매우 드물기 때문에 누군가 다음 블록을 해결하면 동점이 끊어집니다.

  • 이 상황에서 블록 체인은 빠르게 안정화됩니다.
  • 일반적인 규칙은 사용 가능한 가장 긴 체인으로 전환하는 것입니다.

블록 체인은 빠르게 안정화됩니다. 모든 노드는 원장의 현재 상태와 일치합니다.

좋습니다. 따라서 합의 규칙은 이러한 모호함으로부터 블록 체인 네트워크를 보호합니다.

이제 여기에서 또 다른 질문이 생깁니다. 누군가 시스템의 트랜잭션이나 기록을 변경하려고하면 어떻게 될까요?

누군가가 시스템을 해킹하려고하면?

블록이 해결되면 암호화 해시 출력이 해당 블록의 식별자가됩니다.

블록 체인은 백 링크 된 분산 레코드 데이터베이스이기 때문입니다. 블록이 형성되면 암호화 해시 출력이 해당 블록의 식별자가되어 다음 블록에 연결되어 블록 체인을 생성합니다.

따라서 블록 체인은 강력한 암호화 알고리즘에 의해 보호되며 기록을 변경할 방법이 없습니다.

누군가 블록에서 트랜잭션을 변경하려고하면 블록의 해시가 변경되고 결과적으로 모든 이전 블록의 해시가 변경됩니다. 노드는 도착하지 않습니다 합의에 따라 사기를 쉽게 감지 할 수 있습니다.

객체의 배열 자바

그래서 이것이다. 자부심을 가지십시오. 지금은이 멋진 기술을 알고 나서 군중에서 눈에 띄게됩니다.

나는 이것을 바란다 블록 체인의 작동 원리 블로그는 당신에게 유익했습니다.

질문이 있으십니까? 댓글 섹션에 언급 해 주시면 빠른 시일 내에 답변 드리겠습니다.

블록 체인 기술에 대해 배우고 암호화, 블록 체인 네트워크, 스마트 계약, 이더 리움 및 하이퍼 레저의 개념을 마스터하고 싶다면 인터랙티브 온라인 라이브를 확인하세요. 여기에는 학습 기간 내내 안내하는 연중 무휴 지원이 함께 제공됩니다.