blockchain
-
SmartContract 개발에 유의해야할 점 (1/2)IT 지식 2019. 4. 25. 13:58
오늘은 그 동안 블록체인 SmartContract를 개발하며 느낀 점들을 정리해보려고 한다. 블록체인은 잘 알지 못하지만 개발면에서 우수한 개발자분들이 미리 작성해주신 Contract Code를 볼 때 그리고, 블록체인 서비스 관련 자문을 드릴 때 기존 기획자분들도 블록체인 환경에 대해서 이해가 없어 기획이 잘 못되는 모습을 자주 볼 수 있다. 블록체인은 만능이 아니지만, 블록체인을 활용해야한다면 어떤 부분을 고민하면 좋을지. 이 글이 조금이라도 도움이 되었으면 좋겠다. 1. SmartContract 무엇이 다른가 (1-1) [장점] 서버 대체 가능 - 기존 서비스는 규모에 관계 없이 공지 사항이라도 만들기 위해서는 서버 구축이 필요했다. 기존 사내 서버가 존재 했다면 번거로운 작업은 줄어들지만 그것이 ..
-
ERC-721 살펴보기BlockChain Tech 2019. 3. 31. 18:28
ERC-721 - Non-Fungible Token(대체 불가능한 토큰) 이다. 대체 불가능하다는 것은 무엇일까? 기존 ERC20과 비교해서 생각해보면 쉬울 것 같다. ERC721 의 경우 mapping 타입의 변수[토큰 아이디] = 주소 를 대입한다. ERC20 의 경우 mapping 타입의 변수[주소] = 양 을 대입한다. ERC20의 경우 토큰의 성질이 없기 때문에 아래의 공식이 성립한다. 류짱의 지갑 류쨩토큰(ERC20) 10개 = 당신의 지갑 류쨩토큰(ERC20) 10개 ERC721의 경우 토큰의 성질이 존재 하기 때문에 위의 공식은 성립되지 않는다. 성질이라는 표현이 엄청나 보이는 것 같지만, 사실 [토큰 아이디] 하나 뿐이다. 실제 CryptoKitty의 경우, [토큰 아이디] 와 Kitty..
-
블록체인 Oracle ProblemBlockChain Tech 2019. 1. 2. 11:24
Oracle의 뜻 (Naver 사전) 1. (고대 그리스에서) 신탁을 받는 곳 2. (고대 그리스에서) 신탁 3. 귀중한 조언을 주는 사람출처 : ZetaWiki 델포이 신탁블록체인의 OracleOracle이라는 말을 듣고 가장 먼저 생각난 것은 다국적 기업 ‘Oracle’이였고, 그 다음은 매트릭스의 Oracle 아주머니가 생각 났다. 아쉽게도 블록체인에서 Oracle은 이것들과 관계가 없었다.Oracle은 OFF-Chain(블록체인 밖)상의 데이터를 On-Chain(블록체인)으로 가지고 오는 것을 의미한다.즉, Oracle이란 A 블록체인이 아닌 곳에서 일어나는 각종 사건, 사고에 대한 데이터를 A 블록체인으로 가지고 오는 것이다. ‘10월 10일 서울의 날씨’, ‘B 블록체인의 Transaction..
-
이중 지불 (Double Spent) / 51% AttackBlockChain Tech 2019. 1. 2. 11:22
블록체인을 공부하면 자주 듣는 ‘이중 지불’ 이것은 무엇을 의미하며, 이를 해결 할 수 있는 방법에 대하여 알아보자.1. 이중 지불이란이중 지불이란 동일한 암호화화폐로 두 번 이상 지출하는 것을 의미한다. 암호화화폐에서 이중 지불은 실제 암호화화폐가 복사가 되어 지불되는 것이 아닌 충돌되는 트랜잭션이 있으면 더 많은 노드가 받아들인 트랙재션을 받아들이고, 받아들여지지 않은 다른 트랜잭션은 취소해버리는 블록체인 특징을 이용한 악의적인 행위이다. (출처 : NamuWiki)이중 지불은 51%의 공격을 이용한다. 예시를 통하여 이중 지불을 이해해보자.[1 Step]1–1. 류짱은 1BTC만 소유하고 있다. A와 B에게 각각 1BTC를 송금하고 그에 따른 물건을 받기로 한다.1–2. 첫 번째로 A에게 1BTC를..
-
ERC20 그리고 EIPBlockChain Tech 2019. 1. 2. 11:20
이더리움 기반의 ‘ERC20 토큰’ 여기서 ERC 는 무엇이고, 20이라는 숫자는 무엇을 의미할까?흔히 우리가 알고 있는 암호화화폐의 약 90% 이상은 이더리움 기반의 토큰이다. 자체 블록체인을 구성하는 코인들과 달리, ERC20은 많은 장점들을 가지고 있다.‘Solidity’ 언어로 쉽게 제작이 가능하다.약속된 규격이 있고, OpenSource로 다양한 예제들이 제공 되어 있다.이더리움 기반으로 상장에 용이하다. (‘거래소는 그저 Token Contract Address를 추가 하면 된다.’)CrowdSale Contract 로 손쉽게 이더리움으로 ICO를 진행할 수 있는 장점등이 있다.반년전만 해도.. 부르는 게 값이였다지..? (자료 링크)이렇듯 ERC20은 충분히 매력적이다. 또한, 자체 블록체인..
-
Mnemonic 과 HD WalletBlockChain Tech 2019. 1. 2. 11:18
Mnemonic 생성 / 백업최근 지갑 Web & App에서 거의 필수적으로 보여지는 문구이다. 직접 생성을 해보면 12개의 단어가 나온다. (HardWare 지갑의 경우 24개의 단어 조합을 주로 사용한다.) MetaMask 설치시 12개의 단어를 받는다.1. Mnemonic 이란Mnemonic의 어원은 기억의 여신 ‘Mnemosyne’ 이다. 제우스의 부인이자 9명의 예술의 여신 (Muses)의 어머니이기도 하다. 그녀의 이름은 그리스어로 ‘기억' ‘곰곰이 생각하다'라는 뜻을 가지고 있고, 그녀의 이름에서 파생된 Mnemonic은 오늘 날 ‘기억술'이나 ‘기억 증진법'을 뜻한다.처음 ‘니모닉 단어 생성' 이라는 말을 들었을 때, 단순히 백과사전에 기록 된 n개의 단어를 랜덤으로 제공해주는 기능이라고 ..
-
[알쓸신블] 제4장 POW (Proof Of Work)알아두면 쓸모있는 신나는 블록체인 2019. 1. 2. 11:13
POW의 기본 개념은 1993년에 Cynthia Dwork 와 Moni Naor에 의해 처음 고안 되었고, 1999년에 Markus_Jakobsson 과 Ari Juels에 의해 Proof of Work 라는 이름이 붙게 되었다. 나카모토 사토시가 2008년에 발행한 비트코인 백서에 POW를 채택하면서 POW가 알려지게 되었다.Consensus Algorithm“자체 블록체인을 구축 하겠습니다!!!” 라고 하면 기계적으로 “합의알고리즘’은 무엇인가요?”라고 묻는 모습을 쉽게 볼 수 있다.합의 알고리즘(consensus algorism)이란 다수의 참여자들이 통일된 의사결정을 하기 위해 사용하는 알고리즘을 말한다. 합의 모델, 합의 방식 또는 합의 프로토콜이라고도 한다.쉽게 풀이하면 합의알고리즘이란 ‘누군..
-
[알쓸신블] 제3장 Hash (feat. SHA-256)알아두면 쓸모있는 신나는 블록체인 2019. 1. 2. 10:33
해시 함수는 임의의 길이를 갖는 임의의 데이터에 대해 고정된 길이의 데이터로 매핑하는 함수를 말한다. 이러한 해시 함수를 적용하여 나온 고정된 길이의 값을 해시값이라고 한다.마법의 주문 ‘Hashing’‘제2장 비잔티움 장군의 딜레마’를 살펴보면서 비트코인이 어떻게 딜레마의 해결책을 제시 하였는지에 대하여 알 수 있다. 비트코인의 해결책 POW를 살펴보기 전에 우리는 먼저 Hashing에 대하여 알아보자. Hasing이란 많은 양의 데이터들을 그보다 작은 크기의 테이블로 대응시켜 저장할 수 있도록 하는 데이터 관리 기법이다.출처 : 비트코인 백서 블록체인에서 n번째 Block에 n-1 번째의 블록의 Hash값을 넣어 블록들을 연결 시킨다고 한다.#535293 #535293 블록의 용량은 약 0.47MB ..