반응형

SW/블록체인 59

블록체인 : 암호화폐 거래소의 특징과 기존 증권 거래소와의 차이와 종류

암호화폐 시장과 주식 시장에 대해 비교해 봅니다. 그리고 중앙집중형과 분산형 암호화폐 거래소를 비교해 보겠습니다. 암호화폐 또는 디지털화폐 거래소는 고객이 기존의 화폐나 다른 디지털 화폐와 같은 다른 자산에 대해 암호화폐 또는 디지털화폐를 거래할 수 있게 해주는 사업입니다. coinone, upbit, bithumb은 한국의 주요암호화폐 거래소입니다. 전 세계의 다른 주요 암호화폐 거래소 에는 홍콩에 있는 binance와 OKEx, 싱가포르에 있는 huobi, 미국의 bittrex coinbase, kraken 및 룩셈부르크의 bitstamp가 있습니다. 이 이미지는 코인원 암호화폐 거래소 에 실시간으로 거래되고 있는 암호화폐의 가격과 추세들을 보여줍니다. 이 화면을 통하여 가입자가 기존 화폐로 암호화폐..

SW/블록체인 2022.02.21

블록체인 : 암호화폐 비트코인 이외의 다양한 암호화폐들과 비트코인의 차이점

암호화폐 암호화폐의 개요를 설명하고 bitcoin과 비트코인 이후에 나온 몇 개 유명한 암호화폐들에 대해 소개하겠습니다. 암호화폐들 중에 암호 코인(crypto coin)과 암호 토큰(crypto token)을 어떻게 구분하는지 설명하고 암호 토큰들을 발행할 수 있는 스마트 컨트 랙트 플랫폼인 블록체인들을 소개 하겠습니다. cryptocurrency(암호화폐)는 지불을 하거나 blockchain을 기반으로 자산을 나타내는 목적으로 사용되는 암호화된 디지털 또는 가상 통화입니다. 비트코인(bitcoin)은 가장 크고 인기 있는 암호화폐 중 하나입니다. ethereum과 filecoin은 암호화폐의 다른 예입니다. 알트코인 altcoin은 bitcoin이 엄청난 성공을 거둔 후에 시작된 다양한 대체 암호 화..

SW/블록체인 2022.02.20

블록체인 : 기업들이 진행하는 ICO를 기존 기업들이 투자를 받기 위한 IPO의 차이점 : ICO의 역사와 과정

IPO (Initial Public Offering) ico (intial coin offering)을 설명하기 전에 대부분 사람들이 잘 알고 있는 ipo (initial public offering)이라는 보다 익숙한 개념을 먼저 소개하고자 합니다. ipo (initial public offering) 등록은 모든 비즈니스 소유자의 꿈의 최상위에 있습니다. 그것은 비즈니스에서 가장 중요한 사건 중 하나입니다. ipo 등록 비즈니스가 된다는 것은 회사를 공개하는 것을 의미합니다. 회사 소유주가 주주들에게 소유권 의 일부를 판매하고 나중에 주식을 거래하는 것은 처음입니다. 기업 공개 (ipo)를 통해 회사는 대규모 확장을 위한 자본을 확보할 수 있습니다. 창업자나 소유주에게 그들이 투자 한 모든 노력에 대..

SW/블록체인 2022.02.19

블록체인 : 토큰화의 개념과 경제학 : 토큰의 종류

토큰 이코노미 이러한 기록은 정부, 은행, 보험, 회사 또는 병원과 같은 중앙 집중식 신탁 기관이 관리하는 원장에 기록됩니다. 토큰 경제는 블록체인 기반 분산 데이터베이스 또는 원장을 기반으로 합니다. 사람들은 이제 dapp (decentralized app) 를 통해 중앙 권한 없이 이 분산원장에 직접 접할 수 있습니다. 분산 원장의 데이터는 블록체인 기술을 사용하여 자동으로 업데이트 및 유지 관리됩니다. 이제 분권화된 경제는 블록체인 을 통해 가능하게 되었습니다. 토큰은 전통적인 경제에서 중앙 당국이 정의한 가치의 형태입니다. starbucks의 기프트 카드, us dollar, ibm 의 주식이 필요에 따라 중앙 기관이 생성하고 관리하는 토큰의 형태입니다. 이제 누구나 어떤 그룹이든 블록체인에 디지..

SW/블록체인 2022.02.18

블록체인 : 하이퍼레저의 구성 요소와 아키텍쳐를 이해 : 트랜잭션 처리 흐름

하이퍼레저 패브릭 컴포넌트 기존의 블록체인 플랫폼과 유사 하면서도 패브릭만이 가지는 고유한 컴포넌트들은 무엇이 있는지 살펴보겠습니다. Asset, 즉 자산은 네트워크를 통해 교환되는 모든 가치를 의미합니다. 부동산 및 하드웨어에서 지적 재산권 까지 다양한 유형의 자산이 존재합니다. 하이퍼레저 패브릭은 체인코드 의 거래를 통해 자산을 수정할 수 있는 기능을 제공합니다. 자산은 키-값 쌍의 모음으로 표시되며, 자산의 상태가 변경되면 변경사항이 원장에 트랜잭션으로 기록됩니다. 체인 코드는 앞에서 잠깐 언급했던 대로 비즈니스 로직을 의미합니다. 자산을 정의하고 자산을 수정하기 위한 거래가 포함되어 있습니다. 블록체인에 저장된 키-값 쌍을 읽고 상태를 변경하기 위한 규칙을 시행합니다. 파라미터 및 시스템을 관리하..

SW/블록체인 2022.02.17

블록체인 : 하이퍼레저 프로젝트 중 가장 잘 알려진 하이퍼레저 패브릭의 특징

Hyperledger Fabirc 하이퍼레저 패브릭은 하이퍼레저 프로젝트들 중 가장 먼저 제안된 플랫폼입니다. 2017년 상반기 베타 버전인 0.6버전 을 발표한 이후 하반기에 1.0이 발표되었고, 현재는 1.1버전을 거쳐 2.2 버전까지 출시되어 있습니다. 하이퍼레져 패브릭 프로젝트는 IBM이 개발을 주도하고 있습니다. 패브릭 역시 기업용 블록체인 플랫폼 개발을 위한 프로젝트로 기존의 금융서비스와 유사한 허가형 블록체인을 개발하는 데에 목표가 있습니다. 하이퍼레저 패브릭은 아무 노드나 네트워크에 참여할 수 있는 다른 블록체인 플랫폼과 달리, 신원이 확인된 참여자들을 대상으로 하는 비즈니스 응용 블록체인을 개발하고자 합니다. 또한 체인코드라는 스마트 계약 프로그램을 통해 다양한 응용 개발을 효율적으로 지..

SW/블록체인 2022.02.16

블록체인 : 엔터프라즈용 블록체인인 하이퍼레저 프로젝트 이해 : 목적에 따라 적절한 프로젝트를 선택하여 활용 방법

하이퍼레져 하이퍼레져는 리눅스 foundation에서 주관하고 2015년 12월에 시작된 블록체인 오픈소스 프로젝트입니다. 금융, IoT, 물류, 제조 등 여러 산업 에 걸쳐 적용 가능한 블록체인 기술을 개발하는데 목표를 두고 있습니다. 현재는 비트코인 이더리움 등 하이퍼레저 이외의 다양한 블록체인 플랫폼이 존재합니다. 하지만 다른 플랫폼과 비교해 하이퍼 레저는 다음과 같은 이점들을 가지고 있습니다. 첫째 프라이빗 블록체인이라는 점입니다. 이것은 기업 별도의 비즈니스 모델을 구현하기에 적합한 환경을 제공합니다. 현재 여러 기업들이 하이퍼레저 를 기반으로 하여 블록체인 기술을 개발하는데 힘쓰고 있습니다. 둘째, 금융 산업에 특화된 다른 플랫폼들과 달리 여러 산업에 범용적으로 도입 가능한 기술 표준을 제시한..

SW/블록체인 2022.02.15

블록체인 : 비잔틴 장애 상황에서 합의를 이루기 위한 BFT 기반의 다양한 알고리즘이 트랜잭션 처리율, 비용, 노드의 양 등에서 차이점

Byzantine Fault Tolerance (BFT) 비잔틴 장애 허용은 두 장군 문제를 일반화한 문제인 비잔틴 장군 문제로부터 파생된 장애 허용 연구 분야의 한 갈래입니다. 이 분야의 연구의 목적은 비잔틴 장애라고 불리는 시스템에 생길 수 있는 임의의 장애를 견딜 수 있는 시스템을 만드는 것입니다. 비잔틴 장애는 단지 시스템이 멈추거나 에러 메시지를 보내는 것과 같은 장애뿐만 아니라, 잘못된 값을 다른 시스템에 전달하는 등 좀 더 원인을 파악하기 어려운 장애들까지 포함합니다. 예를 들어서 결과를 반환하는데 실패했다든지, 부정확한 결과를 반환한다든지, 의도적으로 잘못된 결과의 반환 또는 시스템의 다른 파트들에 상이한 값을 반환하는것이 있겠습니다. 만약 비잔틴 장애 허용 시스템이 제대로 구현되었다면 미..

SW/블록체인 2022.02.14

블록체인 : 분산 합의의 필요성 : 블록체인에서 합의 알고리즘이 필요한 이유 : PoW, PoS, DPoS의 차이를 이해

분산합의 블록체인에서 사용되는 다양한 합의컨센서스 알고리즘들을 소개하기 전에, 먼저 분산 합의distributed consensus 에 대해서 알아보겠습니다. 분산 합의는 신뢰할 수 없는 통신 네트워크에 의해서 연결된 프로세스들의 그룹 간의 합의에 도달하는 것을 다룹니다. 따라서 다수의 노드들이 참여해 있는 p2p 네트워크에서 합의가 필요한 상황에서 분산 합의가 필요합니다. 분산 합의의 기술적인 정의는 간단 합니다. 하나의 고정된 개수의 노드 또는 프로세스들이 있다고 생각해봅시다. 그리고 각각의 노드들은 어떤 입력 값을 갖습니다. 노드들이 모두 올바른 노드들이 면 괜찮겠지만, 실제로는 그렇지가 않을 수 있습니다. 노드들 중에서 일부는 잘못되었거나 의도적으로 악의적일 수 있기 때문입니다. 그래서 분산 합의..

SW/블록체인 2022.02.13

블록체인 : EOS 프로그램을 구성하고 있는 구성 요소들과 네트워크 구조 : EOS 네트워크 설치 및 운영

eos 프로그램은 nodeos keosd cleos의 세 가지 프로그램으로 작동합니다. nodeos는 node와 eos가 결합한 말로 써 eos의 블록을 생성하는 가장 중요한 기능을 담당합니다. 사용자가 보낸 transaction이 유효 한지 블록이 유효한지 등을 결정하는 하나의 노드 프로그램입니다. keosd는 key와 eos가 결합한 말로써 지갑 단위로 key를 관리하는 구성요소입니다. 마지막으로 cleos는 cli와 eos가 결합 한 말로써 사용자가 다른 구성요소에 접근할 수 있는 인터페이스를 제공합니다. 사용자는 이를 이용하여 keosd 및 nodeos에 접근할 수 있습니다. 예시로 사용자가 eos에서 transaction 을 생성하는 과정을 도식으로 살펴보겠습니다. transaction을 만들고..

SW/블록체인 2022.02.12

블록체인 : EOS가 DPoS를 합의 알고리즘으로 채택함으로써 발생할 수 있는 여러 이슈들과 EOS 네트워크에서 일어날 수 있는 공격

DPOS Tradeoffs 이번 모듈에서는 EOS에서 사용하는 DPOS의 Tradeoff과 EOS에 일어날 수 있는 공격들에 대해 살펴보겠습니다. 이제 DPOS의 Tradeoff 두 가지에 대해 간단히 살펴보겠습니다. 앞서 말한 대로, DPOS는 지분을 가진 사람이 일부 사람에게 자신의 결정권을 위임하기 때문에, “Controlled semi-centralization”이라고 할 수 있습니다. 여기서 기존의 PoW나 PoS에서 항상 문제가 되어 왔던, “의사 결정의 효율성과 속도”라는, 중앙화의 장점을 잡을 수 있게 되고, 또 지분을 가진 사람으로부터의 선출이라는 점에서 탈중앙화의 장점 또한 잡게 됩니다. 하지만, 그래도 기존의 방식과 비교했을 때 “중앙화된다”는 점에서 일부 사람들은 DPOS를 지지하지..

SW/블록체인 2022.02.11

블록체인 : EOS의 governance, 합의 알고리즘 등 EOS만의 다양한 특징

EOS의 특징 이제는 EOS의 특징에 대해 조금 더 자세히 살펴보겠습니다. 먼저 트랜잭션 비용이 없다는 것입니다. EOS를 설명하기 위해서는 이전 세대인 이더리움을 계속 언급하게 됩니다. 이더리움은 DApp의 사용자들이 transaction을 보낼 때마다 이더리움 블록체인의 사용료인 gas를 지불하게 됩니다. 예를 들어, 사용자가 DApp에서 댓글을 작성하려고 하거나, 메시지를 보내는 비금융 활동에 대해서도 사용료를 따로 내야 됩니다. 이러한 방식은 사용자들이 DApp을 쓰는 데에 불편함을 주기에, EOS는 DApp의 사용자들에게 사용료를 받지 않습니다. 사용자가 만드는 모든 transaction의 사용료는 개발자가 가지고 있는 EOS 양에 비례하여 할당된 네트워크 대역폭을 제외한 만큼만 개발자에게 청구..

SW/블록체인 2022.02.10

블록체인 : 엔터프라이즈용으로 플랫폼 중 하나인 EOS의 등장 배경

EOS EOS의 로고는 보는 바와 같이 생겼으며, block.one이라는 회사에 의해 제작 및 관리되고 있는 3세대 블록체인입니다. Block.one의 CTO인 Dan Larimer가 EOS 개발에 핵심적인 역할을 했습니다. Dan Larimer는 EOS를 개발하기 전에 Steemit과 Bitshares라는 블록체인 Decentralized App을 이미 개발한 경험이 있는 블록체인 industry에 유명한 인물입니다. 또, EOS는 현재 가장 활동량이 많은 블록체인이기도 합니다. Blocktivity.info라는 사이트에 가면 EOS가 가장 활발하게 사용되고 있는 것을 보실 수 있습니다. 또, 폭발적으로 트랜잭션 수가 늘어난 블록체인이기도 합니다. 역사적으로 살펴보자면, 블록체인이라는 개념이 비트코인으..

SW/블록체인 2022.02.09

블록체인 : 이더리움 DApp 개발을 위해 Solidity 언어에 대해 공부하는 방법

cryptozombies cryptozombies는 loom network에서 제공하는 무료 대화형 코딩 학교입니다. loom network는 이더리움 사이드체인 위에 대규모 어플리케이션들을 동작시키기 위한 플랫폼을 만들고 있습니다. 때문에 이 회사에서는 많은 개발자 들이 대규모 dapp들을 만드는 것을 장려하기 위해서 이 튜토리얼을 제공하고 있습니다. 또한, 이 회사는 게임은 블록체인 이 실제로 혁신할 수 있는 분야 중 하나라고 생각하고 있습니다. 그래서 cryptozombies는 이더리움 위에서 자신의 크립토 소유물 게임을 만드는 것을 통해서 solidity 언어로 smart contract를 작성하는 방법을 가르쳐 줍니다. 또한 solidity 초보자를 위해서 만들어졌 기 때문에 solidity를 ..

SW/블록체인 2022.02.08

블록체인 : 이더리움 플랫폼 활용 : 개발된 다양한 DApp 종류, 사례

DApp 카테고리 현재 어떤 분야에서 Dapp이 활발히 개발되고 있는지 알아보겠습니다. Dapp은 현재 거래소, 도ㄹ박, 지갑, 게임, 금융, 미디어, 소셜, 스토리지, 자산, 정부, 개발, 보안, 인증, 에너지, 건강, 보험 등 많은 영역에서 활발히 개발 되고 있습니다. 현재 dapp 개발이 전 세계적으로 가장 활발한 블록체인 플랫폼은 ethereum입니다. https//www.stateofthedapps.com라는 사이트를 방문하면 ethereum 기반의 dapp들에 대한 많은 정보를 접할 수 있습니다. 아래의 도표를 보시면 현재 dapp 개발 현황을 카테고리별로 확인할 수 있습니다. 추가적으로 해당 도표는 트랜잭션 의 양을 기준으로 나타낸 것입니다. 현재 총 3583개의 Dapp이 해당 사이트에 등..

SW/블록체인 2022.02.07

블록체인 : 전통적인 App과 DApp 어떤 차이점, 아키텍쳐 : DApp 개발을 위해 고려해야 할 사항

분산화 시스템과 중앙화 시스템 Dapp은 decentralized application의 약어입니다. 그럼 decentralized는 무엇을 의미하는 것일까요? Centralized, Decentralized, Distributed의 비교를 통해 decentralized가 무엇을 의미하는지 알아보겠습니다. Centralized system은 필수적으로 노드 유저 등의 모든 것을 제어하는 하나의 authority를 갖습니다. 이것은 개인이 될 수도 있고 정부가 될 수도 있고 회사가 될 수도 있습니다. 또한, centralized system은 개별 장치의 작동과 단일 센터로부터의 정보 흐름을 직접 제어 받습니다. 모든 개인은 정보를 송수신하고 명령하는 중앙의 힘에 직접적으로 의존합니다. 때문에, 중앙 서버..

SW/블록체인 2022.02.06

블록체인 : 이더리움의 P2P 네트워크, 데이터베이스, 인코딩 방법 및 노드 디스커버리 과정

이더리움 네트워크, 노드 이더리움의 공동 계층 (Common Layer)은 전체 아키텍처에서 공통으로 사용하는 기능을 포함하고 있습니다. Common Layer에 대해서는 RLPx P2P 네트워크 프로토콜 등을 설명하고, 블록체인의 데이터를 효율적으로 저장하기 위한 스토리지 기능 그리고 Recursive Length Prefix (RLP) 데이터 인코딩 방법도 소개합니다. Application Layer에서는 이더리움이 단순 암호화폐가 아닌 블록체인 기술을 적용하여 다양한 문제를 해결하기 위한 서비스들을 개발/운영할 수 있는 플랫폼이라는 것을 설명합니다. 이더리움은 P2P 네트워크에 연결된 모든 노드들이 같은 역할과 기능을 수행하는 완전 분산형 P2P 토폴로지로 구성됩니다. 또한, 개별 peer들이 스스..

SW/블록체인 2022.02.05

블록체인 : 이더리움에서 지원하는 스마트 컨트랙트 : 스마트 컨트랙트를 실행하기 위한 실행엔진 (EVM), 실행 프로세스

스마트 컨트랙트 이더리움에서는 스마트 컨트랙트 실행을 위한 실행 계층이 있습니다. 스마트 컨트랙트는 디지털 방식으로 특정한 계약을 수립, 검증, 실행하기 위한 컴퓨터 프로토콜입니다. 이는 제 3자 없이 신뢰할 수 있는 거래의 수행을 가능하게 하며, 거래들은 추적할 수 있고, 그러나 되돌릴 수 없게 합니다. 닉 자보는 스마트 컨트랙트를 “신뢰할 수 없는 컴퓨터 인터넷 환경에서 고도로 발달된 계약을 준수하도록 강제하는 프로토콜이다”라고 했으며, 이것은 기존의 계약 관련 법률보다 우수한 보안성을 제공하고 동시에 저렴한 비용으로 계약을 처리할 수 있도록 합니다. 스마트 컨트랙트는 디지털 명령어로 계약을 작성하면 조건에 따라 계약 내용을 자동으로 실행할 수 있습니다. 또한, 디지털로 된 계약서는 조건에 따른 계약..

SW/블록체인 2022.02.04

블록체인 : 이더리움 합의 알고리즘인 PoW 원리, 문제점

합의 알고리즘 이더리움은 블록체인 기술을 기반으로 한 플랫폼이기 때문에 중앙 서버에서 블록과 트랜잭션의 유효성을 판단해주지 않습니다. 때문에 전달된 정보가 문제가 없다는 것을 참여자들이 스스로 검증하고 그 유효성을 판단해야 합니다. 이뿐만 아니라 완전히 탈중앙화된 P2P 네트워크에서는 네트워크 지연, 중복 수신, 의도적인 변조 등의 이유로 정보 전달과정에 문제가 발생할 수 있습니다. 따라서 다음과 같은 문제들을 합의 수단, 즉 consensus mechanism을 통해서 해결해야 합니다. 첫째, 특정 노드가 임의로 블록체인을 조작하지 못 하도록 해야 합니다. 둘째, 블록과 트랜잭션 등의 유효성 여부를 검증할 수 있는 방법이 필요합니다. 셋째, 블록을 체인에 연결할 때, 동시에 두 개 이상의 유효한 블록체..

SW/블록체인 2022.02.03

블록체인 : 이더리움 네트워크에서 사용되는 암호화폐인 이더와 토큰인 Gas : 이더리움의 전반적인 트랜잭션 처리 과정

이더 단위 비트코인에서는 네트워크에서 비트코인(BTC)을 화폐로 사용하고 최소 단위로 사토시(Satoshi)를 사용합니다. 암호화폐는 쪼개질 수 있으므로 1BTC는 10^8(1억) 사토시입니다. 이와 마찬가지로 이더리움 네트워크에서도 사용되는 화폐가 존재합니다. 바로 이더(Ether)라는 암호화폐가 사용되고, 이더리움에서 계정들은 이더를 전달할 수도 있고 전달받을 수도 있습니다. 또한 이더는 저명한 암호화폐로서 거래소를 통해 시장에서 거래가 되고 있습니다. 그리고 이것은 이더리움상의 리소스를 사용한 대가로 지급할 가스(Gas)와 교환하기 위해 사용됩니다. 가스에 대해서는 자세히 설명하도록 하겠습니다. 그림은 이더의 단위를 보여줍니다. 기본단위인 Wei부터 Tether까지 나와 있으며, 이 이름들은 모두 ..

SW/블록체인 2022.02.02
반응형