Quipu-Log 교과서
Quipu-Log 교과서

변조-탐지 감사 로그와
파일시스템 저장 엔진

파일시스템만으로 짓는 저장 엔진과 변조-탐지 감사 로그 — 밑바닥부터. 비유로 직관을 잡고, 실제 코드로 확인하며, DB가 주던 보장이 파일 위에서 어떻게 다시 만들어지는지 짚어갑니다.

파트 1 · 출발점: DB 없이, 파일로
01감사 로그란, 그리고 왜 'DB 없이 파일로'인가 02Quipu-Log 지도와 DB↔파일시스템 대응표
파트 2 · 파일시스템 기본기
03파일시스템의 기본: 파일·디렉토리·inode·디스크립터 04읽고 쓰기, 그리고 rename의 원자성 05데이터는 언제 진짜 디스크에 남나: page cache와 fsync 06std::fs 도구상자: Rust로 파일 다루기
파트 3 · 저장 엔진의 심장: append-only 로그
07append-only 로그 = WAL이 곧 데이터베이스 08세그먼트 파일과 롤오버 09레코드 프레이밍: 길이·CRC32·magic/version 10직렬화: 구조체를 바이트로
파트 4 · DB가 공짜로 주던 보장을 파일로 재현
11내구성: fsync 정책과 group commit 12원자성과 크래시 복구: torn write와 꼬리 탐지 13동시성 제어 ①: single-writer와 파일 락 14동시성 제어 ②: 읽기 스냅샷과 MVCC 15인덱싱: 인메모리 인덱스 + 디스크 토큰 16쿼리 실행: 세그먼트 스캔과 커서 페이지네이션 17삭제와 보존: 세그먼트 unlink vs DELETE 18저장소 레이아웃과 포맷 버저닝
파트 5 · 무결성: 고치면 티가 나게 (보안 ①)
19해시 함수와 SHA-256: 디지털 지문 20머클 히스토리 트리: 로그를 32바이트로 커밋 21포함 증명·일관성 증명 22체크포인트와 외부 앵커링 23tamper-evident vs tamper-proof, 그리고 위협 모델
파트 6 · 기밀성: 비밀을 지키면서 검색하기 (보안 ②)
24필드 보호 4단계: 평문/SHA-256/HMAC/RSA 25대칭·비대칭·하이브리드 암호와 AEAD 26블라인드 인덱스: 평문 없이 검색 27쓰기 전용 배포: 개인키 없는 서버 28키 관리: 키링·버저닝·로테이션 vs 리키
파트 7 · 쓰기·읽기 경로
29비동기 파이프라인: 논블로킹 emit과 백프레셔 30신뢰성: 재시도·백오프·DLQ·멱등성 31tower 미들웨어: HTTP 요청 자동 기록 32권한(RBAC)·필터·메타 감사
파트 8 · 분산·운영·확장
33단일 장애점과 가용성: 클라이언트 스풀 34수평 확장: 샤딩·일관성 해싱·읽기 복제 35서버·클라이언트·MCP·관측성