의견.png

블록체인 보안

해시넷
dlensk99 (토론 | 기여)님의 2021년 1월 11일 (월) 17:01 판
이동: 둘러보기, 검색

블록체인 보안(블록체인 保安, blockchain security)이란 대내외의 공격으로부터 블록체인상의 정보 자산을 안전하게 지키는 행위를 말한다.

개요

블록체인(block chain)은 '블록'이라고 하는 관리 대상 데이터를 소규모 데이터들이 P2P 방식을 기반으로 생성된 체인 형태의 연결고리 기반 분산 데이터 저장 환경에 저장하여 누구라도 임의로 수정할 수 없고, 누구나 변경의 결과를 열람할 수 있는 분산 컴퓨팅 기술 기반의 원장 관리 기술이다. 근본적으로 분산 데이터 저장기술의 한 형태로, 지속해서 변경되는 데이터를 모든 참여 노드에 기록한 변경 리스트로서 분산 노드의 운영자에 의한 임의 조작이 불가능하도록 고안되었다. 블록체인 기술은 비트코인과 같은 암호화폐 거래에 사용된다.[1]

블록체인은 권한(Permission) 및 합의 방식(Consensus Algorism)에 따라서 퍼블릭 블록체인(Public Blockchain), 프라이빗 블록체인(Private Blockchain), 컨소시엄 블록체인(Consortium Blockchain)으로 분류된다. 퍼블릭 블록체인은 이더리움이나 비트코인과 같이 누구나 네트워크에 참여하여 네트워크에서 발생하는 여러 행위가 공유되는 공개형 블록체인이다. 프라이빗 블록체인은 퍼블릭 블록체인과 반대로 나스닥의 링크나 미진과 같이 폐쇄형 블록체인으로 허가된 참여자 외에 거래내역과 행위들이 공유되지 않는다. 컨소시엄 블록체인은 퍼블릭, 프라이빗 블록체인의 성격이 결합한 형태로 코다(Corda)나 하이퍼레저 패브릭과같이 연합형 블록체인을 기반으로 한 반중앙형 성격을 띤다.〈블록체인 시대의 보안위협과 대응방안〉, 《이글루시큐리티》, 2019-12-26 </ref>

특징

블록체인은 탈중앙화를 추구하기 때문에, 중앙화 방식의 시스템에서 오는 보안의 문제점을 해결할 수 있다.[2]

장점

  • 분산성: 블록체인 데이터는 분산화된 네트워크 노드에 저장되므로, 시스템과 데이터는 악의적 공격과 기술적 실패에 대한 강한 저항력을 갖는다. 각 네트워크 노드는 데이터베이스 사본을 복제 및 저장을 할 수 있기 때문에 한 노드가 오프라인으로 전환하더라도 네트워크 이용과 보안에는 영향을 미치지 않는다.
  • 안전성: 데이터가 블록체인에 기록된 후에는 변경하거나 삭제하기 어렵다. 즉, 승인된 블록들은 되돌리기 매우 어렵다. 감사 추적을 해야 하거나, 재무 기록을 저장하는 데이터에 블록체인은 모든 변경 기록을 추적할 수 있고, 분산화된 공개 원장에 영구적으로 기록되므로 훌륭한 기술이다.
  • 신뢰가 필요 없는 시스템: 전통적인 거래 시스템에서 거래는 관련 두 당사자가 아닌, 은행과 신용카드 회사 또는 결제 제공자와 같은 중개자에 의존했다. 하지만 블록체인 기술을 사용하게 되면서 분산화된 네트워크 노드가 마이닝이라 알려지는 과정을 통해 거래를 검증하므로 중개자가 더 이상 필요하지 않게 되었다.[3]
  • 확장성: 소스가 공개되어 있어 네트워크에 참여할 수 있는 누구나 연결, 확장, 구축이 가능하다.
  • 투명성: 모든 거래기록을 공개적으로 접근이 가능하고, 거래 양성화 및 규제 비용 절감이 가능하다.
  • 보안성: 거래내역 장부는 네트워크 참여자 모두가 공동으로 소유하여 거래 데이터 조작을 방지할 수 있고, 무결성을 보장한다.[4]

단점

  • 51% 공격: 단일 주체가 네트워크 해싱 파워의 50% 이상을 통제할 수 있게 되었을 때 발생한다. 고의로 트랜잭션 순서를 변경하거나 제외하여 종국에는 네트워크를 방해할 수 있다. 네트워크가 성장함에 따라 보안이 증대되고, 정직하게 행동하는 것이 더 많은 보상을 얻을 수 있기 때문에, 그리고 마이너가 비트코인을 공격하기 위해 많은 자원과 돈을 투자하지 않기 때문에 51% 공격이 성공했던 적은 한 번도 없었다.
  • 데이터 수정: 블록체인에 데이터가 기록되면 수정하기 매우 어렵다. 블록체인 데이터나 코드를 변경하는 것이 매우 까다롭고, 한 체인이 버려지고 다른 체인이 이를 대신하는 하드포크를 종종 필요로 한다.
  • 프라이빗 키: 공개키 암호학을 사용하여 자신의 암호화폐 자산에 소유권을 주장할 수 있게 한다. 각 블록체인 계정은 두 개의 키를 갖고 있는데, 퍼블릭 키프라이빗 키이다. 자신들의 자금에 접근하기 위해서 사용자는 프라이빗 키가 필요하고, 이는 스스로가 은행 역할을 한다는 것을 의미한다. 만약 사용자가 프라이빗 키를 잃어버리게 되면, 사실상 자금을 잃게 되는 것이고, 어찌할 방법이 없다.
  • 비효율성: 작업 증명을 하는 블록체인은 상당히 비효율적이다. 마이닝 경쟁이 치열하고, 10분마다 단 한 명의 승자만 존재하기 때문에, 다른 모든 마이너들의 작업은 무용지물이 된다. 유효한 블록 해시를 찾을 수 있는 확률을 높이기 위해 마이너들은 지속해서 자신의 연산 능력을 증가 시켜 왔다.
  • 저장공간: 블록체인 원장은 시간이 지나면 많이 거대해질 수 있다. 비트코인 블록체인은 현재 200GB의 저장공간이 필요하다. 원장이 너무 커져 개인이 이를 다운로드하거나 저장할 수 없게 되면, 노드를 잃게 될 위험이 있다.[3]
  • 프라이버시 노출: 모든 사용자가 함께 거래내역을 처리하고 검증하기 위해 프라이버시 리스크가 존재한다. 특히 기업의 내부정보나 영업 기밀 등이 공유된다면 치명적일 수 있다.[4]


위협요소

  • 블록체인 트랜잭션을 입력할 때 사람의 실수: 한 참가자가 불법 거래를 원장에 몰래 넣으려고 해도 다른 회원은 정직하게 유지한다. 하지만 누군가 실수를 하게 되면 합의가 없으면 어떤 것도 바뀔 수가 없다. 암호화폐 거래를 실수했을 때, 중앙 권한이 없으므로 취소할 수 없다. 자신의 코인 지갑 비밀번호를 잊어버리면 영원히 사라지는 것이다.
  • 블록체인 구현 오류: 블록체인 기술이 너무 새롭고 구현 오류가 발생하기 쉽다는 취약점을 가지고 있다. 블록체인 프로젝트를 진행하는 기업들은 웹 공격으로부터 보호하기 위해 가장 안전하고 최신의 소프트웨어 개발 및 검토 프로세스를 사용해야 한다. 그리고 다중 요소 인증의 보장, 웹사이트 잠그기를 포함해 모든 기본적인 사항들을 갖췄는지 확인해야 한다.
  • 탐지되지 않은 블록체인 취약점 사용: 블록체인 관련한 비암호화폐에서 취약점을 발견하고 보고할 수 있는 플랫폼조차 없다.[5]
  • 암호화폐 지갑의 위협: 암호화폐 지갑은 일상에서의 지갑의 기능과 같은 것이 아니라, 개인 키(Private Key), 공개 키(Public Key) 그리고 자산을 관리하는 소프트웨어 프로그램을 의미한다. 공개 키가 계좌번호이고, 개인 키가 계좌 비밀번호와 비슷한 역할을 하므로, 개인 키를 소유하는 것은 공개 키에 따른 자산의 모든 권리 권한을 의미한다. 암호화폐 지갑은 핫 월렛(Hot Wallet)과 콜드 월렛(Cold Wallet)으로 작동 방식에 따라 정의된다. 핫 월렛은 실시간으로 편리한 사용이 가능하여 단기 및 소액 투자용으로 사용된다. 하지만 악성코드나 해킹 등에 노출될 가능성이 크다. 콜드 월렛은 USB 저장장치처럼 하드웨어 지갑으로 해킹의 위험에서 상대적으로 안전하여 장기 및 고액 투자용으로 사용된다. 하지만 장치를 분실하면 찾기 어렵다.
  • 스마트 콘트랙트 위협: 1994년 닉 자보(Nick Szabo)가 최초로 제안한 개념이다. 서면으로 작성된 기존의 계약서를 중재자 없이 P2P로 블록체인의 분산원장기술을 이용하여 '스스로 이행이 되는 자동화된 약정' 행위를 의미한다. 금융, 지적재산권, 공유경제, 물류 유통과 같이 상호 거래 및 검증이 빈번하게 발생하고 업무 자동화가 가능한 시스템이 대표적인 업무영역이다.[6]

활용

  • 에지 기기 보호: 블록체인 기술은 인증을 강화하고 데이터 귀속과 흐름을 개선하고 기록 관리에 도움이 되므로 많은 이들은 블록체인을 사용해 IoT와 산업용 IoT(IIoT) 기기를 보호할 방법을 찾고 있다.
  • 기밀성 및 데이터 무결성 개선: 블록체인은 원래 구체적인 접속 제어 없이 탄생했지만, 일부 블록체인 구현은 데이터 기밀성 및 접속 제어에 대응한다. 데이터를 손쉽게 조작하거나 위조할 수 있는 시대임을 고려하면 이는 중요한 과제이다. 이 데이터 무결성은 IoT와 IIoT 기기로까지 확장된다.
  • 개인 메시징 보호: 옵시디언(Obsidian)과 같은 신생 기업은 채팅, 메시징, 앱, 소셜 미디어를 통해 교환되는 개인 정보를 블록체인을 이용하여 보호한다. 사용자는 메신저를 이용하기 위해선 이메일이나 기타 인증 방법을 사용해야 한다.
  • 공개 키 인프라(Public Key Infrastructure, PKI) 강화 또는 대체: 메시징, 이메일, 애플리케이션, 웹 사이트를 비롯한 다양한 형태의 통신을 보호하는 공개 키 암호화이다. 범죄자들은 인증기관을 목표로 공격하고, 암호화된 통신을 침해하거나 신원을 조작할 수 있지만, 블록체인에 키를 게시하면 이론적으로는 가짜 키 위험을 없애고, 통신 상대방의 신원을 확인할 수 있다.
  • 더 안전한 도메인 네임 시스템(DNS): 블록체인을 이용하여 도메인 네임 시스템(DNS) 항목을 저장하면 공격 가능한 단일 목표를 제거함으로써 보안을 개선할 수 있다.
  • 디도스(DDoS) 공격 감소: 블록체인 업체 글라이두스(Gladius)는 자사의 분산 원장 시스템이 디도스 공격을 차단하는 데 도움이 된다고 주장했다. 가까운 보호 풀에 연결하여 더 나은 보호 기능을 제공하고, 콘텐츠를 가속함으로써 공격으로부터 시스템을 보호할 수 있다.[7]

각주

  1. 블록체인〉, 《위키백과》
  2. 김동환, 〈(김동환의 결국은 돈 문제야!) 블록체인 보안의 허점, 해결책은 존재하나?〉, 《한국경제》, 2020-04-17
  3. 3.0 3.1 블록체인의 장단점〉, 《바이낸스아카데미》
  4. 4.0 4.1 sungyu1223, 〈블록체인 기술의 특징 및 장단점을 일아봅니다.〉, 《스티밋》
  5. Maria Korolov, 〈기업 블록체인 보안을 위협하는 5가지 요소〉, 《아이티월드》, 2018-07-19
  6. 블록체인 시대의 보안위협과 대응방안〉, 《이글루시큐리티》, 2019-12-26
  7. Doug Drinkwater, 〈보안 분야에서의 블록체인 사용 사례 6가지〉, 《아이티월드》, 2018-02-09

참고자료

[1]

같이 보기


  의견.png 이 블록체인 보안 문서는 보안에 관한 토막글입니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 이 문서의 내용을 채워주세요.  

  1. , 〈[]〉, 《》,