전체 글68 비트코인 기술(세그윗 SegWit, 라이트닝 네트워크, UTXO) 세그윗(SegWit): 서명 분리로 확장하기세그윗(Segregated Witness)은 2017년 8월에 활성화된 비트코인 프로토콜 업그레이드트랜잭션에서 서명 데이터(witness)를 본문에서 분리해 블록의 실질적 용량을 늘린 기술비트코인 역사상 가장 격렬했던 거버넌스 논쟁인 블록사이즈 전쟁의 결과물블록사이즈 전쟁의 맥락 (2015–2017)1MB 블록 한도에 트랜잭션 수요가 근접하면서 확장성 문제가 핵심 쟁점이 됐다. 두 진영이 대립했다.빅 블록 진영: 블록 크기를 2MB·8MB 이상으로 직접 늘리는 하드 포크를 주장. 즉시 처리량을 늘릴 수 있다는 논리. 대형 채굴 풀과 일부 기업이 포함됐다.스몰 블록 진영: 블록 크기 증가가 노드 운영 비용을 높여 탈중앙화를 약화시킨다고 우려. 세그윗 같은 소프트 .. 2026. 10. 18. Chapter5. 데코레이터 활용: 흔한 실수 피하기(래핑된 원본 객체의 데이터 보존, 데코레이터 부작용 처리) 래핑된 원본 객체의 데이터 보존문제점: 원본 메타데이터 손실데코레이터를 함수에 적용하면 원본 함수가 wrapped라는 새로운 함수로 감싸지게 됨.이로 인해 원본 함수 이름, 문서(docstring), 어노테이션(annotations) 등 고유의 메타데이터가 손실되고 래퍼 함수의 정보로 덮어씌워짐.결과: 디버깅이 어려워지고, doctest 같은 단위 테스트 도구가 정상적으로 동작하지 않는 부작용이 발생.def trace_decorator(function): def wrapped(*args, **kwargs): logger.info("%s 실행", function.__qualname__) return function(*args, **kwargs) return wrapped.. 2026. 10. 18. 비트코인 기술(해시 함수 SHA-256, 난이도 조정, 머클 트리) 비트코인 기술해시 함수(SHA-256)비트코인을 한 줄로 줄이면 “해시 함수 위에 올린 돈”이다. 작업증명, 블록 연결, 머클 트리, 주소 생성, 거래 ID까지 전부 같은 함수에 의존한다.개념해시 함수는 임의 길이의 입력을 받아 고정 길이의 출력을 내는 함수.SHA-256은 어떤 데이터를 넣어도 256비트(64자리 16진수)를 반환한다. 1바이트 문자도, 1GB 영상도 같은 길이로 반환된다.📌 해시 함수가 암호학적으로 쓸모 있으려면 다음 성질이 필요함.결정성: 같은 입력은 항상 같은 출력을 만든다.산정 효율: 입력 → 해시 계산은 빠르다.역상 저항(Pre-image resistance): 해시값만 보고 원래 입력을 알아내는 것은 사실상 불가능하다.충돌 저항(Collision resistance): 서로.. 2026. 9. 27. Chapter5. 데코레이터 활용 사례(파라미터 변환, 유효성 검사, 코드추적) 데코레이터 활용 우수 사례데코레이터를 언제, 어떤 목적으로 쓰면 좋은지 데코레이터가 특히 유용한 대표적인 상황들을 소개한다. 데코레이터가 좋은 선택이 되는 주요 경우활용 사례설명효과파라미터 변환• 복잡하고 반복적인 인자를 받는 레거시 함수나 프레임워크 함수에서, 데코레이터가 중간에서 인자를 가로채 가공한 뒤 깔끔한 도메인 객체(helper)로 변환해줌• 파라미터가 어떻게 처리되는지 세부사항을 숨기면서 함수의 서명을 변경함• 복잡한 함수에 더 깔끔한 인터페이스를 제공할 때 유용. 단, 의도를 명확히 해야 함• 대규모 리팩토링 없이도 함수의 서명을 더 간단하고 직관적으로 변경할 수 있으며, 디자인 패턴에서의 어댑터(Adapter) 역할을 수행코드 추적 (Tracing)• 기존 코드를 전혀 수정하지 않고 외부.. 2026. 9. 27. 비트코인 저축 및 DCA 전략 비트코인 저축 및 DCA 전략1. 전통적 저축의 한계와 비트코인의 대안성현상: 시중은행 정기예금 금리는 3~4% 수준이나, 주요 생활비 등 체감 물가 상승률이 이를 상회하여 현금의 실질 구매력이 감소함. 법정화폐는 양적완화(QE) 등으로 통화량이 증가하며 가치가 희석됨.분석: 인플레이션 환경에서는 실물 자산 보유자가 이득을 얻고, 현금 저축자는 손해를 보는 구조적 부의 재분배가 발생함.비트코인을 저축 수단으로 활용하는 이유:고정 공급: 2,100만 개로 발행량이 수학적으로 제한됨. 4년 주기의 반감기로 인해 신규 발행률이 감소함(2024년 이후 연 약 0.8%).보관 비용의 최소화: 보관료, 취득세 없이 시드 문구만으로 보관 가능함.분할성: 최소 단위인 1사토시(0.00000001 BTC)로 잘게 쪼개어.. 2026. 9. 20. Chapter5. 고급 데코레이터(코루틴(coroutine)을 위한 데코레이터, 데코레이터를 위한 확장 구문) 코루틴(coroutine)을 위한 데코레이터코루틴(Coroutine): 비동기(Asynchronous) 작업을 위한 특별한 함수일반 함수는 호출되면 끝까지 실행된 뒤 종료되지만, 코루틴은 실행을 중간에 멈췄다가(await) 나중에 다시 이어서 실행할 수 있는 특별한 함수파이썬에서는 async def 키워드로 정의. 내부에서 await를 만나면 제어권을 양도하고 대기 상태로 들어가며, 그 동안 CPU나 이벤트 루프가 다른 작업을 처리할 수 있도록 함예시 상황) 쇼핑몰 서버에서 사용자 주문을 처리할 때, 외부 결제모듈 API 응답을 기다리는 n초 동안 멈춰있지 않고, 대기 시간 동안 다른 사용자의 주문이나 조회 요청을 처리함. 이로 인해 적은 자원으로도 수많은 요청을 동시에 처리할 수 있음.def 일반함수(.. 2026. 9. 20. 라이트닝 결제와 풀노드 라이트닝 결제와 풀노드비트코인은 신뢰 없이 작동하는 화폐 시스템을 구축하려는 시도다. 그런데 이 시스템이 실제로 일상에서 작동하려면, 두 가지가 필수적이다. 하나는 빠르고 저렴한 결제(라이트닝), 다른 하나는 스스로 규칙을 검증하는 능력(풀노드). 이 두 가지는 비트코인의 ‘금’과 ‘현금’을 동시에 실현하려는 철학의 양면이다. 1. 라이트닝 네트워크란?왜 비트코인은 의도적으로 느린가비트코인 온체인 처리량은 초당 약 7건이다. 비자(Visa)의 실제 평균 처리량이 초당 1,700건 수준인 것과 비교하면 극명하다.이 한계는 기술적 무능이 아니라 선택적 설계이다.블록 크기와 생성 주기를 늘리면 처리량은 증가한다. 그러나 동시에 노드를 운영하는 데 필요한 하드웨어·저장·대역폭 비용도 급격히 오른다. 일반인이 자.. 2026. 9. 13. Chapter5. 고급 데코레이터(기본값을 가진 데코레이터) 기본값을 가진 데코레이터데코레이터에 기본값을 주는 이유는 사용자가 파라미터를 깜빡 잊고 안 넘겨도 동작하게 하기 위해서이다.# 기본값 사용@WithRetry()@WithRetry(retries_limit=5)# 괄호없이 사용하면 문제 발생@WithRetry def my_function(): ...문제가 발생하는 이유@WithRetry() → WithRetry()를 먼저 호출해서 인스턴스를 만들고, 그 인스턴스가 함수를 받음@WithRetry → WithRetry 클래스 자체가 함수를 바로 받게 됨 (즉 __init__이 아니라 클래스가 직접 호출되는 상황이 되어 버림)괄호가 없는 경우는 첫 번째 파라미터로 함수가 전달되지만, 괄호가 있는 경우는 첫 번째 파라미터로 None.. 2026. 9. 13. 화폐와 국가(닉슨 쇼크에서 비트코인까지, 화폐 권력의 해부) 화폐와 국가화폐는 정부보다 먼저 존재했다. 사람들은 수백 년의 자발적 거래를 통해 금·은·희소한 재화를 돈으로 선택했다. 그 다음 국가가 끼어들었다. 처음에는 동전에 왕의 얼굴을 새기고, 그 다음에는 금을 종이 약속으로 대체하고, 마침내 1971년 8월 15일에 실물과의 마지막 연결고리마저 끊어버렸다.그 이후 벌어진 일은 슬로우모션 약탈의 역사다. 구매력이 증발한다. 부가 조용히 위로 흘러간다. 정부는 정직한 돈으로는 절대 감당할 수 없는 전쟁을 벌인다. 대부분의 사람들은 눈치채지 못한다. 메커니즘이 보이지 않으니까.1. 화폐는 왜 국가의 도구가 되었는가화폐의 탄생에 대해 두 가지 상반된 이야기가 있다. 하나는 국가가 화폐를 만들었다는 이야기다. 다른 하나는 카를 멩거의 이야기 — 화폐는 시장에서 자발적.. 2026. 9. 7. 이전 1 2 3 4 ··· 8 다음