대상 독자층:내장 펌웨어 책임자, 컴플라이언스 담당자, OEM 제품 관리자가 구매자에게 $4.20 가격의 리딩펜이 최초 페어링 시 왜 ECDH P-256 키 교환을 수행하는지, 이것이 COPPA, GDPR-K, PIPL에 대해 어떤 의미를 가지는지, 그리고 특정 시장에 맞춰 저스트웍스, 숫자 비교, 패스키 입력, 대역 외 페어링 중에서 어떻게 선택해야 하는지를 설명해야 하는 경우에 적합합니다.
독서 펜의 블루투스 페어링 모델은 저가 소비재 완구와 결제 단말기급 보안 프리미티브가 동일한 실리콘을 공유하는 몇 안 되는 영역 중 하나입니다. Q6/Q8 펌웨어 3.3.1 스택부터 F8 펌웨어 3.1.2 스택까지, 2023년 이후 출하된 모든 ODM 제품(47개국, 47,000대 이상)이 최초 본딩 시 ECDH P-256 키 교환을 수행합니다. 대안 — Man-in-the-Middle 보호가 없는 Legacy Just Works — 이 바로 블루투스 SIG가 SSP를 통해 제거하도록 설계한 실패 모드이며, COPPA, GDPR-K, PIPL 문구를 면밀히 검토하는 구매자의 CISO에게 제시할 수 있는 유일하게 신뢰할 수 있는 답변이기 때문에 이러한 방식을 채택해 왔습니다.
본 문서는 독서 펜에서 SSP가 실제로 수행하는 작업, LE Legacy가 대신 수행하는 작업, LE Secure Connections가 SSP에 추가로 제공하는 기능, 그리고 교실의 6세 아동이나 집에서 사용하는 80세 노인이 마찰 없이 페어링할 수 있도록 사용자 경험을 조정하는 방법을 정확히 설명합니다.
1. 독서 펜의 페어링 세 가지 세대
| 세대 | 규격 | 키 교환 | 적용 모델 |
|---|---|---|---|
| 레거시 | BT 2.0 (SSP 이전) | E1/E21 (SAFER+) | 출하되지 않음 |
| SSP | BT 2.1 / 4.0 | E1/E21 (4자리 PIN 또는 Just Works) | K7/KF1 펌웨어 1.9.5 |
| LE 시큐어 커넥션 | BT 4.2 / 5.x | ECDH P-256 | F8, L5, Q6/Q8, T2, Y6 |
[수정: 한자 혼용 오류 — 한국어 고유 문자만을 사용해야 하며, 모든 외국 문자 요소를 제거할 것] 현재 출시된 전 11개 SKU는 기본 페어링 방식으로 LE Secure Connections를 적용해 출하됩니다. K7/KF1 펌웨어 1.9.5는 여전히 BT 4.0 동글을 사용하는 레거시 교실용 허브와의 호환을 위해 SSP 폴백을 유지하고 있으나, MOQ 1,000개 기준으로 허브를 5.0 이상 동글로 교체해 폴백 경로를 단계적으로 폐지할 것을 권장드립니다.
2. SSP가 실제로 수행하는 작업
SSP는 기존 PIN 기반 키 교환을 네 가지 어소시에이션 모델 중 하나로 대체합니다.
| 모델 | 사용자 조작 | 보안 수준 | 적용 대상 |
|---|---|---|---|
| Just Works | "페어링" 탭 | MITM 보호 없음 | 재페어링 기본값 |
| 숫자 비교 | 6자리 숫자 비교 후 예 탭 | 사용자 확인을 통한 MITM 방지 | 최초 페어링 기본값 |
| 패스키 입력 | 6자리 패스키 입력 | 공유 비밀값을 통한 MITM 방지 | 교실 관리자 모드 |
| 아웃오브밴드 | NFC 탭 | OOB 채널을 통한 MITM 방지 | 향후 NFC 모델 |
독서 펜은 최초 본딩 시 Numeric Comparison을 기본값으로 사용합니다. 펜은 옵션인 OLED에 6자리 숫자를 표시하며, 디스플레이가 없는 모델(예: P2)의 경우 음성으로 다시 읽어줍니다. 호스트 앱에도 동일한 숫자가 표시됩니다. 사용자가 일치 여부를 확인합니다. 6자리 코드는 10^6 = 1,000,000개의 가능한 값을 가지며, MITM 공격자가 올바른 값을 맞출 확률은 10^-6입니다.
이 과정의 배경에 있는 ECDH P-256 키 교환은 TLS 1.3 ECDHE_ECDSA 스위트에서 사용되는 것과 동일한 프리미티브입니다. 펜의 무선 칩(Nordic nRF52840 또는 Realtek RTL8763E)은 하드웨어 가속기를 통해 P-256 스칼라 곱셈을 약 7.2 ms 내에 수행합니다.
3. 페어링 상태 머신
독서 펜 페어링 상태 머신은 블루투스 코어 규격 v5.4, Volume 3, Part H, 섹션 2.3.5를 따릅니다.
| 상태 | 펜 역할 | 전이 트리거 |
|---|---|---|
| 대기 | 애드버타이저 | 피어 연결 |
| 광고 중 | 애드버타이저 | 피어가 CONNECT 전송 |
| 초기화 중 | 이니시에이터 (드물게 사용) | 펜이 호스트 측일 때 사용 |
| 연결 설정 완료 | 양쪽 모두 | 페어링 요청 수신됨 |
| 페어링 기능 교환 | 응답자 | 페어링 응답 전송됨 |
| 키 생성 | 양쪽 모두 | 확인 값 검증됨 |
| 키 배포 | 양쪽 모두 | LTK + IRK + CSRK 전달 완료 |
| 페어링 완료 | 양쪽 모두 | 새 페어링 정보를 NV에 저장 |
펜은 "연결 설정 완료" 상태에서 240ms(BLE 5.0 사양 최소 연결 간격 + 슬레이브 레이턴시) 동안 머문 뒤, 기능 교환 단계로 전환됩니다. 전체 숫자 비교(Numeric Comparison) 페어링 흐름은 Q6/Q8 펌웨어 3.3.1에서 1.4초, F8 펌웨어 3.1.2에서 1.8초에 완료됩니다. Just Works 방식은 0.9초에 완료됩니다.
4. 레거시 Just Works와 LE 시큐어 커넥션 Just Works 비교
흔히 발생하는 실수는 "Just Works"가 항상 약하다고 가정하는 것입니다. 사실 그렇지 않습니다. 서로 매우 다른 두 가지 "Just Works" 모드가 있습니다.
| 모드 | 사양 | ECDH 사용 여부 | MITM 방지 |
|---|---|---|---|
| 레거시 Just Works | BT 4.0/4.1 SSP | 아니요 | 없음 — 도청자가 가로챌 수 있음 |
| LE 시큐어 커넥션 Just Works | BT 4.2 이상 | 예(P-256) | 도청자는 복호화할 수 없지만, 능동적 MITM은 여전히 주입 가능 |
"Just Works"라는 말을 듣고 당황하는 바이어는 레거시 모드를 떠올리는 것입니다. 현재 시판 중인 리딩 펜에서 Just Works는 여전히 ECDH를 사용하므로, 무선 링크는 수동적 도청자에 대해 암호화됩니다. 능동적 MITM(공격자가 무선 경로에 있어 양쪽을 모두 가로챌 수 있는 경우)은 Just Works에서 보호되지 않습니다. 그래서 T2/Y6 모델의 첫 페어링 기본값으로 숫자 비교(Numeric Comparison)를 적용해 출하합니다.
5. 펜 측 구현 방식
Q6/Q8 펌웨어 3.3.1에서 SSP 스택은 SoftDevice 무선 라이브러리(Nordic nRF52840 SDK 17.1.0) 위에 구축됩니다. 펜은 다음을 저장합니다.
| 요소 | 크기 | 저장 위치 | 보관 기간 |
|---|---|---|---|
| 장기 키(LTK) | 16 바이트 | 플래시 페이지 7, 피어별 슬롯 | 언페어링 시까지 |
| ID 확인 키(IRK) | 16 바이트 | 동일 슬롯 | 언페어링 시까지 |
| 연결 서명 확인 키(CSRK) | 16 바이트 | 동일 슬롯 | 언페어링 시까지 |
| 피어 IRK | 16 바이트 | 동일 슬롯 | 언페어링 시까지 |
| 피어 BD_ADDR | 6 바이트 | 동일 슬롯 | 언페어링 시까지 |
펜은 최대 8개의 페어링된 피어를 지원합니다(8슬롯 제한은 32KB 플래시 페어링 테이블 용량에 따른 것입니다. NV 소모 비용을 감수하면 32슬롯까지 확장할 수 있습니다). 8번째 슬롯이 가득 찬 상태에서 9번째 피어가 페어링을 시도하면 펜은 가장 오래된 슬롯을 덮어씁니다. 이 이벤트는 QA 텔레메트리 스트림(TC-077)에 기록되므로 학교 IT 관리자가 "펜이 너무 자주 사용자 간을 이동"하는 상황을 감지할 수 있습니다.
6. 프라이버시 기능: LE 프라이버시 1.2
2023년 이후 출시된 모든 리딩 펜에는 LE Privacy 1.2가 기본 활성화되어 출하됩니다. 즉, 펜은 기본적으로 15분마다 변경되는 해결 가능한 프라이빗 주소(RPA)로 광고합니다. 페어링 시 공유된 IRK만이 RPA를 펜의 실제 신원으로 다시 확인할 수 있는 유일한 수단입니다.
| 개인정보 설정 | 주소 회전 간격 | 배터리 소모 |
|---|---|---|
| 비활성화(공개 주소) | 사용 안 함 | 0 |
| LE 프라이버시 1.2 | 15분 | 하루 +0.4% |
| LE 프라이버시 1.2 (공격적 모드) | 1분 | 하루 +5.6% |
기본값을 15분으로 출하하는 이유는 공격적 회전 시 발생하는 5.6%의 배터리 소모가 500 mAh P2에서는 상당하지만 2500 mAh T2에서는 미미하기 때문입니다. 하루 종일 운영되는 학교 배포용 제품의 경우 T2 기본값은 15분 회전이며, P2 기본값은 회전 비활성화입니다(1인 가정용 펜으로 판매되기 때문).
7. 디스플레이가 없는 펜(P2)의 숫자 비교
P2에는 OLED도 LED 매트릭스도 없고 단일 삼색 LED만 있습니다. 어떻게 숫자 비교를 구현하나요?
답은 오디오를 사용한다는 것입니다. P2에는 1W 스피커가 탑재되어 있습니다. 숫자 비교 입력 시 P2는 6자리 코드를 영문으로 느리고 또박또박한 숫자 시퀀스(예: "three… seven… one… zero… four… two")로 0.6초당 한 자리씩 재생합니다. 총 오디오 시간은 3.6초입니다. 호스트 앱이 화면에 동일한 코드를 표시하며 사용자가 일치를 확인합니다.
접근성을 위해 오디오 코드는 사용자가 현재 선택한 언어(예: 표준 중국어, 스페인어, 아랍어)로 재생됩니다. 오디오 코드는 12개 언어로 출하됩니다. P2 펌웨어 2.0.3에는 4KB의 플래시를 사용하는 전용 오디오 코드 생성기가 있습니다.
8. OOB가 아직 리딩 펜에 적용되지 않은 이유
2024년 모델에 대해 NFC 기반 아웃오브밴드(OOB) 페어링을 평가했지만, BOM 비용이 펜당 $1.40(NFC 컨트롤러 + 안테나 + 보안 요소) 증가하여 ODM 가격을 $4.20에서 $5.60으로 끌어올렸고, 이는 K7 교육 채널의 일반적인 마진 밴드를 초과합니다. NFC 컨트롤러 가격이 $0.40 아래로 내려가기 전까지는 OOB를 보류하고 있습니다. 그때까지는 숫자 비교 + Just Works가 권장 경로입니다.
9. 교실 배포를 위한 패스키 모드
12,000대 규모의 학교 프로그램에서 학교 IT 관리자는 모든 펜을 일일이 조작하지 않고도 일회성 프로비저닝을 원합니다. 패스키 입력 모드는 이를 해결합니다.
- 관리자가 학교 관리자 앱을 실행합니다.
- 앱이 6자리 패스키(예: 482917)를 생성합니다.
- 관리자가 터치 UI를 통해 모든 펜에 패스키를 입력합니다.
- 펜이 해당 패스키를 MITM 비밀로 사용하여 학교 앱과 페어링됩니다.
이는 학생이 휴대폰을 가져와 학교 앱인 것처럼 가장하는 것을 방지합니다. 패스키는 세션별로 고유합니다. 2024년 걸프 지역 학구에 출하한 12,000대 펜 배포에서는 단일 회전 패스키와 4대의 관리자 태블릿을 사용해 패스키 입력을 적용했고, 8일 만에 프로비저닝을 완료했습니다.
10. 규정 준수 관련 사항
캘리포니아의 바이어트는 SSP가 COPPA의 "reasonable security" 조항을 충족하는지 묻습니다. 답은 예이며, 그 이유는 SSP가 FIPS 186-4 승인 목록에 포함된 ECDH P-256을 사용하기 때문입니다. EU의 바이어트는 SSP가 GDPR-K 가명화 요건을 충족하는지 묻습니다. 답은 예이며, 그 이유는 회전 RPA가 가명 식별자이기 때문입니다. 중국 바이어트는 SSP가 PIPL 51조(PRC 가명화)를 충족하는지 묻습니다. 답은 동일하며, 추가로 당사의 IRK 처리가 GB/T 35273-2020 개인정보 비식별화 표준을 준수한다는 점이 부가됩니다.
| 규정 | 요건 | SSP 적용 범위 |
|---|---|---|
| COPPA (미국) | 아동 데이터에 대한 합리적 보안 | 예 (ECDH P-256) |
| GDPR-K (EU) | 가명 처리 | 예 (RPA 회전) |
| PIPL (중국) | 가명 처리 | 예 (RPA + GB/T 35273) |
| LGPD (브라질) | 보안 및 가명 처리 | 예 |
| PDPA (싱가포르/말레이시아) | 보안 및 가명 처리 | 예 |
| APPI (일본) | 익명 처리 | 부분적 — RPA 키 처리 방식에 따라 다름 |
| DPDPA (인도) | 보안 보호 조치 | 예 (FIPS 승인 기본 알고리즘) |
학교 환경 도입을 위해 38페이지 분량의 추가 컴플라이언스 문서인 "블루투스 페어링 보안 백서"를 출하합니다. 최종 개정일은 2026-04이며, NDA 체결 조건의 ODM 고객에게 제공됩니다.
11. 위협 모델 및 SSP 적용 범위
| 위협 | SSP 적용 여부 | 완화 조치 |
|---|---|---|
| 패시브 도청 | 예 | LTK 기반 AES-CCM 링크 암호화 |
| 액티브 MITM (Just Works) | 아니요 | 숫자 비교 또는 Passkey 사용 |
| 손상된 피어 기기 | 아니요 | 애플리케이션 계층 인증 필요 |
| 도난당한 펜 | 부분적 | 페어링된 호스트를 삭제할 수 있으며, 버튼을 10초간 길게 눌러 펜을 공장 초기화할 수 있습니다 |
| 페어링 시 리플레이 공격 | 예 | ECDH는 본드마다 새로운 세션 키를 생성합니다 |
| 사용자 피싱 | 아니요 | 코드를 비교하도록 사용자를 교육합니다 |
| RF 핑거프린팅 | 아니요 | 소비자용 토이로 허용 가능한 위험 수준 |
이러한 사항은 사용자 설명서와 유통사용 브랜드 측 교육 자료에 명시적으로 문서화되어 있습니다.
12. 성능 및 배터리
ECDH P-256 키 교환은 nRF52840에서 7.2 ms, RTL8763E에서 8.4 ms가 소요됩니다. 숫자 비교 표시 시간은 LED 동작 30초이며, 약 3 mA를 소비합니다. 플래시 본드 쓰기는 12 ms가 걸리고 NV 사이클 1회를 소모합니다. 펜의 수명 기간 동안(1년 300건 × 5년 = 1,500건 본드) 이는 플래시 내구성 예산(10,000 사이클)의 0.0004%에 불과합니다.
13. 다른 기술 문서와의 연관성
TC-059는 연결성 클러스터에 속합니다. TC-057/TC-058은 HID 계층을 정의합니다. TC-060은 페어링 이후 제공되는 GATT 서비스를 문서화합니다. TC-061은 본드가 활성화된 후의 알림 흐름을 설명합니다. TC-062는 L5 및 Y6 모델에서 BLE와 공존하는 Wi-Fi AP 프로비저닝 경로를 다룹니다. TC-063은 Wi-Fi 연결이 완료된 후 펜이 LAN에서 자신을 알리는 방법을 설명합니다. TC-064는 LAN 연결 위에서 동작하는 프로토콜인 CoAP을 다룹니다.
15. 관련 문서
- 리딩펜 USB HID와 GATT 기반 HID
- 리딩펜 HID 리포트 디스크립터 및 Usage Page
- 리딩펜 BLE 서비스 및 캐릭터리스틱 UUID 설계
- 리딩펜 GATT 서버 및 알림 메커니즘
- 리딩펜 BLE 메시와 페어링 메커니즘
- 리딩펜 블루투스 5.0 vs 5.2 vs 5.3
- 리딩펜 암호화 및 트러스트존
- 리딩펜 인증서 피닝 및 로테이션