본문 바로가기
AUTOSAR

AUTOSAR CSM(Crypto Service Manager)이란? SecOC는 MAC을 누구에게 요청할까?

by Autosar 2026. 7. 1.
반응형

이전 글에서는 AUTOSAR의 통신 보안 모듈인 SecOC(Secure Onboard Communication) 에 대해 알아보았다.

SecOC는 ECU 간 통신 데이터의 무결성과 인증을 위해 Authenticator(MAC) 를 생성하고 검증한다고 설명했다.

 

그렇다면 여기서 한 가지 궁금증이 생긴다.

SecOC는 MAC을 직접 계산하는 걸까?

 

결론부터 말하면 아니다.

SecOC는 어떤 데이터를 보호할지 결정하는 보안 모듈일 뿐이며,

실제 암호 연산은 다른 AUTOSAR Crypto Stack을 통해 수행된다.

 

이번 글에서는 AUTOSAR Crypto Stack에서 CSM(Crypto Service Manager)의 역할과 동작 구조를 알아보자.

 

AUTOSAR Crypto Stack

 

AUTOSAR는 암호 기능을 하나의 모듈에서 모두 처리하지 않는다.

대신 여러 계층으로 구성된 Crypto Stack을 통해 암호 서비스를 제공한다.

출처: AUTOSAR_SWS_CryptoServiceManager.pdf 파일 내 18page

 

AUTOSAR Crypto Stack 구조를 도식화하면 아래와 같이 표현할 수 있다.

 

SecOC는 MAC 생성을 요청하지만,

실제 AES-CMAC 연산(AES를 이용해서 MAC을 만드는 알고리즘)은 Crypto Driver 또는 HSM에서 수행된다.

 

CSM(Crypto Service Manager)이란?

 

CSM(Crypto Service Manager)은 AUTOSAR Classic Platform에서 제공하는 암호 서비스 관리(Basic Software) 모듈이다.

 

많은 사람들이 CSM이 AES나 SHA를 직접 계산한다고 생각하지만, 실제로는 그렇지 않다.

 

CSM은

  • 암호 서비스 요청
  • Crypto Job 생성
  • Job 관리
  • 결과 전달

을 담당하는 서비스 관리자(Service Manager) 이다.

 

즉, CSM은 "어떤 암호 서비스를 사용할 것인가"를 관리하는 모듈이다.

 

왜 CSM이 필요할까?

 

차량에는 암호 기능이 필요한 모듈이 매우 많다.

 

예를 들어

  • SecOC
  • Secure Boot
  • OTA Update
  • UDS Security Access
  • Secure Diagnostics

모두 암호 연산이 필요하다.

 

만약 각각의 모듈이 Crypto Driver를 직접 호출한다면 코드 중복, 유지보수 어려움, 하드웨어 변경 시 수정 범위 증가와 같은 문제가 발생한다.

 

AUTOSAR는 이를 해결하기 위해 CSM이라는 공통 암호 서비스 계층을 제공한다.

 

CSM의 핵심은 Crypto Job이다.

 

AUTOSAR Specification에서 가장 많이 등장하는 용어는 Crypto Job이다.

CSM은 암호 연산 자체보다 Job을 관리하는 역할을 수행한다.


예를 들어

MAC Generate Job
       ↓
Hash Job
       ↓
Cipher Job
       ↓
Signature Job
       ↓
Random Job

 

처럼 모든 암호 요청을 Job 단위로 관리한다.

이것이 CSM의 가장 중요한 역할이다.

 

CSM이 제공하는 서비스

 

AUTOSAR R22-11 기준으로 CSM은 다음과 같은 암호 서비스를 제공한다.

(참고: https://www.autosar.org/fileadmin/standards/R22-11/CP/AUTOSAR_SWS_CryptoServiceManager.pdf)

 

  • MAC Generation
  • MAC Verification
  • Hash
  • Encryption
  • Decryption
  • Digital Signature
  • Random Number Generation
  • Key Management
  • AEAD(Authenticated Encryption with Associated Data)
  • Context Save / Restore

이처럼 CSM은 하나의 기능이 아니라 다양한 암호 서비스를 표준화된 API로 제공하는 역할을 수행한다.

 

CryIf(Crypto Interface)의 역할

 

CSM 아래에는 CryIf(Crypto Interface)가 존재한다.

CryIf는 CSM과 Crypto Driver 사이를 연결하는 인터페이스 계층이다.

덕분에 Crypto Driver가 변경되더라도 CSM은 동일한 API를 사용할 수 있다.

 

즉, CryIf는 Hardware Abstraction Layer 역할을 수행한다고 이해하면 된다.

 

Crypto Driver는 무엇을 할까?

 

실제 암호 연산은 Crypto Driver가 수행한다.

예를 들어 AES, CMAC, SHA, RSA, ECC 등의 알고리즘이 Crypto Driver 내부에서 실행된다.

 

만약 ECU에 HSM(Hardware Security Module)이 있다면

Crypto Driver는 HSM을 이용하여 더 빠르고 안전하게 암호 연산을 수행할 수 있다.

 

SecOC와 CSM의 관계

 

송신 ECU에서 MAC을 생성하는 과정을 보면
Authentic I-PDU → SecOC → Generate MAC 요청 → CSM → Crypto Job 생성 → CryIf → Crypto Driver → AES-CMAC 수행 → MAC 반환 → SecOC → Secured I-PDU 생성

 

이 과정에서 SecOC는 MAC 생성을 요청할 뿐, AES 알고리즘을 직접 수행하지 않는다.

 

CSM과 Crypto Driver의 차이
항목 CSM Crypto Driver
역할  암호 서비스 관리 실제 암호 연산 수행
핵심 기능 Crypto Job 관리  AES, SHA, CMAC 수행
하드웨어 의존성 없음 있음(HSM 사용 가능)
AUTOSAR 계층 Service Layer ECU Abstraction Layer

 

 

정리

 

CSM(Crypto Service Manager)은 AUTOSAR Crypto Stack에서 암호 서비스를 관리하는 핵심 모듈이다.

 

SecOC, Secure Boot, OTA Update, UDS Security Access와 같은 다양한 보안 기능은 암호 연산이 필요할 때 CSM을 통해 요청을 전달한다.

 

CSM은 이러한 요청을 Crypto Job으로 관리하고, CryIf를 통해 Crypto Driver에 전달하며, 실제 암호 연산은 Crypto Driver와 HSM이 수행한다.

 

즉, CSM은 암호 알고리즘을 직접 계산하는 모듈이 아니라, AUTOSAR의 다양한 보안 기능과 암호 연산을 연결하는 중앙 관리자라고 이해하면 된다.

반응형