카테고리 없음

명령을스마트카드에안전하게로딩하기위한방법(METHOD OF SECURELY LOADING COMMANDS IN A SMART CARD)

갈때까지가는거야 2018. 1. 31. 13:50

(19) 대한민국특허청(KR)
(12) 공개특허공보(A)
(51)Int. Cl.6
G07F 7/10
(11) 공개번호 특2000-0005081
(43) 공개일자 2000년01월25일
(21) 출원번호 10-1998-0707711
(22) 출원일자 1998년09월28일
번역문제출일자 1998년09월28일
(86) 국제출원번호 PCT/EP1997/01553 (87) 국제공개번호 WO 1997/37331
(86) 국제출원출원일자 1997년03월25일 (87) 국제공개일자 1997년10월09일
(81) 지정국 EP 유럽특허 : 오스트리아 벨기에 스위스 리히텐슈타인 독일 덴마크
스페인 핀랜드 프랑스 영국 그리스 이탈리아 룩셈부르크 모나코 네
덜란드
국내특허 : 아일랜드 오스트레일리아 불가리아 브라질 캐나다 중국 체
크 에스토니아 헝가리 이스라엘 일본 대한민국 리투아니아 라트비아
멕시코 노르웨이 뉴질랜드 폴란드 루마니아 싱가포르 슬로베니아 슬
로바키아
(30) 우선권주장 96200867.8 1996년03월09일 EPO(EP)
(71) 출원인 코닌클리즈케 피티티 네덜란드 엔.브이. 프레드 더블유. 에이. 드 종
네덜란드 9726 에이씨 그로닌겐 스테이션스웨그 10
(72) 발명자 드럽스틴 미첼 마르코 폴
네덜란드, 엔엘-1816 엔에이 알크마르, 아얼트 드 겔더란
(74) 대리인 김윤배, 이범일
심사청구 : 없음
(54) 명령을 스마트 카드에 안전하게 로딩하기 위한 방법
요약
본 발명은 스마트 카드(SC)에 명령(COM)을 안전하게 로딩하고 확인하기 위한 방법을 제공한다. 특히,
카드 발행자(CI)에 대해 오프라인(off-line)된 어플리케이션 공급자(AP)에 의해 주문형 명령이 로드되는
경우에, 그 명령이 유효한 것이 보장된다. 본 발명은 확인코드에 의해 명령(COM)을 보호하는 방법을 제
공하고, 이들 코드(MAC1,MAC2)가 2개의 다른 키를 이용하여 생성되는데, 그중 하나의 키(K1)는 카드 발행
자(CI)로부터 저장되고, 나머지 키(K2)는 신뢰성 있는 제3관계자(TTP)로부터 저장된다. 더욱이, 키 세
트(K3*)로부터 키를 이용하여 생성된 확인코드(MAC3)는 개별 어플리케이션(AP1,AP2)에 대한 명령을 선택적
으로 확인하기 위해 이용된다.
대표도
도3
명세서
기술분야
본 발명은 명령을 스마트 카드에 로딩(loading)하기 위한 방법에 관한 것으로, 특히 주문형 (application
specific) 명령을 스마트 카드에 오프라인(off-line) 로딩하기 위한 방법에 관한 것이다.
배경기술
현재의 지불시스템에 있어서, 전자지불수단의 이용이 점차 중요해지고 있다. 메모리 카드 및 스마트 카
드와 같은 전자지불수단의 적용이 확대됨에 따라 이들의 사용이 점차 늘어나고 있다. 많은 나라에서 전
자카드는 공중전화 등에 사용되고 있다. 발전된 카드는 다른 기능성과 함께 전자"화폐" 기능을 포함할
수 있다. 그와 같은 발전된 지불수단은 메모리와 더불어 적절한 프로그램을 수행할 수 있는 프로세서를
포함한다.
본 발명에 있어서, 프로세서와 메모리로 이루어지는 적어도 하나의 집적된 전자회로를 갖춘 전자 지불수
단을 나타내는데, 용어 스마트 카드 또는 카드가 이용될 것이다. 소위, 스마트 카드의 실제 형태는 중
요치 않다.
스마트 카드의 프로세서로 수행하는 프로그램은 카드에 의해 제공된 서비스, 즉 카드의 소프트웨어에 따
른 스마트 카드의 기능 및 관련 데이터 구조(예컨대, 화폐, 사용자 신원확인, 로열티(loyalty) 프로그
램)를 결정한다. 시간이 경과함에 따라, 새로운 기능을 추가하거나 현재 기능을 개선하기 위해 카드의
9-1
1019980707711
프로그램을 갱신해야할 필요성이 생긴다. 이를 위해, 카드는 다른 프로그램을 대체할 새로운 프로그램
을 받아들일 수 있어야 한다. 그러나, 그것은 새롭게 로드(load)된 프로그램이 유효한 것인가 확인되어
야만 한다.
카드 발행자(issuer)와 카드간 안전한 데이터 교환 프로토콜을 사용함으로써 프로그램의 확인이 비교적
쉽게 이루어질 수 있다. 그러나, 어플리케이션 공급자들(applications providers)과 같은 다른 관계자
(party)들은 카드 발행자를 통해 이를 행하지 않고 새로운 어플리케이션(따라서, 새로운 명령)을 카드로
로드할 수 있기를 원한다.
본 발명은, 상술한 문제점과 또 다른 문제점을 해결하여 명령을 안전한 방법으로 스마트 카드에 로드시켜
편성(activate)할 수 있는 방법을 제공하는 것에 그 목적이 있다. 또한, 본 발명은 명령의 보전
(integrity)을 보장하면서 주문형 명령을 어플리케이션 공급자에 의해 스마트 카드에 로드시킬 수 있는
방법을 제공하는 것에 그 목적이 있다.
발명의 상세한 설명
상기 목적을 달성하기 위한 본 발명은, 명령을 제1관계자(party)에 의해 스마트 카드에 안전하게 로딩하
는 방법에 의해 달성되고, 상기 카드는 제2관계자에 의해 발행되며, 본 발명에 따른 상기 방법은:
- 제2관계자가 제1키를 이용하여 명령의 제1확인코드를 생성하는 단계와,
- 제3관계자가 제2키를 이용하여 명령의 제2확인코드를 생성하는 단계,
- 코드에 명령을 카드로 전달하는 단계 및,
- 각각의 제1 및 제2키를 이용하여 제1 및 제2확인코드를 재생성하여 전달된 코드와 재생성된 코드를 비
교함으로써 카드가 명령을 확인하는 단계를 구비하여 이루어진다.
본 발명의 방법에 있어서, 확인코드를 생성하는 2개의 다른 그리고 보다 바람직한 독립 관계자를 가짐으
로써 명령의 확실성이 보호된다: 보통, 카드 발행자인 제2관계자와 중앙은행과 같은 신뢰성 있는 독립 관
계자인 제3관계자. 일단 양자의 확인코드가 생성되면, 사실상 확인코드에 의해 바로 명령을 변경할 수
있다. 어플리케이션 공급자인 제1관계자는 제1 및 제2관계자 모두가 "증명된" 명령을 갖는 증거를 갖는
다. 바람직하게, 제3관계자는 카피(copy) 명령을 저장한다.
본 발명의 방법은, 단일 명령의 로딩과 명령세트의 로딩 모두에 적용한다.
확인이 실패할 경우, 카드로의 전달과 다음 확인이 반복되고, 확인이 성공할 때 까지 로드된 명령의 사용
은 차단된다. 이것은 가치없는 명령, 즉 전송에러 또는 카드에 의해 실행되는 조작에 의해 영향받은 명
령을 방지한다.
10번 이하의 확인이 실패할 경우, 로드된 명령은 영원히 불능상태가 된다. 제2관계자의 키를 변경함으
로써 로드된 명령의 불능상태가 수행된다. 이러한 방식으로, 명확하지 않은 부정한 명령의 재로딩이 종
결된다.
로드된 명령은 주문형 명령, 즉 카드의 어플리케이션에 직접적으로 영향을 주는 명령이 된다. 그와 같
은 명령은 흔히 원칙적으로 카드 어플리케이션의 조작을 가능하게 하는 기계어 명령이다. 본 발명의 방
법을 이용함으로써, 어플리케이션의 보전이 보장되어 그와 같은 명령의 사용이 제어된다.
바람직하게, 제1 및/또는 제2확인코드는 ANSI(American National Standardization Institute) X9.19 표준
에 따라 생성된 메시지 확인코드이다.
유리하게, 추가적인 확인코드가 제1관계자에 의해 생성되고, 이 추가적인 코드는 제1 또는 제2키를 포함
하지 않는다. 이것은 제1관계자가 그와 같은 방법에 영향받지 않고 확실성 검사를 가능하게 한다.
도면의 간단한 설명
도 1은 본 발명의 방법에 이용된 스마트 카드를 나타낸 도면,
도 2는 도 1의 스마트 카드의 집적회로를 개략적으로 나타낸 도면,
도 3은 본 발명의 방법에 따른 데이터의 교환을 개략적으로 나타낸 도면,
도 4는 스마트 카드의 데이터 구조를 나타낸 도면,
도 5는 본 발명의 방법에 이용된 플래그 레지스터를 개략적으로 나타낸 도면,
도 6은 본 발명의 실시예를 개략적으로 나타낸 도면이다.
실시예
이하, 본 발명의 실시예를 도면을 참조하면서 상세히 설명한다.
도 1에 개략적으로 나타낸 스마트 카드 또는 IC카드(1)의 예는 집적회로(IC)가 매립된 기판(2)으로 이루
어진다. IC는 카드 판독기 등을 접촉시키기 위한 콘택(contact)이 제공된다. 또한, 본 발명은 소위
무접촉(contactless) 스마트 카드의 경우에도 적용된다.
도 2에 개략적으로 나타낸 IC(10)의 예는 프로세서(11)와, 메모리(12) 및 입출력회로(13)로 이루어진다.
메모리는 데이터를 임시로 저장하기 위한 휘발성 메모리(RAM) 부분과 데이터를 영구적으로 또는 반영구적
으로 저장하기 위한 불휘발성메모리(ROM) 부분으로 이루어진다. 후자는 EEPROM형 메모리이다. 불휘발
성 부분에 저장된 데이터는 프로그래밍 데이터(명령, 프로그램)와 지불 데이터, 즉 금융처리와 관련된 데
9-2
1019980707711
이터를 포함한다. 분리 메모리(도시하지 않았음)는 프로세서(11)의 명령세트를 저장하기 위해
제공된다. 입출력회로(13)는 도 1에 나타낸 콘택(3)과 같은 콘택(도 2에는 도시하지 않았음)을 통해 외
부장치와 통신한다. 집적회로(10)는 도 1의 카드에 포함된다.
본 발명에 따른 방법의 실시예는 개략적으로 도 3에 일예로 나타냈다. 어플리케이션 공급자(AP)인 제1
관계자는 고객에게 카드 기능을 제공한다. 스마트 카드(SC)는 카드 발행자(CI: Card Issuer)인 제2관계
자에 의해 발행된다. 이하에 설명되어지는 바와 같이, 본 발명에 따른 신뢰성 있는 제3관계자(TTP:
Trusted Third Party)는 명령의 확인에 영향을 미친다.
명령(COM)의 세트는 카드 발행자(CI)로부터 생성되거나 또는 어플리케이션 공급자(AP)의 명령에 의해 외
부 소스로부터 생성된다. 명령(COM)의 세트는 다수의 명령으로 이루어진다. 즉, 여기에 기술한 방법
이 개별 명령이나 명령세트에 적용된다. 이하의 설명에서 명령세트가 아니라 단일 명령을 일예로 하여
본 발명의 방법을 설명한다. 명령은 주문형 명령(ASC)이거나 범용 명령(GPC: General Purpose
Commands)일 것이다.
도 3에 나타낸 바와 같이, 어플리케이션 공급자(AP)는 확인을 위하여 카드 발행자(CI)로 명령(COM)을 제
공한다. 명령(COM)에 기초한 제1확인코드(MAC1)는 제1키(K1)를 이용하여 카드 발행자(CI)에 의해 생성
된다. 코드(MAC1)에 덧붙여 명령세트는 적어도 키(K1)가 아닌 키의 사용을 포함하지 않는 추가적인 제4
확인코드(MAC4)를 선택적으로 수신한다. 추가 확인코드(MAC4)는 명령의 추가적인 확인을 제공하기 위해
또 다른 확인코드에 사용된 독립 키를 제공한다. 추가 확인코드(MAC4)의 계산에는 제1확인코드(MAC1)를
포함한다. 그 경우, 추가 확인코드는 이하와 같이 기술된다:
MAC4 = Fk1(COM, MAC1)
여기서, F는 코드가 결정되는 함수를 나타낸다. 확인코드(MAC1)와 추가 확인코드(MAC4)는 임시로 저장
되는 어플리케이션 공급자(AP)에 전달된다.
본 발명에 따른 명령(COM)은 또한 TTP에 제공된다. 제3관계자는 제2키(K2)를 이용하여 명령(COM)의 제2
확인코드(MAC2)를 생성한다. 제2확인코드(MAC2)는 어플리케이션 공급자(AP)에 전달된다. 제3관계자는
카드 발행자 또는 서비스 공급자로부터 지정된 중앙은행 또는 공공기관이다.
어플리케이션 공급자(AP)는 제3키(K3*)를 이용하여 제3확인코드(MAC3)를 생성한다. 키(K3*)는 개별 카드
어플리케이션 및/또는 개별 카드 파일에 대응하는 각각의 개별 키 세트(별표(*)로 나타낸)로 이루어진다.
키(K3-1, K3-2, 등) 세트로 구성되는 키(K3*)는 명령을 특정 어플리케이션 및/또는 카드의 파일에 선택적
으로 로드하기 위해 이용된다. 이것은 도 4 및 도 5를 참조하여 더 설명된다. 어플리케이션간 제3키
(K3)가 변경된 것과 같이, 제3확인코드(MAC3)도 변경된다. 즉, 제3확인코드(MAC3)는 주문형 확인코드를
구성한다. 제3확인코드는 명령(COM)과 제1 및 제2확인코드 모두에 기초가 되고, 따라서 2중 확인을 제
공한다. 그 경우에, 제3확인코드는 이하와 같이 기술된다:
MAC3 = Fk3(COM, MAC1, MAC2)
여기서, F는 코드가 결정되는 함수를 나타낸다.
보다 바람직하게, 확인코드 MAC3와 MAC4 뿐만 아니라, 확인코드 MAC1과 MAC2는 암호화를 포함하는 메시지
확인체계를 이용하여 생성된다. 그와 같은 체계는 ANSI X9.19 표준에 기술되어 있다. 메시지 확인코
드를 생성하는데 이용된 실제 체계(또는 체계들)는 본 발명에 본질적인 요소가 아니다. 또한, 추가 확
인코드도 암호화를 이용(예컨대, 공공 키를 이용)하여 생성되거나, 소위 해쉬함수(hash function)를 이용
하여 생성된다.
확인코드 MAC3와 MAC4 뿐만 아니라, 확인코드 MAC1과 MAC2 모두는 명령에 추가되거나, 또 다른 방식의 명
령과 관련된다. 도 3에 있어서, 명령 및 관련된 확인코드는 이하와 같이 나타낸다:
COM, MAC1, MAC2[,MAC3, MAC4]
괄호([ ])는 임의의 코드를 나타낸다. 명령 및 관련된 코드가 전달되는 실제 명령은 코스를 변경한다.
카드(SC)에 의해 명령을 받자마자 카드는 미리 카드에 저장되어 있는 키(K1,K2)를 이용하여 확인코드
(MAC1,MAC2)를 생성한다. 생성된 코드(MAC1′,MAC2′)는 수신된 코드(MAC1,MAC2)와 비교된다. 만약
재생성되어 수신된 코드가 동일하면, 명령의 확인이 성공되어 명령이 편성된다. 이 편성은 소정 플래그
(flag)를 설정(또는 재설정)함으로써 이루어진다. 만약 확인이 실패하면, 즉 대응하는 수신되어 재생성
된 코드가 동일하지 않으면, 명령의 재전송을 요구한다. 재전송 카운터(counter)는 재전송 수의 트랙
(track)을 유지하고 소정 수가 초과되면 재전송을 금지한다.
따라서, 보다 바람직하게는 카드에 로드된 명령이 편성될 때 까지 사용될 수 있는 방식으로 카드가 배열
된다. 즉, 로드된 명령은 명확한 확인의 결과로서 해제될 때 까지 차단된다. 이것은 카드로부터 실행
되는 가치없는 명령을 방지한다.
도 4는 본 발명의 다른 실시예에 따른 도 1의 카드(1)와 같은 스마트 카드의 데이터 구조를 개략적으로
나타낸다. 실제로, 데이터 구조는 도 2의 메모리(12)와 같은 메모리에 저장된다.
소위, 마스터 파일(MF: Master File)은 관련된 다른 파일을 포함한다. 다른 파일은 개별 어플리케이션
과 관련된다. 도 4에, 소위 어플리케이션 파일(AP1, AP2, AP3)을 나타냈다. 각각의 어플리케이션(또
는 어플리케이션 파일) AP1, AP2, ...,은 다수의 서브파일, 즉 프로그램 파일과 데이터 파일로 이루어진
다.
도 4에 나타낸 바와 같이, 각각의 어플리케이션은 대응하는 키를 포함한다: 즉, 어플리케이션 1은 키 K3-
1을 포함하고, 어플리케이션 2는 키 K3-2를 포함한다. 이 키들(K3-i)은 도 3의 키 세트(K3*)의 키(K3-
9-3
1019980707711
i)와 대응한다(i는 ith 어플리케이션을 나타낸다). 상술한 바와 같이, 카드는 다수의 키(즉, K1,K2)를
이용하여 명령의 확인코드(즉, MAC1,MAC2)를 재생시킬 수 있고, 수신된 명령을 확인하기 위해 수신된 코
드와 재생된 코드(즉, MAC1,MAC2)를 비교할 수 있다. 즉, 수신되어 재생된 확인코드(즉, MAC2와
MAC2′)가 일치하지 않으면, 대응하는 명령이 카드에 로드되지 않거나, 또는 적어도 실행으로부터 제외된
다. 유사하게, 세트 K3*의 키는 명령을 개별 어플리케이션으로 선택적으로 로드하기 위해 이용되고, 그
타겟 어플리케이션(즉, AP2)은 대응하는 키(K3-2)로 나타낸다. 만일의 경우를 생각하여 소정 명령은 다
수의 어플리케이션으로 로드되어야만 하고, 키(K3)는 와일드카드를 포함한다.
도 4에 나타낸 바와 같이, 마스터 파일(MF)은 플래그 레지스터(FR)를 포함한다. 도 5에 플래그 레지스
터(FR)를 보다 상세하게 나타냈다. 플래그 레지스터(FR)는 각각 1비트의 다수의 플래그(F-1,F-2, ...)
로 이루어진다. 각각의 플래그는 카드의 프로세서(도 2의 11) 명령에 대응한다. 프로세서 및/또는 소
프트웨어는 대응하는 플래그가 설정되면 명령의 실행이 금지되는 방식으로 배열된다. 메모리 위치를 갱
신하는 갱신(UPDATE)명령은 오직 F-3이 설정되면 실행된다. 따라서, 추가적인 보호는 권한이 없거나 의
도하지 않은 (어플리케이션 특정)명령의 실행에 반하여 제공된다.
플래그 레지스터는 적절한 명령, 즉 SET_FLAG-i에 의해 제어되고, 여기서 I는 플래그 넘버이다. 관련된
명령이 주문형 명령이면, 모든 플래그는 초기에 설정되고, 따라서 주문형 명령의 실행을 보호한다. 플
래그는 명령의 확실성이 확인되고 명령의 실행이 허가되면, 명령-확인 명령(즉, VALIDATE)에 의해 재설정
된다. 마스터 파일(MF)과 다수의 플래그 레지스터가 카드에 포함되는 다른 파일에 플래그 레지스터(FR)
가 위치된다.
도 6의 순서도는 본 발명에 따른 방법의 실시예를 개략적으로 나타낸다. 단계 100에서 진행이 초기화
된다. 이것은 다수의 명령을 생성하는 단계와 어플리케이션 공급자(AP)에 명령을 제공하는 단계를 포함
하는데, 그 어플리케이션 공급자(AP)는 차례로 명령을 카드 발행자(CI)와 제3관계자(TTP)로 전달한다.
단계 101에서 카드 발행자(CI)는 제1키(K1)를 이용하여 명령(도 3의 COM)의 제1확인코드(MAC1)를 생성한
다. 코드(MAC1)는 어플리케이션 공급자(AP)로 전달된다. 명령은 단계 101 또는 미리 단계 100에서 카
드 발행자(CI)로 전달된다.
유사하게, 단계 102에서 제3관계자(TTP)는 제2키(K2)를 이용하여 명령(도 3의 COM)의 제2확인코드(MAC2)
를 생성한다. 코드(MAC2)는 어플리케이션 공급자(AP)로 전달된다. 명령은 단계 102에서 또는 미리 단
계 100에서 제3관계자로 전달된다.
단계 103에서 어플리케이션 공급자(AP)는 관련된 확인코드(MAC1과 MAC2)에 명령(COM)을 스마트 카드(SC)
로 전달한다(cf. 도 3). 단계 104에서 스마트 카드(SC)는 키 K1과 K2를 각각 이용하여 명령(COM)의 확
인코드(MAC1′, MAC2′)를 생성함으로써 코드(MAC1, MAC2)를 재생성한다. 단계 105에서 재생성된 코드
(MAC1′)는 수신된 코드(MAC1)와 비교된다. 만약 코드가 동일하면, 제어가 단계 106으로 넘어가고, 그
렇지 않으면 진행이 퇴거된다.
만약 진행이 퇴거되면, 명령을 삭제하거나 플래그 레지스터의 플래그를 설정함으로써 카드에 의해 수신된
명령(COM)이 효과적으로 억제된다. 명령(COM) 및 관련된 확인코드의 재전송이 요구된다. 바람직하게
는, 재전송의 수가 모니터 되어 재전송 회수가 3회 또는 5회를 초과하면 재전송이 종결된다.
단계 106에서 재생성된 코드(MAC2′)는 수신된 코드(MAC2)와 비교된다. 만약 코드가 동일하면, 제어가
단계 107로 넘어가고, 그렇지 않으면 진행이 퇴거된다.
단계 107에서 스마트 카드(SC)는 플래그 레지스터(FR)에 대응하는 플래그를 재설정함으로써 명령(COM)을
가능하게 한다(cf. 도 5). 이제 명령(COM)이 실시되어 실행된다. 단계 108에서 진행이 종결된다.
도 6의 순서도에는 보다 바람직한 실시예의 기본 단계만을 나타냈다. 제3 및 제4확인코드(MAC3,MAC4)의
결정 및 평가와 같은 추가적인 단계는 명료성을 위해 생략되었다. 따라서, 상술한 실시예는 본 발명의
목적으로부터 이탈하지 않는 범위 내에서 다양하게 변경 및 추가하여 실시할 수 있다.
(57) 청구의 범위
청구항 1
제1관계자(AP)에 의해 명령(COM)을, 제2관계자(CI)로부터 발행되는 스마트 카드(SC)에 안전하게 로딩하기
위한 방법에 있어서,
상기 제2관계자(CI)가 제1키(K1)를 이용하여 명령의 제1확인코드(MAC1)를 생성하는 단계와,
제3관계자(TTP)가 제2키(K2)를 이용하여 명령의 제2확인코드(MAC2)를 생성하는 단계,
상기 코드(MAC1,MAC2)에 명령을 상기 카드(SC)로 전달하는 단계 및,
상기 각각의 제1 및 제2키(K1,K2)를 이용하여 상기 제1 및 제2확인코드(MAC1,MAC2)를 재생성하여 상기 전
달된 코드(MAC1,MAC2)와 재생성된 코드(MAC1′,MAC2′)를 비교함으로써 상기 카드(SC)가 상기 명령(COM)
을 확인하는 단계를 구비하여 이루어진 것을 특징으로 하는 명령을 스마트 카드에 안전하게 로딩하기 위
한 방법.
청구항 2
제1항에 있어서, 상기 확인이 실패할 경우, 상기 카드(SC)로의 전달과 다음 확인이 반복되고, 상기 확인
이 성공할 때 까지 상기 로드된 명령(COM)의 사용이 차단되는 것을 특징으로 하는 명령을 스마트 카드에
안전하게 로딩하기 위한 방법.
9-4
1019980707711
청구항 3
제2항에 있어서, 소정 회수(N), 즉 10번 이하의 확인이 실패할 경우 상기 로드된 명령(COM)은 영원히 불
능상태인 것을 특징으로 하는 명령을 스마트 카드에 안전하게 로딩하기 위한 방법.
청구항 4
제3항에 있어서, 상기 불능상태는 카드에 저장된 상기 제2관계자(CI)의 키(K1)를 변경하는 카드(1)에 의
해 수행되는 것을 특징으로 하는 명령을 스마트 카드에 안전하게 로딩하기 위한 방법.
청구항 5
제1항 내지 제4항중 어느 한항에 있어서, 상기 명령(COM)은 주문형 명령(ASC)인 것을 특징으로 하는 명령
을 스마트 카드에 안전하게 로딩하기 위한 방법.
청구항 6
제1항 내지 제5항중 어느 한항에 있어서, 상기 제1 및 제2확인코드(MAC1,MAC2)는 ANSI X9.19 표준에 따라
생성된 메시지 확인코드인 것을 특징으로 하는 명령을 스마트 카드에 안전하게 로딩하기 위한 방법.
청구항 7
제1항 내지 제6항중 어느 한항에 있어서, 상기 카드는 몇 개의 어플리케이션(AP1,AP2)을 포함하고, 이 각
각의 어플리케이션(AP1,AP2)은 제3확인코드(MAC3)에 제공된 명령을 확인하기 위한 개별 제3키(K3-2)에 제
공되며, 상기 제3확인코드(MAC3)는 상기 개별 제3키(K3-2)를 이용하여 생성되는 것을 특징으로 하는 명령
을 스마트 카드에 안전하게 로딩하기 위한 방법.
청구항 8
제1항 내지 제7항중 어느 한항에 있어서, 상기 제2관계자(CI)는 명령(COM)의 제4확인코드(MAC4)를 생성하
고, 이 제4확인코드(MAC4)는 상기 제1키(K1) 또는 제2키(K2)를 포함하지 않는 것을 특징으로 하는 명령을
스마트 카드에 안전하게 로딩하기 위한 방법.
청구항 9
제1항 내지 제8항중 어느 한항에 있어서, 상기 카드(SC)는 플래그 레지스터(FR)로 이루어지고, 상기 각각
의 플래그(F-1,F-2,...)는 프로세서(11)의 명령에 대응하며, 상기 플래그(F-2)가 설정되면 상기 명령의
실행이 금지되는 것을 특징으로 하는 명령을 스마트 카드에 안전하게 로딩하기 위한 방법.
청구항 10
기판(2)과, 프로세서(11)와 키(K1,K2)를 포함하는 메모리(12)를 갖춘 집적회로(10)를 구비하여 구성된
카드(1)에 있어서,
상기 집적회로는(10) 적어도 2개의 키(K1,K2)를 이용하여 수신된 명령(COM)의 확인코드(MAC1,MAC2)를 재
생하여 수신된 확인코드(MAC1,MAC2)와 재생된 확인코드(MAC1′,MAC2′)를 비교하도록 배열된 것을 특징으
로 하는 카드.
청구항 11
제10항에 있어서, 상기 메모리(12)는 개별 어플리케이션(AP1,AP2)을 갖춘 데이터 구조로 이루어지며, 상
기 각각의 어플리케이션은 확인코드를 재생하고 이 확인코드와 관련된 명령을 선택적으로 로딩하기 위한
개별 키(K3-1,K3-2)를 포함하는 것을 특징으로 하는 카드.
청구항 12
제10항 또는 제11항에 있어서, 상기 메모리(12)는 플래그 레지스터(FR)로 이루어지고, 상기 각각의 플래
그(F-1,F-2,...)는 상기 프로세서(11)의 명령에 대응하며, 상기 플래그(F-2)가 설정되면 상기 명령의 실
행이 금지되는 것을 특징으로 하는 카드.
도면
9-5
1019980707711
도면1
도면2
9-6
1019980707711
도면3
9-7
1019980707711
도면4
도면5
9-8
1019980707711
도면6
9-9
1019980707711