본문 바로가기
Android

안드로이드 하드웨어 서비스 03 텔레포니 프레임워크 (5)

by OKOK 2021. 6. 12.

04 USIM(Universal Subscriver Identity Module)

가입자의 정보를 저장. 이동 통신망과 무선랜 등의 인증 기능, 보안에 민감한 정보의 저장 기능. UICC에 RAM, ROM, EEPROM, 연산 역할을 하는 CPU로 구성되어 있음. EEPROM에는 데이터나 IC칩에서 동작하는 앱이 설치되어 있음. USIM은 앱의 이름에 해당하기 때문에 물리적인 카드 자체를 지칭할 때는 UICC라는 단어를 쓰는 것이 정확한 표현임. 스마트카드는 연산장치와 기억장치가 있는 일종의 컴퓨터임. 클래스별로 허용하는 최저 및 최고 전압이 존재함. 가장 약한 C 클래스의 전압인 1.8V로 구동시키게 됨.

 

4.1.3 APDU를 이요한 스마트카드 통신

SW1-SW2 멸영 처리 결과 코드 예 - 성공 0x90 0x00 임

MS = ME + SIM

이러한 불편함을 보완하기 위해 GSM 시스템은 SIM을 도입함. SIM의 도입으로 사용자는 보인의 전화번호와 저장된 전화번호부 등의 개인 정보를 유지하면서 휴대폰 단말기를 자유롭게 바꿀 수 있게 됨. ME는 논리적인 두 개의 컴포넌트 MT(Mobile Termination)와 TE(Terminal Equipment)로 구분됨. MT는 GSM Radio 인터페이스에 해당하는 정보의 송수신에 관련된 모든 기능을 포함함. TE는 주로 UI 기능을 담당하며 하드웨어(스피커, 마이크로폰, 디스플레이)와 사용자 앱을 관리함. 이외에도 GSM 네티워크를 지원하기 위해 UICC에 SIM 앱이 설치되어 있는 경우도 있으며 CDMA2000을 지원하기 위해 CSIM 앱이 설치되기도 함. 

 

4.1.5 USIM의 주요 기능

1. 네트워크 인증

2. 가입자 정보 저장

3. 사업자 정보 저장

4. USAT(USIM Application Toolkit)

UMTS의 인증은 USIM과 이동 통신 네트워크에서 공유하고 있는 K라 불리는 값을 통해서 이루어짐. USIM의 고유 번호에 해당하는 IMSI와 함께 이동 통신 네트워크의 디비에 저장됨. 이동 통신 네트워크는 인증값 A를 생성, USIM도 B를 생성하여 비교 후 인증 성공. K값과 RADN값을 공유함. 적합한 IMSI와 K값이 저장되어 있는지 그리고 유효한 3G 알고리즘이 저장되어 있는지 확인할 수 있음. 

 

ICCID : USIM카드에 부여되는 고유 번호(IMSI는 사용자에게 부여되는 고유 번호임)

BCCH Information : Cell 선택을 위해 사용되는 캐리어 주파수의 리스트

가입자 인증 키 : K

Forbidden PLMNs : SIM은 등록이 허용되지 않는 PLMN의 리스트를 유지함. 이것은 MS가 네트워크 등록 시 Forbidden PLMN에 불필요한 등록 시도를 방지하기 위해 사용됨

인증 알고리즘 : 3G, A3, A8 등의 인증에 필요한 값을 계산하기 위한 알고리즘 루틴이 저장되어 있음.

암호화 알고리즘 : 휴대폰과 기지국 사이의 통신은 암호화되어 진행되는데, 데이터 암호화를 위하여 A5등의 암호화 알고리즘 루틴이 저장되어 있음

 

USAT는 UICC에 설치되는 앱으로 이동 통신 사업자에서 이동 통신 네트워크 관련 서비스를 사용자에게 제공하기 위해서 사용됨. 스마트폰이 대중화되기 이전에 제조사에서 휴대폰에 프로그램을 미리 넣어두지 않으면 이동 통신 사업자가 가입자에게 휴대폰을 이영한 서비스를 제공할 수 없었음. 전화번호부 데이터를 인터넷의 이동 통신 사업자 서버와 동기화할 수 있는 기능을 제공하기도 함. 이동 통신 사업자에서 판매하는 단말기에 특정 UICC만 사용할 수 있도록 SIMLOCK이란 기능을 이용해서 제한했기 때문임. 이외에도 세부적인 구분을 통해 특정 회사나 단체에서만 사용하는 것을 목적으로 하는 Corporate LOCK이나 정해진 UICC만 사용할 수 있도록 하는 USIM Lock이 존재하지만 실제로는 거의 쓰이지 않음.

댓글