7 articles Tag 블록체인

바도도 이해하는 비트코인 백서(Bitcoin White Paper) 2 트랜잭션 , 타임스탬프 서버,작업 증명, 네트워크

바도도 이해하는 비트코인 백서(Bitcoin White Paper) 2   트랜잭션 , 타임스탬프 서버,작업 증명, 네트워크

비트코인 백서의 내용 중 2 트랜잭션과 관련된 내용은 다음과 같습니다. 전자 코인은 디지털 서명의 체인으로 정의됩니다. 각 소유자는 이전 거래의 해시와 다음 소유자의 공개 키에 디지털 서명을 하고 이를 코인의 끝에 추가하여 코인을 다음 소유자에게 전송합니다. 이중 지불 문제를 해결하기 위해 신뢰할 수 있는 중앙 기관 또는 조폐국을 도입하여 모든 거래에서 이중 지불을 확인하는 것이 일반적입니다. 하지만 비트코인에서는 중앙 기관이 없기 때문에 거래가 공개적으로 발표되고, 참여자들이 주문이 접수된 단일 내역에 동의할 수 있는 시스템이 필요합니다. …

Continue reading →

바도도 이해하는 비트코인 백서(Bitcoin White Paper) 1 요약과 소개

블록체인 기술은 여러 개인들과 조직들의 공동 작업으로 발전해왔습니다. 하지만 가장 잘 알려진 블록체인 기술은 비트코인의 블록체인입니다. 사토시 나카모토는 2008년 비트코인 백서(Bitcoin White Paper)를 공개하며 블록체인 기술을 세상에 알렸습니다. 소개 이유: 비트코인 White Paper는 2008년에 발표된 이후로 10년이 지났지만, 여전히 유효한 내용을 담고 있습니다. 물론 비트코인 생태계는 지속적으로 발전하고 있으며 기술적인 발전도 이루어지고 있기 때문에, 이후에 발표된 논문이나 개선 사항들이 추가된 것은 사실입니다. 하지만, 비트코인 White Paper는 여전히 중요한 역사적인 문서로서, 분산원장 기술의 초석을 담고 있는 …

Continue reading →

SHA-256 해시 알고리즘

SHA-256은 2001년 미국 국가 안보국(NSA)에서 개발한 암호화 해시 함수입니다. 이전에 사용되던 SHA-1 알고리즘의 보안 결함을 보완하기 위해 개발되었습니다. SHA-256(암호화 해시 함수)는 비밀번호 같은 데이터를 입력하면 일정 길이의 고정된 문자열을 출력해주는 함수입니다. 비유하자면, 우리가 생각하는 일반적인 비밀번호와 유사한 역할을 하는 함수입니다. SHA-256은 보안 관련 애플리케이션에서 매우 일반적으로 사용되며, 비밀번호 보안, 디지털 서명, 데이터 무결성 검사 등에 사용됩니다. 아래는 Python에서 hashlib 라이브러리를 사용하여 문자열을 SHA-256으로 암호화하는 예제 코드입니다. 실행하기 import hashlib # 암호화할 문자열 text = “Hello, …

Continue reading →

블록체인의 논스(Nonce : number used once) 값이란?

논스(Nonce)라는 용어는 영어 “number used once”의 줄임말 입니다. 블록체인에서는 이전 블록의 해시값과 논스를 조합하여 새로운 블록의 해시값을 계산하는 과정에서 논스값은 단 한번만 사용되어야 합니다. 이러한 논스값의 단 한번 사용되는 특성 때문에 이를 “number used once”라는 영어 용어로 표현하게 되었습니다. Nonce는 매우 쉽게 설명하면 “찾기 어려운 숫자”라고 할 수 있습니다. 논스는 블록체인 채굴에서 중요한 역할을 하는데, 이는 블록 해시값을 만족시키기 위해 사용되는 임의의 숫자입니다. 블록 해시값을 만족시키기 위해서는 매우 작은 확률로 유효한 해시값이 생성되기 때문에 논스는 …

Continue reading →

[PHP 블록 체인] 블록체인 보안 : 51% 공격 시뮬레이션

*블록체인은 보안성이 높은 분산 시스템으로써, 블록체인의 무결성을 해킹하여 위조하려는 시도는 블록체인 기술의 보안성과 안정성을 침해하는 것으로 불법이며, 법적 처벌을 받을 수 있습니다.이 글은 이런 블록체인의 보안 위험에 대해 취약점을 파악, 방어를 위한 연구 목적입니다. 51% 공격은 블록체인에서 가장 큰 위협 중 하나입니다. 이 공격을 시도하려면 대다수의 컴퓨팅 파워가 필요합니다. 이 예시에서는 가상으로 블록체인에서의 51% 공격을 시뮬레이션해보겠습니다. count($blockchain), “timestamp” => time(), “data” => $data, “prevHash” => $prevBlock[“hash”] ); $newBlock[“hash”] = hash(“sha256”, json_encode($newBlock)); array_push($blockchain, $newBlock); } // …

Continue reading →

블록체인의 위변조 가능성과 대비책

블록체인은 보안성이 높은 분산 시스템으로써, 이전 블록의 해시 값을 포함하기 때문에 임의로 변경될 수 없도록 되어 있습니다. 따라서 블록체인의 무결성을 해킹하여 위조하려는 시도는 불가능합니다. 그리고 이러한 시도는 블록체인 기술의 보안성과 안정성을 침해하는 것으로 불법이며, 법적 처벌을 받을 수 있습니다.그러나 과거에는 사람의 실수 등으로 인해 위변조가 가능한 사례들이 있었습니다. 그리고 무엇보다, 블록체인도 결국은 기술이기 때문에 결함이 존재할 수 있으며, 악용 가능성도 있습니다. 일부 대표적인 예시들은 다음과 같습니다. 51% 공격 : 블록체인에서는 다수결 원칙에 따라 가장 긴 …

Continue reading →

[PHP 블록체인] 블록체인의 핵심 무결성 검증의 예

무결성(Integrity)은 데이터나 정보의 정확성, 완전성, 일관성이 유지되는 것을 의미합니다. 데이터가 변조되거나 손상되는 등의 변경이 없이 그대로 유지되는 것을 말합니다. 블록체인에서 무결성은 블록체인에 저장된 데이터나 트랜잭션이 변경되거나 손상되지 않았음을 검증하는 것을 의미합니다. 이를 통해 블록체인의 신뢰성을 보장할 수 있습니다.이 코드는 PHP를 사용하여 블록체인의 기본 원리를 구현한 간단한 프로그램입니다. 이 프로그램은 블록체인의 기본 원리를 이해하는 데 도움이 될 수 있습니다. index = $index; $this->timestamp = $timestamp; $this->data = $data; $this->previous_hash = $previous_hash; $this->hash = $this->calculate_hash(); } public …

Continue reading →