Author: 주니용 앞의 글에서 블록들을 연결시켜주는 로직을 작성해보았습니다. 하지만, 이 상태로는 빈 데이터가 들어오는 경우에도 체인이 되는 형태이고, 또 같은 데이터가 동시에 들어와 해시값이 같더라도 문제가 발생하죠. 그렇기 때문에 검증하는 단계를 추가하여야 합니다. 마지막으로 추가하는 검증 소스는 아래와 같습니다. 먼저 Block 클래스 내부에 타입을 검증할 수 있는 로직을 추가해보려 합니다. static checkStruct = (block: Block): boolean => typeof block.index === "number" && typeof block.hash === "string" && typeof block.data === "string"; 자, 이제 typeof 함수를 이용하여 각..
Author: 주니용 이전에 프로토타입을 만들었다면 이제 본격적으로 활용가치가 있는 함수들을 직접 만들어보아야 하겠습니다. 소스를 간단하게 먼저 수정하고 진행하도록 하겠습니다. import * as CryptoJS from "crypto-js"; class Block { static calcBlockHash = (index: number, hash: string, data: string, ts: number): string => CryptoJS.SHA256(`${index}${hash}${ts}${data}`).toString(); private index: number; private hash: string; private prevHash: string; private data: string; priv..
이전 글에서 TypeScript의 프로젝트 생성 방법과 기본적인 개념에 대해 짚어보았습니다. TypeScript에 대해 알아보자 Author: 주니용 2020년 경자년 새해복 많이 받으세요 :) 이번 연도에 처음으로 다루어볼 내용은 TypeScript입니다. TypeScript는 JavaScript의 확장 버전으로 한국에서는 통상 자바스크립트의 후손이라고 일 abbo.tistory.com 제목과 그대로 TypeScript를 응용하여 요새 유명한 블록체인을 개발할 수 있을까라는 의문이 생겼습니다. 결론을 먼저 말씀드리면, 가능합니다. 아직 블록체인은 비트코인이라는 이름으로만 들어봤지 많이 생소한 단어이고 '비트코인의 몰락'으로 인해 안좋거나 부정적인 단어라고 생각하시는 분들이 많습니다. 네 그렇습니다. 비..