KR910007037B1 - 휴대용 카드 및 그 카드에 응용 프로그램을 로딩하는 방법 - Google Patents

휴대용 카드 및 그 카드에 응용 프로그램을 로딩하는 방법 Download PDF

Info

Publication number
KR910007037B1
KR910007037B1 KR1019870014583A KR870014583A KR910007037B1 KR 910007037 B1 KR910007037 B1 KR 910007037B1 KR 1019870014583 A KR1019870014583 A KR 1019870014583A KR 870014583 A KR870014583 A KR 870014583A KR 910007037 B1 KR910007037 B1 KR 910007037B1
Authority
KR
South Korea
Prior art keywords
memory
application
predetermined
loading
card
Prior art date
Application number
KR1019870014583A
Other languages
English (en)
Other versions
KR880009319A (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 KR880009319A publication Critical patent/KR880009319A/ko
Application granted granted Critical
Publication of KR910007037B1 publication Critical patent/KR910007037B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K21/00Information retrieval from punched cards designed for manual use or handling by machine; Apparatus for handling such cards, e.g. marking or correcting
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/10Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
    • G07F7/1008Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K17/00Methods or arrangements for effecting co-operative working between equipments covered by two or more of main groups G06K1/00 - G06K15/00, e.g. automatic card files incorporating conveying and reading operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/355Personalisation of cards for use
    • G06Q20/3552Downloading or loading of personalisation data

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Accounting & Taxation (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Stored Programmes (AREA)
  • Storage Device Security (AREA)
  • Credit Cards Or The Like (AREA)

Abstract

내용 없음.

Description

휴대용 카드 및 그 카드에 응용프로그램을 로딩하는 방법
제1도는 본 발명의 스마트 카드(amart card)의 개략도.
제2도는 스마트 카드상에 응용프로그램에 로딩하는 방법을 도시한 개략도.
* 도면의 주요부분에 대한 부호의 설명
10 : 스마트 카드 12 : 명령 프로세서
20 : 통신 라인 50 : 메인 프레임 프로세서
본 발명은 산업상으로 "스마트 카드" 또는 "집적 회로 카드" 또는 "칩 카드"로 불리우는 종류의 카드상에 프로세서 및 메모리를 갖는 휴대용 카드에 관한 것이다. 특히, 본 발명은 상기와 같은 카드의 제조 방법 및 그 카드를 개선하려는 것으로, 상기 카드가 적어도 부분적으로 "블랭크(공백)상태" 또는 응용프로그램이 로드되지 않은 상태로 제조되어 나중에 적당한 응용 프로그램이 주문에 따라 로드되는 카드에 관한 것이다.
스마트 카드 및 그 카드를 이용하기 위한 시스템에 대하여 많은 기술이 공지되어 있다. 이러한 스마트 카드는예를들어, 카스트루찌에게 허여된 미합중국 특히 제3,702,464호 및 모레노에게 허여된 제4,007,355호에 기술되어 있다. 상기와 같은 스마트 카드에서는 제조 초기에 응용 프로그램이 카드내의 판독 전용 기억부에 기억되어 완전히 변경 불가능하도록 고정되어 있다. 상기와 같은 판독 전용 기억부는 제조 공정중 제조 초기에 응용 프로그램이 결정되어 스마트 카드상에 로드되어야 하는 제약을 갖는 것을 특징으로 한다. 한편 프로그램이 로드되고 난 다음, 프로그램에 약간의 수정을 하려면 카드 전체를 해체하지 않는 경우에 최소한 칩은 해체되어야 한다.
수정 불가능한 판독 전용 기억부에 고착된 응용 프로그램을 갖는 스마트 카드를 제조하는 상기 기술은 전체 응용 프로그램 개발 공정이 스마트 카드 제조 공정보다 선행되어야 한다는 것을 의미한다. 이는 완성된 카드가 이용되기까지, 스마트 카드를 위한 응용 프로그램의 개념 파악에서부터 개발 및 카드 제조에 상당히 오랜 시간이 걸리게 한다. 그 결과, 스마트 카드 자체 이외의 어느 곳에 응용 프로그램을 "브레드 보드(bread-board)"시키는 것이 필요하며, 이러한 브레드 보드는 최종 제품 이외의 기구 또는 도구를 사용하여, 개발 공정에서 또다른 단계를 필요로 할 수도 있다. 또한 응용 프로그램의 시뮬레이션은 예를들어 브레드 보드된 응용프로그램과 소통을 위한 단자의 시뮬레이션을 할 수 있게 하는 부가적인 소프트 웨어를 필요로 할 수도 있다.
고정된 프로그램을 가지며 수정 불가능한 카드는 다른 제약 및 단점을 피하는데 있어서 장점을 가질 수도 있다. 그러나 예를들어, 프로그램이 변경 가능하며, 초기에 수정가능한 상태인 메모리에 고착되는 경우, 메모리가 그곳에 로드된 응용 프로그램을 포함하는 가를 판별하기 어려울 수도 있다. 고정되어 변경 불가능한 프로그램을가진 카드에 의해 피할 수 있는 제한 및 단점의 제2에는 비승인된 엑세스 및 데이타의 수정에 대한 안전 조치가 고정된 수정 불가능한 메모리를 갖는 카드에서는 필요치 않다는 것이다.
신분 확인 또는 계좌 잔고 확인에서 실패 횟수가 같은 처리 정보를 기억하기 위해 재기록가능한 메모리를 사용하는 응용 프로그램이 기억된 스마트 카드가 공지되어 있다. 상기와 같은 값은 주기적인 갱신을 필요로 하며, 과거 시스템에서 유리하게 사용되었다. 그러나, 이런 어떤 시스템도 스마트 카드에 한번 응용 프로그램이 고정되고 나면 프로그램 자체의 변경을 허용하지 않았다.
최초에 어떤 특정 프로그램이 로드되지 않은 메모리를 갖는 카드에서, 메모리는 초기에 내부에서 랜덤 패턴을 가질 것이다. 이는 원하는 응용 프로그램과 같은 어떤 특정 프로그램이 로드되었는가 되지 않았는가를 판별하거나 또는 우연한 메모리의 초기화로부터의 랜덤 패턴이 내부에 로드된 응용 프로그램의 일부를 나타내는 가를 판별하는 것을(불가능하지 않을 경우) 어렵게 된다.
기존의 몇몇 스마트 카드는 개별적으로 처리되고 조립되고 상호 연결되어야 하는 다중 집적 회로 소자를 포함한단 점에서 바람직스럽지 못하다.
그래서, 종래 기술의 스마트 카드는 고정된 변경 불가능한 메모리를 갖는 점에서 바람직스럽지 못하다. 그러나, 응용 프로그램을 기억하는 수정 가능한 메모리의 일부분은 단지 관리부만을 변경시킨다. 그래서, 종래 기술의 스마트는 한계점과 단점을 가지며, 스마트 카드를 사용하며, 발급하고, 운용하려는 사회의 요구에 부합되지 않는다.
본 발명은 응용 프로그램을 위한 수정 가능한 또는 재로드 가능한 기억소자를 포함하는 스마트 카드 및 그 제조 방법을 제공하므로서 종래 기술의 스마트 카드의 한계점 및 단점을 극복한다. 제조시에, 카드는 응용 프로그램의 수신 및 기억을 위한 필요한 명령을 포함하는 부트 스트랩프로그램을 포함한다. 한번 로드된 응용 프로그램은 다시 로드가능한 기억 소자에 로드될 수 있다. 상기 방법으로 응용 프로그램은 제조후에도 로드될 수 있고, 필요에 따라 다시 로드 또는 변경될 수도 있다.
본 발명의 양호한 실시예에서, 스마트 카드의 메모리에 프로그램을 로드하는 것에는 응용 프로그램이 실제로 로드되었는가를 표시하는 플래그의 로딩을 수반한다. 그다음, 단지 플래그만을 테스트하여 스카트 카드에 응용 프로그램이 내부에 로드되었는가를판단한다. 이는 제조 초기에 랜덤 데이타가 응용 프로그램이 카드에 로드되었는가를 판단하는 것을 어렵게 만드는 종래 기술의 메모리의 한계점을 극복한다. 본 발명의 스마트 카드는 내부에 로드된 프로그램에 대한 허용되지 않은 부당한 변경을 방지하기 위한 보안 특징을 포함하고 있다. 여러가지 형태를 취할 수 있는 상기 특징을 위해 메모리의 일부를 판독하는 것을 방지하여, 도용을 방지한다. 양호한 실시예에서 이는 메모리의 덤프(dump)를 실행하기전에 메모리의 첫번째 2페이지를 소거하여 이루어진다. 상기 방법으로 카드는 다시 프로그래밍을 할 수 있는 여유가 있지만, 메모리에 기억된 초기 프로그램과 비밀키가 어떤 것인가를 알려고 하는 도용자는 상기 페이지를 판독하려할때 판독하기 전에 상기 페이지가 (영구히)사라지게 되어 판독할 수 없다. 이렇게 되면, 카드는 전체 프로그램이 프로세서에 의해 다시 로드될때까지는 스마트 카드로서 아무런 쓸모가 없다. 그렇지 않으면, 프로그램을 약간 수정하려는(예를들어, 신원을 변경하거나, 처리기록을 피하려는)비 양심적인 사림이 상기 데이타를 억세스시켜서 시스템내에 들어 있는 본인의 책임을 회피하게 할 수 있다.
본 발명이 스마트 카드 및 그 제조 방법은 소프트웨어가 개발되는 동안 하드웨어의 제조(즉, 응용프로그램이 로드되지 않은 카드의 제조)가 이루어질 수 있는 장점을 갖는다. 그래서, 응용 프로그램이 로드되는 스마트 카드이 비교적 긴 개발 과정이 소프트웨어의 동시 개발에 의해 짧은 시간에 이루어진 수 있다. 또한, 응용 프로그램이 필요에 따라 재로드 가능하고 또는 변경 가능하다는 사실는 스마트 카드 제조 업자가 얼마나 많은 특정 프로그램이 필요한가를 예측할 필요가 없다는 것을 의미한다. 대량의 "공백 상태"의 카드가 미리 제조된 다음, 원하는 응용로그램이 로드될 수 있다.
응용 프로그램이 개발되어 제조후에 로드된다는 사실은 여러가지 다른 장점을 갖는다. 스마트 카드의 발행자(예,은행)는 그들이 보안 계획 또는 신용 하한의 세부사항 또는 다른 민감한 사항들을 스마트 카드의 제조업자에게 노출시키지 않을 것이다. 이런 모든 특징은 공백상태인 스마트 카드내에 나중에 은행 자체에 의해 로드될 수 있다. 또한 실수로 또는 시장 요건의 변화로 카드내에 어떤 특징을 포함시키지 않았던 은행도 로딩되는 응용 프로그램을 간단히 변경시키고 은행도 로딩되는 응용 프로그램을 간단히 변경시키고 스마트 카드가개량된 응용 프로그램을 갖도록 할 수 있다.
본 발명의 실시예에서, 본 발명의 스마트 카드는 종래 설계의 집적 회로를 이용하여 제조될 수 있는 반면, 본 발명의 또 다른 실시예는 신용카드 자체의 베이스에 필요한 개별 장착부 뿐만 아니라 여러가지 집적 회로 사이의 상호 연결을 피하면서 1개의 주문 집적 회로를 사용하는 것을 기대할 수 있다. 종래 설계 형태의 집적 회로를 사용하면 작은 크기의 스마트카드가 신속하에 그리고 저렴한 비용으로 제조 가능하지만, 1개의 집적회로를 사용함으로써 조립시에도 절약이 가능하다.
본 발명의 그 이외 목적 및 장점은, 첨부된 특허청구의 범위와 도면을 참고로 하여 양호한 실시예에 대한 다음 설명을 보면 본 분야의 기술에 숙련된 사람에게는 보다 명백해질 것이다.
제1도는 명령 프로세서(12), 판독 전용 기억부 또는 메모리(14)와 수정 가능한 메모리(16)를 포함하는 스마트 카드(10)를 도시한다. 입출력(I/O0 라인(18)은 카드(10)와 외부 세계(외부 통신장치)사이의 통신을 위해 명령 프로세서(12)에 접속되어 있다. 통상 라인(20)은 카드부분 사이의 내부 통신을 위해 명령 프로세서(12), 판독 전용 기억부(14) 및 수정 가능한 메모리(16)를 상호 접속시킨다. 수정 가능한 메모리(16)의 한 부분은 플래그(22)로서 표시되어 있다. 스마트 카드(12)는 양호한 실시예에서, 표준형 신용 카드 크기이며, ISO에 의해 제정된 신용 카드에 대한 공인 표준치에 맞는 것이다. 도시하지 않았지만, 자기 스트라이프 통신 용도의 정보를 기억하기 위한 적당한 상업용 표준에 맞는 자는 형태의 자기 스트라이프를 포함할 수도 있으며, 이들은 모두 공지되어 있는 것이다. 스마트 카드의 본질적 기능이 손상되지 않는한, 특정 용도에 의해 요구되는 바와 같은 보안상의 표시, 발행자, 고객성명, 계좌번호와 같은 다음 표식이 필요에 따라 카드에 첨가될 수 있다.
명령 프로세서(12)는 공지된 것으로 시중에서 구할 수 있는 형태의 통상적인 마이크로프로세서이다. 본 출원에 있어 인텔사의 모델 8051이 가장 적합하지만, 다른 프로세서가 유리하게 사용될 수 있다.
판독 전용 기억부(14)는 제조시에 내장된 부트 스트랩을 포함하는 고정된 판독 전용 메모리이다. 상기 부트 스트랩 프로그램은 기본 명령어 목록과 응용 프로그램을 수정가능한 메모리(16)에 로드시키는 명령어를 포함한다. 여러가지 판독 전용 기억 소자가 본 발명의 설계에 유리하게 사용될 수 있지만, 인텔사의 8015 마이크로 프로세서는 판독 전용 메모리가 내장되어 있어, 별도의 판독 전용 메모리를 필요로 하지 않는다.
수정가능 메모리(16)는 응용 프로그램용 기억부로 사용된다. 양호한 실시예에서 상기 메모리는 전기적으로 소거 가능한 메모리(EEPROM)이지만, 다른 비휘발성 메모리도 유리하게 사용될 수 있다. 본 발명은 아메리칸 마이크로-디바이스사가 제조한 모델 9864A EEPROM을 사용하고 있으나, 다른 유사한 소자도 대신 사용될 수 있다.
수정가능한 메모리(16)는 응용 프로그램을 포함하며, 인코드 키 또는 개인 확인 데이타와 같은 공개되어서는 안되지만 수정가능한 다른 정보를 포함한다. 이들 응용 프로그램능 동작중에 스마트 카드가 처리하며 스마트 카드에 대한 한 업무로부터 다른 업무로 변할 수 있는 알고리즘 또는 처리절차이다. 이러한 응용 프로그램은 스마트 카드와 외부세계, 예를들어 은행 업무 처리를 실행하기 위한 자동 현금 인출기간의 통신을 위한 기술을 포함한다. 다른 응용 프로그램은 필요한 보안 및 식별 과정을 행하며, 원하는 실제 처리 및/또는 처리의 로그 입력 형태로 스마트 카드상에 기록을 행한다.
보안 또는 식별 응용 프로그램은 특징에 있어서, 스마트 카드와 단말기에 대해 장치 진위 확인을 상호 수행할 필요가 있다. 즉, 각각 서로가 적합한 장치이어야 하며, 단지 전체 시스템을 간파할 수 있는 정보를 얻을 수 있는 유도수단이어서는 안된다. 이점에 있어서, 의미있는 정보의 유도수단으로의 노출을 피하는 암호 문의 및 패스 워드 시스템이 1985년 11월 15일자 에이브라햄, 더블릅 및 넥키프라우에 의해 출원되어 본발명의 앙수인에게 양도된 미합중국 특허출원 제799,367호에 공지되어 있다. 상기 특허는 특히 수정가능한 메모리(160에 로드될 수 있는 응용 프로그램에 대한 설명과 같이 본원에 참고로 되어 있다. 일반적으로, 고정된 메모리를 갖는 스마트 카드에 고정된 다른 응용 프로그램은, 카드 제조후에 응용 프로그램의 로드가 가능하고 필요에 따라 응용 프로그램을 변경시킬 경우 재로드 가능한 본 발명의 스마트 카드용으로 적합하다.
응용 프로그램은 또한 사용자 식별을 위해 사용될 수 도 있다. 이는 서두에 논의된 장치 진위 확인과는 다르며, 일반적으로 상기 진위 확인에 뒤이어 실행된다. 상기와 같은 사용자가 식별의 목적은 스마트 카드를 이용하여 처리를 실행하거나 다른 업무를하는 사람이 식별되게 하려는 것이다. 현재 은행에서 사용하는 바와 같은 자동 현금 인출 처리와 연관하여 상기 사용자 확인은 개인 신분 변호(PIN)를 자동 현금 인출기 키보드로 입력하여 이루어질 수 있다. 그러면 카드는 입력된 번호를 기억된 또는 계산된 값과 비교하여 사용자가 정확한 PIN 번호를 입력하였는지를 판단한다. 지문 분석 또는 서명 분석과 같은 보다 정확하고 위조할 수 없는 다른 형태의 사용자가 확인 방법이 응용 프로그램에 이용될 수 있다. 상기와 같은 개량된 형태의 적극적인 개인 확인 방법은 현재 공지되어 있으며 적당한 응용 프로그램에 의해 처리될 수 있다.
물론, I/O 라인(18)을 통해 외부 세계와 통신을 위한 데이타를 포멧팅하는 응용 프로그램도 또한 필수적인 응용 프로그램이다. 데이타는 접수장치(앞서 언급한 자동 현급 인출기와 같은)가 인식하여 사용할 수 있는 포멧으로 제공되어야 한다. 다른 응용 프로그램은 스마트카드가 다루도록 설계된 처리 또는 다른 작업을 실행하는 세부 사항을 포함한다. 이러한 것에는 자동 현금 인출기에서의 현금 인출 또는 판매 여건의 관점에서 전자적 자금 이송 장치가 있을 수 있는데, 여기서 소비자가 구매를 하면 상점에 설치되어 은행 또는 어음 교환소에 전자적으로 연결된 기계에서 소비자의 구좌로부터 상인의 구좌로 돈이 전달이 실행된다. 스마트카드는 수정하여 기록할 수 있는 메모리를 포함하기 때문에 처리의 기록은 응용 프로그램을 통해 스마트 카드 자체에 기록될 수 있어서, 사용자는 잘못이 발생된 처리 및 청구사항을 알 수 있다.
I/O 라인(18)은 명령 프로세서를 외부 세계에 접속시킨다. 상기 외부 세계는 카드가 삽입되는 자동 현금 인출기 또는 통신을 위한 적당한 장치일 수 있다. 오늘날 현존하는 전형적인 스마트 카드의 시스템에서, 상기 I/O 라인(18)은 소정의 위치와 간격으로 규정된 표준치의 원형 패턴으로 스마트 카드의 표면상에 베치된 다수의 전기적 접점에서 단말되어 있다. 단자는 소정의 규격에 따라 상호간에 데이타를 전송하기 위해 물리적으로 I/O 라인(18)과 접촉하도록 장치된 상보성 접촉부를 갖는다. 카드의 통신이 가능한 것이면 다른 형태의 접속(비록 비접촉 접속이더라도)도 유리하게 사용될 수 있다.
전형적으로, 상기 통신은 데이터가 순차적으로 전송이 되는 직렬 통신이다
프로그램의 최초 로딩을 위해 I/O 라인(18)은 메인 프레임 프로세서로부터 응용 프로그램을 수신하도록 접속되어 있으며, 여기서, 명령은 순차적으로 다운 로드되는 수신된 순서대로 수젖가능한 메모리(160에 적렬로 기억된다. 이와 달리, 각 명령어가 로드되는 수정가능한 메모리에서 번지를 지정하여 명령어가 다른 프로세서로부터 다운 로드될 수도 있다. 데이터의 양과 기억 패턴에 따라, 또한 메모리가 완전히 중복 기록되고 대체되거나 또는 선택적으로 중복 기록될 것인지에 따라 어느 한 기술이 이용될 수 있다.
본 실시예에서는 명령 프로세서(12), 판독 전용 기억부(14)와 수정가능한 메모리(16)를 중접적으로 설명하고, 종래의 시중에서 구입할 수 있는 부품을 사용하는 것을 기술되어 있지만, 모든 부품이 단말 칩으로된 설계 형태를 사용할 수도 있다. 이렇게 하는 것이 많은 설계자에 의해 양호한 실시예로 선택된 것으로 기대되지만, 이는 주문 설계된 칩을 필요로 한다. 오늘날 회로 설계자의 기술범위 내에서 상기와 같은 사실은 충분히 이해될 수 있지만, 시중에서 구입할 수 있는 여러가지 부품의 사용이 많은 분야에서 바람직한 것으로 생각된다.
제2도는 다시 로드 가능하거나 또는 수정 가능한 응용 프로그램을 갖는 본 시스템의 스마트 카드를 만드는데 있어서, 응용 프로그램을 다운 로드시키는 방법을 예시한다. 상기 도면에 도시된 바와 같이 카드(10)는 메인 프레임 프로세서(50)에서 실행되는 응용프로그램의 개발과는 별개의 것이다. 응용 프로그램이 메인 프레임 프로세서(50)에 기억되고, 컴파일되며(필요한 경우), 디버그된 다음 테스트 된다. 응용 프로그램(52)은 상기 결과로 만들어진다. 응용 서버(server)프로그램(54)은 응용 프로그램(52)를 스마트 카드(10)상에 로드시키는 것을 도우며 상기 프로그램이 카드상에 로드되었는가를 검증한다.
제2도에서 기술된 기능을 달성하기 위해 필요한 소프트웨어를 부트스트랩 프로그램의 일부로서 포함하는 카드(10)는 라인(60)상의 로드 신호(후술하는 바와 같이 기본적으로 더블 리셋트이다)에 응답한다. 라인(60)상의 상기 신호는 로드 명령과 실행 명령을 구별하는 판별기(62)에 의해 우선 처리된다. 실행 명령은 블럭(64)으로 가고(여기서 실행된다), 로드 명령은 블럭(66)으로 간다. 블럭(66)에서, 로드 명령은 보안 기억부 감시가 행해져 비밀 페이지가 미리 소거되고 프로그램이 로드 상태에 있도록 한다. 블럭(66)으로부터 제어는 상태 보고 기능이 있는 블럭(65)으로 진행된다. 각 단계가 정확하게 이루어지고 카드가 부가적인 데이타를 위한 준비 상태가 되어 있을때, 상태 보고 기능은 라인(70)사으로 응용 서버프로그램(54)에 신호를 보낸다. 라인(70)상의 신호에 응답하여, 응용 서버 프로그램(54)은 부가적이인 명령 또는 응용 프로그램의 부분을 라인(72)을 통해 명령 번역기(74)에 보낸다. 모든 명령은 일정한 길이 및 검사 합계(checksum)값으로 전달되어 데이타가 전송중에 상실되지 않게 한다. 검사 합계값 계산은 "배타적 OR"의 데이타로 전송이 되며, 이는 길이 정보와 함께 전달되는 정보가 변화되지 않게 하는 기능을 하며, 이러한 기술은 디지탈데이타 전송분야에 공지되어 있다. 다음, 명령 변역기(74)는 응용 서버 프로그램(54)으로부터의 명령에 따라, 페이지 테스트, 초기 로딩, 데이타 로딩, 페이지 확인 또는 로딩의 종료등의 각 기능을 나타내는 5개 블럭(74a,74b,74c,74d,74e)로 도시된 기능중의 하나를 실행하도록 진행한다. 블럭(74a)에서 페이지를 테스트하는 기능은 페이지상의 데이타의 각 바이트에 데이타를 기록 및 판독하여 EEPRON 메모리(16)에서 특정 페이지의 데이타를 검사하는, 근본적으로 메모리 검사이다. 블럭(74b)에서 초기화 로딩의 기능은 다음번 로드 초기화 전에 EEPROM형태, 제1바이트의 데이타를 위한 어드레스 및 바이트 계수를 셋트한다. 블럭(74c)에서 로딩 데이터의 기능은 응용 서버 프로그램(54)으로부터 1개 바이트 데이타를 카드의 수정 가능한 메모리(16)에 전달하는 것이다. 밝혔럭(74d)에서 페이지를 확인하는 기능은 표시된 페이지를 위한 검사 합계의 내부 발생 기능을 하며, 상기 검사 합계는 전체 페이지가 정확히 전달되었는가를 확인하기 긱위해 응용 서버 프로그램(54)에 전달된다. 블럭(74e)에서 로딩 종료의 단계는 또 다른 로드 명령(프로그램 또는 데이타의 손상 또는 부적당한 조정을 표시하는 그러한 로드 명령)을 방지하기 위해 카드에서 로크 스위치 비트를 셋트시킨다. 로크 스위치가 셋트된 다음 또 다른 응용 프로그램을 로드시키기 위해 다음에서 기술되는 바와 같은 로드 명령의 더블 리셋트 시퀸스가 뒤따라야 한다.
카드에서 "로드"기능은 리셋트 라인(60)상에서 시간적 더블 리셋트 시퀸스에 의해 호출된다. 새로 만들어진 카드에서, 즉, 기억된 응용 프로그램이 없이 제조된 카드에서, 응용 프로그램 기억부(16)내의 어떤 비트 또는 플래그(22)의 상태를 예측하는 것은 불가능하다. 그래서 어떤 경우에서 응용 프로그램이 카드상에 로드되어 있는지 또는 응용 프로그램을 갖고 있지 않아서 프로그램을 필요로 하는 것인지를 아는 것이 바람직하다. 상기 시간 더블리셋트 시퀀스는 상술한 것을 달성하며, 응용 프로그램이 로드되었는가에 대한 어떤 불확실성 또는 애매한 점을 해소한다.
리셋트 라인(60)이 활성화 되었을때, 명령 프로세서(12)는 프로그램이 로드되었는가에 대한 불명료성을 방지하도록 설계된 명령부로 진행된다. 로드 명령에 응답하여 제1단계는 소정의 시퀀스에 대한 응용 프로그램 기억부(16)의 소정부를 테스트하는 것이다. 만약 상기 시퀀스가 발견되지 않는 경우, 로드 명령은 응용 프로그램 기억부의 소정부분에 상기 소정 시퀀스를 기록한다. 타이머는 일정 시간 간격후 소정 부분으로 부터 소정 시퀀스를 소거하도록 셋트된다. 만약 프로그램로드가 이루어지면, 리셋트 라인(60)에서의 제2활성화는 소정 시퀀스의 기록후 일정시간 간격이 끝나기 전에 이루어져야 한다. 그러면 응용 프로그램 기억부(16)의 소정 부분에서 소정 시퀀스에 대한 테스트는 성공적이다(왜냐하면, 제1리셋트에 의해 방금 기록이 되었고, 그리고 아직 소거가 되지 않았기 때문이다). 이러한 시퀀스가 존재하는 것은 그것이 제2리셋트이거나 또는 프로그램 로드를 요구하는 신호인 것을 표시한다. 프로그램 로드로 인한 제1결과는 기억부의 소정 부분에서 소정 시퀸스가 소거되는 것이다. 제2결과는 메모리의 선택된 페이지 예를들어, 응용 프로그램 기억부의 페이지 0 및 1의 중복 기록이다. 상기 중복 기록은 이전 프로그램으로부터의 모든 민감한 정보, 예를들어, 시스템 보안사항을 극복하는데 유용한 인코드 키 또는 개인 식별 정보를 효과적으로 소거한다.
물론, 기록된 소정 시퀀스가 제1리셋트의 결과로 기록되지 않은 경우, 상기 시퀀스가 우연히 나타나지 않도록 하기 위해 충분히 커야 한다. 그렇지 않으면, 더블 리셋트는 프로그램 로딩을 위한 표시기로서 효과가 없다. 즉, 소정이 시퀀스가 제1리셋트에 의해 기록되지 않은 소정부분에서 나타나는 경우, 프로그램 로드는 제1리셋트 신호에 응답하여 부적절하게 시도될 수 있다. 또한, 만약 상기 소정 시퀀스가 리셋트 기능을 통하지 않고 나타나는 경우(일정 시간 간격후에 상기 시퀀스를 소거함), 소정 시퀀스는 소거되지 않을 수도 있다. 간단히 말해, 상기 소정 시퀀스는 프로그램 로딩을 표시하기 위해 상기 시간적 더블 리셋트동안 제1리셋트를 통해서만 발생되어야 한다. 물론, 스마트 카드 설계 및 제조 기술에 숙련된 사람은 본 발명을 실행하는 양호한 형태에 많은 대체예가 있을 수 있다는 것을 알 수 있는데 본 발명의 몇가지 특징은 상기 설명에 기술된 다른 특징의 대응 사용이 없이도 사용될 수 있다. 예를들어 로드된 응용 프로그램의 존재 또는 부존재를 표시하는 플래그의 이용은 상기와 같은 카드를 처리하는데 편리하다. 즉, 상기의 부존재는 응용 프로그램이 로드되었는가를 결정하는데 많은 노력을 필요로 할 수도 있다. 그러나 카드의 전체 내용은 프로그램이 로드되었는가를 나타내는 정합 상태가 하나의 응용 프로그램을 포함하는 것으로 지적되어 있지만, 하나이상의 응용 프로그램이 카드에 로드될 수 있으며, 이용 가능한 메모리와 비교하여 프로그램의 크기에 의해서만 제한될 수 있다. 그래서, 하나의 카드는 외부 입력에 의해 선택되는 다수의 응용 프로그램을 동시에 포함할 수도 있다. 응용 프로그램을 로딩시키는 설명된 기술은 바람직한 것이지만, 다른 기술도 유용하게 사용될 수 있다. 또한 관련 기술에 숙련된 사람은 응용 프로그램을 만들고 다운 로드시키는 방법과 같은 어떤 특징이 양호한 실시예의 상기 설명에 기술된 것으로부터 변경될 수도 있다는 것을 알 수 있을 것이다. 그러므로, 상기 설명은 본 발명의 양호한 실시예의 단지 예시에 불과한 것으로 본 발명을 제한하는 것이 아니며, 본 발명의 범위는 첨부된 청구범위에 의해서만 한정되는 것으로 이해해야겠다.

Claims (4)

  1. 외부 장치와의 정보 수신 및 송신을 위해 외부 장치와 선택적으로 접속되는 휴대용 카드(10)에 있어서, 표준 신용카드의 크기와 거의 같은 크기를 가지며, 카드를 외부 장치에 선택적으로 접속시키기 위한 접촉부를 포함하는 베이스를 구비하며; 상기 베이스에 장착되며 상기 접촉부에 전기적으로 접속되어 있는 프로세서(12)를 구비하며, 상기 프로세서는 외부장치와의 정보 수신 및 송신을 위한 수단을 포함하며; 응용프로그램 기억부와 플래그부(22)를 포함하며 프로세서에 접속되어 있는 비 휘발성 메모리(16)를 구비하며, 상기 플래그부는 응용 프로그램이 로드되었음을 가리킴에 따라 응용 프로그램이 로드되는 것과 동시에 기록되는 데이타를 포함하며; 여기서 상기 프로세서에는 카드에 응용 프로그램이 로드되었는지를 판정하도록 플래그부를 테스트하는 수단과, 제1리셋트 신호에 응답하여 메모리의 선정된 영역에 소정의 시퀀스를 기록하는 수단과, 선정된 시간주기가 끝난후 상기한 소정의 시퀀스를 소거하는 수단과, 상기 소정의 시퀀스가 메모리의 선정된 영역에 있을 때에만 응용 프로그램의 메모리 호의 로드를 허용하는 수단이 더 제공되어, 응용 프로그램은 선정된 시간 주기 내에 수신되는 두개의 리셋트 신호에 응답하여서만 로드될 수 있는 휴대용 카드.
  2. 프로세서(12), 메모리(16), 외부장치와 통신하기 위한 수단(18)을 갖고 있으며, 상기 프로세서는 상기 메모리 및 상기 통신 수단에 접속되어 있는 휴대용 카드(10)상으로 응용 프로그램을 로드시키는 방법으로서, 외부 장치로부터 제어신호를 감지하는 단계와; 제어 신호에 응답하여 데이타의 소정의 시퀀스가 메모리의 소정 부분에 존재하는지를 판정하도록 테스트하는 단계와; 소정의 시퀀스가 소정 부분에 존재치 않으면, 데이타의 소정의 시퀀스를 소정 부분에 일시적으로 로드시키는 단계와; 데이타의 소정의 시퀀스가 소정 부분에 이미 존재하고 있으면, 외부 장치로부터 메모리의 응용 프로그램을 로드시키는 단계를 구비하여, 응용 프로그램의 로딩은 일시적으로 로드된 소정의 시퀀스가 존재한는 동안에만 이루어질 수 있는 응용 프로그램 로딩 방법.
  3. 프로세서(12), 메모리(16), 외부 장치와 통신하기 위한 수단(18)을 갖고 있으며, 상기 프로세서는 상기 메모리 및 상기 통신 수단에 접속되어 있는 휴대용 카드(10)상으로 응용 프로그램을 로드시키는 방법으로서, 외부 장치로부터 제어신호를 감지하는 단계와, 제어 신호에 응답하여 데이타의 소정의 시퀀스가 메모리의 소정 부분에 존재하는지를 판정하도록 테스트하는 단계와, 소정이 시퀀스가 소정 부분에 존재치 않으면, 데이터의 소정의 시퀀스를 소정 부분에 일시적으로 로드시키고 그런다음 기록된후 선정된 시간 주기가 지나면 데이타의 소정의 시퀀스를 소거하는 단계와; 데이타의 소정의 시퀀스가 소정 부분에 이미 존재하고 있으면, 외부 장치로부터 메모리로 응용 프로그램을 로드시키는 단계를 구비하여, 응용 프로그램의 로딩은 선정된 시간 주기 동안에만 허용되느 응용 프로그램 로딩 방법.
  4. 제3항에 기재된 종류의 휴대용 카드상으로 응용 프로그램을 로드시키는 방법으로서, 응용 프로그램을 로드시키는 단계는 응용 프로그램이 메모리에 로드되었는지를 구별하도록 소정의 플래그를 메모리에 기억시키는 단계를 더 포함하여, 카드가 응용 프로그래을 포함하고 있는지를 판정할 수 있는 응용 프로그램 로딩 방법.
KR1019870014583A 1987-01-20 1987-12-21 휴대용 카드 및 그 카드에 응용 프로그램을 로딩하는 방법 KR910007037B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US450187A 1987-01-20 1987-01-20
US004.501 1987-01-20
US004501 1987-01-20

Publications (2)

Publication Number Publication Date
KR880009319A KR880009319A (ko) 1988-09-14
KR910007037B1 true KR910007037B1 (ko) 1991-09-16

Family

ID=21711095

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019870014583A KR910007037B1 (ko) 1987-01-20 1987-12-21 휴대용 카드 및 그 카드에 응용 프로그램을 로딩하는 방법

Country Status (5)

Country Link
EP (1) EP0275510B1 (ko)
JP (1) JPS63182795A (ko)
KR (1) KR910007037B1 (ko)
CN (1) CN1010059B (ko)
DE (1) DE3782328T2 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100939201B1 (ko) * 2001-10-09 2010-01-28 주식회사 비즈모델라인 휴대폰에 삽입 또는 이탈착되는 아이씨칩

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5200600A (en) * 1988-08-29 1993-04-06 Hitachi Maxell, Ltd. IC card and method for writing information therein
JP2750704B2 (ja) * 1988-08-29 1998-05-13 日立マクセル株式会社 Icカードの情報書込み方式及びicカード
DE3833241A1 (de) * 1988-09-30 1990-04-05 Deutsche Bundespost Verfahren zur programmierung von chipkarten
FR2638549A1 (fr) * 1988-11-02 1990-05-04 Nsi Sarl Lecteur-enregistreur de cartes a memoire
JPH02214994A (ja) * 1989-02-15 1990-08-27 Hitachi Maxell Ltd Icカード
EP0396894B1 (en) * 1989-04-27 1995-05-24 International Business Machines Corporation Secure management of keys using control vectors with multi-path checking
JPH0452890A (ja) * 1990-06-15 1992-02-20 Mitsubishi Electric Corp Icカード
FI93999C (fi) * 1992-06-11 1995-06-26 Nokia Mobile Phones Ltd Piirikortille asennetun mikroprosessorin ohjelmamuistin ohjelmoiminen
FR2693575B1 (fr) * 1992-07-09 1994-08-19 Gemplus Card Int Carte à mémoire de masse avec fonction entrée/sortie.
GB2284689B (en) * 1993-12-07 1998-02-18 Inventec Corp Ic card back-up generating and programming device
US5802274A (en) * 1994-05-04 1998-09-01 International Business Machines Corporation Cartridge manufacturing system for game programs
DE19545020A1 (de) * 1995-12-02 1997-06-05 Dieter Ammer Verfahren zum Freigeben von Identifikationsgegenständen
US5887254A (en) * 1996-04-26 1999-03-23 Nokia Mobile Phones Limited Methods and apparatus for updating the software of a mobile terminal using the air interface
US5923884A (en) * 1996-08-30 1999-07-13 Gemplus S.C.A. System and method for loading applications onto a smart card
US6575372B1 (en) 1997-02-21 2003-06-10 Mondex International Limited Secure multi-application IC card system having selective loading and deleting capability
US6317832B1 (en) 1997-02-21 2001-11-13 Mondex International Limited Secure multiple application card system and process
US6230267B1 (en) 1997-05-15 2001-05-08 Mondex International Limited IC card transportation key set
US6385723B1 (en) 1997-05-15 2002-05-07 Mondex International Limited Key transformation unit for an IC card
US6488211B1 (en) 1997-05-15 2002-12-03 Mondex International Limited System and method for flexibly loading in IC card
US6220510B1 (en) 1997-05-15 2001-04-24 Mondex International Limited Multi-application IC card with delegation feature
US6328217B1 (en) 1997-05-15 2001-12-11 Mondex International Limited Integrated circuit card with application history list
DE19720431A1 (de) * 1997-05-15 1998-11-19 Beta Research Ges Fuer Entwick Vorrichtung und Verfahren zur Personalisierung von Chipkarten
US6164549A (en) 1997-05-15 2000-12-26 Mondex International Limited IC card with shell feature
EP1026623A4 (en) * 1997-10-03 2004-08-18 Hitachi Ltd PORTABLE TERMINAL FOR CI CARD
US6357665B1 (en) 1998-01-22 2002-03-19 Mondex International Limited Configuration of IC card
US6736325B1 (en) 1998-01-22 2004-05-18 Mondex International Limited Codelets
US6742120B1 (en) 1998-02-03 2004-05-25 Mondex International Limited System and method for controlling access to computer code in an IC card
US6108100A (en) * 1998-02-20 2000-08-22 Hewlett-Packard Company Apparatus and method for end-user performance upgrade
DE19839847A1 (de) * 1998-09-02 2000-03-09 Ibm Speichern von Datenobjekten im Speicher einer Chipkarte
US6546373B1 (en) * 1999-01-18 2003-04-08 Mastercard International Incorporated System and method for recovering refundable taxes
DE19925389A1 (de) * 1999-06-02 2000-12-21 Beta Res Gmbh Verfahren und Vorrichtung zur Übertragung von Daten auf SmartCards
FR2797968B1 (fr) * 1999-08-24 2001-10-12 Schlumberger Systems & Service Dispositif et procede de chargement de commandes dans une carte a circuit integre
GB9925227D0 (en) 1999-10-25 1999-12-22 Internet Limited Data storage retrieval and access system
GB9928737D0 (en) * 1999-12-03 2000-02-02 Ncr Int Inc Self-service terminal
WO2002006979A2 (en) * 2000-07-13 2002-01-24 Nds Limited Configurable hardware system
TW584801B (en) 2000-12-11 2004-04-21 Ntt Docomo Inc Terminal and repeater
DE10104242A1 (de) * 2001-01-31 2002-08-14 Giesecke & Devrient Gmbh Teilfunktionsvorrichtung für ein Transaktionsendgerät
AUPR471401A0 (en) 2001-05-02 2001-05-24 Keycorp Limited Method of manufacturing smart cards
DE102004039201A1 (de) 2004-08-12 2006-02-23 Giesecke & Devrient Gmbh Verfahren zur Herstellung eines tragbaren Datenträgers
KR100700484B1 (ko) * 2005-07-20 2007-03-28 주식회사 유비닉스 비휘발성 메모리용 데이터 기록 관리 시스템 및 그 방법
FR2892261A1 (fr) * 2005-10-17 2007-04-20 France Telecom Procede et systeme de gestion des applications d'un terminal mobile
JP2007128468A (ja) * 2005-11-07 2007-05-24 Dainippon Printing Co Ltd Icカード発行システム、および、icカード発行方法
US20080022380A1 (en) * 2006-05-25 2008-01-24 Gemalto, Inc. Method of patching applications on small resource-constrained secure devices
SG2013071964A (en) * 2013-09-24 2015-04-29 Mastercard Asia Pacific Pte Ltd A method for electrically personalizing a payment chip and a payment chip

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60153582A (ja) * 1984-01-23 1985-08-13 Kyodo Printing Co Ltd Icカ−ド
US4613937A (en) * 1984-02-22 1986-09-23 Cordis Corporation Method for externally programming a device implanted in a patient
US4845351A (en) * 1985-09-30 1989-07-04 Casio Computer Co., Ltd. IC card
AU7129487A (en) * 1986-03-10 1987-09-28 Data Card Corporation Smart card apparatus and method of programming same

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100939201B1 (ko) * 2001-10-09 2010-01-28 주식회사 비즈모델라인 휴대폰에 삽입 또는 이탈착되는 아이씨칩

Also Published As

Publication number Publication date
EP0275510A3 (en) 1989-04-05
KR880009319A (ko) 1988-09-14
DE3782328T2 (de) 1993-04-22
JPS63182795A (ja) 1988-07-28
EP0275510B1 (en) 1992-10-21
CN1010059B (zh) 1990-10-17
CN87108157A (zh) 1988-08-31
EP0275510A2 (en) 1988-07-27
DE3782328D1 (de) 1992-11-26

Similar Documents

Publication Publication Date Title
KR910007037B1 (ko) 휴대용 카드 및 그 카드에 응용 프로그램을 로딩하는 방법
US6578768B1 (en) Method and device for selecting a reconfigurable communications protocol between and IC card and a terminal
KR900005212B1 (ko) 패스워어드를 변경할 수 있는 ic 카아드
JP2506061B2 (ja) マイクロプロセッサおよび少なくとも一つのプログラム可能な読み出し専用メモリを備えるデ―タ担体と外部との間でオペレ―ションを実行する方法
CA2281576C (en) Multi-application ic card system
KR100284996B1 (ko) 스마트 카드로부터의 데이타 독출
US7702908B2 (en) Tamper resistant module certification authority
US6338435B1 (en) Smart card patch manager
KR970004106B1 (ko) Ic 카드
US6505144B2 (en) Portable object reader terminal, portable object, and process for self-diagnosis and supervision of same
US5442165A (en) Secure IC card system with reusable prototype IC card
US5039850A (en) IC card
AU764307B2 (en) Method and device for selecting a reconfigurable communications protocol between an IC card and a terminal
WO1999040548A1 (en) Configuration of ic card
JP2651426B2 (ja) Icカード
US6443362B1 (en) Integrated circuit card with a bonus counter and a method counting bonuses
US11151338B2 (en) Securing a transaction by means of a smart card and smart card
EP1384197B1 (en) Method of manufacturing smart cards
JP2011060136A (ja) 携帯可能電子装置、および、携帯可能電子装置におけるデータ管理方法
JP2002342734A (ja) 携帯可能電子装置およびその履歴データ記憶方法
JPH08287207A (ja) Icカード
JPH087061A (ja) ハイブリッドカード及びその情報管理方式
JPS6356743A (ja) プログラムデ−タチエツク方式
JPH0192890A (ja) Icカード
JP2005085073A (ja) Icカード

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
G160 Decision to publish patent application
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee