📢 블록체인: 데이터가 저장된 ‘블록’이 ‘체인’으로 연결
[구조의 이해] ‘동일한 거래내역’을 기존 구조와 블록체인 구조를 비교한다면?
| INDEX | 판매자 | 구매자 | 개수 | 시간 |
|---|---|---|---|---|
| 0 | 파랑불 | 김민수 | 3개 | 1990년 1월 1일 00시 00분 00초 |
| 1 | 김민수 | 김영수 | 3개 | 1990년 1월 2일 01시 02분 03초 |
| 2 | 김영수 | 박영수 | 3개 | 1990년 1월 3일 02시 03분 04초 |
| 3 | 박영수 | 이미래 | 3개 | 1990년 1월 4일 02시 03분 04초 |
| 4 | 이미래 | 손영호 | 3개 | 1990년 1월 5일 02시 03분 04초 |
| 5 | 손영호 | 수영호 | 3개 | 1990년 1월 6일 02시 03분 04초 |
┌───────────────┐ │ 블록1 │ │--------------- │ │ 'INDEX' : 0 │ │ '판매자' : 파이썬 │ │ '구매자' : 김민수 │ │ '개수' : 3개 │ │ '시간' : 1990-01-01 00:00:00 │ └───────────────┘ │ ▼ ┌───────────────┐ │ 블록2 │ │--------------- │ │ 'INDEX' : 1 │ │ '판매자' : 김민수 │ │ '구매자' : 김영수 │ │ '개수' : 3개 │ │ '시간' : 1990-01-01 00:00:00 │ └───────────────┘ │ ▼ ┌───────────────┐ │ 블록3 │ │--------------- │ │ 'INDEX' : 3 │ │ '판매자' : 김영수 │ │ '구매자' : 박명수 │ │ '개수' : 3개 │ │ '시간' : 1990-01-01 00:00:00 │ └───────────────┘
➡️ 여기서 핵심은 ‘previous_block’
previous_block이 chain역할을 함
block1 = {
'INDEX': 0,
'판매자': '파이썬',
'구매자': '김민수',
'개수': '3개',
'시간': '2022년 5월 11일 16시 25분 16초',
'previous_block': None
}
block2 = {
'INDEX': 1,
'판매자': '김민수',
'구매자': '김영수',
'개수': '3개',
'시간': '2022년 5월 12일 13시 25분 16초',
'previous_block': block1
}
block3 = {
'INDEX': 2, # 수정: 3 → 2 (순서대로)
'판매자': '김영수',
'구매자': '박명수',
'개수': '3개',
'시간': '2022년 5월 13일 16시 25분 16초',
'previous_block': block2
}
block4 = {
'INDEX': 3, # 수정: 4 → 3 (순서대로)
'판매자': '박명수',
'구매자': '이미래',
'개수': '3개',
'시간': '2022년 5월 14일 16시 25분 16초',
'previous_block': block3
}
block5 = {
'INDEX': 4, # 수정: 5 → 4 (순서대로)
'판매자': '이미래',
'구매자': '최용수',
'개수': '3개',
'시간': '2022년 5월 15일 16시 25분 16초',
'previous_block': block4
}
block6 = {
'INDEX': 5, # 수정: 6 → 5 (순서대로)
'판매자': '최용수',
'구매자': '강영희',
'개수': '3개',
'시간': '2022년 5월 16일 16시 25분 16초', # 수정: 공백 추가
'previous_block': block5
}
➡️ 참고로 비트코인은 75만개의 블록이 생성되어 있으며, 실시간으로 약 10분당 1개의 블록이 생성되고 있음
➡️ 또 이더리움은 150만개 이상의 블록이 생성되어 있으며, 실시간으로 약 12초에 1개씩 블록이 생성되고 있음
✅ 이런 방식으로 블록이 이어진다면 최후 블록의 길이가 너무 길어져서 아무도 블록체인을 쓰지 않을듯..
그래서 필요한 것이 바로 ‘암호해시’