IT_잡담2023. 12. 26. 08:48

 

반달가면 이글루에서 백업 - http://bahndal.egloos.com/599930 (2017.6.15)

앞에 썼던 게시물에서 이어지는 글. 이전 게시물은 아래의 링크를 참고하자.

비트코인 스케일링(거래용량 확장)에 대한 잡담 - 1

비트코인 스케일링(거래용량 확장)에 대한 잡담 - 2

지난 5월에 "컨센서스(Consensus) 2017"이라는 비트코인 관련 국제회의에서 비트코인 관련 기업 관계자들과 대규모 채굴장 소유자들이 모여 비트코인 거래용량 확장과 관련하여 아래와 같은 사항에 합의했다고 한다. (관련 내용은 여기로)

지지율 80%에서 세그위트 기능을 활성화한다.
6개월 이내에 블록 크기 제한을 2MB로 변경하는 하드 포크(hard fork)를 실행한다.

위의 내용은 소위 "세그위트2x(SegWit2x)"라는 제안인데, 지난 3월에 이미 제안된 바 있는 "세그위트2MB"라 불리는 방안을 기초로 하고 있다. (세그위트2MB 관련 내용은 여기로). 세그위트2MB 대략의 내용은, 4월 29일부터 8월 29일까지 세그위트가 지지율 95%로 활성화될 경우 12월 14일에 하드 포크를 실행한다는 것이다.  

이전에는 세그위트와 하드 포크를 놓고 서로 논쟁이 분분했다고 하니, 어쨌든 위의 두가지 사항으로 다수의 비트코인 관련 업체/단체들이 합의를 이룬 것은 나름 의미가 있다. 세그위트2x 깃허브(github) 페이지에 가 보면 일정 계획이 있는데 6월 16일까지 알파 버전, 6월 30일까지 베타 버전, 7월 14일부터 시험, 7월 21부터 운영 시작으로 되어 있다.

그러나 한가지 변수가 있다. 정작 비트코인 S/W에 반영해야 하는 코어 개발자들이 위의 합의에서 빠져 있다는 점이다(관련 기사는 여기로). 현재 코어 개발자들 중 두명만 이 제안에 대해 긍정적이고 그 외 나머지는 반대하거나 입장을 유보한 상태인 모양이다. 비트코인 코어 홈페이지에 가 보면 핵심 개발자는 현재 17명 정도다. 즉, 대다수가 이 제안에 대해 긍정적이지 않은 상태이므로 코어 개발자들이 제안에 동의하고 실제로 기능을 구현할 것인지는 좀 더 두고봐야 할 것 같다.  

하드 포크는 이더리움(ethereum)에서 이미 한번 있었고 세그위트는 라이트코인(litecoin)에서 이미 돌아가고 있으니, 비트코인에서 두 가지를 다 하는 것도 큰 문제 없이 잘 될 것이라 생각할 수도 있겠지만, 개인적으로는 이런 상황에서 코어 개발자들의 참여를 이끌어 내고 6개월 이내에 블록체인을 하드 포크한다는 것은 너무 성급한 일정이 아닌가 싶기도 하다.

아무튼 결론적으로, 비트코인의 인지도가 급상승하면서 수용 가능한 거래의 규모가 거의 한계에 다다르고 있는 중인데 이 문제가 어떻게 해결될 것인지는 아직 확실치 않은 상태다. 비트코인 스케일링에 대한 잡담은 일단 여기까지로 마무리.

728x90
Posted by 반달가면
IT_잡담2023. 12. 26. 08:43

 

반달가면 이글루에서 백업 - http://bahndal.egloos.com/599837 (2017.6.13)

이전에 썼던 게시물에서 이어지는 글.

비트코인의 거래용량 확장 문제의 해결책으로 거론되는 방안은 두가지다. 첫번째는 블록 크기의 증가, 두번째는 "세그위트(SegWit)"라는 기능의 도입이다.

첫번째 방법인 블록 크기 증가는 비트코인 프로토콜 자체의 변경을 필요로 한다. 예를 들어 블록 크기를 2MB로 늘리려고 할 경우 어느 시점에서 기존의 1MB 단위의 블록체인에서 분기하여 2MB 단위의 블록을 생성하여 블록체인을 이어나가는 것이다.

이것은 하드 포크(hard fork)라고 불리는 과정이다. 개발자가 2MB 블록을 지원하기 위한 비트코인 S/W의 새로운 버전을 만들어 채굴자와 사용자에게 배포하고 사전에 지정된 블록 번호부터 새로운 블록 크기가 적용되는 형태다. 이전 버전과의 호환성은 포기하게 된다.

만약 일부 개발자/사용자/채굴자 등이 이 새로운 버전을 거부하고 기존 프로토콜을 고수하게 된다면, 비트코인은 두개로 쪼개질 것이다. 새로운 비트코인, 그리고 이전 프로토콜을 고수하는 비트코인 클래식, 뭐 대략 이런 식으로 되는 셈. 하드 포크 시점을 기준으로 두개의 블록체인이 병존하게 되고 이들은 상호 독립적이다.

두번째 방법인 "세그위트"는 자세히 알아보지 않아서 구체적인 내용은 잘 모르겠는데, 블록을 생성할 때 일부 정보를 제거해서 블록 크기는 그대로 유지하면서 수용 가능한 거래내역의 수를 4배 정도 증가시키는 방법이라고 한다. 이 기능이 작동하려면 갱신된 S/W가 필요하지만 블록체인은 여전히 하나이고 이전 버전과의 호환성도 유지된다. 소위 소프트 포크(soft fork)다.

세그위트가 작동하려면 비트코인 네트워크를 유지하고 있는 채굴자들의 대다수(95%)가 세그위트 지원 버전으로 업그레이드하고 세그위트를 지지하도록 설정해야 한다. 비트코인 네트워크의 세그위트 지지율은 여기에서 확인할 수 있다.


6월 현재, 비트코인 네트워크의 세그위트 지지율은 약 33% 수준이다.

한가지 흥미로운 점은 라이트코인(litecoin)에서는 이미 세그위트 기능이 지난 4월에 활성화되어 현재 사용되고 있는 중이다. 라이트코인의 블록 크기 제한은 비트코인과 마찬가지로 1MB이나, 평균 블록 생성 시간이 2.5분으로 비트코인(10분) 보다 4배 빠르기 때문에 최대 거래용량은 비트코인의 4배다. 인지도가 비트코인보다 훨씬 낮아서 세그위트가 없어도 거래용량 문제가 전혀 없기에 당장에 실질적인 이득은 딱히 없어 보이지만 세그위트 기능 자체에 대한 우려나 불확실성을 상당 부분 해소했다는 점에서 긍정적이라고 할 수 있을 듯하다.

728x90
Posted by 반달가면
IT_잡담2023. 12. 26. 08:39

 

반달가면 이글루에서 백업 - http://bahndal.egloos.com/599756 (2017.6.12)

비트코인의 블럭 크기 제한과 거래용량 확장 문제는 꽤 오래전부터 논의되어 왔으나, 일본에서 지난 4월부터 비트코인을 합법적인 결제수단으로 인정하고 이후 인지도 상승과 시세폭등이 이어지면서 이제는 꽤나 시급한 문제가 된 듯하다. 나름 흥미로운 부분도 좀 있고 해서 여기에 정리해 보기로.

비트코인의 거래내역은 블록체인(blockchain)이라고 불리며 인터넷에 공유되어 있다. 이 블록체인을 생성하고 유지하는 대가로 비트코인을 받는 것이 채굴(mining)이다. 아무튼, 이름이 블록체인인 이유는 비트코인 거래내역이 블록(block) 여러개가 줄줄이 이어져 있는 형태로(chain) 생성되기 때문이다.

블록은 평균 10분에 하나씩 생성되고, 한 블록의 크기는 최대 1MB다. 블록 크기가 1MB를 초과할 수 없기 때문에 특정 시간에 거래가 몰리면 거래승인 시간이 길어지거나 아예 승인이 안 될 가능성도 존재하게 된다. 통상 10분내에 승인되어야 할 거래가 30분이 넘어도 승인되지 않는다거나 아예 승인이 되지 않고 거부되거나 하는 문제가 생길 수 있다.

그렇다면, 현재 비트코인의 블록 크기는 대략 얼마 정도인가? 이 정보는 blockchain.info에서 볼 수 있다. 여기로.

 


그래프를 보면 최근의 평균 블록 크기가 거의 1MB 근처까지 올라왔음을 알 수 있다. 블록체인에서 수용 가능한 한계치에 이미 근접해 있다는 뜻이다. 만약 이 상태로 그냥 방치된다면 문제가 될 소지가 크다.

처음에 비트코인이 설계되면서 블록 크기가 1MB로 제한된 이유는, 이 정도까지 많은 거래가 있을 것이라고 예상하지 못한 측면도 있겠지만 한편으로는 블록체인을 보호하기 위한 목적도 있다. 만약 블록 크기에 제한이 없으면 악의적인 사용자들이 거래를 미친 듯이 부풀려서 - 예를 들어 1BTC 송금을 0.00001BTC로 쪼개서 10만개의 거래를 만든다던가 하는 식으로 - 블록체인의 크기를 마구 늘어나게 하면 비트코인 네트워크와 채굴 노드에 과부하가 생겨 일종의 서비스 거부(DoS) 공격이 될 수도 있을 것이기 때문이다.

비트코인이 처음 나올 당시(2009년)에는 GPU나 ASIC을 이용한 채굴도 없었고 CPU를 이용해서 채굴을 했던데다가 성능도 지금 같지 않았으니 블록 크기 1MB 이내라는 제약은 그 당시로서는 충분히 합리적이었다고 생각된다.  

그렇게 블록 크기 제한을 했음에도 현재 블록체인의 총 용량은 급속도로 증가했다. 블록체인 용량 증가 동향은 여기에서 볼 수 있다.



그래프를 보면 알 수 있듯이 2017년 6월 현재 용량이 무려 120GB에 육박하고 있다. 지금 비트코인 클라이언트를 받아서 설치하고 네트워크와 동기화하려면 120GB 정도를 다운로드해야 되는 상황이다.

시간은 늦었고 글은 생각 보다 길어지고 있어서, 다음에 이어서 써야겠다. 일단 여기까지.

728x90
Posted by 반달가면
리눅스2023. 12. 24. 10:55

 

예전에 노트북에 Q4OS 4.8 리눅스 KDE 플라즈마 버전을 설치해서 잘 사용하고 있었는데(관련 내용은 여기로), 한동안 그 노트북을 안 쓰다가 오랜만에 켜 보니 날짜와 시간이 맞지 않았다. 

알고 보니 예전에 설치할 때 "Q4OS Basic" 설정으로 설치해서 최소한의 S/W패키지만 설치하도록 하고 필요한 것들을 수동을 추가했는데, ntp 패키지가 빠져 있었다. 터미널창에서 아래와 같이 작업. Q4OS가 데비안 계열 배포판이므로 데비안/우분투 계열은 다 동일할 것이다.

# S/W 저장소 정보 갱신
sudo apt-get update

# ntp 패키지 설치
sudo apt-get install ntp

ntp 패키지를 설치가 완료되면 시간 동기화도 자동으로 수행된다. 

728x90
Posted by 반달가면