오늘은 트랜잭션을 알아본다.
트랜잭션 (transaction)은 거래라는 뜻이다.
암호화폐상에서는 코인을 송금하는 거래 과정 및 그 과정에 전송되는 서명된 정보를 말한다.
비트코인 거래를 예를 들어본다.
비트코인을 거래하려면 거래 정보를 작성해야 한다.
A가 B에게 1.0 BTC를 보내려면 메시지를 작성한다.
이렇게 작성된 메시지를 트랜잭션 (Transaction)이라 표현한다.
해당 트랜잭션은 비트코인 네트워크에 연결된 노드 (지갑)들에게 전파된다.
트랜잭션을 수신받은 각 노드는 거래 내역을 업데이트하고 다른 노드들에게 해당 트랜잭션을 전파하게 된다.
코인을 송금 과정에서 전송되는 서명된 정보를 문자열로 변환하게 되는데,
이를 트랜잭션 ID라고 부른다.
트랜잭션 ID = Transaction ID = TXID
코인을 송금하는 이체거래과정에서 전송되는 서명된 정보 (데이터)를 문자열로 변환시킨 것이다. 해당 트랙젝션 이용자가 이를 이용해 입출금한 이체 거래에 발행된 해시값을 조회 및 식별할 수 있다.
트랜잭션 시 해당 거래의 보안을 위해 일종의 신원확인 역할을 하는 것이다.
즉, 트랜잭션 ID를 이용해 거래 내역이 잘 이행되었는지 확인할 수 있다.
그렇다면 해당 거래가 진짜 인지를 검증하는 건 어떻게 할까?
블록체인상에서는 검증된 거래내역만 업데이트하게 되는데 유효성을 검증하려면 디지털 서명(Digital signature) 혹은 전자서명이 필요하다.
그래서 트랜잭션에는 원본데이터와 전자서명이 포함되어 있으며 각 노드로 전파된 트랜잭션이 진짜인지를 검증하기 위해 사용된다.
초당 트랜잭션 수 Transaction Per Second, TPS
초당 몇 개의 트랜잭션이 처리가 되어서 저장 가능한 지 알려주는 정보다.
트랜잭션 과정에서 이 거래내역을 담은 블록(분산 거래원장)을 받아서 처리하는 속도를 말한다. 즉, 이는 곧 해당 블록체인 네트워크 시스템의 속도를 가늠해 볼 수 있게 해준다. TPS는 어떠한 트랜잭션이 전파되는지, 또 해당 블록체인 네트워크의 속성 (블록체인 자체 성능 및 노드 구성 , 하드웨어 성능 등)에 따라 달라질 수 있다.
비트코인의 처리속도는 10분 대기시간 동안 1초 당 7건의 트랜잭션만 처리 가능하다.
이는 실생활 적용의 단점으로 꼽혔다.
그래서 신생 암호화폐들의 경우 기존 암호화폐에서 보여주는
트랜잭션 처리 속도의 단점을 개선하기 위해 새로운 블록체인 기술을 활용하고 있다.
'알기쉬운 블록체인' 카테고리의 다른 글
블록체인 DAO(Decentralized Autonomous Organization) (0) | 2018.11.13 |
---|---|
전자서명 (Digital signature) (0) | 2018.11.12 |
블록체인 타임스탬프 (Time Stamp) (0) | 2018.11.08 |
비트코인 세그윗 SegWit (0) | 2018.11.07 |
비트코인 소프트 포크 VS 하드 포크 (0) | 2018.11.06 |