12편 중 12번째 글읽는 데 3분

작고 네이티브하게: C++, JavaScript 런타임 없이, 워크스테이션부터 Raspberry Pi까지

지갑은 보안 프로그램이에요. 감사할 수 있을 만큼 작고, 있는 줄도 모를 만큼 빠르고, 자기 것이 아닌 움직이는 부품이 없어야 해요.

모니터, 노트북, 싱글보드 컴퓨터 위에 놓인 C++ 칩
플랫폼마다 네이티브 바이너리 하나.
목차

C++와 Qt

AirNox Wallet은 Qt 툴킷을 쓰는 C++로 작성됐어요. 암호 기술, 체인 코드, 트랜잭션 빌더, 검사 기능이 모두 하나의 네이티브 코어에 들어 있고, 플랫폼마다 따로 컴파일돼요. 인터페이스도 네이티브예요. 지갑을 그리는 내장 브라우저도, 지갑을 돌리는 스크립트 엔진도 없어요.

그 덕분에 체감할 수 있는 차이가 세 가지 있어요. 지갑이 순식간에 켜져요. 대기 중에는 조용하고, 컴퓨터가 다른 일을 할 수 있을 만큼 자원을 적게 써요. 그리고 그 아래에서 스스로 업데이트하거나, 패키지를 불러오거나, 어딘가에서 가져온 코드를 실행하는 런타임이 없어요.

들어 있지 않은 것

JavaScript 런타임 없음. 지갑 해킹의 상당 부분은 패키지 생태계와 스크립트 주입을 통해 일어나요. 스크립트 엔진이 없는 지갑은 그런 공격의 표적이 되지 않아요.

웹뷰 없음. 인터페이스는 브라우저 컴포넌트가 아니라 툴킷이 그려요. 코드를 주입할 페이지가 없어요.

텔레메트리, 분석 도구, 트래커 없음. 지갑은 블록체인 노드, 그리고 직접 고른 스왑·브리지 제공자와 통신해요. 저희와는 통신하지 않아요. 몰래 외부로 보고하는 것도 없고, 만들어야 할 계정도 없어요.

Windows, Linux, macOS, Raspberry Pi 플랫폼 타일 네 개와 X 표시된 세 항목: JavaScript 런타임 없음, 웹뷰 없음, 텔레메트리 없음
어디서 돌아가는지, 그리고 무엇을 뺐는지.

플랫폼

데스크톱 앱은 Windows, Linux, macOS에서 각각의 네이티브 빌드로 돌아가요. 같은 코드가 Raspberry Pi급 하드웨어에서도 돌아가서, AirNox는 임베디드 설치에도 잘 맞아요. 환전소 단말기, 키오스크, 백오피스 서명 스테이션 같은 곳이요. 화면이 달린 작은 보드, USB NFC 리더기, 그리고 지갑만 있으면 에어갭(air gap)을 바로 쓸 수 있는 완전한 운영 거점이 되고, 키는 리더기에 갖다 대는 휴대폰에 있어요.

하나의 서명 코어

휴대폰 앱과 데스크톱은 같은 코어를 공유해요. 키를 파생하고, 트랜잭션을 만들고, 화면에 보여 주려고 트랜잭션을 디코딩하는 코드는 두 기기에서 같은 코드이고, 각 기기에 맞게 컴파일돼요. 감사할 구현은 체인마다 하나예요. 서로 맞춰야 하는 두 개가 아니라요. 그리고 한쪽을 고치면 양쪽이 같이 고쳐져요.

이게 중요한 이유

작고 네이티브한 건 취향의 문제가 아니에요. 의존성 하나하나가 남의 실수가 내 실수가 되는 지점이에요. 런타임 하나하나가 공격 표면이에요. 꼭 필요하지 않은 네트워크 호출 하나하나가 뭔가를 흘리는 통로예요. 하나의 네이티브 프로그램으로, 직접 지정한 노드하고만 통신하는 지갑이라야 그 동작을 따져 볼 수 있어요. 휴대폰의 서명 기기(signer)부터 책상 위의 창까지, 저희는 제품 전체를 이 기준에 맞춰요.

시리즈 목차

  1. 컴퓨터는 이미 감염됐다고 가정하세요
  2. Mass Adoption Security: 서명 기기는 이미 가진 휴대폰이에요
  3. 에어갭을 건너는 세 가지 방법: QR 코드, Bluetooth LE, NFC
  4. 전파에 드러나지 않기: 아무도 스캔으로 찾을 수 없는 서명 기기
  5. 전송 수단은 절대 신뢰하지 않아요
  6. 휴대폰이 보여 주는 것: 서명 기기에서 하는 트랜잭션 분석
  7. 휴대폰은 자기만의 기록을 남겨요
  8. 데스크톱의 금고: Argon2id와 추측에 강한 프로필
  9. 브라우저 지갑 없이 dApp 쓰기
  10. 규칙이 있는 MCP 서버: 한도 안에서 움직이는 AI 에이전트
  11. 모든 걸 담은, 보호받는 지갑 하나
  12. 작고 네이티브하게: C++, JavaScript 런타임 없이, 워크스테이션부터 Raspberry Pi까지

사전 등록

이메일을 남기면 출시 소식을 보내 드려요. 그 밖의 메일은 보내지 않아요.