목록BlockChain (13)
개발공부일지
목차 1. Transaction 2. UTXO(Unspent Transaction Output) 3. TEST하기 1. Transaction - 자산을 전송하거나 기록하는 디지털 자산 전송 - 트랙잭션 입력 및 출력 (INPUT, OUTPUT) 있다. - 입력 INPUT : 이전 트랙잭션의 출력을 참조 - 출력 OUTPUT : 자신이 받을 수 있는 주소와 양을 정의 - 트랜잭션 검증을 위해 서명(개인키로 서명하고) 공개키로 검증, 트랙잭션 승인 - 트랙잭션 풀에 담겨있는 트랜잭션을 블록에 기록한다. - 블록 채굴을 하면 트랜잭션 처리가 되고 블록 생성 권한을 얻음( 마이닝 퀴즈 해결하면) - 블록이 정상적으로 체인에 추가 되면 트랜잭션 처리됨 → 이때 새로운 블록의 첫번째 트랜잭션이 코인베이스 트랜잭션 ..
** P2P 네트워크 - client와 server의 코드를 같이 작성하는 것 (둘다 작동되는 서버) - 프로그램을 작성할 때 clinet코드와 server코드를 같이 구현한다는 뜻! - front에서 작성했던 socket코드, back에서 작성했던 socket코드가 같이 구현되는것 ** 블록체인 P2P - node net 라이브러리 사용했던것처럼 사용, http, ws, tcp 사용함 - node - http : express - ws : node의 피어 전달해서 사용 - 클라이언트 - 블록 추가(마이닝 → 롱기스트 체인룰 검증) - 전체 블록 조회 - 마지막 블록 조회 import { P2P } from './server/p2p'; import Chain from './chain/chain'; imp..
목차 1. hash 2. Merkle Tree (머클트리) 3. transaction , Tx (트랜잭션) 4. 블록체인의 주요 4대 요소 기술 5. 합의알고리즘 종류 6. block 7. chain 1. hash ** SHA256 (알고리즘 Secure Hash Algorithm 256-bit) - 데이터의 무결성을 검증하고 암호학적 보안을 제공하기 위한 해시 함수 - 주로 비밀번호 저장, 디지털 서명, 블록체인 블록의 해시 등 다양한 보안 관련 작업에 사용 - SHA256를 사용하려면 crypto-js 라이브러리 사용해야함 const { SHA256 } = require('crypto-js'); const str = 'hello'; console.log('해시결과 : ', SHA256(str).toS..