Blockchain32 (BlockChain) VM & Kernel VM Virtual Machine의 약자 OS 내에서 다른 OS를 설치, 실행하는 프로그램 OS에서 실행하는 프로그램으로서, OS 또는 호스트 시스템에서 실행하는 다른 VM과 분리하여 OS 및 애플리케이션을 갖춘 격리된 환경을 제공 LLPlayer 등을 포함하는 안드로이드 플레이어 Java에서는 JVM Ethereum에서 사용하는 EVM Windows/Linux/Android 등 거의 모든 OS를 설치할 수 있는 VMWare 등 Kernel 하드웨어와 프로그램을 연결해 주는 프로그램 OS에 포함되어 있다 2023. 2. 9. (BlockChain) Transaction transaction 란? 거래에 대한 정보 지불과 수령이 모두 포함되어 있어야 한다 단순하게 거래 내역이라고 생각하면 편하다 보내는 내역과 받는 내역이 함께 있어야 한다 사전적 의미로는 쪼갤 수 없는 업무처리의 최소 단위 DB에서도 사용된다 거래의 최소 단위 블록의 트랜잭션 사용자의 송금 내역이고, 그 내역들을 하나의 블록에 포함시켜야지만 안정성을 보장할 수 있는 기반을 만들 수 있다 그 블록들이 해시 알고리즘과 POW(퀴즈를 푸는 방식) 통해서 연결하는 형태 트랜잭션의 결과(output)를 UTXO에 추가했다가 다음 트랜잭션에서 input으로 가져다 사용하는 방법으로 거래 더보기 1. miner가 Bitcoin을 채굴했다 - miner는 50 BTC를 받는다 - 트랜잭션이 추가된다 - Tx는 tran.. 2023. 2. 1. (BlockChain) Block Header Block에 포함되는 정보 단위 중 하나 버전(version), 머클루트(merkleRoot), Block의 생성시간 (timestamp), 난이도, 논스 version : Block의 현재 버전 merkleRoot : 여러 정보(data)들을 하나의 hash 암호화 문자열로 만들어서 일정 길이의 문자열로 표시 timestamp : Block이 생성되는 시간 difficulty : 난이도, block의 생성주기를 조절하기 위한 값 block을 채굴할 때 통화량을 조절하기 위해서 nonce : 논스라는 값을 증가시키면서 퀴즈를 푼다고 표현한다 block 생성 자격을 얻으려고 작업 증명을 하는데 필요한 값 퀴즈를 풀었을 때 도달한 값 Block Header의 내용은 블록체인 마다 다를 수 있다 2023. 1. 31. (BlockChain) Merkle(머클) 머클(merkle) 이란 블록의 내용이 맞는지 검증 내용의 값이 달라지면 해시값 또한 변하기 때문에 블록의 거래에 대한 기록 정보를 가지고 있는 데이터의 모음 거래내역(트랜잭션)을 트리로 해싱작업을 통해 암호화 이진트리 형태로 보이며 각 데이터를 암호화해서 하나의 암호화된 데이터가 남을 때까지 두 개씩 합쳐서 암호화한다 머클은 거래 정보 목록들을 효율적으로 암호화, 확인하기 위해 쓰는 것 const merkle = require("merkle"); const data = [ "123125", "12312sdgjks", "adfsgjsiodhgfsd", "생일축하해", ]; // 머클트리 // 인자값 : 암호화 방법 // sync(data) 함수로 트리를 만들어 준다. const merkleTree = m.. 2023. 1. 8. 이전 1 ··· 5 6 7 8 다음