에어갭을 건너는 세 가지 방법: QR 코드, Bluetooth LE, NFC
에어갭(air gap)은 계속 쓸 때만 쓸모가 있어요. 서명할 때마다 요청이 한쪽으로 건너가고 서명이 되돌아와야 하는데, 그걸 실어 나르는 수단은 그때그때 상황에 맞아야 해요.

목차
세 가지인 이유
에어갭 지갑은 모두 QR 코드에서 출발해요. 그럴 만한 이유가 있어요. QR은 빛으로 전달돼요. 눈으로 볼 수 있어요. 카메라를 꼬드겨서 뭔가를 거꾸로 내보내게 할 수는 없어요. AirNox의 첫 서명 기기(signer)도 QR 전용이었고, 거기서 배운 게 있어요. 휴대폰으로 모니터를 비추고, 프레임을 기다리고, 웹캠에 휴대폰을 비추고, 또 기다려요. 서명 한 번에 두 번씩요. 한 달에 한 번 전송한다면 괜찮아요. 하지만 승인, 스왑, 예치, 클레임이 이어지는 세션이라면 사람들은 지름길을 찾기 시작하고, 지름길을 찾다 보면 안전한 경로는 더 이상 사람들이 쓰는 경로가 아니게 돼요.
편의성은 보안의 반대가 아니에요. 사람들이 안전한 방법을 계속 쓸지 말지를 정하는 게 바로 편의성이에요. 그래서 AirNox는 세 가지 전송 수단을 주고 직접 고르게 해요.

QR 코드
데스크톱이 코드를 띄우면 휴대폰이 스캔해요. 휴대폰이 코드를 띄우면 웹캠이 읽어요. 컨트랙트 호출처럼 긴 요청은 여러 코드가 애니메이션처럼 이어서 재생되고, 진행 상황은 양쪽 화면에 표시돼요.

이게 엄격한 의미의 에어갭이에요. 빛 말고는 아무것도 건너지 않아요. 첫 페어링(pairing), 가끔 하는 큰 금액 전송, 무선 통신을 꺼 둬야 하는 공간에 맞는 선택이에요. 다른 수단을 쓸 수 없을 때 언제든 기댈 수 있는 예비 수단이기도 해요. 원칙주의자의 방식을 원한다면 QR만 쓰세요. 그러면 이 글의 나머지 내용은 해당되지 않아요.
Bluetooth Low Energy
책상 위에서 쓰는 전송 수단이에요. 휴대폰은 키보드 옆에 놓여 있어요. 요청이 오면 휴대폰 화면을 읽고 Accept(수락)를 눌러요. 첫 페어링 뒤에는 뭔가를 비출 필요가 없어요.
휴대폰은 주변기기(peripheral) 역할을 하며 낮은 송신 출력으로 신호(advertising)를 보내요. 그래서 도달 거리는 설계상 책상 정도예요. 다른 기기를 스캔하는 일은 절대 없어서, 앱에 위치 권한도 필요 없어요. 낮은 출력은 프라이버시를 지키고 공격 표면을 줄이기 위한 거예요. 통신 내용을 비밀로 지키는 건 그게 아니에요. 그건 세션이 하는 일이고, 다음 글들에서 다뤄요.
Bluetooth LE는 일상용이에요. dApp 세션, 연달아 이어지는 여러 번의 서명, 휴대폰이 손 닿는 곳에 있는 모든 상황에 맞아요.
NFC
탭 한 번이에요. 휴대폰을 데스크톱에 연결된 작은 USB 리더기에 대면, 그 순간 요청이 건너가요. 도달 거리는 물리적으로 몇 센티미터예요. 전송 수단 자체를 위한 페어링 화면은 없어요. 단말기에 카드를 갖다 대는 것처럼 이 동작 자체가 의사 표시가 돼요. 그래서 NFC는 서명할 때마다 의도적인 물리적 동작이 필요한 단말기, 키오스크, 공용 책상에 잘 어울려요.
NFC에는 리더기가 필요해요. QR 코드와 Bluetooth LE는 휴대폰과 컴퓨터 말고는 아무것도 필요 없어요.
하나의 세션, 세 가지 전송 수단
어떤 전송 수단을 쓰든 그 위로 오가는 건 같아요. 데스크톱과 휴대폰 사이의, 종단 간 암호화(end-to-end)되고 상호 인증(mutual authentication)된 세션이에요. 페어링은 한 번만 하면 돼요. QR 코드를 스캔하고, 양쪽 화면에 뜬 짧은 코드를 비교하면 끝이에요. 그다음부터 전송 수단은 그냥 실어 나르는 수단일 뿐이에요. 다시 페어링하지 않고도 수단을 바꿀 수 있고, 세션은 자신이 빛을 타는지, 전파를 타는지, 탭을 타는지 신경 쓰지 않아요.
전송 수단은 신뢰하지 않아요. 블루투스 페어링, NFC 근접, 눈에 보이는 QR 코드는 인증이 아니에요. 인증은 세션이 해요. 이렇게 분리했기 때문에 기준을 낮추지 않고도 편의성을 제공할 수 있고, 이 내용은 전송 수단을 절대 신뢰하지 않는 이유를 다룬 글의 주제예요.
고르는 법
첫 페어링에는 QR. 가끔 하는 신중한 큰 금액 전송에도 QR. 책상에서 하는 일상 업무에는 Bluetooth LE. 모든 서명이 눈에 보이는 물리적 동작이어야 하는 단말기나 키오스크에는 NFC. 무선 통신이 허용되지 않는 공간이라면 다시 QR. 휴대폰도 지갑도 가리지 않아요. 맞는 걸 쓰세요.
시리즈 목차
- 컴퓨터는 이미 감염됐다고 가정하세요
- Mass Adoption Security: 서명 기기는 이미 가진 휴대폰이에요
- 에어갭을 건너는 세 가지 방법: QR 코드, Bluetooth LE, NFC
- 전파에 드러나지 않기: 아무도 스캔으로 찾을 수 없는 서명 기기
- 전송 수단은 절대 신뢰하지 않아요
- 휴대폰이 보여 주는 것: 서명 기기에서 하는 트랜잭션 분석
- 휴대폰은 자기만의 기록을 남겨요
- 데스크톱의 금고: Argon2id와 추측에 강한 프로필
- 브라우저 지갑 없이 dApp 쓰기
- 규칙이 있는 MCP 서버: 한도 안에서 움직이는 AI 에이전트
- 모든 걸 담은, 보호받는 지갑 하나
- 작고 네이티브하게: C++, JavaScript 런타임 없이, 워크스테이션부터 Raspberry Pi까지