KR20140048094A - 이동 단말 장치 칩 프로그래밍을 위한 방법 - Google Patents

이동 단말 장치 칩 프로그래밍을 위한 방법 Download PDF

Info

Publication number
KR20140048094A
KR20140048094A KR1020137023464A KR20137023464A KR20140048094A KR 20140048094 A KR20140048094 A KR 20140048094A KR 1020137023464 A KR1020137023464 A KR 1020137023464A KR 20137023464 A KR20137023464 A KR 20137023464A KR 20140048094 A KR20140048094 A KR 20140048094A
Authority
KR
South Korea
Prior art keywords
serial number
chip
senr
programming
soc
Prior art date
Application number
KR1020137023464A
Other languages
English (en)
Other versions
KR101751098B1 (ko
Inventor
스테판 스피츠
클라우스 디에체
게로 갈카
Original Assignee
기제케 운트 데브리엔트 게엠베하
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 기제케 운트 데브리엔트 게엠베하 filed Critical 기제케 운트 데브리엔트 게엠베하
Publication of KR20140048094A publication Critical patent/KR20140048094A/ko
Application granted granted Critical
Publication of KR101751098B1 publication Critical patent/KR101751098B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/73Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information by creating or determining hardware identification, e.g. serial numbers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/572Secure firmware programming, e.g. of basic input output system [BIOS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3234Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry
    • H04L2209/127Trusted platform modules [TPM]

Abstract

본 발명은 이동 단말 장치용 칩을 프로그래밍하기 위한 방법을 제공하며, 준비 단계에서, 일련 번호가 칩내에 프로그램되고, 그 후, 프로그래밍 단계에서, 일련 번호가 입증되고, 일련 번호가 성공적으로 입증되는 경우에만 적어도 하나의 추가 데이터가 칩내에 프로그램된다. 보안 모듈(HSM)내에 저장되고 일련 번호와는 상이한 비밀 정보 아이템이 사용되는 동안, 일련 번호는 보안 모듈(HSM)을 이용하여 입증된다.

Description

이동 단말 장치 칩 프로그래밍을 위한 방법{METHOD FOR PROGRAMMING A MOBILE TERMINAL CHIP}
본 발명은 이동 단말 장치 칩 프로그래밍을 위한 방법, 프로그래밍 방법을 이용하는 동안 보안 오퍼레이팅 시스템을 활성화하기 위한 방법, 및 프로그래밍 방법을 이용하는 동안 칩을 포함하는 이동 단말 장치를 안전하게 구성하기 위한 방법에 관한 것이다.
휴대 전화기, 스마트폰 등과 같은 이동 단말 장치는 SoC(system on chip)로도 칭하는 집적 회로(IC)를 갖는 칩(마이크로프로세서 칩)을 가지며, 이를 통해 예를 들면, 디스플레이 스크린, 키보드, SIM 카드 및/또는 다른 카드를 위한 카드 리더와 같은 부품들을 포함하는 이동 단말 장치가 제어된다.
칩은 칩 제조사(또한, SoC 프로바이더, SoCP로 칭함)에 의해 제조되며, 칩 제조사와는 상이한 단말 장치 제조사(또한, OEM(original equipment manufacturer)로 칭함)에 유효하게 만들어지고, 오퍼레이팅 시스템으로 프로그램되고(즉, 오퍼레이팅 시스템이 칩내에 프로그램됨), 단말 장치 제조사에 의해 이동 단말 장치에 설치된다. 칩을 위한 오퍼레이팅 시스템은 통상 단말 장치 제조사에 의해 생산되지 않고, 칩 제조사 또는 칩 제조사과 제휴한 오퍼레이팅 시스템 제작사에 의해 생산된다. 그러나, 칩이 의도하는 이동 단말 장치의 특이점이 오퍼레이팅 시스템에서 고려되어야 하므로, 오퍼레이팅 시스템은 칩 제조사에 의해 칩에 바로 프로그램되지 않고, 단말 장치 제조사에 의해 프로그램된다. 칩의 제조와 단말 장치 제조사에 칩을 유효하게 만드는 것 사이에, 칩 제조사 및/또는 칩 제조사와 제휴한 회사에 의한 프로그래밍 단계가 통상 수행되나, 이들 단계는 본 특허 출원의 요지는 아니다.
칩 제조사의 영향이 미치는 영역 외부에서 칩을 프로그래밍하는 것은 종종 그레이 칩이라 칭하는 칩 위조의 위험을 초래하며, 이는 단말 장치 제조사에 유효하게 되나 칩 제조사로부터 오지 않은 것으로, 칩 제조사로부터의 원래의 칩과는 상이한 특성을 가질 가능성이 있다. 단말 장치 제조사는 보장된 특성을 갖는 칩 제조사로부터의 원래의 칩을 그 이동 단말 장치에 구현하는데 관심을 갖는다. 또한 칩 제조사는 그 칩용으로 의도된 오퍼레이팅 시스템만이 그 칩에 프로그램되고 다른 출처의 칩에는 프로그램되지 않도록 하는데 관심을 갖는다.
현재 단계에서, 그레이 칩으로부터 보호를 위하여 칩 제조사에 의해 일련 번호가 칩에 프로그램된다. 오퍼레이팅 시스템과 같은 추가 데이터가 단말 장치 제조사에 의해 칩에 프로그램되기 이전에, 칩의 일련 번호가 검사된다. 전체 유효 일련 번호를 포함하는 일련 번호 리스트를 기초로, 단말 장치 제조사는 칩이 유효 일련 번호를 갖는지 여부를 인식할 수 있다. 유효 일련 번호 없는 칩은 프로그램되지 않는다.
일련 번호 리스트는 매우 광범위할 수 있어서, 이를 처리하는 것은 많은 노력과 문제를 야기한다. 더욱이, 칩 제조사와 단말 장치 제조사 및 다른 추가 당사자 사이에 안전하게 일련 번호 리스트를 이송하는데에는 고도의 노력이 소요된다.
본 특허 출원의 출원인은 상표명 MOBICORE로서 이동(무선) 단말 장치(예를 들면, 휴대폰, 스마트 폰)에 이행될 칩에 대한 보안 오퍼레이팅 시스템을 제조 및 판매한다. 보안-필수 어플리케이션 및 일부 시스템 기능(예를 들면, 키보드 드라이버)은 보안 오퍼레이팅 시스템 MOBICORE에 의해 안전한 방식으로 제어된다. 보안 오퍼레이팅 시스템은 암호 키, 인증 키(Kauth)를 포함하고, 이를 이용하여 보안 오퍼레이팅 시스템은 자신을 백그라운드 시스템으로부터 식별할 수 있다. 선택적으로, 인증 키(Kauth)는 칩 또는 이동 단말 장치와 백그라운드 시스템 사이에 보안 통신 채널을 동작시키기 위해 추가적으로 제공된다. 백그라운드 시스템은 예를 들면 이동 무선 네트워크의 공지의 백그라운드 시스템 그 자체이다.
본 발명은 이동 단말 장치 칩을 프로그래밍하기 위한 효율적 및 안정적 방법을 제공하는 것을 목적으로 하며, 프로그래밍은 최대로는 선정된 출처로부터의 칩에 대해서만 승인된다. 특히, 그러한 방법은 일련 번호 리스트 없는 경우에 제공된다. 또한, 본 발명의 전개에 따르면, 프로그래밍 방법을 이용하는 동안 보안 오퍼레이팅 시스템을 활성화시키는 방법 및 칩을 포함하는 이동 단말 장치를 안전하게 구성하는 방법이 명시된다.
이 목적은 청구항 1에 따른 방법에 의해 달성된다. 본 발명의 유리한 실시예가 종속항에 명시된다.
청구항 1에 따른 방법은 이동 단말 장치용 칩을 프로그래밍하도록 구성된다. 준비 단계에서, 일련 번호가 칩내에 프로그램된다. 이후, 프로그래밍 단계에서, 일련 번호가 입증되고, 일련 번호가 성공적으로 입증된 경우에만 칩으로의 적어도 하나의 추가 데이터의 프로그래밍이 수행된다. 상기 방법은 보안 모듈내에 저장되고 일련 번호와는 상이한 비밀 정보 아이템을 사용하는 동안, 일련 번호가 보안 모듈을 이용함에 의해 입증되는 것을 특징으로 한다. "추가 데이터"는 여기서 프로그램 코드와의 상호 작용이 의도된 프로그램 코드(예를 들면, 오퍼레이팅 시스템, 이하 참조) 또는 단일 데이터(예를 들면, 암호(인증) 키)와 같은 임의의 종류의 데이터로 이해된다.
보안 모듈내에 저장된 비밀 정보 아이템을 사용하는 동안 일련 번호가 입증되므로, 일련 번호를 입증하기 위해서는 보안 모듈만이 필요하고, 일련 번호 리스트는 필요 없다. 그러므로 방법은 적어도 일련 번호 리스트를 기초로 하는 일련 번호 검사를 하는 방법만큼 안전하나, 일련 번호 리스트가 처리될 필요가 없으므로, 실질적으로는 더 효율적이다.
따라서, 청구항 1에 따르면, 칩에 대한 출처 검사로 이동 단말 장치 칩을 프로그래밍하기 위한 효율적이고 안전한 방법이 제공된다.
선택적으로는, 일련 번호의 성공적 입증에 대해 반응하여, 추가 데이터는 보안 모듈을 이용하여 칩에 직접 프로그램되고, 보안 모듈 외부로부터 중간에 개입할 가능성은 없다. 따라서, 일련 번호의 성공적 입증 이후에, 추가 데이터가 일련 번호가 막 입증된 칩에 배타적으로 할당되고 이 칩에 프로그램될 수 있음이 달성된다. 그러나, 일련 번호의 입증 이후 및 추가 데이터의 칩으로의 프로그래밍 이전에, 칩을 다른 칩으로 교환하는 것은 불가능하다. 그러므로, 출처가 진짜인 칩만이 내부에 추가 데이터가 프로그램되는 것이 보장된다.
선택적으로는, 비밀 정보 아이템을 사용하는 동안 일련 번호는 일련 번호 또는 재생산되는 즉, 다시 생성되는 일련 번호에 의존하는 정보 아이템에 의해 입증된다. 제2 경우에서, 일련 번호에 의존하는 정보 아이템은 준비 단계에서 추가적으로 칩에 프로그램되는 것이 바람직하다.
제1 실시예에 따르면, 일련 번호는 매핑 규칙에 의해 형성되고, 매핑 규칙은 비밀 정보 아이템으로서 보안 모듈내에 저장된다. 이 경우에, 일련 번호를 입증하기 위하여, 일련 번호는 보안 모듈을 이용하여 칩으로부터 판독되며, 일련 번호는 저장된 매핑 규칙을 이용하여 다시 보안 모듈내에서 생성되며, - 바람직하게는 비밀 모듈내에서 - 판독된 및 신규 생성된 일련 번호가 비교되고, 일치하는 경우, 일련 번호가 입증된 것으로 간주한다. 매핑 규칙은 예를 들면 랜덤 번호 및 추가 데이터를 포함할 수 있는 입력 데이터를 처리하고, 그로부터 일련 번호를 생성한다.
제2 실시예에 따르면, 일련 번호 외에도 일련 번호 및 비밀 키를 사용하는 동안 형성되는 디지털 서명이 비밀 정보 아이템으로서 칩내에 저장된다. 이 경우에, 일련 번호를 입증하기 위하여, 일련 번호 및 디지털 서명이 보안 모듈을 이용하여 칩으로부터 판독되고, 판독된 일련 번호 및 보안 모듈내에 저장된 비밀 키를 이용하여 서명이 다시 보안 모듈내에 생성되며, 판독된 및 신규 생성된 서명이 - 바람직하게는 비밀 모듈내에서 - 비교되고, 서명이 일치하는 경우 일련 번호가 입증된 것으로 간주된다.
선택적으로는, 판독에 대해 안전하기 위하여 비밀 정보 아이템이 보안 모듈내에 저장된다. 예를 들면, 비밀 정보 아이템의 직접 판독은 불가능하거나 또는 최대로는 보안 모듈에 대한 성공적 인증 이후에만 가능하다. 보안 모듈을 벗어나지 않고 칩의 일련 번호를 입증하기 위하여 비밀 정보 아이템이 보안 모듈내에서 사용된다.
선택적으로는, 보안 오퍼레이팅 시스템 또는 보안 오퍼레이팅 시스템의 적어도 일부가 추가 데이터로서 제공된다. 예를 들면, 프로그래밍 단계에서, 일련 번호가 성공적으로 입증된 경우만 보안 오퍼레이팅 시스템이 칩내에 프로그램된다.
선택적으로는, 칩에서 이행되는 또는 이행될 보안 오퍼레이팅 시스템의 동작 가능성을 위해 요구되는 암호 키, 예를 들면 인증 키가 추가 데이터로서 제공된다. 보안 오퍼레이팅 시스템 자체는 일련 번호의 입증 이전 또는 이후에 또는 다르게는 부분적으로는 그 이전에 및 부분적으로는 그 이후에 선택적으로 칩내에 프로그램된다. 선택적으로는, 상술한 보안 오퍼레이팅 시스템(MOBICORE)의 인증 키(Kauth)가 추가 데이터로서 제공된다.
선택적으로는, 암호 키, 예를 들면, 인증 키가 보안 모듈내에서 생성되고, 선택적으로는 일련 번호의 성공적 입증에 대해 반응하여 직접 생성된다. 생성된 키는 다음으로 선택적으로는 보안 모듈 외부로부터의 개입에 대한 가능성 없이 칩내에 프로그램된다.
선택적으로는, 일련 번호를 사용하는 동안 암호 키가 생성된다. 결과적으로, 암호 키는 일련 번호에 의존하고, 따라서 암호 키는 일련 번호가 그런 것처럼 칩에 대해 고유하다.
보안 오퍼레이팅 시스템을 활성화하는 방법은 칩을 프로그래밍하기 위한 방법을 통해 이행되며, 전술한 것처럼, 준비 단계에서, 일련 번호가 칩내에 프로그램된다. 추가 데이터로서, 보안 오퍼레이팅 시스템의 동작 가능성을 위해 필요한 암호 키 특히, 인증 키가 제공된다. 보안 오퍼레이팅 시스템을 활성화하기 위한 방법에서, 암호 키를 제외하고는 보안 오퍼레이팅 시스템이 칩내에 추가적으로 프로그램되어, 칩내에서 이행된다. 프로그래밍 단계에서, 암호 키를 칩내에 프로그래밍하는 것은 일련 번호가 성공적으로 입증된 경우에만 수행된다. 칩에 프로그램되는 키에 의해, 보안 오퍼레이팅 시스템은 활성화되고, 따라서 이 프로그래밍 동작으로서 동작 가능하다.
방법은 이동 단말 장치용 칩의 작업-공유 프로그래밍에 특히 유리하게 적용 가능하고, 칩의 프로그래밍은 예를 들면 칩 제조사와 단말 장치 제조사(예를 들면, 이동 무선 단말 장치 제조사) 사이에서 공유된다.
선택적으로는, 제1 프로그래머(예를 들면, 칩 제조사)에 의해 준비 단계가 수행되고, 제1 프로그래머와 논리적으로 및/또는 공간적으로 분리된 제2 프로그래머에 의해 프로그래밍 단계가 수행된다. 일련 번호의 입증이 일련 번호 리스트 없이 되고 단지 보안 모듈만을 필요로 하므로, 제1 과 제2 프로그래머 사이 예를 들면, 칩 제조사와 단말 장치 제조사 사이에서 일련 번호 리스트가 교환될 필요가 없다.
선택적으로, 비밀 정보 아이템이 제1 프로그래머(예를 들면, 칩 제조사)에 의해 보안 모듈에 프로그램되며, 보안 모듈은 프로그래밍 단계를 수행하는데 있어 제2 프로그래머(예를 들면, 단말 장치 제조사)에 유효하게 된다.
보안 모듈은 선택적으로는 암호 프로세서, 비밀 정보를 위한 메모리 및 칩 프로그래밍을 위한 제어 유닛을 갖는 완전 시스템으로서 설계된다. 선택적으로, 메모리는 암호프로세서에 의해 배타적으로 판독 가능하다. 암호프로세서는 메모리내에 저장되는 비밀 정보를 사용하는 동안 암호 연산 예를 들면, 서명 연산, 알고리즘에 따른 일련 번호 연산, 비교 동작, 키 생성, 특히 Mobicore 보안 오퍼레이팅 시스템을 위한 인증 키(Kauth)의 생성을 수행하도록 구성된다. 칩 프로그래밍을 위한 제어 유닛이 칩을 프로그램하기 위하여 구성된다. 바람직하게는, 암호프로세서 및 칩 프로그래밍을 위한 암호프로세서가 서로 결합하여, 칩 프로그래밍이 암호프로세서의 연산 결과에 의해 직접 제어가능하다.
본 발명의 제1 전개에 따르면, 프로그래밍 단계에서, 적어도 하나의 비밀 정보 아이템을 포함하는 입증 데이터 세트가 보안 모듈내에서 생성되며, 이 데이터 세트를 이용하여 일련 번호가 입증 가능하다. 입증 데이터 세트는 백그라운드 시스템에 전송된다. 시간적으로 프로그래밍 단계 후에 오는 입증 단계에서, 입증 데이터 세트를 이용하여 백그라운드 시스템에 대해 일련 번호가 다시 입증되고, 일련 번호가 입증 단계에서 성공적으로 입증된 경우에 칩이 받아들여지고, 일련 번호가 입증 단계에서 성공적으로 입증되지 않은 경우 칩은 폐기된다. 입증 단계는 예를 들면 칩을 포함하는 이동 단말 장치가 백그라운드 시스템에 등록하는 경우에 수행된다.
선택적으로, 본 발명의 제1 전개에서, 프로그래밍 단계에서, 키 및 일련 번호에 의존하는 키-일련 번호 데이터가 예를 들면 알고리즘 G를 이용하여 키-일련 번호 데이터로 처리되는 키 및 일련 번호에 의해 적어도 입증 데이터 세트의 일부로서 생성되고, 백그라운드 시스템으로 전송된다. 입증 단계에서, 일련 번호에 추가로 또는 일련 번호를 대신하여 키-일련 번호 데이터가 입증 데이터 세트를 이용하여 예를 들면 다시 연산되는 키-일련 번호 데이터에 의해 입증된다. 필요하다면, 입증 데이터 세트는 알고리즘 G를 포함한다.
본 발명의 제2 전개에 따른 이동 무선 시스템을 위한 칩을 포함하는 이동 단말 장치를 안전하게 구성하는 본 발명에 따른 방법에서, 전술한 것처럼, 칩에 대해 준비 단계(특히 일련 번호 및 적용 가능하다면 서명의 프로그래밍을 포함함) 및 프로그래밍 단계(특히 일련 번호의 입증 및 적용 가능하다면 추가 데이터, 예를 들면 (인증) 키의 프로그래밍을 포함)가 수행된다. 다음으로, 이동 단말 장치가 이동 무선 시스템 예를 들면 전화, 데이터 교환 및 이동 단말 장치에는 일반적인 다른 어플리케이션에서 추후에 이용 가능하게 하는 것을 목적으로, 칩은 이동 단말 장치를 백그라운드 시스템에 등록하기 위하여 이동 무선 시스템의 백그라운드 시스템과 데이터 교환 연결을 하게 된다. 그 후, 본 발명의 전개에 따라 예를 들면 데이터 교환 연결을 통해 제2 입증 단계가 수행된다. 일련 번호 및/또는 키-일련 번호 데이터가 제2 입증 단계에서 성공적으로 입증된 경우에만, 이동 무선 장치가 백그라운드 시스템에 등록된다. 결과적으로, 이동 단말 장치의 수명 주기내에 추가 보안 수단이 설치되어, 오리지널 칩 및 가능하다면 오리지널 보안 오퍼레이팅 시스템을 갖는 이동 단말 장치만이 이동 무선 시스템에 참여할 수 있음을 보장한다.
이하에서, 본 발명은 아래에 실시예 및 도시되는 도면을 참조로 보다 상세히 설명된다.
도 1은 제1 전개를 포함하는 본 발명의 제1 실시예를 도시하기 위한 시스템이다.
도 2는 제2 전개를 포함하는 본 발명의 제2 실시예를 도시하기 위한 시스템이다.
도 3은 본 발명의 제2 전개를 도시하기 위한 시스템이다.
도 1은 본 발명의 제1 실시예를 도식화하는 시스템을 도시하며, 이동 무선 단말 장치를 위한 칩(SoC)의 프로그래밍이 비밀 매핑 규칙(F)에 따라 형성되는 일련 번호(SENR)를 이용하여 보안 처리된다. 프로그래밍의 목적은 이동 무선 단말 장치 제조사 OEM(original equipment manufacturer)에 의해, 칩 제조사 SOCP(SOCP 프로바이더)에 의해 제조된 칩 SoC(system on chip)에 보안 오퍼레이팅 시스템을 프로그래밍하도록 하는 것이다. 이를 하는데 있어, 칩 제조사(SoCP)의 오리지널 칩만이 동작 가능한 보안 오퍼레이팅 시스템을 구비하는 것이 보장되어야 한다. 보안 오퍼레이팅 시스템은 이것 없이는 보안 오퍼레이팅 시스템이 동작 불가능한 인증 키(Kauth)를 포함한다. 칩 제조사(SOCP)는 비밀 매핑 규칙(F)에 따라 형성된 일련 번호(SENR)를 칩(SoC)에 프로그램하고, 비밀 매핑 규칙(F)를 보안 모듈(HSM; high security module)에 프로그램한다. 칩 제조사(SOCP)는 칩(SoC) 및 보안 모듈(HSM)을 단말 장치 제조사(OEM)에 공급한다. 일반적으로, 칩 제조사(SOCP)는 이렇게 준비된 다수의 칩(SoC)을 단말 장치 제조사(OEM)에 공급한다. 단말 장치 제조사(OEM)는 칩 프로그래밍을 위하여 보안 모듈(HSM)을 적절한 방식으로 그 생산 체인에 통합시킨다. 결과적으로, 칩(SoC)을 프로그래밍하기 위한 각각의 프로그래밍 동작이 보안 모듈(HSM)에 의해 제어되고, 이는 보안 모듈(HSM)의 제어하에 배타적으로 가능해진다. 먼저, 단말 장치 제조사(OEM)는, 인증 키(Kauth)를 제외하고는 보안 오퍼레이팅 시스템을 칩에 프로그램한다. 인증 키(Kauth)는 이때에는 아직 존재하지 않는다. 프로그래밍 커맨드가 인증 키(Kauth)를 칩(SoC)에 프로그램하기 위하여 단말 장치 제조사(OEM)에서 발급되자 마자, 보안 모듈(HSM)은 칩(SoC)로부터 일련 번호(SENR)를 판독하고, 판독된 일련 번호(SENR) 및 보안 모듈(HSM)내에 저장된 비밀 매핑 규칙(F)을 이용하여 다시 일련 번호(SENR)을 형성하고, 판독된 일련 번호(SENR)와 신규 형성된 일련 번호(SENR)를 비교한다. 판독된 및 신규 형성된 SENR이 일치하는 경우에만, 일련 번호가 보안 모듈(HSM)에서 입증된 것으로 간주되고, 인증 키(Kauth)가 보안 모듈(HSM)내의 입증에 반응하여 직접 생성된다. 인증 키(Kauth)는 일련 번호(SENR) 및 추가 입력 데이터로부터의 암호 연산에 의해 생성되어, 인증 키(Kauth)는 유일하고, 일련 번호(SENR)가 그러는 것처럼 칩(SoC)에 지정된다. 생성된 인증 키(Kauth)는 보안 모듈(HSM) 외부로부터의 개입의 가능성 없이 칩(SoC)에 프로그램된다. 결과적으로, 보안 오퍼레이팅 시스템이 활성화된다. 그러나, 일련 번호가 상이한 경우, 에러 메시지가 출력되고 및/또는 칩 프로그래밍이 취소되며, 선택적으로는 예를 들면 칩(SoC)의 메모리의 소거와 같은 에러 처리 방법이 취해진다.
도 2는 본 발명의 제2 실시예를 도식화하는 시스템을 도시하며, 이동 무선 단말 장치를 위한 칩(SoC)의 프로그래밍은 일련 번호(SENR)를 통한 일련 번호(SENR) 및 서명(SIG)을 이용하여 보안 처리된다. 칩 프로그래밍을 위한 기본 조건은 도 1에 대한 설명과 같다. 도 1의 실시예와는 대조적으로, 칩 제조사(SoCP)는 도 2로부터의 실시예에서 일련 번호(SENR) 및 일련 번호(SENR)를 비밀 암호 키(K)로 암호화함에 의해 생성되는 서명(SIG)을 칩(SoC)에 프로그램한다. 더욱이, 칩 제조사(SOCP)는 비밀 암호 키(K)를 보안 모듈(HSM)에 프로그램한다. 인증 키(Kauth)를 칩(SoC)에 프로그래하기 위한 프로그래밍 커맨드가 발급되자마자, 보안 모듈(HSM)은 칩(SoC)으로부터 서명(SIG) 및 일련 번호(SENR)를 판독하고, 판독된 일련 번호(SENR) 및 보안 모듈(HSM)내에 저장된 비밀 키(K)를 이용하여 다시 서명(SIG)을 형성하고, 판독된 및 신규 형성된 서명(SIG)을 비교한다. 서명이 상이한 경우, 에러 메시지가 출력되고 및/또는 칩 프로그래밍이 취소되고, 선택적으로는 예를 들면 칩(SoC)의 메모리의 소거와 같은 에러 처리 방법이 취해진다. 저장된 서명과 신규 형성된 서명(SIG)이 일치하는 경우, 일련 번호(SENR)는 입증된 것으로 간주된다. 입증에 반응하여, 인증 키(Kauth)가 형성(연산)되고, 칩(SoC)으로 프로그램되며, 따라서 도 1에 대해 설명된 것처럼 보안 오퍼레이팅 시스템이 활성화된다.
도 3은 본 발명의 전개를 나타내는 시스템을 도시하며, 칩(SoC)을 포함하는 이동 단말 장치를 이동 무선 시스템의 백그라운드 시스템(BS)에 등록하는 추가 단계를 갖는다. 보안 모듈(HSM)내의 일련 번호(SENR)의 입증 및 가능하면 인증 키(Kauth)의 생성 및 이의 보안 모듈(HSM)내의 저장까지의 절차는 도 1 또는 도 2를 참조로 설명된 것과 동일하다. 추가적으로, 인증 키(Kauth)가 보안 모듈(HSM)내에 생성되고 칩(SoC) 내에 프로그램된 이후에, 비밀 정보 아이템(알고리즘 F 또는 키 K) 및 일련 번호(SENR)를 사용하는 동안, 키-일련 번호 데이터 SSD=G(F, Kauth, SENR) 또는 SSD = G(K, Kauth, SENR)가 알고리즘 G를 이용하여 생성된다. 키-일련 번호 데이터(SSD), 일련 번호(SENR) 및 비밀 정보 아이템(F 또는 K)는 칩(SoC)의 일련 번호의 추후의 입증을 위한 입증 데이터 세트를 구성한다. 입증 데이터 세트가 단말 장치 제조사(OEM)가 영향을 줄 수 없는 보안 데이터 연결을 통해 이동 무선 시스템의 백그라운드 시스템(BS)에 전송된다. 이후에, 칩(SoC)가 포함된 이동 단말 장치가 최종 고객에게 판매된 이후에, 이동 단말 장치는 이동 무선 시스템내에서 동작하기 위하여는 최초에는 백그라운드 시스템(BS)에 등록해야 한다. 이동 단말 장치가 백그라운드 시스템(BS)에 등록하려는 시도 시, 칩(SoC)의 일련 번호(SENR)는 키-일련 번호 데이터(SSD)를 이용하여 다시 입증된다. 일련 번호(SENR)가 성공적으로 입증되는 경우에만, 이동 단말 장치가 백그라운드 시스템(BS)에 등록하고, 결과로서, 이동 단말 장치의 이동 무선 시스템으로의 참여가 가능하게 된다.

Claims (15)

  1. 이동 단말 장치용 칩(SoC)을 프로그래밍하는 방법으로서,
    - 준비 단계에서, 일련 번호(SENR)가 상기 칩(SoC)내에 프로그램되고; 및
    - 그후, 프로그래밍 단계에서, 상기 일련 번호(SENR)가 입증되고, 상기 칩(SoC)으로의 적어도 하나의 추가 데이터(Kauth)의 프로그래밍은 상기 일련 번호(SENR)가 성공적으로 입증된 경우에만 수행되며,
    보안 모듈(HSM)내에 저장되고 상기 일련 번호(SENR)와는 상이한 비밀 정보 아이템(F, K)을 사용하는 동안, 상기 일련 번호(SENR)는 보안 모듈(HSM)을 이용하여 입증되는, 방법.
  2. 청구항 1에 있어서, 상기 일련 번호(SENR)는 상기 일련 번호(SENR) 또는 상기 비밀 정보 아이템(F, K)을 사용하는 동안 재생되는 상기 일련 번호(SENR)에 의존하는 정보 아이템(SIG)에 의해 입증되는, 방법.
  3. 청구항 1 또는 청구항 2에 있어서, 상기 일련 번호(SENR)는 비밀 매핑 규칙(F)에 의해 형성되고, 상기 매핑 규칙(F)은 상기 비밀 정보 아이템으로서 상기 보안 모듈(HSM)내에 저장되는, 방법.
  4. 청구항 1 또는 청구항 2에 있어서, 상기 일련 번호(SENR)에 추가하여, 상기 일련 번호(SENR)를 사용하는 동안 형성된 디지털 서명(SIG)과 비밀 키(K)가 상기 칩(SoC)내에 저장되며, 상기 비밀 키(K)가 비밀 정보 아이템으로서 보안 모듈(HSM)내에 저장되는, 방법.
  5. 청구항 1 내지 청구항 4 중 어느 한 항에 있어서, 판독에 대하여 보안 처리되도록 상기 비밀 정보 아이템(F, K)이 상기 보안 모듈(HSM)내에 저장되는, 방법.
  6. 청구항 1 내지 청구항 5 중 어느 한 항에 있어서, 보안 오퍼레이팅 시스템 또는 보안 오퍼레이팅 시스템의 적어도 일부가 추가 데이터로서 제공되는, 방법.
  7. 청구항 1 내지 청구항 6 중 어느 한 항에 있어서, 상기 칩(SoC)내에서 이행되는 또는 이행될 보안 오퍼레이팅 시스템의 동작 가능성에 필요한 암호 키(Kauth)가 상기 추가 데이터로서 제공되는, 방법.
  8. 청구항 7에 있어서, 상기 암호 키(Kauth)가 상기 보안 모듈(HSM)내에 생성되는, 방법.
  9. 청구항 7 또는 청구항 8에 있어서, 상기 일련 번호(SENR)를 사용하는 동안, 상기 암호 키(Kauth)가 생성되는, 방법.
  10. 청구항 7 내지 청구항 9 중 어느 한 항에 기재된 프로그래밍 방법을 통해 보안 오퍼레이팅 시스템을 활성화하는 방법으로서,
    - 암호 키(Kauth)를 제외하고는 상기 보안 오퍼레이팅 시스템이 칩내에 추가적으로 프로그램되어, 이행되고,
    - 상기 프로그래밍 단계에서, 상기 칩(Soc)내로의 상기 암호 키(Kauth)의 프로그래밍은 일련 번호(SENR)가 성공적으로 입증된 경우에만 수행되는, 방법.
  11. 청구항 1 내지 청구항 10 중 어느 한 항에 있어서, 상기 준비 단계는 제1 프로그래머(SoCP)에 의해 수행되고, 상기 프로그래밍 단계는 상기 제1 프로그래머(SocP)로부터 논리적으로 및/또는 공간적으로 분리된 제2 프로그래머(OEM)에 의해 수행되는, 방법.
  12. 청구항 11에 있어서, 상기 비밀 정보 아이템(F, K)은 상기 제1 프로그래머(SoCP)에 의해 상기 보안 모듈(HSM)에 프로그램되며, 상기 보안 모듈(HSM)은 상기 프로그래밍 단계에 있어 상기 제2 프로그래머(OEM)에 유효하게 되는, 방법.
  13. 청구항 1 내지 청구항 12 중 어느 한 항에 있어서,
    - 상기 프로그래밍 단계에서, 상기 보안 모듈(HSM)내에서 적어도 비밀 정보 아이템(F, K)을 포함하는 입증 데이터 세트가 생성되고, 이 데이터 세트를 이용하여 상기 일련 번호(SENR)가 입증 가능하며, 상기 입증 데이터 세트는 백그라운드 시스템(BS)으로 전송되며,
    - 시간적으로 상기 프로그래밍 단계 후에 오는 입증 단계에서, 상기 입증 데이터 세트를 이용하여 상기 백그라운드 시스템(BS)에 대해 상기 일련 번호(SENR)가 다시 입증되고, 상기 일련 번호(SENR)가 상기 입증 단계에서 성공적으로 입증된 경우에, 상기 칩(SoC)이 받아들여지고, 상기 일련 번호(SENR)가 상기 입증 단계에서 성공적으로 입증되지 않은 경우 상기 칩(Soc)은 폐기되는, 방법.
  14. 청구항 13 및 청구항 7에 있어서,
    - 상기 프로그래밍 단계에서, 상기 키(Kauth) 및 상기 일련 번호(SENR)에 의존하는 키-일련 번호 데이터가 상기 입증 데이터 세트의 적어도 일부로서 생성되고, 상기 백그라운드 시스템(BS)으로 전송되며,
    - 상기 입증 단계에서, 상기 일련 번호(SENR)에 추가로 또는 상기 일련 번호(SENR)를 대신하여, 상기 키-일련 번호 데이터가 상기 입증 데이터 세트를 이용하여 입증되는, 방법.
  15. 이동 무선 시스템용 칩(Soc)을 포함하는 이동 단말 장치를 안전하게 구성하는 방법으로서,
    - 상기 칩(SoC) 상에서, 청구항 1 내지 청구항 14 중 어느 한 항에 기재된 준비 단계 및 프로그래밍 단계가 수행되며,
    - 상기 칩(SoC)은 상기 이동 단말 장치를 백그라운드 시스템에 등록하기 위하여 상기 이동 무선 시스템의 상기 백그라운드 시스템(BS)과 데이터 교환 연결되며,
    - 청구항 13 또는 청구항 14에 기재된 입증 단계가 수행되고,
    - 상기 입증 단계에서 상기 일련 번호(SENR) 및/또는 상기 키-일련 번호 데이터가 성공적으로 입증되는 경우에만, 상기 이동 무선 장치가 상기 백그라운드 시스템(BS)에 등록되는, 방법.
KR1020137023464A 2011-02-08 2012-02-06 이동 단말 장치 칩 프로그래밍을 위한 방법 KR101751098B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE102011010627.8 2011-02-08
DE102011010627A DE102011010627A1 (de) 2011-02-08 2011-02-08 Verfahren zur Programmierung eines Mobilendgeräte-Chips
PCT/EP2012/000534 WO2012107200A1 (de) 2011-02-08 2012-02-06 Verfahren zur programmierung eines mobilendgeräte-chips

Publications (2)

Publication Number Publication Date
KR20140048094A true KR20140048094A (ko) 2014-04-23
KR101751098B1 KR101751098B1 (ko) 2017-07-11

Family

ID=45566975

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020137023464A KR101751098B1 (ko) 2011-02-08 2012-02-06 이동 단말 장치 칩 프로그래밍을 위한 방법

Country Status (7)

Country Link
US (1) US9298949B2 (ko)
EP (1) EP2673731B1 (ko)
KR (1) KR101751098B1 (ko)
CN (1) CN103370713B (ko)
DE (1) DE102011010627A1 (ko)
ES (1) ES2710117T3 (ko)
WO (1) WO2012107200A1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102012021719A1 (de) 2012-11-05 2014-05-08 Giesecke & Devrient Gmbh Übermittlung von Datenelementen von einem entfernten Server an einen Endgeräte Chip
DE102014007022A1 (de) 2014-05-13 2015-11-19 Giesecke & Devrient Gmbh Implementierung einer sicheren Laufzeitumgebung eines mobilen Endgeräts
DE102014018867A1 (de) * 2014-12-16 2016-06-16 Giesecke & Devrient Gmbh Einbringen einer Identität in ein Secure Element
CN104486087B (zh) * 2014-12-23 2017-12-29 中山大学 一种基于远程硬件安全模块的数字签名方法
US9870487B2 (en) * 2014-12-30 2018-01-16 Data I/O Corporation Automated manufacturing system with adapter security mechanism and method of manufacture thereof
CN109409076B (zh) * 2017-08-17 2020-09-11 珠海艾派克微电子有限公司 打印耗材盒的验证方法、装置及耗材芯片

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5734819A (en) * 1994-10-12 1998-03-31 International Business Machines Corporation Method and apparatus for validating system operation
US5603084C1 (en) * 1995-03-02 2001-06-05 Ericsson Inc Method and apparatus for remotely programming a cellular radiotelephone
US7908216B1 (en) * 1999-07-22 2011-03-15 Visa International Service Association Internet payment, authentication and loading system using virtual smart card
TW469404B (en) * 2000-05-05 2001-12-21 Umax Data Systems Inc Method for generating serial numbers by random numbers
US7024555B2 (en) * 2001-11-01 2006-04-04 Intel Corporation Apparatus and method for unilaterally loading a secure operating system within a multiprocessor environment
US7203835B2 (en) 2001-11-13 2007-04-10 Microsoft Corporation Architecture for manufacturing authenticatable gaming systems
WO2003073688A1 (en) * 2002-02-22 2003-09-04 Emc Corporation Authenticating hardware devices incorporating digital certificates
US20030216927A1 (en) * 2002-05-17 2003-11-20 V. Sridhar System and method for automated safe reprogramming of software radios
FR2842680A1 (fr) * 2002-07-19 2004-01-23 France Telecom Procede de signature de liste et application au vote electronique
CA2422086C (en) * 2003-03-13 2010-05-25 777388 Ontario Limited Networked sound masking system with centralized sound masking generation
AU2003209887A1 (en) * 2003-03-13 2004-09-30 777388 Ontario Limited Auto-addressing mechanism for a networked system
US20050166051A1 (en) * 2004-01-26 2005-07-28 Mark Buer System and method for certification of a secure platform
JP2005227995A (ja) * 2004-02-12 2005-08-25 Sony Corp 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
JP4265479B2 (ja) * 2004-05-26 2009-05-20 ソニー株式会社 通信システム
US20060075254A1 (en) * 2004-09-27 2006-04-06 Cisco Technology, Inc. (A California Corporation) Smart card functionality from a security co-processor and symmetric key in ROM
US7877543B2 (en) * 2004-12-03 2011-01-25 Hewlett-Packard Development Company, L.P. System and method for writing data and a time value to an addressable unit of a removable storage medium
US7984849B2 (en) * 2005-08-16 2011-07-26 University of Nevada, Las Vegas Portable magnetic stripe reader for criminality security applications
US20070094507A1 (en) * 2005-10-21 2007-04-26 Rush Frederick A Method and system for securing a wireless communication apparatus
US7699233B2 (en) * 2005-11-02 2010-04-20 Nokia Corporation Method for issuer and chip specific diversification
US7845016B2 (en) * 2005-11-28 2010-11-30 Cisco Technology, Inc. Methods and apparatus for verifying modules from approved vendors
US20070170252A1 (en) * 2006-01-24 2007-07-26 Orton Kevin R Voting Machine with Secure Memory Processing
US9002018B2 (en) * 2006-05-09 2015-04-07 Sync Up Technologies Corporation Encryption key exchange system and method
TW200807425A (en) 2006-06-05 2008-02-01 Renesas Tech Corp Semiconductor device, unique ID of semiconductor device and method for verifying unique ID
WO2008049235A1 (en) * 2006-10-27 2008-05-02 Storage Appliance Corporation Systems and methods for controlling production quantities
US8429389B2 (en) * 2007-01-16 2013-04-23 Bally Gaming, Inc. ROM BIOS based trusted encrypted operating system
US8001383B2 (en) 2007-02-01 2011-08-16 Microsoft Corporation Secure serial number
GB2454640A (en) * 2007-07-05 2009-05-20 Vodafone Plc Received message verification
TW200945921A (en) * 2008-04-24 2009-11-01 Powerflash Technology Corp Mobile phone accessing system and related storage device
DE102008027043B4 (de) * 2008-06-06 2012-03-08 Giesecke & Devrient Gmbh Verfahren zum Personalisieren eines Sicherheitselements eines mobilen Endgeräts
US20100045427A1 (en) * 2008-08-22 2010-02-25 Emed, Inc. Microdermabrasion System with Security Mechanism
US8789746B2 (en) * 2009-01-31 2014-07-29 Solexir Technology Inc. Product authentication using integrated circuits
US8843732B2 (en) * 2009-12-21 2014-09-23 Intel Corporation Mechanism for detecting a no-processor swap condition and modification of high speed bus calibration during boot
US9081937B2 (en) * 2010-08-26 2015-07-14 Adobe Systems Incorporated Systems and methods for managing subscription-based licensing of software products

Also Published As

Publication number Publication date
CN103370713B (zh) 2016-12-14
KR101751098B1 (ko) 2017-07-11
US9298949B2 (en) 2016-03-29
WO2012107200A1 (de) 2012-08-16
EP2673731A1 (de) 2013-12-18
CN103370713A (zh) 2013-10-23
US20130318638A1 (en) 2013-11-28
DE102011010627A1 (de) 2012-08-09
EP2673731B1 (de) 2018-12-19
ES2710117T3 (es) 2019-04-23

Similar Documents

Publication Publication Date Title
EP2988470B1 (en) Automatic purposed-application creation
US9979703B2 (en) Updating software on a secure element
US7587600B2 (en) Loading data onto an electronic device
CN111680305A (zh) 一种基于区块链的数据处理方法、装置及设备
US9158598B2 (en) Apparatus, method, program and system for processing information utilizing a multi-platform capable of managing a plurality of applications
US10084604B2 (en) Method of programming a smart card, computer program product and programmable smart card
US10091652B2 (en) Relay device
KR101751098B1 (ko) 이동 단말 장치 칩 프로그래밍을 위한 방법
CN101194229A (zh) 对数据指令的更新
US8751811B2 (en) Integrated circuit and system for installing computer code thereon
CN111984962A (zh) 固件安全验证方法及装置
US9606810B2 (en) Method and apparatus for replacing the operating system of a limited-resource portable data carrier
US8079078B2 (en) Encryption apparatus, program for use therewith, and method for use therewith
EP2876593A1 (en) Method of generating a structure and corresponding structure
CN107948170A (zh) 接口请求参数加密方法、装置、设备及可读存储介质
CN111160879A (zh) 一种硬件钱包及其安全性提升方法和装置
US20100243736A1 (en) Storage device management systems and methods
JP6318868B2 (ja) 認証システム、及び携帯通信端末
CN115688120A (zh) 安全芯片固件导入方法、安全芯片及计算机可读存储介质
EP3907970A1 (en) Electronic device
EP3059918B1 (en) Method for accessing a security element
CN114491645A (zh) 数据脱敏方法、装置、电子设备及介质
EP2544116A1 (en) Method of managing the loading of data in a secure device

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant