Wi-Fi 스마트 전구 속 금서 도서관
Wi-Fi 스마트 전구 속 금서 도서관
본 글은 리처드 오스굿(Richard Osgood)의 블로그 글 "Banned Book Library"를 분석한 것이다. 원문은 richardosgood.com에 게시되었으며, GeekNews를 통해 소개되었고 Hacker News에서 568점, 339개 댓글로 활발히 논의되었다.
1. 원문 핵심 내용
프로젝트 개요
작가 리처드 오스굿은 Wi-Fi 스마트 전구를 개조하여 "사이버펑크 디지털 데드드롭(dead drop — 비밀 교신용 숨겨진 장소)"으로 만드는 프로젝트를 기록했다. 이 장치는 인터넷 없이도 주변에서 Wi-Fi 신호를 받아 접속한 사람이 금서(ebook)를 읽을 수 있는 오프라인 도서관 역할을 한다.
영감은 벤 브라운의 단편 소설 "Library"와 코리 닥터로의 "Unauthorized Bread"에서 왔다. 두 작품 모두 정보 통제 사회에서 지식 공유가 어떻게 저항이 되는지를 다루는 사이버펑크 소설이다.
하드웨어: ESP32C3 칩이 들어간 스마트 전구
사용한 전구는 Athom.tech에서 판매하는 Tasmota 호환 12W 컬러 전구다. Tasmota는 오픈소스 IoT 펌웨어로, 스마트 기기를 사용자 제어 아래 두는 프로젝트다. 이 전구의 핵심은 ESP32C3 마이크로컨트롤러 — 4MB 플래시 메모리를 탑재한 저전력 Wi-Fi 칩이다.
ESP32C3는 ESP8266의 후속 모델로, RISC-V 아키텍처를 사용한다. 몇 달러에 구매 가능한 이 칩은 Wi-Fi 연결, 블루투스, 여러 GPIO 핀을 갖추고 있어 IoT 프로젝트에 널리 쓰인다.
LED 제어 핀 매핑:
- 적색(R): GPIO6
- 녹색(G): GPIO7
- 청색(B): GPIO5
- 차갑게 흰색(CW): GPIO3
- 따뜻하게 흰색(WW): GPIO4
분해와 개조 과정
전구를 분해하면 내부 구조가 나온다:
- 전구 하우징은 접착제로 밀봉되어 있고, LED 도터 보드는 붙어 있다.
- 메인 보드는 고무 같은 포팅 컴파운드(potting compound — 방수/방습용 수지)에 묻혀 있다. 이를 제거하면 안전 기준이 깨져 화재 위험이 있으므로, 최종 배포에서는 권장하지 않는다.
- 직렬 프로그래밍을 위해 ESP32C3의 VCC, GND, TX, RX, IO9(다운로드 모드용) 핀에 납땜해야 했다.
- microSD 카드 리더기를 추가하려 했지만 실패했다. LED 제어 핀이 출력 전용이라 SD 카드 입력이 불가능했고, 3D 프린팅 클램프 방식도 불안정했다.
펌웨어 개발: Arduino에서 ESP-IDF로
초기에는 Tasmota 수정을 시도했지만 복잡하고 불필요한 기능이 많아서 포기했다. Arduino IDE로 "Hello World"와 웹 서버 테스트를 했지만, Arduino 프레임워크는 안전을 위해 파티션 테이블 같은 중요한 플래시 영역에 접근하는 것을 막는다.
그래서 ESP-IDF(Espressif 공식 개발 프레임워크)로 전환했다. ESP-IDF는 ESP32의 모든 기능을 직접 제어할 수 있는 저수준 개발 환경이다.
핵심 설정:
menuconfig에서SPI_FLASH_DANGERUS_WRITE_ALLOWED를 활성화 — 일반적으로 금지된 플래시 쓰기 영역에 접근할 수 있게 함- "Arduino as a Component" 방식 채택 — ESP-IDF 내에서 Arduino 라이브러리(AsyncWebServer 등)를 그대로 쓰면서 저수준 플래시 제어까지 가능하게 한 하이브리드 방식
파티션 테이블 수정 — 2MB 저장 공간 확보
ESP32C3의 4MB 플래시 중 데이터 저장용 SPIFFS(SPI Flash File System — ESP32용 간단한 파일 시스템) 파티션을 확장하는 것이 핵심 과제였다.
원래 구성:
- app0(펌웨어): 2880K
- spiffs(데이터): 320K
수정 후 구성:
- app0(펌웨어): 1152K로 축소
- spiffs(데이터): 2MB로 확장
이렇게 하면 EPUB 파일 하나당 약 350KB로 계산할 때 수 권의 책을 저장할 수 있다.
파티션 테이블을 플래시에 직접 덮어쓰는 C 함수를 작성했고, MD5 체크섬으로 중복 작기를 방지했다.
웹 애플리케이션
캡티브 포털(Captive Portal): 장치가 인터넷에 연결되어 있지 않기 때문에, Wi-Fi에 접속한 사용자를 자동으로 로컬 웹 서버로 리다이렉트해야 한다. 각 OS가 연결 테스트용으로 보내는 특정 요청을 가로채서 로컬 페이지로 보낸다:
- Android:
/generate_204 - Apple:
/hotspot-detect.html - Windows:
/ncsi.txt,/connecttest.txt
관리자 패널 (/admin): 비밀번호 보호된 페이지에서 LED 색상을 환경에 맞게 조절할 수 있다. 예를 들어 "차갑게 흰색"이나 "따뜻하게 흰색"으로 설정하면 전구가 여전히 정상적인 전구처럼 보일 수 있다.
OTA(Over-The-Air) 복원: 펌웨어가 망가졌을 때 무선으로 초기 상태로 복원하는 기능이 있다.
프로젝트의 철학
작가는 이 프로젝트를 "지식의 자유로운 흐름을 위한 물리적 인프라"로 보고 있다. 전구는 방 어디에나 있는 평범한 물건이므로 탐지하기 어렵다는 점이 장점이다. 금서 목록에 오른 책들을 오프라인으로 공유할 수 있는 물리적 매체라는 점이 핵심 가치다.
제한사항과 향후 아이디어
- 저장 공간: 2MB로 수 권의 EPUB만 저장 가능
- 색상 제어: LED 색상을 자동으로 조절하여 주변과 더 자연스럽게 녹아들게 하는 기능
- 메시 네트워킹: 여러 전구가 서로 연결되어 책을 교환하는 분산 네트워크 구상
- VPN 엔드포인트: 전구를 단순 도서관을 넘어 인터넷 우회 도구로 확장하는 아이디어
2. 커뮤니티 반응 (Hacker News, 339개 댓글)
HN에서는 기술적 감탄과 함께 "금서(banned books)"의 정의에 대한 논쟁이 주요 화두였다.
기술적 찬사와 아이디어 확장
대부분의 댓글은 프로젝트의 기술적 성취를 높이 평가했다.
- rootbear: "전구라는 빛의 매체를 통해 억압된 지식을 퍼뜨린다는 점이 시적으로 아름답다" — 프로젝트의 철학적 측면을 지적
- lanycrost: "아폴로 임무 컴퓨터도 재현할 수 있겠구나" — ESP32C3의 제한된 리소스에서 복잡한 펌웨어를 구동한 기술력을 인정
- hungryhobbit: "$20짜리 전구 하나 사서 무선 업데이트만 하면 내 개인 '전구 도서관'이 되는 날을 기다린다" — 제품화 가능성 언급
기술적 개선 제안도 많았다:
- clort: 압축을 전혀 언급하지 않았다 — LZS 같은 간단한 압축 알고리즘을 추가하면 저장된 책 수를 5배 이상 늘릴 수 있을 것
- Panda_, tristor: Reticulum Network Stack(RNS) 같은 분산 메시 프로토콜을 통해 인터넷 없이 여러 전구가 서로 연결되는 네트워크를 제안
- geoffwarner: "지오캐싱(geo-caching — 특정 위치에 숨겨진 디지털 콘텐츠를 찾는 게임)" 형태로 활용할 수 있다는 아이디어
- joquarky: VPN 엔드포인트로도 유용할 것
"금서(banned books)" 정의 논쟁
가장 뜨거운 논쟁은 "금서"라는 용어의 적절성이었다.
반대 측 주장:
- steviedotboston: "이 책들은 실제로 금서가 아니다. 아무도 이 책을 소지했다는 이유로 체포되지 않고, 아마존에서 판매 금지도 아니며, 성인은 언제든지 읽을 수 있다. 학교 도서관에서 어떤 책을 제외하느냐는 정부 검열이 아니다"
- some_random: "학생들은 이 책을 소지할 수 있고 읽을 수 있다"
- NoMoreNicksLeft: "소련이 책 소유 자체를 금지하던 것과 학교 도서관에서 한 권을 빼놓는 것은 비교 자체가 잘못됐다"
이들은 "금서"라는 표현이 과장이며, 학교 도서관의 연령별 선별과 정부 검열을 혼동한다고 주장했다.
지지 측 주장:
- JuniperMesos: "책 한 권이 아마존에서 5달러에서 100달러로 오르는 것은, 권력자가 이데올로기적 판단으로 가격을 올린 결과이고, 이는 일반인의 접근을 실제로 어렵게 한다"
- margalabargala: "최근 금서로 지목된 많은 책이 실제로 R/NC-17 등급일 리 없다" — 특정 책(예: Gender Queer)에 대한 과도한 반응을 지적
- Guthwine: "Gender Queer라는 240페이지 책에서 문제가 된 페이지는 절반 이상 안으로 있다. 십대 아이가 그까지 읽을 리 없다"
중재적 시각:
- havblue: "어떤 책을 도서관에서 빼놓는 것이 '읽을 수 없다'는 목록에 오르면서 오히려 관심을 받는 아이러니(스트라든 효과)가 있다" — 금서 자체가 홍보가 된다는 역설을 지적
프라이버시와 보안 우려
- vladak: "스마트 전구와 IoT 기기를 버릴 때 저장된 Wi-Fi 비밀번호가 유출되는 '자격 증명 수확(credential harvesting)'이 현실적인 위험이 아닐까" — IoT 폐기 시 데이터 삭제 문제 제기
LGBTQ+ 관련 논쟁
Gender Queer라는 책(청소년 성정체성 회고록)을 둘러싼 논쟁이 특히 뜨거웠다.
- mystraline: "내가 고등학교 때 '동성애자'라는 욕설이 얼마나 흔했는지 기억한다. 성정체성에 대해 고민하는 아이가 이 책을 찾는 것은 생존을 위한 것이다. 기독교 근본주의자들이 수십 년간 해온 것과 같은 논리다" — 개인적인 경험을 들어 금서 운동의 해악을 설명
메시 네트워킹과 탈중앙화
- Panda_: Reticulum Network Stack(RNS)을 소개 — 임의의 양방향 연결 위에서 작동하는 탈중앙화 메시 네트워크 프로토콜. Meshtastic과 유사하지만 더 범용적이라고 평가
- tristor: Reticulum이나 다른 탈중앙화 프로토콜을 통해 인터넷 의존 없이 파일 공유가 가능하게 하면 더 완벽할 것
3. 새로운 시각
(1) IoT 기기의 '이중 용도(dual-use)' 문제
이 프로젝트는 IoT 기기의 본질적인 이중성을 잘 보여준다. 스마트 전구는 조명이라는 일상적 기능을 가미하여 감시를 회피하는 '카모플라주(camouflage)' 역할을 한다. 이는 정보 통제 사회에서 기술이 저항 도구로 전향할 수 있는 가능성을 시사한다. 반대로, 같은 IoT 생태계가 감시 인프라로 활용될 수도 있다는 점은 양날의 검이다. 스마트 기기가 증가할수록 '무엇이 전구인지, 무엇이 서버인지' 구분하기 어려워진다.
(2) '금서'의 재정의: 법적 금지가 아닌 접근성 파괴
HN 논쟁에서 드러난 핵심은 "금서(banned book)"의 정의다. 전통적인 금서는 국가가 소유 자체를 금지하는 것이지만, 현대의 '금서'는 학교 도서관 제외, 출판사 자발적 판매 중단, 온라인 플랫폼에서의 가시성 감소 등 접근성 파괴의 형태를 띤다. 이 프로젝트가 중요한 이유는 '법적 금지를 우회하는 것'이 아니라 '접근성 파괴를 기술적 우회로 상쇄하는 것'을 시도하기 때문이다. 이는 현대 검열의 본질이 '금지'가 아닌 '가시성 통제'로 변모했음을 보여준다.
(3) 물리적 제약이 창의성을 낳는 역설
ESP32C3의 4MB 플래시 중 펌웨어를 1.1MB로 깎아내고 2MB만 데이터로 쓰는 것은 극한의 최적화다. 이 제약이 오히려 독창적인 해결책을 낳았다: 파티션 테이블 직접 수정, 캡티브 포털 구현, Arduino-ESP-IDF 하이브리드 방식 등. 일반적으로 '더 많은 자원 = 더 좋은 결과'라고 생각하지만, 이 프로젝트는 제한된 환경이 오히려 기술적 혁신을 자극한다는 것을 보여준다. 아폴로 임무 컴퓨터가 4KB 메모리로 달 착륙을 성취한 것과 같은 맥락이다.
4. 자녀/미래 영향
아인(딸)에게
아인이 성장하는 세상에서 정보 접근은 당연한 권리가 아니라 기술적 능력이 될 수 있다. 이 프로젝트가 보여주는 것은 "지식을 얻으려면 기술을 알아야 한다"는 사실이다. 아인이 프로그래밍이나 하드웨어에 관심이 있다면, ESP32 같은 저가형 마이크로컨트롤러로 시작하는 것이 좋은 첫걸음이 될 것이다. 전구 하나를 개조하는 프로젝트는 전자공학, 네트워크, 웹 개발, 펌웨어 프로그래밍을 종합적으로 경험하게 해준다.
석현(아들)에게
석현이 이해해야 할 것은 '금서'라는 개념의 변화다. 과거의 금서는 법으로 금지된 것이었지만, 현대의 금서는 알고리즘 추천에서 사라진 책, 학교 도서관에서 빼놓인 책, 온라인에서 검색하기 어려운 책이다. 석현이 이런 정보 격차를 인식하고, 다양한 관점을 적극적으로 찾아 읽는 습관을 기르는 것이 중요하다. 또한 IoT 기기의 보안 문제 — 버린 스마트 기기에서 개인정보가 유출될 수 있다는 점 — 을 일찍 이해하면 디지털 시민으로서 더 책임감 있게 기기를 다룰 수 있을 것이다.
은한(아들)에게
은한이 태어나는 세상은 아마 IoT 기기가 지금보다 훨씬 보편화된 상태일 것이다. 이 프로젝트가 시사하는 것은 '보통의 물건이 특별한 기능을 숨길 수 있다'는 점이다. 은한이 자라면 전구, 펜, 시계 같은 일상 물물이 모두 연결된 세계에 살게 될 것이다. 그런世界里에서 중요한 것은 '무엇이 연결되어 있는지 아는 능력'과 '연결을 통제하는 능력'이다. 부모로서 은한이 성장하는 환경에서 정보 접근의 자유가 어떻게 유지될지 고민해야 하고, 은한에게 다양한 책을 읽어주는 것은 단순한 교육이 아니라 정보 주권(info-sovereignty)을 심어주는 일이다.
관련 노트
- [[IoT 보안과 프라이버시]] — 스마트 기기의 데이터 유출 위험
- [[분산 메시 네트워크]] — Reticulum, Meshtastic 등 인터넷 대체 네트워크
- [[검열과 정보 자유]] — 현대 검열의 형태와 저항 기술