우리가 스마트폰이나 사물인터넷 (IoT) 기기 같은 작은 장치에 AI 를 심을 때, 메모리 부족과 전력 문제를 해결하기 위해 AI 의 '머리' (가중치/숫자) 를 압축합니다.
상황: 연구진은 AI 모델 (ResNet, VGG 등) 을 작은 메모리 칩에 심었습니다.
공격: 그리고 강력한 **전자기 펄스 (EMFI)**를 칩에 쏘았습니다. 이는 마치 AI 의 머리에 강력한 전자기 스프레이를 뿌려서, 칩 안의 데이터 비트 (0 과 1) 를 뒤집는 공격입니다.
질문: "이 공격을 받았을 때, AI 가 얼마나 망가질까? 그리고 숫자를 표현하는 방식 (부동소수점 vs 정수) 에 따라 그 결과가 다를까?"
2. 핵심 발견: "부동소수점 (FP)"은 유리, "정수 (INT)"는 철갑
연구진은 숫자를 표현하는 네 가지 방식을 비교했습니다. 결과는 놀라웠습니다.
🧊 비유 1: 부동소수점 (FP32, FP16) = "유리잔에 담긴 물"
부동소수점 방식은 매우 정밀하지만, 유리잔과 같습니다.
공격 시나리오: 유리잔에 작은 충격 (비트 하나 뒤집힘) 이 가해지면, 물 (데이터) 이 그대로 쏟아져 나가는 게 아니라, 유리잔 자체가 산산조각 나버립니다.
현실: 전자기 공격으로 숫자의 '지수 (Exponent)' 부분만 살짝 바뀌어도, 숫자가 **무한대 (Infinity)**나 **NaN(숫자가 아님)**으로 변해버립니다.
결과: AI 는 한 번 공격을 받으면 완전히 멍해져서 (정확도 0% 에 수렴) 아무것도 못 봅니다. 마치 유리잔이 깨져서 물이 다 새어 나간 것과 같습니다.
🛡️ 비유 2: 정수 (INT8, INT4) = "철제 방패"
정수 방식은 숫자를 0~127 같은 정해진 범위 안에 가둬두는 철제 방패와 같습니다.
공격 시나리오: 철제 방패에 충격을 주면, 방패가 찌그러지거나 구멍이 날 수는 있지만, 방패 자체가 사라지지는 않습니다.
현실: 공격으로 숫자가 뒤집혀서 최대값 (예: 127) 이 되더라도, 그 숫자는 여전히 127 입니다. "무한대"로 튀어 오르지 않습니다.
결과: AI 는 공격을 받아도 일정 수준 이상의 성능을 유지합니다. 특히 8 비트 정수 (INT8) 를 쓴 큰 모델은 공격 후에도 70% 이상의 정확도를 유지하며 여전히 일을 해냅니다.
3. 왜 이런 차이가 생길까? (비트 오류의 비밀)
연구진은 흥미로운 사실을 발견했습니다.
공격의 양은 똑같다: 전자기 펄스를 쏘면, 부동소수점이든 정수든 **비트 오류율 (BER)**은 거의 비슷하게 발생합니다. (약 6~8% 의 데이터가 망가짐)
하지만 반응이 다르다:
부동소수점: 망가진 데이터가 0xFF(11111111) 같은 값을 갖게 되면, 부동소수점 규칙상 이 숫자가 **NaN(숫자가 아님)**으로 변해버립니다. 이게 AI 전체로 퍼져나가면서 연쇄 폭발이 일어납니다.
정수: 같은 0xFF 값을 받아도, 정수는 그냥 **최대값 (127)**으로 고정될 뿐입니다. AI 는 "아, 이 숫자가 좀 커졌네" 정도로만 생각하고 넘어갑니다.
4. 결론: "적당한 압축"이 가장 안전하다
이 연구의 결론은 매우 명확합니다.
부동소수점 (FP32/FP16) 은 보안에 취약합니다. 작은 전자기 공격 한 방에 AI 가 완전히 붕괴됩니다.
정수 (INT8) 가 가장 좋습니다. 메모리도 적게 쓰고, 전력도 아끼며, 공격에 가장 잘 견딥니다.
너무 많이 압축하면 (INT4) 위험할 수 있습니다. 4 비트로 너무 줄이면, 데이터가 너무 좁은 범위에 몰려서 공격에 더 취약해질 수 있습니다.
📝 한 줄 요약
"AI 를 작은 장치에 심을 때, 숫자를 '유리잔'처럼 정밀하게 표현하면 (부동소수점) 전자기 공격 한 방에 깨져버리지만, '철제 방패'처럼 적당히 단순하게 표현하면 (정수) 공격을 버티며 계속 일할 수 있습니다."
이 연구는 앞으로 우리가 사물인터넷이나 자율주행차 같은 중요한 장치에 AI 를 심을 때, 단순히 성능만 좋은 모델을 고르는 게 아니라, '공격에 견디는 숫자 표현 방식'을 고려해야 함을 경고하고 있습니다.
1. 연구 배경 및 문제 정의 (Problem)
배경: TinyML 및 엣지 AI 의 발전으로 인해 제한된 리소스 (메모리, 전력) 를 가진 마이크로컨트롤러에서 딥러닝 모델이 실행되고 있습니다. 이를 위해 모델의 가중치 (Weight) 는 메모리 절감을 위해 정밀도가 낮아진 형식 (Quantization) 으로 변환됩니다.
문제: 전자기 펄스 주입 (EMFI, Electromagnetic Fault Injection) 공격은 비침습적으로 하드웨어에 결함을 유발하여 모델의 동작을 방해하거나 오작동을 일으킬 수 있는 심각한 위협입니다.
연구 격차: 기존 연구들은 주로 특정 정밀도 (예: FP32 또는 INT8) 에만 집중하거나 시뮬레이션에 의존했습니다. 동일한 공격 환경 하에서 다양한 숫자 표현 형식 (FP32, FP16, INT8, INT4) 이 EMFI 공격에 대해 어떻게 다른 내성을 보이는지에 대한 포괄적인 비교 연구가 부재했습니다.
핵심 질문: 가중치의 숫자 표현 형식 (고정밀도부터 공격적인 양자화까지) 이 신경망 모델의 EMFI 공격 내성에 어떤 영향을 미치는가?
2. 연구 방법론 (Methodology)
실험 환경:
하드웨어: NewAE ChipSHOUTER 플랫폼을 사용하여 전자기 펄스를 주입했습니다. 타겟은 4MB SRAM 칩 (AS6C3216A) 이 탑재된 보드 (DUT) 였으며, 3D 프린터를 활용한 정밀 XYZ 스테이지로 프로브를 위치시켰습니다.
모델: ImageNet-1K 데이터셋으로 학습된 4 가지 CNN 아키텍처 (ResNet-18, ResNet-34, ResNet-50, VGG-11) 를 사용했습니다.
가중치 형식: 4 가지 형식을 비교 분석했습니다.
부동소수점: FP32 (32-bit), FP16 (16-bit)
정수: INT8 (8-bit), INT4 (4-bit)
공격 시나리오:
모델 가중치가 메모리에 로드된 상태에서 단일 EM 펄스 (300V, 160ns) 를 주입하여 메모리 비트 오류를 발생시켰습니다.
주입된 오류 패턴을 분석하기 위해 비트 오류율 (BER), 손상된 바이트의 공간적 분포, 그리고 0xFE/0xFF 값의 발생 빈도를 측정했습니다.
공격 후 모델의 Top-1 및 Top-5 정확도 저하를 평가했습니다.
3. 주요 기여 (Key Contributions)
첫 번째 비교 연구: 동일한 실험 설정 하에서 FP32, FP16, INT8, INT4 등 다양한 가중치 정밀도에 대한 EMFI 내성을 체계적으로 비교한 최초의 연구입니다.
오류 패턴 특성화: 주입된 오류가 모델 형식에 따라 어떻게 다르게 해석되는지 (예: 부동소수점의 NaN 발생 vs 정수의 범위 제한) 를 심층적으로 분석했습니다.
내성 메커니즘 규명: 부동소수점 형식이 왜 치명적인 정확도 저하를 겪는지, 그리고 정수 양자화 형식이 어떻게 내성을 가지는지에 대한 수학적/구조적 원인을 규명했습니다.
4. 주요 결과 (Key Results)
부동소수점 (FP32/FP16) 의 치명적 취약성:
단일 펄스 주입 후 정확도가 거의 무작위 추측 수준 (Top-1 ≈ 0.1%) 으로 급격히 떨어졌습니다.
원인: EMFI 로 인한 지수 비트 (Exponent bits) 의 오류가 IEEE 754 표준에서 NaN (Not a Number) 또는 ±∞ 값을 생성하게 합니다. 이는 네트워크 전체로 전파되어 활성화 함수를 포화시키고 추론을 완전히 붕괴시킵니다.
FP32 의 경우 가중치 범위가 1039배까지 팽창하는 현상이 관찰되었습니다.
정수 (INT8/INT4) 의 높은 내성:
부동소수점에 비해 정확도 저하가 훨씬 적었습니다. 특히 VGG-11 모델의 INT8 형식은 Top-1 정확도가 약 70%, Top-5 정확도가 약 90% 를 유지했습니다.
원인: 정수 형식은 표현 가능한 값의 범위가 제한되어 있어 (예: INT8 의 경우 [-128, 127]), 비트 오류가 발생하더라도 값이 최대/최소 값으로 클램핑 (Clamping) 됩니다. 이로 인해 부동소수점처럼 값이 기하급수적으로 커지거나 NaN 이 발생하는 것을 방지합니다.
비트 오류율 (BER) 의 형식 무관성:
모든 형식에서 주입된 비트 오류율 (BER) 은 약 6~8% 로 유사했습니다. 이는 정확도 차이가 오류의 '양' 때문이 아니라, 각 형식이 오류에 '반응하는 방식'의 차이 때문임을 증명합니다.
공간적 민감도:
네트워크의 초기 레이어 (Front) 에 오류가 발생하면 정확도가 급격히 떨어지지만, 후기 레이어 (Back) 나 중간 레이어는 상대적으로 더 견고했습니다.
VGG-11 의 경우 중간 레이어 (FC6 등) 는 파라미터 중복도가 높아 국소적 오류에 잘 견디는 양극성 (Bimodal) 민감도를 보였습니다.
5. 의의 및 결론 (Significance & Conclusion)
안전한 엣지 배포를 위한 가이드라인: 엣지 디바이스에서 딥러닝 모델을 배포할 때, 단순히 메모리 효율만 고려하는 것이 아니라 **보안 내성 (Resilience)**을 고려해야 함을 강조합니다.
최적의 형식 제안:INT8 양자화가 기본 정확도, 메모리 크기, 그리고 EMFI 공격에 대한 내성 사이의 가장 균형 잡힌 트레이드오프를 제공합니다.
부동소수점의 위험성: 엣지 환경에서 부동소수점 (FP32/FP16) 을 사용하는 것은 EMFI 공격에 대해 극도로 취약할 수 있으므로, 보안이 중요한 애플리케이션에서는 정수 양자화를 선호해야 합니다.
향후 연구 방향: 양자화 인식 학습 (Quantization-aware training) 을 통해 비트 오류에 민감한 가중치를 보호하거나, 마이크로컨트롤러에서의 실제 추론 환경으로 실험을 확장하는 것이 필요하다고 제안합니다.
이 논문은 하드웨어 기반 공격 (EMFI) 에 대한 신경망의 취약성이 모델의 아키텍처뿐만 아니라 **숫자 표현 형식 (Number Representation)**에 의해 결정된다는 중요한 통찰을 제공하며, 엣지 AI 보안 전략 수립에 필수적인 기준을 제시합니다.