일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 기본 수학 2단계
- 코딩
- 스토리북
- 블록체인
- Console
- 우선순위 큐
- 지갑
- 백준
- bip39
- frontend
- baekjoon
- priority queue
- Blockchain
- React
- Storybook
- 프로그래밍
- scss
- 풀이
- algorithm
- 에러
- TypeScript
- SVG
- 알고리즘
- SASS
- three.js
- 니모닉
- Mnemonic
- 기본수학1단계
- C++
- 리액트
- Today
- Total
Moong
블록체인 개념 본문
🔸 트랜잭션(transaction) : 거래내역
🔸 블록체인(blockchain) : 블록으로 이루어진 체인 / 분산화 시스템을 관리하는 분산 컴퓨팅 기술
🔸 해시 : 블록을 연결시키는 일방향 함수
🔸 탈중앙화 : 특정 개인이 DB를 관리할 수 없음
🔸 합의 알고리즘 : 블록 유효성을 검사하는 알고리즘
🔸 작업 증명(PoW) : 작업량에 따라 영향력을 행사하는 합의 알고리즘
🔸 지분 증명(PoS) : 암호화폐 지분율에 따른 영향력 행사하는 합의 알고리즘
🔸 채굴(Mining) : 암호화폐 거래내역을 기록한 블록을 생성하고 대가로 암호화폐를 얻는 행위
Block Chain
💡 분산화 시스템을 관리하는 분산 컴퓨팅 기술
🔸 BLOCK : 데이터의 저장 단위, 데이터베이스
- 블록의 해시 : 이전 블록의 해시 + 나의 데이터로 얻음 현재 블록의 해시
- 이전 블록의 해시 : 블록체인에 블록이 추가되는 방법 / 블록끼리 연결될 수 있게 함
- 데이터 : 트랜젝션(거래 내역)
🔸 CHAIN : 엮다
🔸 해시 : 일방향 함수 / 결과를 가지고 input을 얻을 수 없는 함수 / 블록이 연결된 방법
🔹 블록 추가만 가능 / 삭제 및 편집 불가능
🔸 탈중앙화 : 특정 개인이 DB를 관리할 수 없음
- 모두 같은 복제된 DB를 가지고 있음
- 한 개인이 임의로 조작할 수 없음
합의 알고리즘
💡 다수의 참여자들이 통일된 의사결정을 하기 위해 사용하는 알고리즘
🔹 거래 내역이 맞다는 것을 알려주는 알고리즘
🔹 블록이 체인으로 유지되기 위해 필요한 알고리즘
🔸 정격 체인 (Canonical Chain) : 최종 맞는 블록들만 모여 있는 체인 / 여기에 들어 있는 거래만 실제로 일어난 거래로 간주함
🔸 비잔틴 오류 허용 (BFT) : 장애가 있더라도 전체의 1/3을 넘지 않는다면 시스템이 정상 작동하도록 허용하는 합의 알고리즘
합의 알고리즘 종류
1️⃣ 작업 증명 PoW (Proof of Work)
💡 목표값 이하의 해시를 찾는 과정을 무수히 반복함으로써 해당 작업에 참여했음을 증명하는 합의 알고리즘
🔹 비트코인 (BTC), 이더리움 (ETH), 라이트코인(LTC) 등
🔹 어떤 트랜잭션이 발생했을 경우 해당 트랜잭션이 유효한 트랜잭션인지에 대한 합의 방법
🔹 작업 : 채굴에 이르기까지 연산 과정을 뜻함 / 조건에 맞는 해시값을 찾는 과정
🔹 거래 처리 속도가 늦음 / 채굴에 필요한 에너지 소비가 심함
✅ 채굴 Mining
💡 블록체인에 들어오는 데이터를 확인하고 체크 후 블록에 넣음 그 블록을 블록체인으로 보내는 역할
🔹 누구나 채굴자가 될 수 있음
🔹 채굴자가 되어 transaction confirm을 하면 돈(수수료)을 받음
🔹 작업증명이라는게 채굴자에게 질문을 함 → 답을 찾았을 때만 블록을 올릴 수 있음
🔸 coinbase transaction : 채굴자가 블록을 체인에 올릴 때마다 coin이 생성됨
🔸 논스 Nonce : 한번만 쓰인 숫자 / 채굴자가 바꿀 수 있는 유일한 숫자 / 블록의 해시값을 변형시킬 수 있음 / 채굴자가 블록을 올리기 위해 찾아야 하는 숫자
채굴자는 질문에 맞는 답(특정 hash 조건)을 얻을 수 있는 nonce값을 찾기 위해 고군분투함 → bitcoin 채굴에 그래픽 카드가 중요한 이유
🔸 작업 난이도 : 논스값 계산의 어려운 정도
2️⃣ 지분 증명 PoS (Proof of Stack)
💡 암호화폐를 보유하고 있는 지분율에 비례하여 의사결정 권한을 주는 합의 알고리즘
🔹 에이다(ADA), 큐텀, 피어코인
🔹 작업증명(PoW)의 문제점인 막대한 에너지 및 리소스 소모를 해결
🔹 별도의 채굴기 없이 코인을 보유하면 자격이 충족됨
🔹 자신의 코인 지분에 따라 영향력을 행사함
🔹 다른 코인으로 이탈 가능성이 적음 / 검증시간이 빠름
🔹 불안전한 해결책임 / 자금 손실 위험성이 있음
스마트 컨트랙트
💡 코드를 모두가 공유, 검증, 실행하지만 수정할 수 없는 백엔드에 올리는 것
🔹 블록체인 기술을 활용해 제 3의 인증기관 없이 개인 간 계약이 이루어질 수 있도록 하는 기술
🔹 스마트 컨트랙트 지원 blockchain : 이더리움, Kusama, Polkadot, Caradano, Cosmos 등
🔹 블록체인상에 조건이 만족되면 자동으로 내용이 실행되도록 원하는 정보를 CRUD(Create, Read, Update, Delete)할 수 있게 하는 프로그램
'Blockchain' 카테고리의 다른 글
[블록체인] Aptos 지갑 생성 - React (0) | 2023.03.20 |
---|---|
[블록체인] Solana 기반 지갑 생성 - React (0) | 2023.03.20 |
[블록체인] EVM(Ethereum, Polygon, Klaytn) 기반 지갑 생성 - React (0) | 2023.03.17 |
[블록체인] 니모닉 코드 생성 (0) | 2023.03.17 |