[TIL & Issue Note] 20220326

블록체인과 보안 및 개인정보

1. 블록체인과 보안

해커

해커의 주된 목표

  1. 가치있는 정보 탈취경제적 이익 추구 -> 정보 자체에 대한 약탈
  2. 서비스 중단(Denial of Service)을 통한 시스템의 교란

해커의 공격을 막으려면?

  • 정보 자체가 노출되는 것을 보호
  • 서비스가 중단되지 않도록 보호

블록체인은 해커의 공격에 대해 안전할까?

  • 블록체인은 모든 데이터를 브로드캐스팅을 통해 다른 노드와 공유
  • 정보의 탈취 자체가 필요없을 정도로 정보가 노출됨.
  • 정보 탈취로부터의 안정성은 가지고 있지 못함
  • 암호화 자체가 안전을 보장하지 않음
  • 암호화를 위한 기술적인 문제도 뒤따름

블록체인 보안

  • 서비스 중단 공격이나 기록을 변경시키려는 시도로부터는 현존하는 가장 안전한 시스템
    • 공격이나 기록 변경을 위해서는 모든 노드를 공격해야 함.

현업에서의 블록체인 사용

  • 정보의 탈취로부터의 안전성에 대한 고려는 접어두어야 함

블록체인 사용 고려 가능한 시스템

  • 중단되는 안 되는 서비스
  • 기록이 변경되면 안 되는 시스템

2. 블록체인과 개인정보

정보

  • 데이터를 가공하여 누군가에게 가치 있는 무엇을 제공해 줄 수 있는 경우.

개인 정보

  • 가공 된 정보 중 누구에게 해당하는 것인지 특정할 수 있는 경우
    • 질병정보 -> 누구에 대한 정보인지 알 수없는 경우 -> 정보
    • 질병정보 -> 누구에 대한 정보인지 알 수 있는 경우 -> 개인정보
  • 두 가지 정보가 결합되어 어떤 사람을 특정할 수 있는 정보를 발생하기도 함
  • 정보 중에 누구 것인지를 특정할 수 있는 경우

블록체인

  • 두 가지 정보가 결합되어 어떤 사람을 특정할 수 있는 정보를 발생하기도 함
  • 비트코인 블록체인에 들어 있는 데이터는 암호화되지 않은 채 모든 노드에 공개

블록체인 데이터의 암호화

  • 암호화 자체도 안전하지 않음
  • 해킹을 통해서 언제든지 풀릴 수 있음
  • 암호화의 여부와 상관없이 접근을 통제하는 것이 가장 중요

데이터 암호화의 이치

  • 암호화된 비밀번호 데이터를 온라인에 공개할 수 없는 것과 같은 이치
  • 암호화를 통한 브로드캐스팅은 안전하게 보호할 수 없음 -> X
    • 모든 데이터는 접근을 통제해야만 안전하게 보호가 가능함
    • 블록체인은 암호화의 여부에 상관없이 정보가 보호되지 않음.
비트코인 블록체인
  • 익명성 보장
  • 정보가 존재 -> 모든 사람에게 공개 -> 이 정보가 누구의 것인지는 특정할 수 없다 = 개인정가 없다
  • 정보는 노출되지만 개인정보는 노출되지 않음.
비트코인 블록체인에서 공개된 정보
  • 발송인의 비트코인 주소
  • 수취인의 비트코인 주소
  • 비트코인의 수량

비트코인과 이더리움

비트코인

  • 정적인 내용만 기록
  • 적힐 내용이 미리 정해져 있음
  • 사용자가 내용을 바꿀 수 없음
  • 용도를 바꾸려면 프로그램을 완전히 수정해야 함
  • 개인정보가 누출될 일이 없음
  • 익명으로 처리됨
  • 구조적으로 개인정보가 막혀 있음

이더리움

  • 동적인 프로그램까지 기록
  • 스마트 컨트랙트를 만드는 사람이 내용을 임의로 정할 수 있음.
  • 스마트 컨트랙트를 통해서 임의로 데이터를 쓸 수 있음
  • 스마트 컨트랙트를 이용해 개인정보를 저장했다면 개인정보의 누출이 일어 날 수 있음
  • 개인정보의 누출이 언제든지 발생

블록체인의 순기능과 역기능

  • 순기능 : 검열을 피해 자신의 의견을 퍼블릭이 파악할 수 있는 공간에 게재했다.
  • 역기능 : 사실확인이 안 된 상태에서 영원히 기록되게 된다.
  • 비트코인은 진실만을 기록한다? -> 비트코인은 단순한 기록장치

블록체인에 대한 진실

  • 정적인 기록을 위한 검열을 통과했기 때문에 코인에서 진실을 쓰지 않는 방법이 존재하지 않음
  • 검증 절차 없이 누구든 원하는 내용을 쓸 수 있음
  • 정보 -> (스마트 컨트랙트) -> 이더리움
  • 무엇이든 기록할 수 있지만 쉽게 바꿀 수 없음

비트코인과 스마트컨트랙트

  • 비트코인 : 모든 거래내역을 모든 노드가 참여하여 검증하므로 진실만을 기록하도록 노력함

  • 스마트 컨트랙트

    • 원하는 사람이 자신이 원하는 내용을 쓸 수 있도록 하는 것
  • 비트코인처럼 정적인 기록만 작성할 경우 개인정보보 보호 가능 -> 규칙검증 가능 -> 통제

  • 스마트 컨트랙트 경우 어떤 기록이든 작성 가능하므로 개인정보 보호가 불가능

  • 스마트 컨트랙트를 이용하면 개인정보는 언제든지 누출 될 가능성이 있음

3. 중개소와 블록체인

암호화폐 중개소와 블록체인의 관계

  • 블록체인의 안전성과 암호화폐 중개소의 안전성을 관련이 없음
  • 해킹과 블록체인의 안전성은 블록체인과 비트코인 시스템에 국한된 내용임
  • 지갑 소프트웨어 -> 블록체인을 사용하기 위한 인터페이스
  • 지갑을 통해 늘 블록체인과 통신을 하고 있음
  • 지갑을 개발하는 사람마다 안전성이 다르게 만들 수 있음
  • 우회적으로 블록체인을 접근하는 환경
    • 죽애소는 블록체인 자체와 관련이 없음

![[Pasted image 20220326164000.png]]

비트코인 중개소

  • 중앙화 시스템으로 되어 있음
  • 중개소의 안정성은 그 중개소 자체가 가진 안정성과 같음
  • 암호화폐 중개소는 블록체인의 외부 요소로 블록체인 기술과는 상관이 없음
  • 최근 발생한 암호화폐 해킹 사건은 중개소를 해킹하여 많은 자원을 획득하려는 시도
  • 암호화폐 중개소는 거래 내용을 시뮬레이션만 하고 있음 것
  • 언제든지 해킹 위험에 노출
  • 암호화폐 중개소의 안전성에 전적으로 의지

블록체인과 보안

  • 블록체인에 담긴 데이터 자체는 모든 노드에 노출되므로 안전하지 않음
  • 블록체인은 서비스 중단(Dos) 공격으로부터 안전함

블록체인과 개인정보

  • 블록체인에는 정보는 담겨 있지만, 익명성을 기반으로 하고 있기 때문에 누구의 정보인지 특정할 수 없으므로 개인정보 문제는 발생하지 않음
  • 법 조항의 강화에 따른 적극적인 대응 필요

중개소와 블록체인

  • 중개소는 블록체인 기술과 무관하며, 단순히 이를 이용하는 외부 소프트웨어에 불과
  • 다양한 해킹의 위협으로부터 노출되어 있음

이더리움 vs 비트코인

1. 비트코인 블록체인의 문제점

비트코인 블록체인의 문제점(=개선점)

  • 이더리움이 등장하면서 나타난 비트코인에서 개선할 점

1. 용도가 제한적임

  • 비트코인을 주고 받는 정적인 기록만 함.
  • 새로운 것을 기록하기 위해서는 프로그램 모두가 수정되어야 함
  • 비트코인을 주고 받는 제한적인 용도로만 사용 가능

2. 상태가 기록되어 있지 않음

비트코인의 상태
  • 주소별 잔액
  • 입출금 히스토리
  • 비트코인의 특정 상태는 어떤 한 블록에 있지 않으므로 하나의 블록만으로는 상태를 알 수 없음

3. 비트코인이 사용하고 있는 해시 퍼즐 방식은 계산만 빨리하면 풀 수 있음

  • 해시파워가 일부 세력에 의해 독점 될 위험이 큼
  • 51% Attack -> 일부 세력의 해시파워 독점 -> 블록의 생산을 독점하는 결과가 나타남
  • 빠른 계산만 하면 되므로 전용기계로 만들기에 좋은 방식으로 되어 있음

이더리움이 비트코인 문제를 개선한 방법

  • 이더리움은 비트코인의 세가지 문제를 가장 큰 문제점이라 판단하고 개선하기 위해 노력함

1.용도가 제한적임

  • 스마트 컨트랙트를 이용하여 극복
  • 프로그램을 이용하여 각각의 용도가 바뀜
  • 호출시마다 메세지를 통해 서로 다른 매개변수를 부여할 수 있음
  • 각각 동작을 달리 할 수 있음

2. 상태가 기록되어 있지 않음

  • 계정벌 상태 관리를 통하여 극복
  • 비트코인 : 주고받은 모든 기록내용이 주소를 통해 기록. 모든 블록에 흩어져 있음
  • 이더리움은 계정별 관리 진행 -> 각각의 블록에서 각각의 계정으로 이어가는 다리 역할
  • 어떤 계정이던 특정 블록에서 바로 액세스 가능

3. 비트코인이 사용하고 있는 해시 퍼즐 방식은 계산만 빨리하면 풀 수 있음

  • 메모리-하드 해시를 통하여 극복

2. 이더리움 블록체인의 특징

이더리움 블록체인

스마트 계약

  • 1990년대 닉 사보(Nick Sazbo)에 의해 제안
  • 제3자의 개입없이 법률적 계약사항이 집행되는 디지털 환경

이더리움에서의 스마트 컨트랙트 이용

  • 컴퓨터 프로그램 -> 프로그램 실행 -> 데이터 생성 -> 데이터 이용
  • 프로그램을 통해 원하는 내용을 블록에 저장 및 호출할 수 있는 환경 제공
  • 솔리디티 언어를 이용하여 프로그래밍화

이더리움의 발전

  • 계정단위의 관리를 위한 계정 정의
  • EOA(Externally Owned Account)
    • 비트코인 주소와 비슷
    • 정적인 내용 기록이 기본 목표
    • 개인키로 통제할 수 있음
    • 이더리움 간 전송 가능
  • 계약 계정
    • 스마트 컨트랙트 저장
    • 전송 내용과 특정 스마트 컨트랙트 저장
    • 코드에 의해 통제

계정 단위 관리를 위한 계정정의

![[Pasted image 20220326171431.png]]

  • 계약 계정 내의 실행코드가 실행되면 그 결과가 저장되게 됨

이더리움의 블록

  • 현재 계정 상태가 저장된 별도의 공간이 있음
  • 이더리움 주소 A를 여러번 사용 -> 글로벌한 결과를 한 곳에서 저장
  • 계약 계정 속에 프로그램을 저장할 수 있는 방식 -> 스마트 컨트랙트

계약 계정

  • 언제든지 코드에 의해 통제
  • 실행된 코드는 또 다른 계약 계정 호출 가능
  • 최초의 계약 계정은 반드시 EOA를 통해 호출

비트코인 해시함수의 단점

  • 전용기계화가 쉬엄
  • 특정 세력이 해시파워를 장악하는 것이 쉬움
  • 해시 함수의 독점화를 통해 51% 공격이 용이

이더리움의 해시퍼즐 방식

![[Pasted image 20220326171810.png]]

  • SHA256 -> SHA3 변경
  • 메모리 문제 해결의 열쇠

이더리움 해시 함수

  • 메모리 상자가 있음
  • 하나의 해시 함수 계산 시 64회 메모리 액세스 필요
  • Nonce 1씩 증가시키는 것을 물론 64개의 숫자를 읽어와서 계산

이더리움 해시 퍼즐 방식의 문제점

  • 계산 속도 저하
    • 해시 퍼즐에 가장 큰 시간이 소요되는 것은 -> 64회 메모리 액세스
    • 64회의 메모리 액세스를 해야하므로 의도적으로 속도를 늦춘 셈

ASIC의 사용

  • 속도를 따라 잡을 수 있는 메모리가 않음 -> ASIC으로 만드는 것이 용이 하지 않음
  • 가격대 효용비용이 떨어 질 수 있음
  • 비트코인에 비해 효율적이지 않음
  • 특정 세력의 해시 함수 독점을 방지 할 수 있음

메모리-하드 방식

사용 속도가 느린 메모리 시스템의 활용을 통해 전용기계화 하여 해시 함수를 독점하려는 시도를 막는 방식

  • 비트코인 블록체인 이후 대부분 메모리-하드 방식 이용
  • 해시 함수의 전용화 및 특정 세력의 독점화 방지
  • 비트코인에 비해 더 나은 성능으로 발전 중

그 밖의 개선

통합 개발 프로그램 (IDE)의 제공

  • IDE 툴을 사용해 스마트 컨트랙트 생성 가능
  • 스스로 작동, 집행되는 스마트 계약의 시발점

토큰 개념 도입

토큰 개념의 도입 전
  • 독자적인 네트워크 구성 -> 구축된 네트워크에서 암호 화폐 발행
토큰 개념의 도입 후
  • 스마트 컨트랙트 이용 -> 개념만으로 전송 및 판매 가능
  • 누구나 손쉽게 토큰 발생 가능

개선되지 못한 부분

  • 범용적인 부분 이외에 안전성, 지속성, 탈중앙화
  • 비트코인 블록체인에 비해 개선된 점이 많지 않음

이더리움의 스마트 계약

  • 스마트 계약의 환경 더 개선한것으로 볼 수 있음
  • 비트코인이 가지고 있던 문제점을 개선

토큰의 개념을 보는 시각

  • 암호화폐 -> 인센티브 공학의 일부
  • 채굴하는 사람의 대가를 위해 도입
  • 다른 인센티브 방식이 있을 수 있음

토큰의 기능

  • 일정 디지털 화폐를 서로 주고받는 기능
  • 이더리움에서는 스마트 컨트랙트를 위해서 주고 받을 수 있음
  • 현재 15만개 중 1,000 여개가 실제로 거래

토큰의 이면

  • 거래되고 있는 대부분의 토큰이 중개소에 의해 만들어지고 있음
  • 스마트 컨트랙트가 토큰을 이용하는 사람들에 의해 남용될 가능성 발생
  • 최근 생성되는 대부분의 스마트 컨트랙트가 토큰에 연루

이더리움이 꿈꾸는 세상

  • 누구나 탈 중앙화 프로그램을 제공할 수 있도록 하겠다
  • 안정성, 지속성에 대한 검증 필요

Dapp의 한계

  • 중요한 정보를 저장할 수 없음 -> 사용제한에 대한 문제가 발생
  • 비효율적인 시스템 -> 효율을 포기하고 값 저장
  • 저장된 것에 대한 변화를 최소화
  • 좀 더 나은 시스템 구현에 대한 숙제가 남아 있음

스마트 컨트랙트의 역할

  • 원하는 데이터를 기록하고 블록체인이 범용성을 가지도록 함.

3. 이더리움과 비트코인 비교

비트코인과 이더리움

![[Pasted image 20220326173306.png]]

이더리움

  • 비트코인의 비효율적인 부분 개선
  • 해시파원의 편중 견제
  • 스마트 컨트랙트 구현
    • 누구나 쉽게 프로그램 할 수 있도록 함

튜링 완전과 튜링 비완전

  • 튜링 완전 - 컴퓨터의 동작을 모두 표현 할 수 있는 경우. 솔리디티 언
  • 튜링 비완전 - 튜링 완전에 비해 표현이 제한적. 스크립트 언어

비트코인과 이더리움의 블록 형태

![[Pasted image 20220326173556.png]]


비트코인 블록체인의 문제점

  • 비트코인에는 정적인 데이터만 기록되어 용도가 제한적임
  • 해시 퍼즐의 경우 계산에만 국한되어 전용기계를 통해 일부 세력의 독점화가 용이

이더리움 블록체인의 특징

  • 이더리움은 디지털 환경을 통해 제 3자 없이도 계약을 이행하려는 닉 사보의 ‘스마트 컨트랙트’ 개념을 구현하기 위해, 블록에 프로그램을 저장할 수 있는 기능을 적용
  • 해시 퍼즐에 메모리-하드-개념을 도입하여 전용기계를 통한 일부 세력의 독점화를 견제

이더리움과 비트코인 비교

  • 이더리움은 블록체인의 비효율적인 부분을 개선함
  • 이더리움은 튜링-완전 언어를 도입해 스마트 컨트랙트를 구현
  • 이더리움은 메모리-하드 해시 퍼즐을 통해 일부 세력 독점을 견제했음
  • 이더리움은 계정 위주의 관리를 통해 현재 계정의 잔액 등 상태를 손쉽게 알 수 있게 했음
  • 이더리움은 블록체인 본연의 기능 면에 있어서 큰 변혁이 아니라고 볼 수 있음

블록체인의 진정한 효용

1. 블록체인의 진정한 효용

블록체인에 관한 오해

  1. 데이터 저장의 안전성
  2. 해킹 방지에 탁월
  3. 진실만을 기록
  4. 기록의 불변
  5. 중앙화 시스템보다 효율적

데이터 저장의 안정성 오해 바로잡기

  • 블록체인에 데이터를 저장하면 안전하게 보호된다 (▲)
데이터 자체 비보호
  • 블록체인 데이터는 브로드캐스팅을 통해 모든 노드에 공유
DoS 공격에 대해서는 상대적 안정성 보유

데이터는 보호되지 않으나, 서비스 중단 공격에는 상대적으로 안전하다.

해킹 방지에 탁월 오해 바로잡기

  • 블록체인은 현존하는 시스템 중 해킹으로부터 가장 안전하다 (▲)
기록 변조 및 서비스 중단 시도에 대한 안정성 보유
  • 참여한 모든 노드의 중복 검증

서비스 중단 및 기록 변조 시도에는 가장 안전하지만 데이터의 보호가 되지 않는 가장 취약한 시스템이다.

진실만을 기록에 대한 오해 바로잡기

  • 블록체인은 항상 진실만을 기록한다. (X)
초창기 블록체인
  • 정적인 기록, 비트코인 거래 내용 기록 -> 검증가능
  • 최소한 비트코인 블록체인에서는 진실만 기록 가능한 장치 마련
후기 블록체인
  • 누구든 원하는 사실 기록 -> 검증 불가

블록체인은 진실을 기록하는 것이 아니라, 기록이 변경되지 않도록 특정장치를 한 것이다.

기록의 불변 오해 바로잡기

  • 한 번 기록되면 어떤 경우에도 변경되지 않는다.(X)

기록 및 변경이 어려울 뿐, 불가능한 것은 아니다. 퍼즐의 난이도 조절로 기록 변경을 어렵게 만들 수 있다.

중앙화 시스템보다 효율적 오해 바로잡기

  • 블록체인은 중앙화 시스템보다 더 효율적이다 (X)
일의 반복을 통해 데이터의 투명성을 요구하는 기술
  • 효율성 ↓, 투명성 ⬆️
  • 속도의 효율성 : 블록체인 < 중앙화 시스템

블록체인은 중앙화 시스템에 비해 비효율적이다.

블록체인 플랫폼

  • 블록체인의 효용을 위해 작업증명 방식의 막대한 에너지 사용에 대한 의구심 증폭

블록체인의 효용성

  • 효용성을 희생하고 안전성을 누림
  • 스스로 실행되는 스마트 계약 환경을 구축할 수 있는 플랫폼
  • 진정한 효용성을 얻기 위해서는 블록체인의 안정성이 관건

현재 블록체인의 발전 방향

  • 기존의 블록체인을 변형하려는 노력이 많이 나오고 있음
  • 블록체인 = 리더선출 방식
    • 비트코인 : 해시 퍼즐 방식을 통해 무작위성을 최대한 보장하며 리더 선출
    • 현재 : 정해진 방식 혹은 일부 세력이 점유한 방식에 의해 리더 선출
    • 블록체인의 무작위성을 잃어버리게 되는 결과를 가져올 수 있음
  • 신뢰받는 제3가 필요 없는 거래, 안전성, 기록불변성, 확장성 등의 모든 조건을 만족하는 블록체인 개발은 여전히 미지수임

블록체인에 관한 연구의 미래

  • 과연 탈중앙화된 세상을 소프트웨어로 구현할 수 있을까?
  • 누군가 혁신적인 방식이 제안될 가능성이 있음
  • 소프트웨어로 새로운 효용을 가질 수 있을까

2. 프라이빗 블록체인과 컨소시엄 블록체인

  • 프라이빗 블록체인과 컨소시엄 블록체인을 과연 블록체인이라고 할 수 있는가?

비트코인과 이더리움 블록체인의 특징

기록과 검증을 위해 특정 서버를 의지하지 않음(확장성)

퍼블릭 블록체인
  • 확장성 보유, 누구든 기록의 무결성 확인 가능 -> 기록의 투명성 확보
프라이빗, 컨소시엄 블록체인
  • 기록과 검증은 정해진 소수의 서버에 의해서 가능
  • 프라이빗 블록체인의 경우
    • 단 하나의 서버가 기록과 검증 실시 중앙화 시스템과 유사
    • 분산 저장을 통해 차별화
    • 프라이빗, 중앙화 시스템으로 분류할 수도 있다.
  • 컨소시엄 블록체인
    • 여러 개의 서버로 나눠 저장할 뿐 기록과 검증을 정의된 소수에 의존
    • 사전에 정의된 컨소시엄에 합류해야 기록의 검증에 참여가능
    • 몇 개의 동종업계가 기록 분산 저장 방식 채택

프라이빗, 컨소시엄 효용성 훼손 사항

1. 심각한 안정성의 저해

  • 해커의 목표가 뚜렷함
  • 해킹에 안전하다는 말이 성립되지 않음
  • 서비스 중단 공격 및 기록 변경 공격으로부터 안전했던 속성을 잃음

2. 확장성 보유 불가

  • 사전에 정한 노드만 기록과 검증에 참여가능

3. 기록의 불변성 저해

  • 채굴과정이 없음
  • 기록 변경에 대해 쉽게 감지하거나 엄청난 에너지가 드는 리소스가 필요 없음
  • 해시 함수만 다시 계산하면 언제든지 기록 변경 가능

4. 탈중앙화, 제3자의 개입 없이 거래 불가능

  • 노드 자체가 이미 신뢰받는 제 3자의 역할
  • 여러 개의 서버에 의존하는 방식으로 변경된 것임
  • 퍼블릭 블록체인과는 거리가 멀다.
  • 다소의 안전성을 제외하고 블록체인이 가지고 있는 모든 속성을 잃음
분산저장 =? 블록체인
  • 안전성 유지
  • 투명성 유지
  • 탈중앙화 -> 프라이빗, 컨소시엄 블록체인 기능 수행 불가

블록체인 도입 전 체크리스트

1. 왜 블록체인이 필요한가?

  • 용도에 따른 블록체인의 종류는 중요하지 않음.
  • 왜 블록체인 도입을 생각했을까?
  • 기록의 불변성, 안정성을 고려하면 -> 퍼블릭/프라이빗 답이아님
  • 안전성 때문에 새로운 시스템을 도입해야할 필요가 있을까?

2. 어떤 형태의 블록체인을 도입할 것인가

3. 도입하는 블록체인이 문제점을 해결 할 수 있는가?

  • 안전성 분산이 해답이 아님 -> 분산이 해답이라면 현재의 은행 모두가 해킹으로부터 안전하지 않을까?

블록체인 도입 시 고려사항

  • 블록체인은 안전성을 위해 효율을 포기한 시스템이다.
  • 현재 시스템으로 원하는 목적을 달성할 수 없는가?
  • 블록체인은 그 효능이 한정적이다.

컨소시엄 블록체인의 등장

  • 컨소시엄, 프라이빗으로 구현 가능
  • 하이퍼레저 시스템은 분산 저장시스템으로 부르는 것이 합당.
  • 분산 저장시스템은 효용성이 있을 수 있음
  • 새로운 효용을 만들 수 없을 수 있음
  • 하이퍼렛저를 왜 이용하는지에 대해 꼼꼼히 따져봐야 함
  • 분산저장 시스템은 더 큰 효용성을 둘 수 있을 경우에만 사용하도록 함

지분 증명

  • 작업증명을 대체할 수 있는 방식
  • 작업증명 방식을 대선하여 더 나은 방식으로 호도되기도 함
  • 지분증명과 작업증명은 다른 방식
  • 다수결, 코인보유량에 따라 결정방식이 다름

지분증명을 사용하는 블록체인 시스템

  • 블록체인 시스템으로 부르기에 미흡함
  • 안전성이 담보되지 않았음
  • 투명성 문제가 제기되고 있음
  • 완전한 무작위성에 의한 투명성을 가진 블록체인과는 거리가 멀다.
  • Delegated POS, PPOS 표방한 블록체인은 미리 몇 개의 노드가 검증에 참여 -> 컨소시엄 블록체인과 거의 동일한 형태

블록체인의 진정한 효용

  • 안전성, 기록 불변성, 신뢰받는 제 3자 필요없는 거래, 누구나 검증에 참여 가능하다는 특징이 있음
  • 블록체인은 완성형으로 사용할 수 있는 기술이 아닌, 많은 실험을 통해 그 효용성을 검증해 나가야 하는 상태의 기술임

프라이빗 블록체인과 컨소시엄 블록체인

  • 프라이빗 블록체인 : 기능의 입루를 변형한 블록체인, 특정 노드가 서버 역할 수행, 하나의 서버만 존재
  • 컨소시엄 블록체인 : 다수의 노드가 서버 역할 수행
  • 프라이빗 블록체인과 컨소시엄 블록체인의 경우 누구나 참여하는 확장성이 결여

과정 종합

1. 블록체인과 일반적 중앙집중 시스템

블록체인과 중앙 서버

비트코인의 탄생

  • 유래 : 암호화를 통해 프라이버시 보호를 극대화하고자 했던 -> 사이퍼 펑크
  • 탄생 : 절대 익명 거래, 비가역성 거래

비트코인의 기반, 탈중앙화 시스템

  • 분산시스템 => 일의 배분을 통한 효율성 추구
  • 탈중앙화 시스템 => 일의 반복을 통해 기록 불변성과 안전성을 추구
  • 블록체인 사용시 효율성 증대 불가능 -> 중앙화 시스템 보다 일 반복
  • 분산시스템 목적 <-> 블록체인 목적

비트코인의 목적

  • 누구도 접근 불가능한 절대 익명의 금융거래 환경
  • 신뢰받는 제 3장벗이 작동하는 방식 연구 -> 블록체인 인프라 제안

탈중앙화 시스템

  • 일의 반복을 통해 안정성을 추가한 시스템

2. 블록체인의 기본 원리

블록체인의 기본 원리

트랜잭션 처리 방식

  • 블록체인 정보 -> 브로드 캐스팅 -> 전체 노드 공유
  • 중요한 정보에 블록체인에 담으면 안됨 ![[Pasted image 20220326182718.png]]

비트코인의 소유권 통제

  • 비대칭 암호화에 의해 철저히 통제
  • 브로드캐스팅 통해 모든 공유 -> 기록 사용은 해당 개인키 소유자만 가능
  • 공개키와 개인키로 이루어진 암호화로 소유권 통제

기록 조작 불가

  • 작성된 기록 조작 시 해시 함수에 의해 발각

개인정보 노출 X

  • 블록체인은 익명성에 기반

블록체인을 이루기 위한 기반 기술

해시 함수

  • 입력 길이와 상관없이 늘 일정한 길이의 출력을 내는 함수
  • 입력의 사소한 변화에도 출력이 완전히 달라짐
  • 출력으로 입력 예측 불가
  • 비트코인에서 해시 함수는 원래 문서의 변경 여부 탐지에 사용
해시 함수의 블록 해시 숫자 생성
  • 현재 해시값 + 이전 해시값 : 모두 연쇄 반응을 일으키도록 설계
  • 현재 블록값의 값 변경시 그 이후 생성 블록 값은 연쇄적으로 변경
  • 제네시스 블록 값 변경 이후 생성된 블록은 해시값 변경

해시퍼즐

  • 작업증명이라는 방식을 비트코인 형식으루 구현
  • 비트코인에서의 작업증명 -> 해시퍼즐
  • 엄청난 양의 계산을 해야만 해결 가능
  • 하나의 해시 퍼즐 풀이에 걸리는 시간 -> 최소 10분이상
  • 오래된 기록일수록 불변성이 기하급수적으로 증가

비대칭 암호화 기법

  • 대칭형 암호화 기법
  • 비대칭형 암호화 기법 -> 암호화, 복호화 할때 서로 다른 키
    • 개인키, 공개키 두 개의 키가 쌍을 이룸
    • 개인키 소유자만이 잠금 장치를 풀 수 있음
    • 실수령자만이 비트코인 사용 가능
    • 비트코인은 짝이 되는 상대키로만 잠금 장치를 풀 수 있는 방식 적용

블록 기록 과정

![[Pasted image 20220326183504.png]]

리더 선출
  • 비트코인 -> 해시 퍼즐을 가장 먼저 해결한 사람
  • 작업증명 방식
  • 지분증명 방식 -> 안전성 문제, 블록체인으로 보기 어려움
검증 절차
  • 리더로 선출된 노드가 전권을 보유하고 기록 수행
    • 신뢰할 수 없으므로 검증 절차가 필요함
    • 검증은 시스템에 참여한 모든 노드가 수행
합의
  • 모든 노드가 동의하면 새로운 블록 형성
  • 정상적인 블록이 아니라고 판명되면 폐기
  • 소프트웨어 버전에 따라 블록체인의 기본 원리와 블록체인의 진정한 효용 발생 -> 하드포크, 소프트포크

각 블록은 하나의 새로운 세계

  • 세계를 지배할 리더 선출, 선출된 리더는 전권 보유
  • 55만 개의 비트코인은 55만 번에 걸쳐 새로운 리더 선출
  • 선출된 리더는 중앙 서버의 역할
  • 기록하는 사람이 단 한명이기 때문에
  • 기록할 리더는 계속 변경
  • 비트코인 : 10분마다 반복
  • 이더리움 : 15초마다 반복

3. 블록체인의 진정한 효용

블록체인의 진정한 효용 이해

  • 현업에서 블록체인의 필요 여부 판단
  • 블록체인에서 요구 실현 가능성 판단

현업에서 블록체인이 비효율적인 경우

  • 안정성보다 효율성을 추구할 때 -> 블록체인 적절하지 않음
  • 리더 선출의 무작위성 보장, 제3자 없이 거래 가능하도록 구축
  • 제3자가 필요하거나 되고 싶은 경우

블록체인 도입 시 만족해야 하는 사항

  • 안정성, 기록불변성, 신뢰받는 제3자가 필요 없는 거래, 누구나 검증에 참여 가능한 확장성
  • 일부만 필요하거나 모두 필요 없다면 블록체인은 적절한 솔루션이 아님
  • 일부만 맞고할 경우 처리 여부는 스스로 판단

블록체인이 이루려고 했던 세상

DAO(Decentralized Autonomous Organization)

  • 탈중앙화 된 자유 조직
  • 자율적으로 실현될 수 있는 환경 추구
  • 블록체인이 자율적 환경을 실현해줄 것이라도 믿음
  • 이를 통한 경제적 이득 -> 불필요한 수수려 제거
닉 사보의 스마트 계약
  • 그 누구의 간섭없이 스마트 컨트랙트에 의해서만 꾸려지는 생태계
  • 이 상태를 꿈꾸는 사람들이 만든 용어

블록체인의 비각역성과 불변성

  • 블록체인의 기록 -> 바꾸는 것이 어렵게는 가능 -> 작업증명 방식
  • 현실 -> 비각역적 불변성은 아직 미구현
    • 채굴업자들의 담함
    • 블록체인 기록 언제든 변경 가능

더 다오 사건

  • 이더리움 진영 사이에 다툼 발생
  • 채굴업자와 담합 -> 지금의 이더리움
  • 채굴업자와 반기 -> 이더리움 클래시

중재가 필요 없는 거래

  • 연구 가치 있음
  • 중재가 필요 없다는 자체로 의미를 가지지 못함
  • 세상에 중재가 있는 이유는 필요하기 때문

현업에 블록체인 도입 시 고려사항

블록체인으로 어떤 효용을 얻을 것인가

  • 기존에 없던 효용 획득 -> 고객은 어떤 시스템이든 만족
  • 효용 미획득 -> 고객

그 효용이 기존의 시스템으로는 불가능한가

어떠한 형태로 블록체인을 구현해야 하는가

블록체인을 위한 블록체인 프로젝트 -> 존립가치 없음

효용을 위한 블록체인 프로젝트 -> 앞으로 계속 연구해야 할 영역임


블록체인과 일반적 중앙집중 시스템

  • 분산시스템 : 일의 분산을 통해 효율을 올리려는 시스템
  • 블록체인 : 탈중앙화 시스템으로서 일의 반복을 통해 기록의 불변성과 안정성을 꾀하려는 기술

블록체인의 기본 원리

  • 블록체인은 브로드캐스팅을 통해 모든 정보를 전체 노드에 공유
  • 블록 단위로 리더를 선출, 기록을 맡긴 다음, 그 기록이 정확한지 모든 노드가 검증

블록체인의 진정한 효용

  • 블록체인은 효용성을 버리고 기록의 불변성과 안정성을 꾀함과 동시에, 신뢰받는 제 3자 없이도 거래가 가능한 P2P 시스템을 구현하고자 하는 것임
  • 따라서 블록체인을 고려할 때는 이러한 효용이 진정으로 필요한 것인지 면밀히 검토하에 체크리스트 검토후 진행