KR100340928B1 - 스마트카드와 클라이언트간의 보안 유지를 위한 통신시스템 및 그 방법 - Google Patents

스마트카드와 클라이언트간의 보안 유지를 위한 통신시스템 및 그 방법 Download PDF

Info

Publication number
KR100340928B1
KR100340928B1 KR1020000061579A KR20000061579A KR100340928B1 KR 100340928 B1 KR100340928 B1 KR 100340928B1 KR 1020000061579 A KR1020000061579 A KR 1020000061579A KR 20000061579 A KR20000061579 A KR 20000061579A KR 100340928 B1 KR100340928 B1 KR 100340928B1
Authority
KR
South Korea
Prior art keywords
smart card
client
authentication
user
session key
Prior art date
Application number
KR1020000061579A
Other languages
English (en)
Other versions
KR20020031604A (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 오길록
Priority to KR1020000061579A priority Critical patent/KR100340928B1/ko
Publication of KR20020031604A publication Critical patent/KR20020031604A/ko
Application granted granted Critical
Publication of KR100340928B1 publication Critical patent/KR100340928B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0853Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • H04L9/0656Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer And Data Communications (AREA)

Abstract

본 발명은 스마트카드와 클라이언트간의 보안 유지를 위한 통신 시스템 및 그 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것으로, 스마트카드와 클라이언트간의 송수신 메시지를 안전하게 보호하여 보안을 유지하기 위한 통신 시스템 및 그 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하기 위하여, 상기 스마트카드의 인증키를 설정하고 인증플래그를 초기화하기 위한 초기화수단; 사용자 및 클라이언트 응용 인증과 세션키 생성을 통하여 상기 스마트카드와 사용자클라이언트간의 안전한 통신 채널을 생성하기 위한 통신 채널 생성수단; 상기 통신 채널 생성수단으로부터 생성된 세션키를 통하여 암호화된 메시지를 송수신하여 상기 스마트카드와 상기 사용자클라이언트간의 안전한 통신을 수행하기 위한 통신수단; 및 상기 통신 수행 후, 세션키 및 인증플래그를 초기화하여 상기 스마트카드와 상기 사용자클라이언트간의 안전한 통신 채널을 해제하기 위한 통신 채널 해제수단을 포함하며, 스마트카드와 클라이언트간의 안전한 통신 시스템 등에 이용됨.

Description

스마트카드와 클라이언트간의 보안 유지를 위한 통신 시스템 및 그 방법{System and method for secure communication between smart card and user client}
본 발명은 스마트카드와 클라이언트간의 보안 유지를 위한 통신 시스템 및 그 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것으로, 특히 스마트카드와 클라이언트간의 송수신 메시지를 안전하게 보호하여 보안을 유지하기 위한 통신 시스템 및 그 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것이다.
스마트카드 시스템은 신용카드 형태의 플라스틱 카드로서 그 내부에 연산기능을 수행하는 마이크로프로세서, 자료(Data)와 응용(Application)을 저장하는 기억장치 및 외부의 카드 판독기와의 인터페이스를 제공하는 입출력 장치를 포함하고있다.
종래의 스마트카드 시스템에서 스마트카드 사용자가 카드 판독기와 물리적인 통신 케이블로 연결된 사용자클라이언트(이하, 상기 클라이언트와 동일한 의미로 사용함)를 통하여 스마트카드로 명령어 처리 요청 메시지를 송신하면, 스마트카드는 수신된 요청 메시지를 내부의 마이크로프로세서 및 기억장치를 이용하여 처리하여 얻어진 결과 메시지를 다시 사용자클라이언트에게 송신하게 된다. 이에, 사용자클라이언트는 수신된 결과 메시지를 이용하여 원하는 작업을 수행하고 작업 결과를 스마트카드 사용자에게 출력해 준다.
그러나, 종래의 스마트카드와 사용자클라이언트간의 통신 방법에서의 가장 큰 문제점은 송수신 메시지에 대한 보안이다. 일반적으로 스마트카드에는 개인 신상 정보, 신용카드 정보, 개인 인증 정보, 은행 계좌 정보 등과 같은 공개되어서는 안되는 매우 중요한 개인 정보가 저장되어 있다.
따라서, 이러한 정보를 포함하는 송수신 메시지가 악의의 사용자에게 노출되는 경우 또는 스마트카드의 분실 및 도난이 발생하여 이를 습득한 제3자가 실제 스마트카드의 소유자로 가장하여 사용하거나 해킹 프로그램을 통하여 스마트카드에 저장된 자료를 빼내서 사용하는 경우에 실제 스마트카드의 소유자와 관련된 서비스 제공업체 및 금융기관 등에 발생할 수 있는 피해는 매우 심각할 것이다. 그러나, 이는 단지 발생 가능한 단편적인 예에 불과할 뿐이지 스마트카드를 사용하는 시스템이 이러한 통신상의 보안 문제로 인한 다양한 피해를 입을 가능성은 더욱 많을 것이다.
본 발명은, 상기한 바와 같은 문제점을 해결하기 위하여 안출된 것으로, 스마트카드와 클라이언트간의 송수신 메시지를 안전하게 보호하여 보안을 유지하기 위한 통신 시스템 및 그 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는데 그 목적이 있다.
즉, 본 발명은, 스마트카드의 인증키 설정 및 인증플래그 초기화를 통하여 안전한 통신 채널을 초기화하고, 사용자 및 클라이언트 응용 인증과 세션키 생성을 통하여 안전한 통신 채널을 생성하며, 생성된 안전한 통신 채널을 통하여 메시지를 송수신함으로써 스마트카드와 클라이언트간의 안전한 통신 기능을 제공하며, 이를 통하여 분실이나 도난시 발생할 수 있는 외부의 공격으로부터 스마트카드에 저장되어 있는 중요한 정보를 안전하게 보호하여 보안을 유지할 수 있도록 하는 통신 시스템 및 그 방법과 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는데 그 목적이 있다.
도 1 은 본 발명이 적용되는 스마트카드와 클라이언트간의 안전한 통신 시스템의 구성예시도.
도 2 는 본 발명에 따른 스마트카드와 클라이언트간의 보안 유지를 위한 통신 시스템에 대한 일실시예 구성도.
도 3 은 본 발명에 따른 스마트카드와 클라이언트간의 보안 유지를 위한 통신 방법에 대한 일실시예 흐름도.
도 4 는 본 발명에 따른 스마트카드와 클라이언트간의 보안 유지를 위한 통신 방법 중 스마트카드 인증키 설정 및 인증플래그 초기화 과정에 대한 일실시예 흐름도.
도 5a 내지 도 5c 는 본 발명에 따른 스마트카드와 클라이언트간의 보안 유지를 위한 통신 방법 중 스마트카드와 클라이언트간의 안전한 통신 채널 생성 과정에 대한 일실시예 흐름도.
도 6 은 본 발명에 따른 스마트카드와 클라이언트간의 보안 유지를 위한 통신 방법 중 스마트카드와 클라이언트간의 통신 과정에 대한 일실시예 흐름도.
도 7 은 본 발명에 따른 스마트카드와 클라이언트간의 보안 유지를 위한 통신 방법 중 스마트카드와 클라이언트간의 안전한 통신 채널 해제 과정에 대한 일실시예 흐름도.
* 도면의 주요 부분에 대한 부호의 설명
21 : 초기화부 22 : 통신 채널 생성부
23 : 통신부 24 : 통신 채널 해제부
상기 목적을 달성하기 위한 본 발명은, 스마트카드와 클라이언트간의 보안 유지를 위한 통신 시스템에 있어서, 상기 스마트카드의 인증키를 설정하고 인증플래그를 초기화하기 위한 초기화수단; 사용자 및 클라이언트 응용 인증과 세션키 생성을 통하여 상기 스마트카드와 사용자클라이언트간의 안전한 통신 채널을 생성하기 위한 통신 채널 생성수단; 상기 통신 채널 생성수단으로부터 생성된 세션키를 통하여 암호화된 메시지를 송수신하여 상기 스마트카드와 상기 사용자클라이언트간의 안전한 통신을 수행하기 위한 통신수단; 및 상기 통신 수행 후, 세션키 및 인증플래그를 초기화하여 상기 스마트카드와 상기 사용자클라이언트간의 안전한 통신 채널을 해제하기 위한 통신 채널 해제수단을 포함하여 이루어진 것을 특징으로 한다.
또한, 본 발명은, 스마트카드 시스템에 적용되는 스마트카드의 보안 유지를 위한 통신 방법에 있어서, 사용자클라이언트로부터의 연결 요청에 따라 상기 스마트카드의 인증키를 설정하고 인증플래그를 초기화하는 제 1 단계; 상기 사용자클라이언트로부터의 클라이언트 응용 인증 요청에 따라 사용자 및 클라이언트 응용 인증과 세션키를 생성하여 안전한 통신 채널을 생성하는 제 2 단계; 상기 생성된 세션키로 암호화된 메시지를 수신하여 얻은 결과값을 전송하기 위하여 통신 채널을 통해 통신을 수행하는 제 3 단계; 및 상기 통신 수행 후, 상기 사용자클라이언트로부터의 연결 해제 요청에 따라 상기 세션키 및 인증플래그를 초기화하여 상기 사용자클라이언트와의 연결을 해제하는 제 4 단계를 포함하여 이루어진 것을 특징으로 한다.
또한, 본 발명은, 스마트카드와 클라이언트간의 안전한 통신 시스템에 적용되는 스마트카드와 클라이언트간의 보안 유지를 위한 통신 방법에 있어서, 상기 스마트카드의 인증키를 설정하고 인증플래그를 초기화하는 제 1 단계; 사용자 및 클라이언트 응용 인증과 세션키 생성을 통하여 상기 스마트카드와 사용자클라이언트간의 안전한 통신 채널을 생성하는 제 2 단계; 상기 생성된 세션키를 통하여 암호화된 메시지를 송수신하여 상기 스마트카드와 상기 사용자클라이언트간의 안전한 통신을 수행하는 제 3 단계; 및 상기 통신 수행 후, 세션키 및 인증플래그를 초기화하여 상기 스마트카드와 상기 사용자클라이언트간의 안전한 통신 채널을 해제하는 제 4 단계를 포함하여 이루어진 것을 특징으로 한다.
그리고, 본 발명은, 프로세서를 구비한 스마트카드 시스템에, 사용자클라이언트로부터의 연결 요청에 따라 상기 스마트카드의 인증키를 설정하고 인증플래그를 초기화하는 기능; 상기 사용자클라이언트로부터의 클라이언트 응용 인증 요청에 따라 사용자 및 클라이언트 응용 인증과 세션키를 생성하여 안전한 통신 채널을 생성하는 기능; 상기 생성된 세션키로 암호화된 메시지를 수신하여 얻은 결과값을 전송하기 위하여 통신 채널을 통해 통신을 수행하는 기능; 및 상기 통신 수행 후, 상기 사용자클라이언트로부터의 연결 해제 요청에 따라 상기 세션키 및 인증플래그를 초기화하여 상기 사용자클라이언트와의 연결을 해제하는 기능을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.
또한, 본 발명은, 프로세서를 구비한 스마트카드와 클라이언트간의 안전한 통신 시스템에, 상기 스마트카드의 인증키를 설정하고 인증플래그를 초기화하는 기능; 사용자 및 클라이언트 응용 인증과 세션키 생성을 통하여 상기 스마트카드와 사용자클라이언트간의 안전한 통신 채널을 생성하는 기능; 상기 생성된 세션키를 통하여 암호화된 메시지를 송수신하여 상기 스마트카드와 상기 사용자클라이언트간의 안전한 통신을 수행하는 기능; 및 상기 통신 수행 후, 세션키 및 인증플래그를초기화하여 상기 스마트카드와 상기 사용자클라이언트간의 안전한 통신 채널을 해제하는 기능을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.
상술한 목적, 특징들 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명한다.
도 1 은 본 발명이 적용되는 스마트카드와 클라이언트간의 안전한 통신 시스템의 구성예시도이다.
도 1에 도시된 바와 같이, 스마트카드와 클라이언트간의 안전한 통신 시스템에서, 스마트카드(11)는 카드 판독기(Card Reader)에 삽입되어 있으며(스마트카드와 카드 판독기와의 인터페이스 방식은 크게 접촉식과 비접촉식이 있으나, 본 발명에서는 일반적으로 가장 널리 사용되는 접촉식 스마트카드 시스템의 경우를 예시함), 카드 판독기는 직렬 케이블(Serial Cable)과 같은 통신 케이블(13)을 통하여 사용자클라이언트(12)와 물리적으로 연결되어 있다.
이때, 통신시에는 스마트카드(11)와 사용자클라이언트(12)간의 메시지 송수신을 위한 안전한 통신 채널(Secure Communication Channel)(14)이 생성된다.
도 2 는 본 발명에 따른 스마트카드와 클라이언트간의 보안 유지를 위한 통신 시스템에 대한 일실시예 구성도이다.
도 2에 도시된 바와 같이, 스마트카드와 사용자클라이언트간의 보안 유지를 위한 통신 시스템은, 스마트카드(11) 내부의 인증키를 설정하고 인증플래그를 초기화하기 위한 초기화부(21)와, 사용자 및 클라이언트 응용 인증과 세션키 생성을 통하여 스마트카드(11)와 사용자클라이언트(12)간의 안전한 통신 채널을 생성하기 위한 통신 채널 생성부(22)와, 통신 채널 생성부(22)로부터 생성된 세션키를 통하여 암호화된 메시지를 송수신하여 스마트카드(11)와 사용자클라이언트(12)간의 안전한 통신을 수행하기 위한 통신부(23)와, 통신 수행 후 세션키 및 인증플래그를 초기화하여 스마트카드(11)와 사용자클라이언트(12)간의 안전한 통신 채널을 해제하기 위한 통신 채널 해제부(24)를 구비한다.
여기서, 초기화부(21)에서 설정되는 인증키에는 사용자 인증을 위한 개인식별번호(PIN : Personal Identification Number) 및 클라이언트 응용 인증키(Client Application Authentication Key)가 있다.
다음으로, 상기 각 구성요소의 상세 동작을 도 3 내지 도 7을 참조하여 상세히 설명하기로 한다.
도 3 은 본 발명에 따른 스마트카드와 클라이언트간의 보안 유지를 위한 통신 방법에 대한 일실시예 흐름도이다.
도 3에 도시된 바와 같이, 본 발명에 따른 스마트카드와 클라이언트간의 보안 유지를 위해 통신을 수행하기 위해서는 먼저 스마트카드(11) 내부의 인증키를 설정하고 인증플래그를 초기화한다(301).
그리고 나서, 사용자 및 클라이언트 응용 인증과 세션키 생성을 통하여 스마트카드(11)와 사용자클라이언트(12)간의 안전한 통신 채널을 생성한 후에(302), 생성된 세션키를 통하여 암호화된 메시지를 송수신하여 스마트카드(11)와 사용자클라이언트(12)간의 안전한 통신을 수행한다(303).
이어서, 통신이 완료된 후 세션키 및 인증플래그를 초기화하여 스마트카드(11)와 사용자클라이언트(12)간의 안전한 통신 채널을 해제한다(304).
도 4 는 본 발명에 따른 스마트카드와 클라이언트간의 보안 유지를 위한 통신 방법 중 스마트카드 인증키 설정 및 인증플래그 초기화 과정에 대한 일실시예 흐름도로서, 기본적으로 스마트카드 응용을 설치할 때 한번 수행되나 인증키 노출로 인한 변경의 필요성이 발생하는 경우 재수행이 가능하다.
도 4에 도시된 바와 같이, 먼저 초기화를 위하여 사용자클라이언트가 스마트카드로 연결을 요청하면(401), 스마트카드는 연결 요청을 수신하여 사용자클라이언트와의 연결을 설정한다(402).
이에, 사용자클라이언트는 사용자로부터 개인식별번호 P를 입력받고(403), 클라이언트 응용 인증키 K를 설정하여(404), 스마트카드 응용 설치 요청과 함께 P와 K를 스마트카드로 전송한다(405).
그러면, 스마트카드는 응용 설치 요청을 처리한 후(106), 인증키 설정 및 세션키 초기화를 위하여 내부에 존재하는 클라이언트 응용 인증키 Ka, 사용자 인증키 Ku를 각각 수신된 P와 K로 설정하고 세션키 Ks를 널(null) 값으로 설정하고(407), 클라이언트 용용 인증플래그 Fa 및 사용자 인증플래그 Fu를 각각 거짓(false) 값으로 초기화한다(408).
이어서, 스마트카드의 초기화 과정이 완료되면 사용자클라이언트의 연결 해제 요청에 따라(409) 클라이언트와의 연결을 해제하고(410) 인증키 설정 및 인증플래그 초기화 과정을 성공적으로 완료한다(411).
도 5a 내지 도 5c 는 본 발명에 따른 스마트카드와 클라이언트간의 보안 유지를 위한 통신 방법 중 스마트카드와 클라이언트간의 안전한 통신 채널 생성 과정에 대한 일실시예 흐름도이다.
먼저, 도 5a는 클라이언트 응용 인증 단계로서 사용자클라이언트가 스마트카드로 연결을 요청하면(501) 연결 요청을 수신한 스마트카드는 사용자클라이언트와의 연결을 설정한다(502). 연결 설정한 후 사용자클라이언트가 클라이언트 응용 인증 요청을 스마트카드로 송신하면(503) 스마트카드는 클라이언트 응용 인증 요청에 따라 임의의 난수값 N을 생성하여 사용자클라이언트로 송신한다(504).
이에, 사용자클라이언트는 수신된 난수값 N을 클라이언트 응용 인증키 K로 암호화한 값 Ne를 생성한 후 스마트카드로 전송한다(505).
이어서, 스마트카드는 수신된 Ne를 내부의 클라이언트 응용 인증키 Ka로 복호화한 값 Nd를 생성하고(506), Nd와 N 값이 동일한 값인지 비교하여(507) 이 두 값이 동일하지 않은 경우 인증플래그 Fa를 거짓(false) 값으로 설정하고 클라이언트로 인증 실패 메시지를 전송하면(508) 클라이언트가 응용 인증 실패 처리하고(509), 이 두값이 동일한 경우 인증플래그 Fa를 참(true) 값으로 설정하고(510) "A" 과정으로 넘어간다.
다음, 도 5b는 사용자 인증 단계로서, 사용자클라이언트가 사용자로부터 개인식별번호 P를 입력받아(511) 스마트카드 소유자 인증 요청과 함께 스마트카드로 개인식별번호 P를 전송한다(512).
그러면, 스마트카드는 내부의 사용자 인증키 Ku와 수신된 개인식별변호 P가 동일한지를 비교하여(513) 이 두값이 동일하지 않은 경우 인증플래그 Fa와 Fu를 각각 거짓(false) 값으로 설정하고 인증 실패 메시지를 클라이언트로 전송하면(514), 클라이언트가 스마트카드 소유자 인증 실패 처리하고(515), 이 두 값이 동일한 경우 인증플래그 Fu를 참(true) 값으로 설정한 후(516) "C" 과정으로 넘어간다.
마지막으로, 도 5c는 세션키를 생성 및 설정하는 단계로서, 스마트카드에서 난수값 M을 생성하여(517) 세션키 Ks를 M값으로 설정하고(518), 이 값을 클라이언트 응용 인증키 Ka로 암호화한 값 Ke를 생성한 후 사용자클라이언트로 전송한다(519).
이에, 사용자클라이언트는 수신된 Ke를 인증키 K로 복호화하여 세션키 S를 구하여(520) 안전한 통신 채널 생성을 성공적으로 완료한다(521).
도 6 은 본 발명에 따른 스마트카드와 클라이언트간의 보안 유지를 위한 통신 방법 중 스마트카드와 클라이언트간의 통신 과정에 대한 일실시예 흐름도이다.
도 6에 도시된 바와 같이, 먼저 안전한 통신 채널 생성이 완료되면 이를 통하여 사용자클라이언트와 스마트카드는 암호화된 메시지를 송수신하게 된다.
즉, 사용자클라이언트는 스마트카드에서 처리해야 하는 명령어 C를 설정하고(601), 이것을 세션키 S로 암호화한 값 Ce를 계산하여 스마트카드로 전송한다(602). 이때, 상기 명령어는 스마트카드에서 수행할 동작코드 및 이에 필요한 파라메터값들로 구성된다.
이에, 스마트카드는 암호화된 명령어 Ce를 수신하여 내부의 세션키 Ks로 복호화하여 명령어 Cd를 구하고(503), 복호화한 명령어 Cd를 수행하여 결과값 R을 얻는다(604). 이어서, 결과값 R을 세션키 Ks로 암호화한 값 Re를 계산하여 사용자클라이언트로 전송한다(605).
그러면, 사용자클라이언트는 수신된 Re를 세션키 S로 복호화하여 결과값 Rd를 구하고(506), 명령어 C에 대한 스마트카드의 수행 결과값 Rd를 처리하여 통신을 성공적으로 완료한다(607). 이러한 통신 과정은 하나의 트랜잭션 처리를 완료하기 위하여 스마트카드가 수행해야 하는 모든 명령어들에 대하여 반복될 수 있다.
도 7 은 본 발명에 따른 스마트카드와 클라이언트간의 보안 유지를 위한 통신 방법 중 스마트카드와 클라이언트간의 안전한 통신 채널 해제 과정에 대한 일실시예 흐름도이다.
도 7에 도시된 바와 같이, 상기의 안전한 통신 채널을 통한 스마트카드와 사용자클라이언트간의 모든 통신 과정이 완료되면 통신 채널을 해제하여야 한다.
즉, 사용자클라이언트는 안전한 통신 채널의 해제를 위하여 스마트카드에게 연결 해제 요청을 송신한다(701).
이에, 스마트카드는 안전한 통신 채널의 해제를 위하여 내부 세션키 Ks를 널(null) 값으로초기화하고(702), 클라이언트 응용 인증플래그 Fa 및 사용자 인증플래그 Fu를 각각 거짓(false) 값으로 초기화한 후(703), 사용자클라이언트와의 연결을 해제한다(704).
이어서, 스마트카드 내부의 세션키와 인증플래그의 초기화 및 연결 해제 과정이 처리되면 사용자클라이언트는 안전한 통신 채널 해제를 성공적으로완료한다(705).
이상에서 설명한 본 발명은 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니고, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하다는 것이 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 명백할 것이다.
상기한 바와 같은 본 발명은, 스마트카드 시스템에서 사용자 및 클라이언트 응용에 대한 인증과 세션키의 생성을 통하여 올바른 스마트카드 사용자 및 클라이언트 응용 여부를 검증하고, 스마트카드와 사용자클라이언트간의 안전한 통신 채널을 생성하며, 생성된 통신 채널을 통하여 암호화된 메시지를 송수신함으로써 스마트카드와 사용자클라이언트간의 안전한 통신 기능을 제공할 수 있는 효과가 있다.
또한, 본 발명은, 이를 통하여 분실이나 도난시 발생할 수 있는 외부의 공격으로부터 스마트카드에 저장되어 있는 중요한 정보를 안전하게 보호하여 정보의 누출로 인해 발생할 수 있는 심각한 피해를 미연에 방지할 수 있는 효과가 있다.

Claims (9)

  1. 스마트카드와 클라이언트간의 보안 유지를 위한 통신 시스템에 있어서,
    상기 스마트카드의 인증키를 설정하고 인증플래그를 초기화하기 위한 초기화수단;
    사용자 및 클라이언트 응용 인증과 세션키 생성을 통하여 상기 스마트카드와 사용자클라이언트간의 안전한 통신 채널을 생성하기 위한 통신 채널 생성수단;
    상기 통신 채널 생성수단으로부터 생성된 세션키를 통하여 암호화된 메시지를 송수신하여 상기 스마트카드와 상기 사용자클라이언트간의 안전한 통신을 수행하기 위한 통신수단; 및
    상기 통신 수행 후, 세션키 및 인증플래그를 초기화하여 상기 스마트카드와 상기 사용자클라이언트간의 안전한 통신 채널을 해제하기 위한 통신 채널 해제수단
    을 포함하는 스마트카드와 클라이언트간의 보안 유지를 위한 통신 시스템.
  2. 스마트카드 시스템에 적용되는 스마트카드의 보안 유지를 위한 통신 방법에 있어서,
    사용자클라이언트로부터의 연결 요청에 따라 상기 스마트카드의 인증키를 설정하고 인증플래그를 초기화하는 제 1 단계;
    상기 사용자클라이언트로부터의 클라이언트 응용 인증 요청에 따라 사용자및 클라이언트 응용 인증과 세션키를 생성하여 안전한 통신 채널을 생성하는 제 2 단계;
    상기 생성된 세션키로 암호화된 메시지를 수신하여 얻은 결과값을 전송하기 위하여 통신 채널을 통해 통신을 수행하는 제 3 단계; 및
    상기 통신 수행 후, 상기 사용자클라이언트로부터의 연결 해제 요청에 따라 상기 세션키 및 인증플래그를 초기화하여 상기 사용자클라이언트와의 연결을 해제하는 제 4 단계
    를 포함하는 스마트카드의 보안 유지를 위한 통신 방법.
  3. 스마트카드와 클라이언트간의 안전한 통신 시스템에 적용되는 스마트카드와 클라이언트간의 보안 유지를 위한 통신 방법에 있어서,
    상기 스마트카드의 인증키를 설정하고 인증플래그를 초기화하는 제 1 단계;
    사용자 및 클라이언트 응용 인증과 세션키 생성을 통하여 상기 스마트카드와 사용자클라이언트간의 안전한 통신 채널을 생성하는 제 2 단계;
    상기 생성된 세션키를 통하여 암호화된 메시지를 송수신하여 상기 스마트카드와 상기 사용자클라이언트간의 안전한 통신을 수행하는 제 3 단계; 및
    상기 통신 수행 후, 세션키 및 인증플래그를 초기화하여 상기 스마트카드와 상기 사용자클라이언트간의 안전한 통신 채널을 해제하는 제 4 단계
    를 포함하는 스마트카드와 클라이언트간의 보안 유지를 위한 통신 방법.
  4. 제 3 항에 있어서,
    상기 제 1 단계는,
    상기 사용자클라이언트로부터의 연결 요청에 따라, 상기 스마트카드가 연결 요청을 수신하여 상기 사용자클라이언트와의 연결을 설정하는 제 5 단계;
    상기 사용자클라이언트가 사용자로부터 개인식별번호(P)를 입력받아 상기 클라이언트 응용 인증키(K)를 설정하고, 상기 스마트카드 응용 설치 요청과 함께 상기 개인식별번호(P) 및 상기 클라이언트 응용 인증키(K)를 상기 스마트카드로 전송하는 제 6 단계;
    상기 스마트카드 응용 설치 요청을 처리한 스마트카드가 내부에 존재하는 클라이언트 응용 인증키(Ka) 및 사용자 인증키(Ku)를 각각 상기 수신된 개인식별번호(P) 및 상기 클라이언트 응용 인증키(K)로 설정하고, 세션키(Ks)를 널(null) 값으로 설정하며, 클라이언트 용용 인증플래그(Fa) 및 사용자 인증플래그(Fu)를 각각 거짓(false) 값으로 초기화하는 제 7 단계; 및
    상기 초기화 과정이 완료되면 상기 사용자클라이언트의 연결 해제 요청에 따라 연결을 해제하고, 인증키 설정 및 인증플래그 초기화 과정을 완료하는 제 8 단계
    를 포함하는 스마트카드와 클라이언트간의 보안 유지를 위한 통신 방법.
  5. 제 3 항 또는 제 4 항에 있어서,
    상기 제 2 단계는,
    상기 사용자클라이언트로부터의 연결 요청에 따라, 상기 스마트카드가 사용자클라이언트와의 연결을 설정하고, 클라이언트 응용 인증 요청을 수신하는 제 9 단계;
    상기 클라이언트 응용 인증 요청에 따라, 소정의 난수값(N)을 생성하여 전송하면 상기 사용자클라이언트가 클라이언트 응용 인증키(K)를 이용하여 수신된 난수값(N)을 인증키(K)로 암호화한 값(Ne)을 생성하여 상기 스마트카드로 전송하는 제 10 단계;
    상기 전송된 인증키(K)로 암호화한 값(Ne)을 내부의 클라이언트 응용 인증키(Ka)를 이용하여 복호화한 값(Nd)을 생성하고, 상기 복호화한 값(Nd)과 난수값(N)이 동일한 값인지를 비교하여 동일하면 인증플래그(Fa)를 참(true) 값으로 설정하고, 동일하지 않으면 인증플래그(Fa)를 거짓(false) 값으로 설정하여 클라이언트 응용 인증 실패로 처리하는 제 11 단계;
    상기 인증플래그(Fa)를 참(true) 값으로 설정한 후에, 상기 사용자클라이언트가 사용자로부터 개인식별번호(P)를 입력받아서 스마트카드 소유자 인증 요청과 함께 상기 스마트카드로 전송하는 제 12 단계;
    상기 스마트카드가 내부의 사용자 인증키(Ku)와 상기 수신된 개인식별변호(P)를 비교하여 두 값이 동일하면 인증플래그(Fu)를 참(true) 값으로 설정하고, 동일하지 않으면 인증플래그(Fa) 및 인증플래그(Fu)를 각각 거짓(false)값으로 설정하여 상기 스마트카드 소유자 인증 실패로 처리하는 제 13 단계;
    상기 인증플래그(Fu)를 참(true) 값으로 설정한 후에, 난수값(M)을 생성하여 세션키(Ks)를 난수값(M)으로 설정하고, 이 값을 클라이언트 응용 인증키(Ka)로 암호화한 값(Ke)을 생성한 후 상기 사용자클라이언트로 전송하는 제 14 단계; 및
    상기 전송된 암호화한 값(Ke)을 인증키(K)로 복호화하여 세션키(S)를 구하여 통신 채널을 생성하는 제 15 단계
    를 포함하는 스마트카드와 클라이언트간의 보안 유지를 위한 통신 방법.
  6. 제 5 항에 있어서,
    상기 제 3 단계는,
    상기 사용자클라이언트가 상기 스마트카드에서 처리해야 할 명령어(C)를 설정하고, 명령어(C)를 세션키(S)로 암호화한 값(Ce)을 전송하는 제 16 단계;
    상기 암호화된 명령어(Ce)를 수신하여 내부의 세션키(Ks)로 복호화한 명령어(Cd)를 구하고, 구해진 명령어(Cd)를 수행하여 나온 결과값(R)을 취하는 제 17 단계;
    상기 결과값(R)을 세션키(Ks)로 암호화한 값(Re)을 상기 사용자클라이언트로 전송하는 제 18 단계; 및
    상기 전송받은 암호화된 값(Re)을 세션키(S)로 복호화하여 결과값(Rd)을 구하여 명령어(C)에 대한 결과값(Rd)을 처리하는 제 19 단계
    를 포함하는 스마트카드와 클라이언트간의 보안 유지를 위한 통신 방법.
  7. 제 5 항에 있어서,
    상기 제 4 단계는,
    상기 사용자클라이언트가 통신 채널의 해제를 위하여, 상기 스마트카드로 연결 해제 요청을 전송하는 제 16 단계;
    상기 연결 해제 요청에 따라 내부 세션키(Ks)를 널(null) 값으로 초기화하고, 클라이언트 응용 인증플래그(Fa) 및 사용자 인증플래그(Fu)를 각각 거짓(false) 값으로 초기화한 후, 상기 사용자클라이언트와의 연결을 해제하는 제 17 단계; 및
    상기 스마트카드의 초기화 및 연결 해제 과정이 완료되면 상기 사용자클라이언트가 통신 채널 해제를 완료하는 제 18 단계
    를 포함하는 스마트카드와 클라이언트간의 보안 유지를 위한 통신 방법.
  8. 프로세서를 구비한 스마트카드 시스템에,
    사용자클라이언트로부터의 연결 요청에 따라 상기 스마트카드의 인증키를 설정하고 인증플래그를 초기화하는 기능;
    상기 사용자클라이언트로부터의 클라이언트 응용 인증 요청에 따라 사용자및 클라이언트 응용 인증과 세션키를 생성하여 안전한 통신 채널을 생성하는 기능;
    상기 생성된 세션키로 암호화된 메시지를 수신하여 얻은 결과값을 전송하기 위하여 통신 채널을 통해 통신을 수행하는 기능; 및
    상기 통신 수행 후, 상기 사용자클라이언트로부터의 연결 해제 요청에 따라 상기 세션키 및 인증플래그를 초기화하여 상기 사용자클라이언트와의 연결을 해제하는 기능
    을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
  9. 프로세서를 구비한 스마트카드와 클라이언트간의 안전한 통신 시스템에,
    상기 스마트카드의 인증키를 설정하고 인증플래그를 초기화하는 기능;
    사용자 및 클라이언트 응용 인증과 세션키 생성을 통하여 상기 스마트카드와 사용자클라이언트간의 안전한 통신 채널을 생성하는 기능;
    상기 생성된 세션키를 통하여 암호화된 메시지를 송수신하여 상기 스마트카드와 상기 사용자클라이언트간의 안전한 통신을 수행하는 기능; 및
    상기 통신 수행 후, 세션키 및 인증플래그를 초기화하여 상기 스마트카드와 상기 사용자클라이언트간의 안전한 통신 채널을 해제하는 기능
    을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020000061579A 2000-10-19 2000-10-19 스마트카드와 클라이언트간의 보안 유지를 위한 통신시스템 및 그 방법 KR100340928B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020000061579A KR100340928B1 (ko) 2000-10-19 2000-10-19 스마트카드와 클라이언트간의 보안 유지를 위한 통신시스템 및 그 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020000061579A KR100340928B1 (ko) 2000-10-19 2000-10-19 스마트카드와 클라이언트간의 보안 유지를 위한 통신시스템 및 그 방법

Publications (2)

Publication Number Publication Date
KR20020031604A KR20020031604A (ko) 2002-05-03
KR100340928B1 true KR100340928B1 (ko) 2002-06-20

Family

ID=19694319

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020000061579A KR100340928B1 (ko) 2000-10-19 2000-10-19 스마트카드와 클라이언트간의 보안 유지를 위한 통신시스템 및 그 방법

Country Status (1)

Country Link
KR (1) KR100340928B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101224886B1 (ko) * 2010-08-05 2013-01-22 (주)이니시스 스마트 카드 판독기 드라이버에 의한 데이터 처리 방법

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100690431B1 (ko) 2005-07-28 2007-03-09 삼성전자주식회사 스마트 카드를 위한 통신 보안 방법 및 이를 위한 통신장치
KR101384702B1 (ko) * 2012-06-07 2014-04-14 주식회사 텔큐온 스마트 카드를 이용한 금융 서비스 제공 방법
JP6279217B2 (ja) * 2013-03-08 2018-02-14 株式会社東芝 Icカード、電子装置、及び携帯可能電子装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101224886B1 (ko) * 2010-08-05 2013-01-22 (주)이니시스 스마트 카드 판독기 드라이버에 의한 데이터 처리 방법

Also Published As

Publication number Publication date
KR20020031604A (ko) 2002-05-03

Similar Documents

Publication Publication Date Title
US10909531B2 (en) Security for mobile applications
CA2068488C (en) Hybrid public key algorithm/data encryption algorithm key distribution method based on control vectors
CN111654367B (zh) 密码运算、创建工作密钥的方法、密码服务平台及设备
CA2554300C (en) System and method for encrypted smart card pin entry
CN101350723B (zh) 一种USB Key设备及其实现验证的方法
CN109412812B (zh) 数据安全处理系统、方法、装置和存储介质
US20150248668A1 (en) Secure mobile device transactions
CN101999125A (zh) 用于增进对访问软件应用的限制性的系统和方法
US20230368194A1 (en) Encryption method and decryption method for payment key, payment authentication method, and terminal device
US9215070B2 (en) Method for the cryptographic protection of an application
KR100723868B1 (ko) Epc c1g2 rfid 시스템에서 태그와 판독장치간의 상호 인증 방법
WO2017208064A1 (en) System and method for ensuring system integrity against, and detection of, rollback attacks for stored value data in mobile devices
CN101980241B (zh) 一种射频标签认证的方法、系统及装置
KR102543267B1 (ko) 화이트박스 암호를 이용한 암/복호화 방법 및 그 장치
CN113674456A (zh) 开锁方法、装置、电子设备和存储介质
CN113239343B (zh) 内部认证的加密方法、智能卡、内部认证方法以及读卡器
JP3925975B2 (ja) ネットワークシステムにおけるicカード処理方法
KR100340928B1 (ko) 스마트카드와 클라이언트간의 보안 유지를 위한 통신시스템 및 그 방법
US10057054B2 (en) Method and system for remotely keyed encrypting/decrypting data with prior checking a token
CN111817856A (zh) 基于零知识证明和密码技术的身份认证方法及认证系统
JP2001069138A (ja) 共有鍵暗号型のicカードによるインターネット上のユーザー認証方式
Jensen et al. A secure credit card protocol over NFC
CZ2007205A3 (cs) Zpusob vytvárení autorizovaného elektronického podpisu oprávnené osoby a zarízení k provádení tohoto zpusobu
CN113672973A (zh) 基于可信执行环境的risc-v架构的嵌入式设备的数据库系统
CN108985079B (zh) 数据验证方法和验证系统

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130527

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20140529

Year of fee payment: 13

LAPS Lapse due to unpaid annual fee