블록체인 속도란?

GBT
Grabity
Published in
4 min readSep 20, 2019

--

안녕하세요. GBT Protocol 커뮤니티 회원님들~

이번 포스트는 흔히 블록체인 성능을 논의할 때 나오는 블록체인 속도에 대해 이야기를 해보려 합니다.

블록체인의 속도를 이야기하기 앞서 트랜잭션이 생성되어 어떠한 순서로 블록체인에

저장이 되는지 먼저 살펴보도록 하겠습니다.

  1. 트랜잭션을 생성하여 블록체인에 전송을 합니다.

2. 전송된 트랜잭션은 블록이 생성되기까지 기다렸다가 생성된 블록에 저장이 됩니다.

3. 생성된 블록이 정격 체인(Canonical chain)에 연결되어있다는 것을 확신을 해야

완전하게 블록체인에 저장되었다고 볼 수 있습니다.

그러면 이제 블록체인의 속도를 결정하는 요소들을 살펴보겠습니다.

블록체인 속도를 구성하는 요소는 크게 세가지가 있습니다.

아직까지는 실생활에 적용하기에는 속도가 느린면이 있습니다.

1. TPS (Transaction Per Second)

초당 트랜잭션의 수. 말 그대로 초당 몇 개의 트랜잭션(거래량)을 처리할 수 있는지 알려주는 수치입니다.

비트코인은 약 7tps, 이더리움은 20tps, 이오스는 1,000tps의 수치가 나오는 것으로 알려져 있습니다.

그러면 TPS가 높다고하여 무조건 빠른 블록체인이라고 볼 수 있을까요?

예를들어 TPS가 10,000tps라고 해도 블록이 생성되는 시간이 10분이 소요된다면 최악의 경우 최대 10분까지 기다리는 경우도 생깁니다.

쉽게 비유를 들자면, CPU가 아무리 빨라도 저장장치에 저장하는 속도가 느리면 전체적인 컴퓨터의 성능이 빠르다고 할 수는 없겠죠?

2. 블록 생성 시간

트랜잭션을 저장하는 블록이 생성되는 시간입니다.

앞서 말씀드린대로 tps가 아무리 빨라도 트랜잭션을 담을 블록이 늦게 생성된다면 해당 블록체인은 빠르다고 볼 수 없습니다.

비트코인의 경우 블록을 생성하는데 대략 10분 소요.

3. 확정 시간

일정 수의 노드가 해당 블록이 정상적인 블록이라고 확정하는데 걸리는 시간입니다.

비트코인의 경우 6개의 노드가 확정을 해야 함.

그러면 왜 일정 수의 노드가 확정을 해야 할까요?

출처 : https://www.youtube.com/watch?v=kl5pkhbqz3k&t=500s

예를 들어 A가 B에게 1BTC를 주기로 했는데(블록2) A가 마음이 바뀌어 주기로 한 금액보다

적음 금액을 주는 트랜잭션을 작성한 경우(블록2–1)를 생각해 봅시다.

그러면 위의 그림과 같이 하나의 체인으로 블록들이 연결되어 있지 않고 여러 갈래로 나뉘어 지게 됩니다.

이렇게 체인이 여러 갈래로 나뉘어 지는 것을 포크라고 합니다.

출처 : https://www.youtube.com/watch?v=kl5pkhbqz3k&t=500s

그러면 전체적인 블록체인을 봤을 때 블록 2가 맞는지 블록 2–1이 맞는지 결정을 해야하는데,

이러한 결정을 하는 메커니즘을 합의 알고리즘이라고 하고,

합의를 하는데 걸리는 시간을 확정 시간이라고 합니다.

비트코인의 경우는 6개의 블록이 확인(confirm)을 해야 해당 블록이 확정 됩니다.

비트코인의 새로운 블록이 확정이 되는데 까지 대략적인 시간을 구해보면

확정 시간 = n * 블록 생성 시간

비트코인 확정 시간 = 6 * 10분

총 60분의 시간이 소요가 됩니다.

이제 블록체인의 속도가 왜 TPS로만 결정되면 안되는지

이해가 되시나요?

조금이라도 이해가 되셨으면 합니다.

다음 포스트는 더욱 더 알찬 내용으로 준비하도록 하겠습니다.

9월 24일에 런칭하는 GBT Protocol의 첫 프로덕트, Planet Wallet도 많이 기대해주세요.

홈페이지 : https://planetwallet.io/en

#GBT_Protocol #GBT #지비티 #지비티프로토콜 #플래닛월렛 #Planetwallet #블록체인속도 #blockchainspeed #블록체인거래속도 #비트거래 #이더거래 #비트거래속도 #블록체인공부 #blockchainworld

--

--