스마트 카드 보안 칩, NFC 비접촉 통신과 보안 요소의 원리

스마트 카드 보안 칩, NFC 비접촉 통신과 보안 요소의 원리

비밀 서랍이 숨어 있는 나무 퍼즐 상자를 본 적이 있을 겁니다. 정해진 순서대로 조각을 밀어야만 열리고, 순서를 모르고 아무렇게나 밀면 열리지 않죠.

스마트 카드 보안 칩의 사고방식도 비슷합니다. 열쇠에 해당하는 비밀키를 상자 안에 숨겨 두고, 밖으로는 열쇠를 쓴 결과만 내어 주는 구조입니다. 이 글은 칩 안에 무엇이 들어 있고, 카드가 전원 없이 어떻게 동작하는지를 방어의 원리 중심으로 정리합니다.

퍼즐 상자는 순서만 알면 누구나 열 수 있지만, 보안 칩은 키가 밖으로 나가지 않게 막고 비정상 접근을 감지하는 장치를 함께 갖는다는 점이 다릅니다. 공격 방법이 아니라 방어 개념만 다루는 글입니다.

스마트 카드 보안 칩이 하는 일, 키를 내주지 않고 계산해 주는 칩

교통카드, 신용카드, 신분증, 통신사 가입자 식별 카드(SIM)처럼 카드 속에 칩이 든 카드를 스마트 카드(Smart Card)라고 합니다. 이 칩은 데이터를 저장하는 데서 끝나지 않고, 작은 컴퓨터로서 스스로 계산을 합니다.

핵심 아이디어는 비밀을 지키면서 계산해 주는 것입니다. 인증이 필요할 때 카드는 비밀키를 내보내지 않고 칩 안에서 키로 계산한 결과만 돌려줍니다. 이런 칩을 보안 요소(SE, Secure Element)라고 부릅니다.

이 구조 덕분에 리더나 통신 경로를 누가 엿봐도 키 자체는 보이지 않습니다. 보이는 것은 매번 다른 계산 결과뿐이고, 그것만으로는 키를 알아낼 수 없도록 설계하는 것이 목표입니다.

보안 요소의 내부 구성, 작은 컴퓨터와 전용 회로

보안 요소 안에는 일반 마이크로컨트롤러와 비슷한 부품이 있습니다. 작은 CPU 코어, 운영체제와 고정 코드를 담는 ROM, 임시 데이터를 쓰는 RAM, 키와 데이터를 전원이 꺼져도 보관하는 비휘발성 메모리가 그것입니다.

여기에 보안을 위한 전용 회로가 더해집니다. 암호 연산을 빠르게 처리하는 암호 가속기, 예측할 수 없는 난수를 만드는 난수 발생기, 비정상 상황을 감지하는 센서와 보호 회로가 들어가죠. 일반 칩과 가장 큰 차이는 이 전용 회로들이 하나의 방어 체계로 묶여 있다는 점입니다.

암호 가속기와 난수 발생기, 인증이 믿을 만해지는 이유

암호 연산은 CPU가 소프트웨어로 해도 되지만, 전용 하드웨어로 만들면 훨씬 적은 전력과 시간으로 끝납니다. 같은 블록 연산을 여러 번 반복하는 대칭키 암호와, 아주 큰 수의 곱셈이 이어지는 공개키 암호는 구조가 달라서 각각 맞는 회로를 따로 둡니다. 전력이 제한되는 카드에서는 이 효율이 곧 동작 가능 여부를 정합니다.

난수 발생기는 더 근본적인 부품입니다. 소프트웨어 알고리즘만으로 만든 난수는 시작값을 알면 예측할 수 있어서, 보안 칩은 열잡음처럼 물리적으로 흔들리는 현상에서 값을 뽑는 진짜 난수 발생기(TRNG, True Random Number Generator)를 씁니다. 여기에 후처리와, 발생기가 고장 나거나 치우친 값을 내지 않는지 계속 점검하는 상태 검사가 더해집니다.

난수는 챌린지-응답(Challenge-Response) 인증에서 힘을 발휘합니다. 매번 새로운 난수를 문제로 내면, 지난번 응답을 몰래 저장해 두었다가 다시 보내는 방법이 통하지 않습니다.

챌린지-응답 인증의 흐름

  1. 리더가 카드에 임의의 난수 문제(챌린지)를 보냅니다.
  2. 카드의 보안 칩이 내부 키와 챌린지를 섞어 암호 가속기로 응답을 계산합니다.
  3. 카드는 키 자체가 아니라 계산한 응답만 리더에 돌려줍니다.
  4. 리더나 서버가 같은 계산을 해서 응답이 맞는지 확인하고 인증을 마칩니다.

탬퍼 대응, 비정상 접근을 감지하는 방어 구조

탬퍼(Tamper)는 칩을 열어 보거나 동작 조건을 비정상으로 만들어 비밀을 알아내려는 시도를 가리킵니다. 보안 칩은 이런 시도가 있을 수 있다는 전제에서, 이상을 감지하면 반응하도록 설계합니다.

대표적인 방어는 센서입니다. 전원 전압, 클록 주파수, 온도, 빛이 정상 범위를 벗어나면 연산을 멈추거나 칩을 초기화하고, 심하면 키를 지웁니다. 칩 윗면을 금속 배선 망으로 덮어 두고 그 배선이 끊기면 감지하는 보호층을 두는 방식도 쓰입니다.

메모리 안의 데이터는 암호화하고 무결성을 확인해 저장합니다. 연산 중 소비 전력이나 전자파가 비밀 값과 연관되지 않도록 회로를 설계하는 부채널 대책과, 중요한 계산을 두 번 해서 결과를 비교하는 방식도 같은 방어 체계의 일부입니다. 구체적인 방법은 제품마다 다르고, 이 글은 개념 수준으로만 다룹니다.

NFC 비접촉 통신, 전원 없는 카드가 동작하는 원리

NFC(Near-Field Communication)는 13.56 MHz 대역에서 수 센티미터 이내의 짧은 거리로 통신하는 방식입니다. 리더의 코일이 교번 자기장을 만들면 카드 속 안테나 코일에 전압이 유도되는데, 이를 유도 결합(Inductive Coupling)이라고 합니다. 변압기에서 두 코일이 자기장으로 에너지를 주고받는 원리와 같습니다.

카드는 유도된 전압을 정류해 칩의 전원으로 씁니다. 그래서 배터리가 없어도 리더 가까이 가져가는 순간에만 칩이 깨어나 동작하고, 거리가 멀어지면 결합이 약해져 전력이 급격히 줄어듭니다.

가상 계산 예시, 카드가 쓸 수 있는 전력정류 후 칩의 전원이 2.0 V이고 평균 전류가 2 mA라면 전력은 2.0 V × 2 mA = 4 mW입니다. 암호 연산 중 전류가 3 mA로 늘면 6 mW가 필요합니다.

수확할 수 있는 전력이 4 mW뿐이라면 클록을 낮추거나 연산을 나눠 처리해 전류를 맞춰야 합니다. 숫자는 설명을 위한 가정이며, 실제 값은 안테나와 거리, 규격에 따라 다릅니다.

데이터는 이렇게 오갑니다. 리더에서 카드로 보낼 때는 자기장의 세기를 미세하게 바꾸는 방식을 쓰고, 카드에서 리더로 답할 때는 카드가 스스로 전파를 쏘는 것이 아니라 코일에 걸리는 부하를 켰다 껐다 하는 부하 변조(Load Modulation)를 씁니다. 리더는 자기 코일이 느끼는 부하의 변화를 읽어 카드의 응답을 받습니다.

스마트폰의 NFC 결제는 두 갈래입니다. 폰 안에 내장된 보안 요소가 키를 보관하며 카드처럼 동작하는 방식이 있고, 소프트웨어로 카드를 흉내 내되 일회용 토큰으로 보호하는 방식도 있습니다. 어느 쪽이든 키를 어디에 두는가가 보안 수준을 가르는 핵심입니다.

공통 평가 기준과 보안 칩의 신뢰

보안 칩은 제조사가 안전하다고 주장하는 것만으로는 신뢰를 얻기 어렵습니다. 그래서 제3의 평가 기관이 보안 기능을 시험하고 보증 수준을 매기는 공통 평가 기준(Common Criteria)이라는 국제 평가 체계가 있습니다.

평가 결과는 보증 수준 등급으로 표시되며, 등급이 높을수록 설계 문서 검토와 시험이 더 엄격합니다. 다만 등급은 시험된 범위와 가정 안에서의 보증이어서, 평가를 통과했다는 사실이 어떤 상황에서도 뚫리지 않는다는 뜻은 아닙니다. 결제나 통신처럼 산업마다 별도의 인증 체계를 함께 두는 경우도 많습니다.

스마트 카드 보안 칩을 둘러싼 흔한 오해

암호화만 하면 보안 칩이 필요 없다는 생각은 흔한 오해입니다. 소프트웨어로 암호화해도 키가 일반 메모리에 놓이면, 운영체제나 앱이 뚫릴 때 키까지 함께 위험해집니다. 보안 칩은 키를 일반 영역과 격리된 곳에 두고 안에서만 쓰게 하는 것이 목적입니다.

NFC가 가까운 거리에서만 통신하니 안전하다는 생각도 오해입니다. 짧은 거리는 위험을 줄이는 한 요소일 뿐 보안 자체는 아닙니다. 그래서 NFC 통신에서도 챌린지-응답과 암호화를 함께 쓰며, 반대로 보안 칩이 절대 뚫리지 않는다고 믿는 것도 옳지 않습니다.

보안 칩 구성 요소별 역할 비교 표

구분암호 가속기난수 발생기탬퍼 대응비접촉 인터페이스
맡는 일대칭키와 공개키 암호 연산을 하드웨어로 처리예측할 수 없는 난수를 생성비정상 조건을 감지하고 방어 동작코일로 전력을 받고 데이터를 주고받음
지키는 것연산 속도와 전력 효율키와 챌린지의 예측 불가능성키와 내부 데이터의 기밀성전원 없는 카드의 동작과 통신
부실할 때의 위험느리고 전력이 부족해 연산이 끊김키와 인증 문제를 추측할 여지가 생김비정상 조건에서 오동작하거나 정보가 노출됨전력 부족으로 거래가 중단됨
설계 고려면적과 전력, 부채널 대책 병행물리적 잡음원과 상태 검사센서 오경보와 정상 동작 사이의 균형안테나 크기와 결합 거리, 수확 전력의 한계
놓치기 쉬운 점빠르다고 안전한 것은 아님소프트웨어 난수와 성질이 다름센서 하나에만 의존하지 않고 여러 겹으로 쌓음짧은 거리만으로 보안이 해결되지 않음

핵심 정리

스마트 카드 보안 칩은 비밀키를 밖으로 내주지 않고 칩 안에서 계산한 결과만 내놓는 작은 컴퓨터입니다. 암호 가속기와 난수 발생기, 탬퍼 대응 회로가 하나의 방어 체계를 이루고, NFC 비접촉 통신은 카드가 리더의 자기장에서 전력을 얻어 부하 변조로 응답하는 방식으로 전원 없이 동작합니다.

퍼즐 상자의 비밀 서랍처럼, 열쇠는 안에 두고 결과만 내어 주는 것이 이 칩의 원리입니다. 다만 퍼즐 상자와 달리 비정상 접근을 감지해 스스로를 지키고 제3의 평가를 받는 점이 다르므로, 보안 칩을 이해할 때는 키를 어디에 두고 무엇이 그 키를 지키는지를 먼저 확인하면 됩니다.

면접 대비 질문

면접 대비 질문보안 요소가 소프트웨어 암호화만 쓰는 방식보다 안전한 이유를 설명하고, NFC 카드가 배터리 없이 동작하는 원리를 말해 보세요.

[답변 포인트] 보안 요소는 비밀키를 칩 안에 격리해 두고 키를 쓴 계산 결과만 내보내며, 암호 가속기와 진짜 난수 발생기, 센서와 보호층 같은 탬퍼 대응이 하나의 방어 체계로 묶여 있다는 점으로 시작합니다. 소프트웨어 암호화는 키가 일반 메모리에 놓여 운영체제나 앱이 뚫릴 때 함께 위험해진다는 점과 대비하고, 매번 새 난수를 쓰는 챌린지-응답으로 응답 재사용을 막는다고 덧붙입니다. NFC는 리더의 13.56 MHz 자기장이 카드 코일에 전압을 유도해 정류한 전력으로 칩이 동작하고, 카드는 부하 변조로 응답하며, 수확 가능한 전력이 작아 암호 연산의 에너지 효율이 중요하다는 점과 공통 평가 기준 같은 제3자 평가가 신뢰를 보완한다는 점까지 연결하면 좋습니다.