보안 요소 칩: 원장을 안전하게 유지하는 방법
주요 시사점: |
— 하드웨어 지갑이 작동하려면 개인 키 저장 및 트랜잭션 서명을 위한 칩이 필요합니다. — 서로 다른 하드웨어 지갑은 서로 다른 칩을 사용하며 동일한 방식으로 구현되지 않을 수 있습니다. — Ledger 하드웨어 지갑은 보안 요소라는 특수 칩을 사용합니다. 이 칩은 변조 방지 기능이 있으며 디지털 자산에 대해 최고 수준의 보호 기능을 제공합니다. |
하드웨어 지갑을 선택할 때 내부 구성 요소를 간과하는 경우가 많습니다. 그러나 하드웨어 지갑에서 사용하는 칩과 구현 방식은 장치의 보안에 영향을 미칩니다. 하드웨어 지갑은 암호화폐를 저장하는 것이 아니라, 디지털 자산에 대한 액세스 권한을 부여하는 키인 개인 키를 저장합니다. 누군가가 개인 키에 접근할 수 있게 되면 게임은 이미 종료된 것이나 마찬가지입니다.
따라서 하드웨어 지갑의 주요 목적은 개인 키를 추출하려는 공격자로부터 이를 안전하게 보호하는 것입니다. 그러나 개인 키를 저장하고 트랜잭션에 서명하려면 장치에 칩이 필요합니다. 이 칩은 기능성은 기본이고, 온라인 공격과 물리적 공격으로부터 보호 기능까지 제공해야 합니다.
Ledger는 현재 시중에서 사용 중인 칩 중 가장 발전된 칩인 보안 요소만 사용합니다. 이 칩은 개인 키를 생성하고 저장하며 Ledger 장치의 보안 화면을 구동하는 역할을 합니다. 보안 요소는 또한 Ledger의 맞춤형 운영 체제 BOLOS를 실행하여 서로 다른 앱을 분리시킵니다.
즉, 보안 요소 덕분에 Ledger 하드웨어 지갑의 보안이 유지될 수 있습니다. 그렇다면 이 칩이 중요한 이유는 무엇이고, 다른 하드웨어 지갑 칩과 비교해 성능이 월등한 이유는 무엇일까요?
이를 이해하기 위해 하드웨어 지갑에 칩이 필요한 이유를 먼저 살펴보겠습니다.
하드웨어 지갑 칩의 보안성에 대한 이해
모든 하드웨어 지갑은 칩을 사용하여 개인 키를 저장하고, 앱을 작동하고, 화면을 구동합니다.
어떤 하드웨어 지갑은 단일 칩을 사용하는 반면 다른 하드웨어 지갑은 여러 칩을 조합해 사용할 수 있습니다.
그러나 모든 칩 유형이 동일한 수준으로 공격을 막아낼 수 있는 것은 아니라는 점을 이해해야 합니다. 진공청소기나 전자레인지에 사용되는 칩으로 디지털 자산을 보호하려는 사용자는 없을 것입니다. 스마트폰과 노트북에 사용되는 칩도 개인 키를 보호할 목적으로 설계되지는 않았습니다. 즉, 대부분의 칩은 보안 보다는 기능을 위주로 설계되었습니다.
이를 염두에 두고 하드웨어 지갑이 일반적으로 사용하는 칩 유형과 작동 방식을 살펴보겠습니다.
마이크로컨트롤러 장치
일반 마이크로컨트롤러 장치(Microcontroller unit), 줄여서 MCU는 전자레인지, TV 리모컨과 같은 장치에 사용됩니다. 이러한 칩은 작업에 많은 유연성을 제공하지만 물리적 공격을 물리칠 수 있는 저항력은 없으며, 특히 전압 및 클럭 결함과 같은 값싼 공격에 취약한 경향이 있습니다.
MCU 칩에 암호 기능을 도입하면 이러한 위험을 완화하는 데 도움이 되지만 그렇게 하더라도 단일 실패 지점이 발생합니다. 암호가 너무 단순하면 해커가 알아낼 수 있고, 암호가 너무 복잡하면 암호를 잊어버리거나 잘못 기록할 위험이 있습니다.
세이프 메모리 칩(Safe Memory Chip)
하드웨어 지갑에 사용되는 또 다른 칩은 세이프 메모리 칩(Safe Memory Chip)입니다. 이 칩은 물리적 공격에 대한 여러 가지 대응책을 제공하지만 보안 연구소의 평가에서 인증을 획득하지 못했습니다. 이 인증이 없으면 칩의 제조사가 주장하는 보안성을 확신할 수 없습니다. 따라서 이 칩은 은행 카드나 여권에 적합하지 않습니다.
하드웨어 지갑의 경우 세이프 메모리 칩을 사용하는 것은 간단하지 않은 문제입니다. 조금은 복잡한 전문 용어로 설명해 보자면, 세이프 메모리 칩은 단일 타원 곡선에서 스칼라 곱셈을 수행합니다. 이는 비트코인 트랜잭션 서명에는 작동하지 않으므로 세이프 메모리 칩을 사용하는 하드웨어 지갑의 경우, 서명 프로세스를 처리하려면 항상 또 다른 칩이 필요하며,
이로 인해 취약점이 발생합니다. 세이프 메모리 칩의 개인 키를 MCU로 전송하면 부채널 공격자가 공격할 수 있는 완벽한 기회를 제공하게 됩니다.
보안 요소
보안 요소는 여권과 신용카드에 일반적으로 사용되는 고도로 특수화된 칩입니다. 가장 민감한 개인 정보를 보호하고 숨겨야 하는 환경의 다양한 장치에서 이 칩을 사용할 수 있습니다.
보안 요소 칩은 하드웨어 지갑을 위한 가장 안전한 옵션입니다. 보안 기능뿐만 아니라 다양성도 뛰어납니다. 보안 요소는 개인 키를 저장하고 서명 프로세스를 처리할 수 있을 뿐 아니라, 물리적 공격으로부터 보호하고 이를 증명하는 인증을 받을 수 있습니다.
보안 요소 칩이 그토록 안전할 수 있는 이유는 무엇일까요?
보안 요소 칩은 공격을 견딜 수 있는 성능뿐 아니라 인증까지 획득했기 때문에 그 안전성을 담보할 수 있습니다.
보안 요소는 공격으로부터 지갑을 보호합니다
개발자가 아닌 일반 사용자라면, 보안 요소가 어떤 종류의 공격을 막아낼 수 있는지 궁금할 것입니다. 일부 보안 요소는 다음의 설명보다 더 많은 공격으로부터 사용자를 보호할 수 있지만, 일단 가장 일반적인 공격에 대해 살펴보겠습니다.
부채널 공격
부채널 공격은 해커가 장치의 운영 체제와 내장된 애플리케이션에서 나오는 물리적 신호를 분석하여 장치의 작동 방식과 사용하는 기밀 데이터에 대해 알아내는 방식의 공격입니다.
보안 요소 칩에는 전자기 방사 및 전력 사용량을 숨기고 해커로부터 보호하는 복잡한 대책이 있습니다.
결함 공격
결함 공격에는 운영 체제 및 내장된 애플리케이션의 물리적 기능 실행을 교란시키는 공격입니다. 예를 들어, 공격자는 레이저 빔을 사용하여 장치가 잘못된 PIN 코드를 수락하도록 하는 등의 방식으로 보안 메커니즘을 우회할 수 있습니다.
보안 요소에는 레이저 오류 주입을 위한 광 감지기, 온도 센서 및 전압 결함 감지기를 포함한 효율적인 오류 감지 시스템이 있습니다.
소프트웨어 공격
소프트웨어 공격은 장치의 운영 체제나 내장된 앱을 조작하여 예상치 못한 행위를 유발하는 악의적인 방식의 공격입니다.
보안 요소는 재프로그래밍에 대한 저항력이 있으므로 이러한 공격을 차단합니다. 칩이 프로그래밍되면 다른 소프트웨어를 실행할 수 없습니다.
또한 보안 요소 칩은 보안 연구소의 인증을 받았습니다.
둘째, 세이프 메모리 칩과 달리 보안 요소 칩은 제3자 보안 연구소의 테스트를 거쳐 인증을 획득했습니다. 인증은 보안 모델의 중요한 부분입니다. 일반적으로 보안 요소는 CC EAL 표준(EAL)에 따라 등급이 지정됩니다.
CC는 Common Criteria(일반 표준)의 약자로 하드웨어 및 소프트웨어 제품을 평가하기 위한 국제 표준을 나타냅니다. 반면 EAL은 평가 보증 수준을 나타냅니다. 이 등급은 공격에 대한 물리적 저항부터 전체 공급망의 취약성까지, 보안 요소의 보안 수준을 측정합니다.
이 등급 방식은 간단합니다. EAL 수준이 높을수록 보안 요소 칩의 보안이 더욱 강력한 것입니다. 보안성이 낮은 것부터 가장 높은 수준의 보안성에 대한 보증까지 7가지 CC EAL 레벨이 있습니다.
Ledger는 장치의 보안 요소에 어떻게 접근할까요?
Ledger 장치는 보안 요소를 사용하여 암호화폐에 대한 개인 키를 생성하고 저장합니다. 다른 하드웨어 지갑도 보안 요소를 사용하지만 Ledger는 독특한 구현 방식을 가지고 있습니다.
Ledger의 보안 요소는 맞춤형 운영 체제인 BOLOS를 실행합니다.
Ledger 장치의 보안 요소는 BOLOS라는 사용자 지정 운영 체제를 실행합니다. Ledger Live의 정품 확인 메커니즘과 결합하여 합법적인 운영 체제와 내장 애플리케이션을 실행하고 있는지 확인할 수 있습니다.
보안 요소는 보안 화면을 구동합니다.
Ledger 장치는 보안 요소를 사용하여 화면을 구동한다는 측면에서도 특별합니다. Ledger를 사용하면 보이는 내용을 그대로 믿고 서명할 수 있습니다. 장치의 보안 화면에는 항상 트랜잭션의 정확한 주소가 표시됩니다. 즉, 노트북이나 스마트폰 등 인터넷에 연결된 장치가 악성코드에 감염되더라도 Ledger 장치의 트랜잭션 정보를 신뢰할 수 있습니다.
Ledger의 보안 요소 칩은 EAL 5+ 및 EAL6+ 인증을 받았습니다.
Ledger 장치에는 장치에 따라 EAL 5+ 또는 EAL 6+ 인증이 있습니다. Ledger Nano X는 EAL5+ 인증을 받은 보안 요소를 사용하는 반면 Ledger Nano S Plus 및 Ledger Stax는 EAL6+ 인증을 받은 보안 요소를 사용합니다.
EAL5 및 EAL6 인증은 모두 칩이 제3자에 의한 광범위한 테스트를 거쳐 높은 보안 표준을 충족하고 있음을 보장합니다. 언급한 대로 등급은 EAL7+까지 이므로 Ledger 하드웨어 지갑의 보안 요소 칩은 물리적 해킹 시도와 원격 해킹 시도로부터 사용자를 보호하는 보안성이 매우 높은 칩임을 알 수 있습니다.
보안 요소: Ledger 장치의 필수 구성 요소
하드웨어 지갑에서 사용하는 칩은 매우 중요합니다. 암호화폐 트랜잭션을 수행할 때 완전한 보안을 위해서는 세 가지가 필요합니다.
첫째, 물리적 해킹에 강한 칩인 시큐어 엔클레이브(secure enclave)가 필요합니다. 이는 Ledger 장치용 보안 요소에 의해 처리됩니다. 다음으로 해당 엔클레이브에서 암호화를 구현해야 합니다. 이는 Ledger의 사용자 정의 운영 체제 BOLOS가 보안 요소에 대해 수행하는 바로 그 역할입니다. 마지막으로 트랜잭션 의도의 진위 여부를 확인할 수 있는 방법이 필요합니다. Ledger 장치는 보안 요소에 의해 직접 구동되는 Ledger의 보안 화면을 통해 세 가지 전제 조건을 모두 확인할 수 있습니다.
Ledger의 입증된 보안 모델과 함께 보안 요소의 고유한 보안 기능 덕분에 Ledger 장치는 디지털 자산을 보호하는 데 필요한 모든 도구를 갖춘 매우 강력한 수단이 될 수 있는 것입니다. 망설일 이유가 없습니다. 이제 Ledger 하드웨어 지갑을 구매하고 자신 있게 거래를 시작해 보세요.