새소식

info/👔 IT 꿀팁

블록체인을 해킹하는 방법 (이론적 접근) 1부

728x90

안녕하세요. 팀드모네입니다.

오늘은 블록체인을 해킹하는 방법에 대해서 이론적으로 접근해보고자 합니다.

 

지피지기(知彼知己)라는 말 처럼 나를 알고 적을 알아야 백 번 싸워도 위태롭지 않다는 격언처럼

해킹을 하려면 해킹하려는 대상이 가진 취약점을 분석하는 것이 인지상정이죠.

이 글을 읽는 독자께서도 아시다시피 블록체인은 과거 블록 내용을 조작하기 어렵습니다. (해킹이 어렵다는 뜻)

 

이게 해킹에 있어서 큰 걸림돌입니다.

여기서 끝나지 말고 이론적으로 접근해봅시다.

 

1. 설명에 앞서서 용어를 하나 정리합니다!

*트랜잭션 = 업무, 쉽게 생각해서 노동자가 일하는 모습을 떠올려보자

*블록을 추가 = 채굴

 

2. 우선 블록체인의 특징을 하나씩 학습해보자!

- 전자서명 : 블록 내 각 트랜잭션엔 전자서명이 하나씩 부여됨.

- 채굴 : 암호학적 해시를 이용한 어려운 문제의 해를 계산하여 블록체인에 새로운 블록을 추가할 수 있고 일정량의 암호화폐로 보상받을 수도 있다.

- POW : 블록체인은 작업증명(Proof of work) 방식의 합의 알고리즘을 사용한다. POW가 뭐냐면 한마디로 "야 이거 진짜 맞아?" 이다. 어떤 트랜잭션이 발생했을 경우 이 트랜잭션이 가짜인지 진짜인지 검증하기 위해서 검증하려고 쓰는 알고리즘이다. 말하고자 하는 핵심은 이게 블록체인 입장에서 트랜잭션 위조를 방지하는 전략이라는 것입니다.

 

이제 해킹에 대한 설명에 앞서서 우리의 목표를 하나 정해보자.

지금 블록체인을 해킹하려는 이유는 "거래 내역"을 위/변조하기 위함이라고 가정해보자.

 

블록체인은 블록들이 연결되어 있어서 블록체인이다.

블록체인의 블록은 트랜잭션의 집합과 헤더(해시값 + 난수)로 이뤄져 있습니다.

그리고 그 블록들은 모두 앞 블록의 내용을 가지고 있습니다.

따라서 거래 내역을 위/변조하려면 모든 블록의 정보를 연쇄적으로 다 바꿔야 합니다.

 

이론적으로 블록체인을 해킹하는 방법은 지금 위에서 도출되었습니다.

모든 블록의 정보를 연쇄적으로 다 바꾼다는 것입니다.

 

자 이제, 공격에 대해서 문제점은 없는지 검토해보자. 블록체인의 특징 중 하나인, 일정 시간마다 하나씩 블록이 생성된다는 문제점이 도출되었습니다. 즉 우리는 "모든 블록의 정보를 연쇄적으로 다 바꾸되 일정 시간마다 하나씩 생성되는 블록보다 더 빠르게 위/변조한 정보를 전파시켜야 한다"라는 구체적인 업무가 정립되었습니다.

 

블로그 방문해주셔서 감사합니다.
추가로 질문사항이 있으면 댓글 남겨주세요 :)


광고 링크 : https://ogx4.com 

 

인공지능이 추천하는 10개의 게임!

보물처럼 숨겨진 게임을 발굴하자! 게이머엑스포 유저들은 누구나 게임 발굴 대회에 참여 가능합니다. 게임 발굴 대회에서 입상한 게임은 2023 에디터 추천 TOP100에 노출됩니다. 단순 조회, 게임

ogx4.com

 

반응형
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.