SeedQR는 SeedSigner 프로젝트가 공개 문서화한 데이터 형식이며 새로운 seed 종류, 암호화 또는 Bitcoin 프로토콜이 아니다. Standard SeedQR는 영부터 세는 BIP39 단어 위치를 숫자 QR로 이어 붙이고, CompactSeedQR는 원래 엔트로피를 이진 데이터로 기록한 뒤 수신기가 checksum을 다시 계산하게 한다.
Standard SeedQR는 니모닉의 각 단어를 가져와 BIP39 목록에서 영부터 센 위치를 찾고 정확히 네 자리로 기록한다. 따라서 값 12는 0012로 쓴다. 결과물은 단어 사진이나 텍스트 형태의 개인 키가 아니라 같은 비밀을 손실 없이 나타낸 또 다른 표현이다. [1]
BIP39 목록은 2048개 항목으로 이루어지며 인덱스는 0부터 2047까지다. 표준 12단어 구문은 48자리와 25×25 QR 격자를 만들고 24단어 구문은 96자리와 29×29 격자를 만든다. 네 자리 블록의 순서가 단어 순서이므로 블록을 바꾸면 다른 구문이나 유효하지 않은 구문이 복원된다. [1]
SeedSigner는 stateless signer로 설계되어 전원을 끄면 불러온 비밀 데이터가 사라지고 다음 사용 때 seed를 다시 입력해야 한다. SeedQR는 이 입력을 한 번의 스캔이나 수동 전사로 줄인다. PSBT, wallet descriptor 또는 주소 QR와 혼동하면 안 된다. 이들은 공개 정보나 거래 데이터를 담을 수 있지만 SeedQR는 복구 비밀을 담는다. [7]
전사하기 전에 SeedSigner 화면은 “SeedQR is your private key”라고 경고하며 촬영하거나 인터넷 연결 장치로 스캔하지 말라고 한다. Air gap은 네트워크 유출 경로를 제한하지만 QR를 암호화하지 않으며 카메라, 복사본, 물리적 절도범 또는 침해된 오프라인 장치가 seed를 읽는 것도 막지 못한다. [5]
공식 문서는 12단어와 24단어 BIP39 구문에 대한 Standard SeedQR와 CompactSeedQR 지원을 명시한다. 문제가 있는 CompactSeedQR 테스트 벡터 추가 공개 요청은 칠월 25 일 2022 년에 열렸고 이후 프로젝트 변경으로 닫혔다. 이는 공개 상호운용성 시험을 보여 주지만 공식 BIP 표준화는 아니다. [2] [6]
CompactSeedQR는 11비트 단어 인덱스를 연결하고 12단어에서는 checksum 4비트를 제거해 128비트, 즉 16바이트를 21×21 격자에 저장한다. 24단어에서는 8비트를 제거해 256비트, 즉 32바이트를 25×25 격자에 저장한다. 더 작지만 일반 리더가 이진 데이터나 널 바이트를 잘못 처리할 수 있으며 이 불편함은 암호학적 보호가 아니다. [1]
BIP39는 엔트로피와 checksum을 11비트 목록 인덱스로 나누어 단어를 만든다. 그러므로 CompactSeedQR는 checksum 비트를 생략하고 스캔 뒤 엔트로피에서 다시 계산할 수 있다. 그러나 payload에는 사용한 단어 목록 언어를 명확히 나타내는 식별자가 없다. 복원에는 같은 목록을 사용해야 하며 주요 명세는 영어를 권장한다. [4]
구현은 공개 테스트 벡터와 실제 encoder 코드에 맞춰 검증해야 하며 CompactSeedQR의 널 바이트도 포함해야 한다. 실제 복구 연습은 가치가 없는 오프라인 장치에서 수행한다. 불러온 뒤 fingerprint, descriptor 또는 첫 수신 주소를 예상 지갑과 비교한다. 실제 seed를 웹 생성기로 시험해서는 안 된다. [3]
더 정확히 이해하려면 이 항목과 함께 다음도 읽어 보세요 Seed Phrase, BIP 39, BIP39 checksum, Private Key, Hardware Wallet, Air-gapped Wallet. 다음 항목에서도 이 글을 참조합니다 BBQr.
01SeedQR는 비트코인 주소가 든 일반 QR 코드와 같은가요?+
아니다. 주소 QR는 보통 결제를 받을 목적지를 공개하지만 SeedQR는 BIP39 지갑 복원에 필요한 데이터를 인코딩한다. SeedQR를 올바르게 읽고 존재하는 BIP39 passphrase를 아는 사람은 개인 키를 파생할 수 있다. 따라서 공개 주소가 아니라 seed phrase처럼 다뤄야 한다.
02일반 전화기가 읽지 못하므로 CompactSeedQR가 seed를 보호하나요?+
아니다. CompactSeedQR는 같은 비밀을 이진 엔트로피로 더 효율적으로 저장할 뿐이다. 일부 일반 리더는 잘못 표시하거나 전혀 표시하지 않지만 전문 소프트웨어는 디코딩할 수 있다. 이는 호환성 장애이지 암호화가 아니다. 물리적 보호, 통제된 오프라인 스캔, 사용 시 별도로 보관한 BIP39 passphrase가 보안을 맡아야 한다.