Tails 가이드

Tails 가이드

공카드 셋업, 이 문서 하나로 완주

공카드를 사토칩 콜드월렛으로 만드는 전 과정을 Tails OS로 끝낸다.

USB 하나로 "부팅할 때마다 깨끗한 일회용 PC"를 만들고, 네트워크를 끊은 상태에서 시드를 생성한다 — 종료하면 흔적이 사라진다.

윈도우 PC는 필요 없다. 애플릿 설치부터 시드 생성·지갑 연결까지 전부 Tails 하나로 완주한다 — gp.jar(GlobalPlatformPro의 자바 버전)를 Tails 안에서 직접 실행한다.

버전 v1.2 — 2026-07-07

READY

준비물

품목비고
공카드빈 자바카드
USB 카드 리더기접촉식 또는 비접촉식
USB 메모리8GB 이상, Tails 부팅용
gp.jar애플릿 설치 도구 (GlobalPlatformPro, 자바 버전)
Java 런타임Tails 안에서 apt로 설치 (기본 미포함)
satochip.cap설치할 애플릿 파일
Sparrow Wallet카드 설정 + 지갑 하나 (Linux tar.gz)
주사위 1개니모닉 생성용 (선택)

다운로드 위치와 해시 검증은 각 단계에서 다룬다.

1
STEP 1

Tails USB 만들기

  1. tails.boum.org에서 Tails 이미지 다운로드 + 페이지의 검증 절차로 이미지 확인
  2. balenaEtcher로 USB 메모리에 굽기
2
STEP 2

Tails 부팅 + Persistent Storage

Tails는 재부팅하면 모든 파일이 사라진다.

Persistent Storage를 켜면 지정 폴더만 USB에 암호화되어 유지된다 — 도구를 매번 다시 받지 않기 위해 필요하다.

  1. PC 부팅 시 부팅 메뉴에서 Tails USB 선택
  2. Applications → Tails → Persistent Storage에서 활성화 (암호 설정)
📷사진 준비 중Tails 부팅 후 데스크톱
3
STEP 3

도구 준비 + 애플릿 설치 (Tails, 네트워크 연결, 시드 없음 구간) ⚠️

애플릿 설치는 카드에 아직 시드가 없어 이 단계에서 네트워크를 켜 둬도 안전하다.

이 작업은 최초 1회만 필요하다.

  1. 네트워크 연결 (Tails는 Tor 경유라 느릴 수 있다 — 실패하면 재시도)
  2. Welcome Screen에서 관리자 암호를 설정하고 부팅했는지 확인 (sudo 사용에 필요)
  3. Java 런타임 설치:
sudo apt update
sudo apt install -y default-jre-headless
  1. gp.jargithub.com/martinpaljak/GlobalPlatformPro/releases에서 Latestgp.jar 다운로드 → ~/Persistent에 저장
  2. satochip.capgithub.com/Toporin/SatochipApplet/releases에서 Latest 다운로드 → ~/Persistent에 저장
  3. Sparrow Walletsparrowwallet.com/download에서 Linux 버전 tar.gz 다운로드 → ~/Persistent에 저장
  4. 해시 검증:
sha256sum ~/Persistent/gp.jar
sha256sum ~/Persistent/satochip*.cap
sha256sum ~/Persistent/sparrow-*.tar.gz

출력값이 각 다운로드 페이지의 해시와 한 글자도 다르지 않아야 한다.

  1. Sparrow 압축 해제:
tar -xf ~/Persistent/sparrow-*.tar.gz -C ~/Persistent/

리더기에 공카드를 꽂고:

java -jar ~/Persistent/gp.jar --list

빈 카드라면 애플릿 목록 없이 정상 종료된다.

java -jar ~/Persistent/gp.jar --install ~/Persistent/satochip*.cap
java -jar ~/Persistent/gp.jar --list

SatoChip 항목이 (SELECTABLE) 상태로 표시되면 성공이다.

4
STEP 4

카드 연결 + PIN 설정 + 시드 생성 (네트워크 차단)

  1. 카드를 리더기에 삽입한 채로 Sparrow 실행:
~/Persistent/sparrow-*/bin/Sparrow
  1. File → New Wallet → 지갑 이름 입력
  2. Connected Hardware Wallet → Scan → Satochip 인식
  1. 초기화 안 된 카드면 PIN 설정과 시드 초기화 화면이 이어진다

PIN 설정 전에 알아야 할 것 :

  • PIN은 4~16자, 영문·숫자·특수문자 가능
  • 초기화 때 정한 횟수만큼 틀리면 영구 잠김이고 PUK(잠금 해제 코드)는 없다 — 복구 경로는 시드 백업으로 새 카드에 재생성하는 것뿐이다
  • PIN을 정하기 전에 시드 백업 계획부터 세운다

백업 (필수):

  • 니모닉이 화면에 표시되는 순간 — 표시된 단어를 전부 종이에 적는다 (사진·메모앱·클라우드 금지)
  • 카드와 다른 장소에 보관한다

백업 없이 카드를 잃으면 자산도 잃는다. 카드 분실·PIN 잠김의 유일한 복구 수단이 이 백업이다.

Sparrow 카드 감지 화면
Sparrow 카드 감지 화면
지갑 이름 입력
지갑 이름 입력
PIN 입력
PIN 입력
Card not initialized — Initialize
Card not initialized — Initialize
Card Initialized 성공
Card Initialized 성공
5
STEP 5

지갑 확인 + 소액 테스트

Sparrow로 지갑을 만들었으면 그 지갑이 곧 잔액 확인용(워치온리) + 서명용 지갑이다.

시드(개인키)는 끝까지 카드 안에 있고, Sparrow는 공개키만 가진다 — 송금 서명 때만 카드와 PIN이 필요하다.

  1. 지갑 화면의 MFP(Master Fingerprint, 8자리 16진수)를 기록해 둔다 — 카드와 시드가 맞는지 대조하는 기준값이다
  2. Receive 탭에서 수신 주소 확인
  3. 소액을 보내 수신 확인까지 완료한다

Tails는 종료하면 작업 흔적이 사라진다.

지갑 파일은 Persistent Storage에 저장돼 다음 부팅에서도 유지된다.

지갑 Settings — MFP 확인
지갑 Settings — MFP 확인
FINAL

자산을 넣기 전 체크리스트

소액 테스트 없이 큰 금액을 넣지 않는다. 복구와 수신이 확인된 뒤에야 "지갑"이다.

EXTRA

주사위 니모닉 주입 (선택)

카드 내부 RNG 대신 주사위로 직접 만든 니모닉을 카드에 넣을 수 있다.

4단계에서 Sparrow가 시드 옵션을 물을 때 "Enter existing seed words" 를 선택하면 된다 — 생성이 아니라 입력 모드로 전환된다.

주의: 주사위 니모닉은 마지막 단어(체크섬)를 계산해야 한다. Ian Coleman 도구(iancoleman.io/bip39)를 Tails 오프라인 상태에서 쓰거나, 수동 계산한다.

EXTRA

GP 키 로테이션 (선택)

3단계(도구 준비 + 애플릿 설치) 직후 같은 Tails 세션에서 이어서 한다 — gp.jar가 이미 있고 네트워크도 켜져 있는 상태다.

기본 GP 키(테스트 키)를 새 키로 교체해 애플릿 설치 채널을 잠근다. 명령 형식은 윈도우 가이드(B-7) 번외와 동일하되 gp.exe 대신 java -jar ~/Persistent/gp.jar를 쓴다.

NOTE

검증 현황

항목상태
Sparrow 카드 초기화(PIN·시드) 화면 흐름 (Tails)실기기 확인 (2026-06-28)
pcsc_scan 없이 Sparrow scdaemon 단독 카드 인식 확인실기기 확인 (2026-06-28)
단계별 사진촬영 완료 (2026-06-28) — 3단계 재편으로 사진 위치 재확인 필요
Tails 안에서 gp.jar + default-jre-headless로 애플릿 설치⚠️ 미검증 — 실기기 확인 전