KR101493791B1 - System for authentication of smartcard reading system and method therefor - Google Patents

System for authentication of smartcard reading system and method therefor Download PDF

Info

Publication number
KR101493791B1
KR101493791B1 KR20120137751A KR20120137751A KR101493791B1 KR 101493791 B1 KR101493791 B1 KR 101493791B1 KR 20120137751 A KR20120137751 A KR 20120137751A KR 20120137751 A KR20120137751 A KR 20120137751A KR 101493791 B1 KR101493791 B1 KR 101493791B1
Authority
KR
South Korea
Prior art keywords
authentication
reading
smart card
reader
module
Prior art date
Application number
KR20120137751A
Other languages
Korean (ko)
Other versions
KR20140073629A (en
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 KR20120137751A priority Critical patent/KR101493791B1/en
Publication of KR20140073629A publication Critical patent/KR20140073629A/en
Application granted granted Critical
Publication of KR101493791B1 publication Critical patent/KR101493791B1/en

Links

Images

Classifications

    • 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/0806Details of the card
    • G07F7/0813Specific details related to card security
    • G07F7/082Features insuring the integrity of the data on or in the card
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • 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

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)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명은 스마트카드 판독장치의 인증시스템 및 그 방법에 관한 것으로, 스마트카드 수록정보를 판독하기 전에 온라인 상의 인증장치가 판독장치를 인증하여 판독소프트웨어 및 리더기의 정당성을 확보하고, 스마트카드가 외부환경의 정당성을 인증하는 과정과 연계하여 스마트카드에 대한 접근제어를 가능하게 함으로써 스마트카드 수록정보의 불법 유출을 시도하는 해커의 판독소프트웨어 및 리더기에 대한 위,변조 위협을 차단할 수 있도록 하는 스마트카드 판독장치의 인증시스템 및 그 방법을 제공함에 그 목적이 있다.The present invention relates to an authentication system and method for a smart card reader, and an authentication device on-line authenticates the reader device before reading the smart card recording information, thereby securing the legitimacy of the reader software and reader, Of the smart card by allowing access control to the smart card in association with the process of authenticating the smart card by reading the hacker's software and reader, And an authentication system of the present invention.

Description

스마트카드 판독장치의 인증시스템 및 그 방법{System for authentication of smartcard reading system and method therefor}FIELD OF THE INVENTION [0001] The present invention relates to a smart card reading apparatus and method therefor,

본 발명은 스마트카드 판독장치의 인증시스템 및 그 방법에 관한 것으로, 특히 본 발명은 스마트카드를 위한 판독소프트웨어 및 리더기를 포함한 판독시스템의 무결성을 인증하는 스마트카드 판독장치의 인증시스템 및 그 방법에 관한 것이다.The present invention relates to an authentication system and method for a smart card reader, and more particularly, to an authentication system and method for a smart card reader for authenticating the integrity of an inspection system including a reading software and a reader for a smart card will be.

일반적으로 스마트카드(Smart Card)는 마이크로프로세서(Microporcessor)와 메모리(Memory)를 포함하는 IC(Integrated Circuit)칩을 기반으로 동작하고, IC칩을 포함한 스마트카드는 고도의 보안성 인증을 통해 안전한 매체로 사용된다. Generally, a smart card operates based on an integrated circuit (IC) chip including a microprocessor and a memory, and a smart card including an IC chip performs secure authentication .

스마트카드를 사용하는 임의의 응용(또는 서비스)는 대체로 그 응용 및 서비스에 따른 보안을 기하기 위해 스마트카드의 보안기능을 통해 스마트카드에 저장된 정보를 읽고 저장하는 등의 기능을 수행한다. Any application (or service) using a smart card generally performs functions such as reading and storing the information stored in the smart card through the security function of the smart card in order to secure the security according to the application and the service.

또한, 국제표준을 따르는 스마트카드는 일반적으로 자체적으로 전원을 내장하지 않으며, 필수적으로 스마트카드와 상호 연동하는 리더기(또는 판독기) 및 별도의 목적에 맞는 판독소프트웨어(또는 판독프로그램)를 포함하는 판독시스템을 통해 그 응용 및 서비스에 따른 기능을 수행한다.In addition, a smart card conforming to the international standard generally does not have its own built-in power supply, but is essentially a reader (or reader) interfacing with the smart card and a readout software (or readout program) And performs functions according to the application and the service.

최근에는 이동통신 단말기에 탑재되는 스마트 카드의 대용량화를 기반으로 웹서버(SCWS,Smart Card Web Server)의 개념이 카드 내부로 수용되고, 다양한 서비스 어플리케이션을 카드 안에 넣을 수 있는 환경이 마련되었다.In recent years, the concept of a web server (SCWS, Smart Card Web Server) has been accommodated in a card based on a large capacity of a smart card mounted in a mobile communication terminal, and an environment where various service applications can be inserted into the card has been established.

이와 관련하여, OMA(Open Mobile Alliance)에서 제시하는 스마트 카드 웹 서버(SCWS,Smart Card Web Server) 규격에 따르면, 스마트 카드 웹 서버가 탑재된 스마트 카드와 원격에 위치한 관리 서버는 TLS(Transport Layer Security) 세션을 통해 사전 공유키 기반의 암호화 통신을 하도록 정의되어 있으나, TLS 세션 성립시 원격에 위치한 관리 서버가 스마트 카드를 인증할 방법이 정의되어 있지 않다.In this regard, according to the Smart Card Web Server (SCWS) standard proposed by the Open Mobile Alliance (OMA), a smart card equipped with a smart card web server and a management server located remotely can use Transport Layer Security ) Session, it does not define a method for the remote management server to authenticate the smart card when the TLS session is established.

또한 SSL/TLS를 사용해서 인증시스템과 판독소프트웨어 상호간 인증을 성립시킨다. 즉, 판독소프트웨어의 정당성 확인을 위해 인증시스템에서 각 판독소프트웨어에 대한 클라이언트 인증이 필요하다. 이때, 판독장치 사용자의 공인인증서를 통해 클라이언트 인증이 가능하다.Also, mutual authentication between the authentication system and the reading software is established using SSL / TLS. That is, client authentication for each reading software is required in the authentication system to verify the legitimacy of the reading software. At this time, the client authentication is possible through the public certificate of the reader device user.

이에 상기한 바와 같은 문제점을 해결하기 위해 국내등록특허 제10-1124923호 스마트 카드 인증시스템이 제안되었다.In order to solve the above problems, a smart card authentication system of Korean Patent No. 10-1124923 has been proposed.

상기한 바와 같은 종래의 스마트 카드 인증 시스템은, 스마트 카드 웹 서버(SCWS,Smart Card Web Server) 기능을 내장한 스마트 카드 인증 시스템에 있어서, TLS(Transport Layer Security) 세션 설정을 위한 인증 값을 생성하여 임시 저장하고, 상기 생성된 인증 값을 상기 스마트 카드에 전송하며, 상기 TLS 세션 설정시 상기 스마트 카드로부터 수신되는 인증 값을 토대로 인증을 수행하는 원격 관리 서버(Remote Admin Server); 상기 스마트 카드와 인터페이스를 형성하여 상기 원격 관리 서버와 스마트 카드간 데이터 송수신을 중계하는 사용자 단말기; 및 상기 사용자 단말기를 통해 상기 원격 관리 서버로부터 수신되는 인증 값을 저장하며, 상기 원격 관리 서버와의 상기 TLS 세션 설정시 상기 저장된 인증 값을 상기 원격 관리 서버에 전달하여 인증을 요청한 후에 상기 저장된 인증 값을 삭제하는 스마트 카드를 포함하는 것을 특징으로 한다.In the conventional smart card authentication system as described above, an authentication value for establishing a TLS (Session Initiation Protocol) session is generated in a smart card authentication system including a Smart Card Web Server (SCWS) function A remote management server for temporarily storing the generated authentication value, transmitting the generated authentication value to the smart card, and performing authentication based on an authentication value received from the smart card when establishing the TLS session; A user terminal for establishing an interface with the smart card and relaying data transmission / reception between the remote management server and the smart card; And storing the authentication value received from the remote management server through the user terminal, and when establishing the TLS session with the remote management server, transmitting the stored authentication value to the remote management server to request authentication, And a smart card which deletes the smart card.

한편, 스마트카드 판독시스템은 특정 응용 및 서비스를 위한 판독소프트웨어를 자체적으로 내장하고 있는 전용리더기가 될 수도 있으며, 일반적으로 PC(Personal Computer)와 PC에 연결된 스마트카드 리더기로 구성되고 응용 및 서비스를 위한 판독소프트웨어는 PC에 설치되어 스마트카드와 리더기를 통해 상호작용하여 기능을 하게 된다. 이 때 리더기는 일반적으로 리더기 관련 국제표준에 따라 스마트카드와 통신하기 위한 기능을 수행한다.On the other hand, the smart card reading system may be a dedicated reader having its own built-in reading software for a specific application and services, and generally comprises a PC (personal computer) and a smart card reader connected to the PC, The reading software is installed in the PC and interacts with the smart card through the reader. At this time, the reader generally functions to communicate with the smart card in accordance with the reader-related international standard.

그리고 스마트카드를 보안 매체로 사용하는 응용 및 서비스는 판독시스템을 통해 스마트카드의 정당성 여부를 인증하고, 스마트카드를 통해 사용하는 주체의 정당성을 인증할 수 있다. 그러나 PC에 기반을 둔 판독시스템은 일반적으로 PC 자체가 보안에 매우 취약한 것으로 알려져 있으며, 스마트카드와 같은 보안성을 확보하기는 어려운 문제점이 있었다.And applications and services that use smart cards as security media can authenticate the legitimacy of smart card through the inspection system and authenticate the legitimacy of the subject using smart card. However, a PC-based reading system is generally known to be very vulnerable to the security of the PC itself, and it is difficult to secure security such as a smart card.

종래의 스마트카드를 기반으로 하는 판독시스템 운영환경은 판독시스템의 안전성을 확보하기 위해 전자여권과 같이 판독시스템을 보안성이 확보된 창구 및 관공서 등 안전한 공간에서 운영하거나 은행의 ATM(Auto Telling Machine)과 같이 물리적으로 안전한 하드웨어로 제작하여 운영하고 있다. 또한 은행 등 금융거래를 위한 응용 및 서비스의 경우 인터넷을 통해 실시간으로 배포되는 웹(World-Wide-Web) 기반의 프로그램을 제공하고 공인인증서를 동원하여 안전한 사용자 환경을 제공하고 있다. In order to secure the safety of the inspection system based on the conventional smart card, the inspection system such as the e-passport is operated in a secured space such as a security window or a government office, or an ATM (Auto Telling Machine) As well as hardware that is physically secure. In addition, in the case of applications and services for financial transactions such as banks, it provides a web-based program distributed in real time over the Internet and provides a secure user environment by using public certificates.

하지만 전자주민등록증과 같이 스마트카드를 통해 사용자의 신원을 확인이 확인된 후 임의 거래를 하는 응용 및 서비스의 경우는 그 응용 및 서비스의 주체 또한 불특정 국민을 대상이 되기 때문에 판독시스템의 운영환경을 안전한 장소로 강제하거나 판독시스템을 고가의 안전한 하드웨어로 광범위하게 배포하는 것은 거의 불가능하다. 따라서 배포되는 판독소프트웨어와 리더기는 일반적으로 안전하지 않은 개인용 PC에서 동작되므로 스마트카드의 개인정보를 불법으로 유출하기 위한 시도와 악의적인 오동작 시도와 같은 목적을 달성하기 위해 해커에 의해 판독소프트웨어와 리더기가 위,변조될 수 있으며, 위?변조된 판독소프트웨어 및 리더기를 통해 개인정보 등 스마트카드 내 중요 정보가 유출될 수 있는 문제점이 있었다.However, in the case of applications and services where the user's identity is verified through the smart card, such as electronic resident registration card, since the subject of the application and service is subject to the unspecified people, , Or it is almost impossible to distribute the inspection system over a wide range of expensive secure hardware. Therefore, the distributed reading software and reader generally operate on unsecured personal PCs. Therefore, in order to accomplish the purpose such as illegal leakage of the personal information of the smart card and malicious malfunction attempt, And the important information in the smart card such as personal information can be leaked through the stomach-modulated reading software and the reader.

또한 인증시스템을 통해 판독시스템의 정당성을 인증했더라도 스마트카드는 스스로 외부 판독환경(판독시스템 및 인증시스템)에 대한 정당성을 확인하지 못하는 한계가 있다.Moreover, even if the authentication system is used to verify the validity of the inspection system, the smart card has a limitation that it can not verify the legitimacy of the external reading environment (the inspection system and the authentication system) by itself.

이에, 본 발명은 상기한 바와 같은 문제점을 해결하기 위하여 안출된 것으로, 스마트카드 수록정보를 판독하기 전에 온라인 상의 인증시스템이 판독시스템을 인증하여 판독소프트웨어 및 리더기의 정당성을 확보하고, 스마트카드가 외부환경의 정당성을 인증하는 과정과 연계하여 스마트카드에 대한 접근제어를 가능하게 함으로써 스마트카드 수록정보의 불법 유출을 시도하는 해커의 판독소프트웨어 및 리더기에 대한 위,변조 위협을 차단할 수 있도록 하는 스마트카드의 판독 인증 시스템 및 그 방법을 제공함에 그 목적이 있다.SUMMARY OF THE INVENTION Accordingly, the present invention has been made in order to solve the above problems, and it is an object of the present invention to provide a smart card authentication system, It is possible to control access to the smart card by linking with the process of authenticating the environment, thereby preventing illegal leakage of information recorded in the smart card. And an object of the present invention is to provide a read authentication system and a method thereof.

또한 인증시스템의 판독시스템 인증 결과를 스마트카드의 외부 판독환경 인증과 연계함으로써 스마트카드 수록정보에 대한 접근제어를 가능하게 함으로써 스마트카드에 수록된 정보의 불법적인 판독 및 유출 시도를 원천적으로 방지할 수 있는 스마트카드의 판독 인증 시스템 및 그 방법을 제공함에도 목적이 있다.In addition, by associating the authentication result of the authentication system's inspection system with the external read environment authentication of the smart card, it is possible to control access to the smart card recording information, thereby preventing illegal reading and leakage attempts of the information stored in the smart card The present invention also provides a smart card read-out authentication system and method.

상기한 목적을 달성하기 위한 스마트카드 판독장치의 인증시스템에 있어서, 스마트카드를 판독하는 기능을 수행하며, 상기 판독 기능 및 통신채널의 무결성을 검증하여 결과를 인증장치로 전송하는 판독장치(200); 및 상기 판독장치의 판독기능 및 통신채널의 무결성을 검증하기 위한 인증 데이터를 생성하고, 상기 판독장치 구동 시 상기 인증 데이터를 상기 판독장치로 전송하며, 상기 인증 데이터로 인한 인증결과를 상기 판독장치로부터 수신하는 인증장치(300);를 포함하는 것을 특징으로 한다.In order to achieve the above object, there is provided an authentication system for a smart card reader, comprising: a reading device (200) for reading a smart card and for verifying the integrity of the reading function and the communication channel, ; And generating authentication data for verifying integrity of the read function and the communication channel of the reading device, transmitting the authentication data to the reading device when the reading device is driven, and transmitting the authentication result resulting from the authentication data to the reading device And an authentication device (300) for receiving the authentication information.

바람직하게 상기 판독장치(200)는 상기 인증장치(300)로부터 보안채널을 통해 최신 버전으로 안전하게 설치되며, 실시간으로 인증코드를 인증장치로부터 다운로드받아 무결성을 검증하여 그 결과를 인증장치로 전송하며, 상기 스마트카드의 위변조를 확인하고 판독하는 기능을 수행하는 판독소프트웨어부(210); 및 상기 스마트카드를 판독하기 위한 리더기부(220);를 포함하는 것을 특징으로 한다.Preferably, the reading device 200 is securely installed in the latest version through the secure channel from the authentication device 300, downloads the authentication code from the authentication device in real time, verifies integrity, and transmits the result to the authentication device. A reading software unit 210 for performing a function of confirming and reading the forgery and falsification of the smart card; And a reader unit 220 for reading the smart card.

또한 바람직하게 상기 판독장치(200)는, 스마트카드의 위변조를 확인하고 판독하는 기능을 수행하는 판독모듈(211); 인증장치(300)와 통신채널을 형성하여 판독소프트웨어부와 리더기부의 무결성 및 통신채널의 무결성을 검증하고, 상기 검증결과를 인증장치(300)로 전송하는 무결성 검증모듈(212); 및 판독소프트웨어부의 실행 시 판독소프트웨어부, 리더기모듈 및 보안유틸리티의 최신버전 여부 및 정상동작 여부를 확인하는 실행환경 점검모듈(213);을 포함하는 것을 특징으로 한다.Preferably, the reading device 200 further comprises: a reading module 211 for performing a function of confirming and reading the forgery and falsification of the smart card; An integrity verification module 212 that forms a communication channel with the authentication device 300 to verify the integrity of the reading software module and the reader module and the integrity of the communication channel and transmits the verification result to the authentication device 300; And an execution environment checking module 213 for checking whether the latest version of the reading software part, the reader module and the security utility and the normal operation of the reading software part are executed.

또한 바람직하게 상기 판독장치(200)는 판독소프트웨어부(210)를 통해 공인인증서로 인증장치(300)에 로그인을 하도록 하고, 상기 공인인증서를 통해 상기 판독장치 운영주체의 정당성이 확인된 경우에 판독소프트웨어부(210)를 실행하도록 하는 것을 특징으로 한다.Also, preferably, the reading device 200 permits the authentication device 300 to log in using the public key certificate 210 through the reading software 210, and when the legitimacy of the reader key entity is confirmed through the public key certificate, So that the software unit 210 is executed.

또한 바람직하게 상기 인증장치(300)는 공인인증서를 통한 로그인이 성공하면 상기 판독장치(200)와 상호간 세션키를 공유하고 보안채널을 형성하며, 상기 판독장치의 스마트카드 위변조 확인과 판독기능 및 통신채널의 무결성을 검증하기 위한 인증 데이터를 상기 판독장치로 전달하는 것을 특징으로 한다.Also, preferably, the authentication device 300 shares a mutual session key with the reading device 200 and forms a secure channel when a login through a public certificate is successful. The smart card forgery verification, reading function, and communication And transmits authentication data for verifying the integrity of the channel to the reading device.

한편, 스마트카드 판독장치의 인증방법에 있어서, (a) 인증장치(300)가 판독장치(200)로 무결성 검증모듈 제어신호를 전달하는 단계; (b) 상기 판독장치(200)가 상기 인증장치(300)와 연계하여 무결성 검증모듈(212)의 정당성을 확인하는 단계; 및 (c) 상기 인증장치(300)가 상기 정당성이 확보된 무결성 검증모듈(212)을 통한 상기 판독장치(200)를 인증하는 단계;를 포함하는 것을 특징으로 한다.On the other hand, in the authentication method of the smart card reading device, (a) the authentication device 300 transmits an integrity verification module control signal to the reading device 200; (b) confirming the validity of the integrity verification module (212) in conjunction with the authentication device (300) by the reading device (200); And (c) authenticating the reading device 200 through the integrity verification module 212, wherein the authentication device 300 confirms the justification.

바람직하게 상기 제 (a) 단계는, (a-1) 판독장치(200)가 공인인증서를 통해 로그인하는 단계; (a-2) 상기 공인인증서로 로그인하면, 인증장치(300)가 상기 공인인증서의 유효성 여부를 판단하여 보안채널을 형성하는 단계; (a-3) 상기 인증장치(300)가 정당성 검증을 위해 판독장치(200)의 무결성 검증모듈에 대한 실시간 해쉬 값을 생성하는 단계; (a-4) 상기 인증장치(300)가 상기 실시간 해쉬 값에 대한 전자서명을 생성하는 단계; 및 (a-5) 상기 인증장치(300)가 상기 무결성 검증모듈에 대한 제어신호를 판독장치(200)로 전송함과 동시에 상기 전자서명 값을 보안채널을 통해 상기 판독장치(200)로 전달하는 단계;를 포함하는 것을 특징으로 한다.Preferably, the step (a) comprises the steps of: (a-1) logging in the reading device 200 through a public certificate; (a-2) when the authentication apparatus 300 logs in using the authorized certificate, determining whether the authorized certificate is valid and forming a secure channel; (a-3) generating the real-time hash value for the integrity verification module of the reading device 200 for the authentication of the authentication device 300; (a-4) the authentication device 300 generating an electronic signature for the real-time hash value; And (a-5) the authentication device 300 transmits a control signal for the integrity verification module to the reading device 200 and simultaneously transmits the digital signature value to the reading device 200 via the secure channel The method comprising the steps of:

더욱 바람직하게, 상기 제 (a-3) 단계는 상기 인증장치(300)가 무결성 검증모듈의 정당성 확인 시 재생공격(Replay Attack)을 방지하기 위해 서버 난수(r)을 생성하여, 무결성 검증모듈의 해쉬 값 및 보안채널의 세션키를 포함하여 실시간 해쉬 값을 생성하는 단계인 것을 특징으로 한다.More preferably, in the step (a-3), the authentication device 300 generates a server random number r to prevent a replay attack in confirming the integrity of the integrity verification module, And generating a real-time hash value including a hash value and a session key of a secure channel.

또한 바람직하게, 상기 제 (b) 단계는, (b-1) 상기 판독장치(200)가 무결성 검증모듈(212)을 통해 판독소프트웨어부(210)에 대한 해쉬 값을 생성하도록 하는 단계; (b-2) 상기 판독장치(200)가 인증서의 공개키와 상기 제 (b-1)의 해쉬 값을 적용하고 판독소프트웨어부의 전자서명을 검사하여 상기 판독소프트웨어부의 무결성(정당성)을 검증하는 단계; (b-3) 상기 판독장치(200)가 리더기모듈의 해쉬 값을 생성하도록 하는 단계; 및 (b-4) 상기 판독장치(200)가 상기 인증서의 공개키와 상기 리더기모듈의 해쉬 값을 적용하고 상기 리더기모듈의 전자서명을 검사하여 리더기모듈의 무결성(정당성)을 검증하는 단계;를 포함하는 것을 특징으로 한다.Preferably, the step (b) further comprises: (b-1) causing the reading device 200 to generate a hash value for the reading software 210 through the integrity verification module 212; (b-2) verifying the integrity (legitimacy) of the reading software section by applying the public key of the certificate and the hash value of the (b-1) and examining the electronic signature of the reading software section ; (b-3) causing the reading device 200 to generate a hash value of the reader module; And (b-4) verifying the integrity (legitimacy) of the reader module by applying the public key of the certificate and the hash value of the reader module and checking the electronic signature of the reader module, .

또한 바람직하게 상기 제 (c) 단계는, (c-1) 판독장치(200)가 상기 판독소프트웨어부(210)에 대한 해쉬 값, 상기 리더기모듈의 해쉬값, 무결성 검증모듈(212)에 대한 해쉬값을 상기 리더기모듈 검증결과 및 서버 난수(r)을 적용하여 인증 해쉬값을 생성하는 단계; (c-2) 인증장치(300)가 무결성 검증모듈을 통해 판독장치에 대한 인증을 위한 인증코드 값을 MAC(Massage Authentication Code)을 적용하여 생성하는 제1 인증코드를 상기 판독장치로부터 수신하는 단계; (c-3) 상기 인증장치(300)가 기 저장되어 있는 판독소프트웨어부에 대한 해쉬값, 리더기모듈의 해쉬값 및 무결성 검증모듈에 대한 해쉬값을 생성하는 단계; (c-4) 상기 인증장치(300)가 판독소프트웨어부와 공유한 보안채널 세션키(Skey), 상기 리더기모듈 검증결과 및 서버 난수(r)을 적용하고, 상기 MAC을 적용하여 제2 인증코드를 생성하는 단계; 및 (c-5) 상기 인증장치(200)가 상기 제1 인증코드와 상기 제(b-8)에서 생성한 제2 인증코드를 비교하여 판독장치의 정당성을 인증하는 단계;를 포함하는 것을 특징으로 한다.Preferably, the step (c) further comprises the steps of: (c-1) determining whether the reading device 200 has a hash value for the reading software 210, a hash value of the reader module, a hash value for the integrity verification module 212, Generating a verification hash value by applying the reader module verification result and the server random number (r); (c-2) receiving from the reading device a first authentication code that the authentication device 300 generates by applying an MAC (Massage Authentication Code) to the authentication code value for authentication to the reading device through the integrity verification module ; (c-3) generating a hash value, a hash value of the reader module, and a hash value for the integrity verification module for the reading software unit in which the authentication device 300 has been stored; (c-4) Applying the secure channel session key (Skey), the reader module verification result and the server random number (r) shared by the authentication device (300) with the reading software part, ≪ / RTI > And (c-5) comparing the first authentication code with the second authentication code generated in the (b-8) by the authentication device 200 to authenticate the legitimacy of the reading device. .

그리고 더욱 바람직하게 상기 제 (c-5) 단계 이후, 상기 판독장치(200)가 스마트카드(100)에 대한 인증과 판독을 시도하며, 상기 스마트카드와 인증장치 간의 인증을 중계하는 것을 특징으로 한다.More preferably, after the operation (c-5), the reading device 200 attempts authentication and reading of the smart card 100 and relays authentication between the smart card and the authentication device .

이상에서 설명한 바와 같이, 본 발명에 따른 스마트카드 판독장치의 인증시스템는 다음과 같은 효과가 있다.As described above, the authentication system of the smart card reader according to the present invention has the following effects.

첫째, 본 발명은 스마트카드 수록정보를 판독하기 전에 온라인 상의 인증시스템이 판독장치를 인증하여 판독소프트웨어부 및 리더기부의 정당성을 확보하는 효과가 있다.First, the present invention has an effect of securing the legitimacy of the reading software unit and the reader unit by authenticating the reading apparatus by the authentication system on-line before reading the smart card recording information.

둘째, 본 발명은 스마트카드가 외부환경의 정당성을 인증하는 과정과 연계하여 판독장치의 구성요소인 판독소프트웨어부 및 리더기부의 정당성을 확인함으로써, 스마트카드 수록정보의 불법 유출을 시도하는 해커의 판독소프트웨어 및 리더기에 대한 위,변조 위협을 효과적으로 차단할 수 있는 효과가 있다.Secondly, the present invention relates to a smart card readable software program for reading a smart card recorded information by confirming the legitimacy of a reading software unit and a reader unit, which are components of a reading device, It is possible to effectively block the above-mentioned threat of tampering with the reader.

셋째, 본 발명은 판독장치 인증 결과를 스마트카드의 외부 판독환경 인증과 연계함으로써 스마트카드 수록정보에 대한 접근제어를 가능하게 함으로써 스마트카드에 수록된 정보의 불법적인 판독 및 유출 시도를 원천적으로 방지할 수 있는 효과가 있다.Third, the present invention enables access control of smart card recording information by linking the reading device authentication result with the external reading environment authentication of the smart card, thereby preventing unauthorized reading and leakage attempts of the information stored in the smart card There is an effect.

도 1은 본 발명에 따른 스마트카드 판독장치의 인증시스템의 구성을 도시한 예시도,
도 2는 본 발명에 따른 스마트카드 판독장치의 인증시스템의 판독소프트웨어부의 기능을 블록으로 나타낸 예시도,
도 3,4는 본 발명에 따른 스마트카드 판독장치의 인증시스템의 판독장치 인증과정을 나타낸 흐름도.
1 is an exemplary diagram showing a configuration of an authentication system of a smart card reader according to the present invention,
2 is an exemplary block diagram illustrating functions of a reading software section of an authentication system of a smart card reading apparatus according to the present invention;
3 and 4 are flowcharts showing a process of authenticating a reader in an authentication system of a smart card reader according to the present invention.

본 발명의 개요를 설명하면, 온라인으로 광범위하게 배포되고 일반인 누구나 사용하는 환경에서 원격 인증서버와 판독장치(판독소프트웨어, 리더기 포함)의 판독소프트웨어가 상호인증을 통해 안전성을 확보한 후, 스마트 카드(예: 전자주민증 등 e-ID) 내 수록정보에 대한 접근제어를 수행하여 안전한 운영환경을 제공할 수 있다.The outline of the present invention will be outlined. After securing the safety through the mutual authentication between the remote authentication server and the reading software of the reading device (including the reading software and the reader) in an environment widely distributed online and used by the general public, For example: e-ID such as e-ID card, access control to the recorded information can be performed to provide a safe operating environment.

본 발명에서 제안하는 스마트카드 판독장치의 인증시스템은 스스로 외부 판독환경을 인증하는 기능(이하 판독장치 인증)을 수행할 수 있는 스마트카드와, 스마트카드를 인증하고 그 수록정보를 판독하는 판독소프트웨어 및 리더기를 포함한 판독장치와, 판독장치를 인증하고 스마트카드와 판독장치 인증을 수행하는 인증장치로 구성된다.The authentication system of the smart card reader proposed by the present invention includes a smart card capable of performing a function of authenticating the external reading environment by itself (hereinafter referred to as reader authentication), reading software for authenticating the smart card, A reading device including a reader, and an authentication device for authenticating the reading device and performing authentication of the smart card and the reading device.

판독장치의 판독소프트웨어는 크게 스마트카드의 위변조를 확인하고 판독하는 기능과, 인증장치와 안전한 통신채널을 형성하며 무결성검증모듈을 통해 판독소프트웨어의 무결성을 검증하고 결과를 인증장치로 전송하는 기능과, 판독소프트웨어, 리더기, 보안유틸리티가 정상적으로 설치되었는지와 최신버전인지를 확인하여 실행환경을 점검하는 실행환경 점검기능으로 구성된다. 무결성검증모듈은 판독소프트웨어 동작 시 온라인 인증장치로부터 DLL(Dynamic Linking Library) 형태의 실행코드(인증코드 또는 인증데이터)가 실시간으로 판독소프트웨어로 다운로드 되고, 자체적인 무결성 검증과 판독소프트웨어 및 리더기모듈에 대한 실질적인 무결성을 검증하는 기능으로 구성되며, 판독소프트웨어의 일부분으로써 판독소프트웨어로부터 동작을 제어 받고 자체 무결성과 판독소프트웨어 무결성 검증 결과를 판독소프트웨어 및 인증시스템으로 전송하여 판독소프트웨어의 위,변조를 방지하고 안전한 스마트카드 판독환경을 검사한다.The reading software of the reading device mainly includes a function of confirming and forgery of the smart card, a function of forming a secure communication channel with the authentication device, verifying the integrity of the reading software through the integrity verification module and transmitting the result to the authentication device, And an execution environment checking function for checking the execution environment by checking whether the reading software, the reader, and the security utility are normally installed and the latest version. In the integrity verification module, an execution code (authentication code or authentication data) in the form of a dynamic linking library (DLL) is downloaded from the on-line authentication device to the reading software in real time during the reading software operation and the integrity verification, reading software and reader module And is operable as a part of the reading software to control the operation from the reading software and to transmit the results of the self-integrity and the reading software integrity verification to the reading software and the authentication system to prevent the reading software from being tampered with, Check the card reading environment.

인증장치가 판독장치를 인증하는 방법은 인증장치와 판독장치의 PC에 설치되는 판독소프트웨어와 밀접한 인증 프로토콜을 통해 수행한다. 판독소프트웨어를 중심으로 판독장치에 대한 인증 과정은 일반적으로 소프트웨어 설치 시 적용되는 코드사이닝(Code Signing)과 SSL/TLS(Secure Socket Layer/Transport Layer Security)을 통해 온라인 보안채널로 안전하게 설치된다. 안전하게 설치된 판독소프트웨어를 실행하면 우선적으로 설치된 판독소프트웨어가 최신버전인지 여부를 검증하여 항상 최신의 보안이 유지된 판독소프트웨어 환경을 유지한다.The method by which the authentication device authenticates the reading device is performed through an authentication protocol closely related to the reading device and the software installed in the PC of the reading device. The authentication process for the reading device centering on the reading software is generally securely installed as an on-line secure channel through code signing and Secure Socket Layer / Transport Layer Security (SSL / TLS) applied during software installation. Running securely installed read-only software ensures that the pre-installed read-out software is up-to-date and maintains an up-to-date, secure, read-only software environment.

실행된 판독소프트웨어에 대한 무결성 인증을 실시하기 위해서는 안전한 세션키를 상호 공유하고 보안채널을 형성해야 한다. 소프트웨어 설치 시 일반적으로 적용되는 SSL/TLS를 통한 보안채널의 문제점은 클라이언트(Client) 단에서 접속하는 서버단의 인증서를 통해 서버를 인증하나 서버단에서 클라이언트를 인증하지는 못한다. 종래의 SSL/TLS의 클라이언트 인증의 문제점을 해결하기 위해서는 클라이언트 단에서도 공인된 인증서를 통해 서버가 클라이언트를 인증하게 해야 한다. 이를 위해 판독장치를 사용하는 주체는 판독소프트웨어 실행 시 반드시 공인인증서를 통해 인증장치에 로그인을 하도록 하고, 판독장치 운영주체의 정당성이 공인인증서를 통해 확인된 경우에만 판독소프트웨어 실행이 가능하도록 한다. 판독소프트웨어에 공인인증서를 통한 로그인이 성공하면 판독소프트웨어와 인증장치는 상호간 세션키를 공유하고 이후 절차를 위해 안전한 보안채널을 형성한다.In order to perform integrity authentication for the executed reading software, secure session keys must be mutually shared and a secure channel must be formed. The problem of the secure channel through SSL / TLS which is generally applied when installing software is that the client authenticates the server through the certificate of the server connected at the client but does not authenticate the client at the server. In order to solve the problem of the conventional SSL / TLS client authentication, the client must authenticate the client through the certificate at the client terminal. To do this, the subject using the reading device must log in to the authentication device through the public certificate when executing the reading software, and the reading software can be executed only when the legitimacy of the subject of the reading device is confirmed through the public certificate. If the reading software successfully logs in through the authorized certificate, the reading software and the authentication device share the session key with each other and form a secure channel for later processing.

판독장치를 인증하는 과정은 크게 2가지로 구분해 볼 수 있으며, 인증장치에 의한 판독장치 인증 결과에 따라 스마트카드의 인증절차와 연계하는 부분이 포함된다. 판독장치 인증과정의 2가지는 판독소프트웨어의 인증을 위해 판독소프트웨어의 정당성을 확인하기 위해 판독소프트웨어의 구성요소 중 무결성검증모듈을 인증장치로부터 판독소프트웨어로 다운로드 받고, 판독소프트웨어가 인증장치와 연계하여 무결성검증모듈의 정당성을 확인하는 단계와, 다운로드 받은 무결성검증모듈이 인증장치와 연계하여 판독소프트웨어 및 리더기모듈을 인증하여 판독장치를 인증하는 단계로 구분한다.The process of authenticating the reading device can be roughly divided into two types, and includes a part linked to the authentication process of the smart card according to the authentication result of the reading device by the authentication device. Two of the reader device authentication processes are downloaded from the authentication device to the readout software among the components of the readout software to confirm the legitimacy of the readout software for authentication of the readout software, Checking the validity of the module, and authenticating the reading device by authenticating the reading software and the reader module in association with the authenticating device in the downloaded integrity verification module.

판독장치 인증의 첫 번째 단계는 판독소프트웨어의 정당성 확인을 위해 무결성검증모듈의을 인증장치로부터 다운로드 받아 판독소프트웨어의 정당성을 인증한다. 다운로드 받는 무결성검증모듈 또한 위,변조 위협에 노출되게 되기 때문에, 판독소프트웨어의 사용주체가 판독소프트웨어 시작 시 사용주체의 공인인증서로 로그인하고, 표준 웹 보안 프로토콜(SSL/TLS)로 서버(인증장치)와 클라이언트(판독소프트웨어) 인증 후 안전한 보안채널을 형성하여 판독장치에 다운로드를 수행하게 한다. 판독소프트웨어는 인증장치로부터 다운로드받은 무결성검증모듈의 정당성 확인을 수행한다.The first step of the reading device authentication is downloading from the authentication device of the integrity verification module to verify the legitimacy of the reading software and authenticates the legitimacy of the reading software. Since the integrity verification module to be downloaded is also exposed to the above-mentioned threats of tampering, the user of the reading software logs in with the authorized certificate of the using subject at the start of the reading software and transmits the server (authentication device) with the standard web security protocol (SSL / TLS) And a client (read-out software) to form a secure secure channel to allow the reading device to perform the download. The reading software performs validity checking of the integrity verification module downloaded from the authentication device.

판독장치 인증의 두 번째 단계는 판독장치 인증의 첫 번째 단계를 통해 판독소프트웨어가 인증장치와 연계하여 인증장치로부터 다운로드받은 무결성검증모듈의 정당성이 성공적으로 확인되면, 판독소프트웨어는 비로소 무결성검증모듈을 실행한다. 정당성이 확보된 무결성검증모듈은 상기 판독장치 인증의 첫 번째 단계를 통해 인증장치로부터 전달받은 통한 판독시스템 인증과정은 아래에서 상세히 설명하기로 한다.
The second step of the reader device authentication is that if the validity of the integrity verification module downloaded from the authentication device in association with the authentication device by the reading software through the first step of the reading device authentication is successfully verified, then the reading software executes the integrity verification module do. The authenticity verification module of the validation system will be described in detail below with reference to the reader system authentication process received from the authentication device through the first step of authentication of the reader device.

이하, 본 발명에 첨부한 예시도면을 참조하여 상세히 설명한다.Hereinafter, the present invention will be described in detail with reference to exemplary drawings attached hereto.

도 1은 본 발명에 따른 스마트카드 판독장치의 인증시스템의 구성을 도시한 예시도이고, 도 2는 본 발명에 따른 스마트카드 판독장치의 인증시스템의 판독모듈의 기능을 블록으로 나타낸 예시도이며, 도 3,4는 본 발명에 따른 스마트카드 판독장치의 인증시스템의 판독장치 인증과정을 나타낸 흐름도이다.Fig. 1 is an exemplary view showing the configuration of an authentication system of a smart card reading device according to the present invention, Fig. 2 is an exemplary view showing in block form the function of a reading module of an authentication system of a smart card reading device according to the present invention, 3 and 4 are flowcharts illustrating a process of authenticating a reader in an authentication system of a smart card reader according to the present invention.

이들 도면에 도시된 바와 같이, 본 발명에 따른 스마트카드 판독장치의 인증시스템은 외부 판독환경을 인증하는 스마트 카드(100)와, 상기 스마트 카드(100)를 인증하고, 그 수록정보를 판독하는 판독소프트웨어 및 리더기를 포함하는 판독장치(200), 상기 스마트 카드와 판독장치 인증을 수행하는 인증장치(300)로 구성된다.As shown in these drawings, an authentication system of a smart card reader according to the present invention includes a smart card 100 for authenticating an external reading environment, and a reader for authenticating the smart card 100, A reading device 200 including software and a reader, and an authentication device 300 for performing the smart card and the reading device authentication.

즉, 본 발명에 따른 스마트카드의 판독 인증 시스템은 스마트 카드(100), 판독장치(200) 및 인증장치(300)가 유기적으로 결합되어 이루어진 시스템이다.That is, the smart card reading authentication system according to the present invention is a system in which the smart card 100, the reading device 200, and the authentication device 300 are organically combined.

스마트 카드(100)는 스스로 외부 판독환경을 인증하는 기능을 수행할 수 있다. 여기서, 스마트 카드(100)는 예를들면 전자주민증, 전자여권, 교통카드, 스마트폰, 유심칩, e-ID 등을 포함하며, 일반적으로 스마트 카드(Smart card)는 마이크로프로세서(Microprocessor)와 메모리(Memory)를 포함하는 IC(Integrated Circuit)칩을 기반으로 동작하는 것이다. The smart card 100 can perform the function of authenticating the external reading environment by itself. Here, the smart card 100 includes, for example, an electronic resident card, an electronic passport, a transportation card, a smart phone, a wireless card, and an e-ID. Generally, a smart card includes a microprocessor, (Integrated Circuit) chip including a memory.

IC칩을 포함한 스마트카드는 고도의 보안성 인증을 통해 안전한 매체로 사용된다. 스마트카드를 사용하는 임의의 응용(또는 서비스)는 대체로 그 응용 및 서비스에 따른 보안을 기하기 위해 스마트카드의 보안기능을 통해 스마트카드에 저장된 정보를 읽고 저장하는 등의 기능을 수행한다.Smart cards, including IC chips, are used as a secure medium through highly secure authentication. Any application (or service) using a smart card generally performs functions such as reading and storing the information stored in the smart card through the security function of the smart card in order to secure the security according to the application and the service.

국제표준을 따르는 스마트카드는 일반적으로 자체적으로 전원을 내장하지 않으며, 필수적으로 스마트카드와 상호 연동하는 리더기(또는 판독기) 및 별도의 목적에 맞는 판독소프트웨어(또는 판독프로그램)를 포함하는 판독장치를 통해 그 응용 및 서비스에 따른 기능을 수행한다.Smart cards that comply with international standards generally do not have their own built-in power source, but are essentially connected via a reader (or reader) interfacing with the smart card and a reading device containing a separate purpose reading software (or reading program) And performs functions according to the application and the service.

또한, 판독장치(200)는 판독소프트웨어부(210)와 리더기부(리더기 드라이버)(220)를 포함하여 구성된다. The reading apparatus 200 includes a reading software unit 210 and a reader unit (reader driver) 220.

여기서, 판독소프트웨어부(210)는 기술구성 설명상 판독소프트웨어부로 기재하였지만, 실제 구현시 판독소프트웨어를 의미하며, 이 판독소프트웨어를 구동하여 스마트카드의 위변조를 확인하고 판독하는 기능을 수행하는 판독모듈(211)과, 인증장치(300)와 안전한 통신채널을 형성하여 판독소프트웨어부와 리더기부의 리더기소프트웨어(이하, '리더기모듈')의 무결성 및 통신채널의 무결성을 검증하고 결과를 인증장치(300)로 전송하는 무결성 검증모듈(212)과, 판독소프트웨어부, 리더기모듈, 보안유틸리티가 정상적으로 설치되도록 하여 동작여부를 확인하는 실행환경 점검모듈(213)을 포함하여 구성된다.Here, although the reading software unit 210 is described as a reading software unit in the description of the technical structure, it means reading software in actual implementation, and a reading module (not shown) that performs the function of reading and checking the forgery and falsification of the smart card by driving the reading software 211) and the authentication device 300 to verify the integrity of the reader software of the reading software module and the reader module (hereinafter referred to as the reader module) and the integrity of the communication channel, and transmits the result to the authentication device 300 And an execution environment checking module 213 for confirming whether the reading software module, the reader module, and the security utility are normally installed.

여기서, 실행환경 점검모듈(213)은, 판독소프트웨어부의 실행시 판독소프트웨어부, 리더기모듈, 보안유틸리티의 최신버전 여부를 확인하고, 최신버전이 아닐 경우, 최신버전을 다운로드할 수 있도록 유도할 수도 있다. 그리고 판독소프트웨어부, 리더기모듈, 보안유틸리티의 최신버전임을 확인한 경우, 정상동작 여부를 확인하여 정상동작하지 않으면, 에러 메시지를 띄우고 재실행하도록 리부팅을 유도하거나 업데이트를 유도하고, 또는 실행중단을 하도록 하는 기능을 수행할 수도 있다.Here, the execution environment checking module 213 may check whether the reading software section, the reader module, and the security utility are latest versions when executing the reading software section, and may guide the latest version to be downloaded when the reading software section is not the latest version . If it is confirmed that it is the latest version of the reading software module, the reader module, and the security utility, it is checked whether the normal operation is performed. If the normal operation is not performed, a function of causing an error message to be issued and rebooting, . ≪ / RTI >

무결성 검증모듈(212)은 판독소프트웨어부(210)의 동작 시, 인증장치(300)로부터 DLL(Dynamic Linking Library) 형태의 실행코드(이하, 인증코드)가 실시간으로 다운로드되도록 하고, 판독소프트웨어부 및 리더기부(리더기 드라이버)의 리더기모듈에 대한 실질적인 무결성을 검증하며, 그 검증결과를 인증장치(300)로 전송하여 판독소프트웨어의 위변조를 방지하고 안전한 스마트 카드 판독환경을 검사한다.The integrity verification module 212 allows an execution code (hereinafter referred to as an authentication code) in the form of a dynamic linking library (DLL) to be downloaded from the authentication device 300 in real time during the operation of the reading software 210, Verifies the substantive integrity of the reader module of the reader base (reader driver), transmits the verification result to the authentication device 300 to prevent forgery and tampering of the reading software, and inspects a safe smart card reading environment.

그리고 인증장치(300)는 판독소프트웨어부의 소스코드에 대한 인증코드 값과 리더기부(리더기 드라이버)에 대한 인증코드 값을 생성하고, 스마트카드의 정보를 읽기 전에 판독소프트웨어부가 구동되는 시점에서 상기 인증코드 값을 이용하여 온라인으로 판독소프트웨어부 및 리더기부의 무결성을 인증하도록 하여 판독장치의 정당성을 인증하는 구성이다.Then, the authentication apparatus 300 generates an authentication code value for the source code of the reading software unit and an authentication code value for the reader base (reader driver), and at the time when the reading software unit is driven before reading the information of the smart card, The integrity of the reading software unit and the reader unit is authenticated online so that the validity of the reading apparatus is authenticated.

이러한 인증장치(300)는 판독장치(200)의 정당성 인증 결과를 스마트카드가 외부 판독환경에 대한 정당성을 인증하는 과정과 연계하여 판독장치가 인증된 경우에만 스마트카드의 정보를 읽을 수 있도록 하여 궁극적으로 스마트 카드가 수록된 정보에 대한 접근제어를 수행하게 된다.The authentication device 300 may be configured to read the information of the smart card only when the reading device is authenticated, in association with the process of authenticating the legitimacy of the reading device 200 with the process of authenticating the legitimacy of the smart card to the external reading environment The access control of the information containing the smart card is performed.

본 발명에 따른 스마트카드 판독장치의 인증시스템의 동작을 살펴보면 다음과 같다.The operation of the authentication system of the smart card reader according to the present invention will be described below.

우선, 본 발명에 따른 스마트카드 판독장치의 인증시스템은 안전한 스마트카드 운용환경을 위한 것으로써, 일반적인 컴퓨팅 환경에서 판독장치의 판독소프트웨어에 대한 안정성 확보를 위한 것이다. 기본적으로 가정사항은 판독소프트웨어부가 인증장치로부터 판독장치로 안전하게 코드사이닝 등을 통해 안전하게 다운로드되고, 버전체크 등을 거쳐 최신성을 보장받게 한다.First, the authentication system of the smart card reader according to the present invention is intended for a secure smart card operating environment and secures the stability of the reading software of the reader in a general computing environment. Basically, assumptions are securely downloaded from the reading software application authentication device to the reading device through code signing securely, and are checked for version, etc. to ensure the latestness.

인증장치(300)가 판독장치(200)를 인증하는 방법은 판독장치의 PC에 설치되는 판독소프트웨어부(210)와 인증장치(300)를 통해 수행한다.A method for the authentication device 300 to authenticate the reading device 200 is performed through the reading software 210 installed in the PC of the reading device and the authentication device 300.

종래의 인터넷 환경은 판독소프트웨어부를 실행 시 SSL/TLS를 통해 서버인증만이 가능하지만, 본 발명에 따른 스마트카드 판독장치의 인증시스템에서는 판독장치 내의 판독소프트웨어부의 정당성을 인증장치가 인증할 수 있도록 한다.In the conventional Internet environment, only the server authentication through the SSL / TLS can be performed when the reading software unit is executed. However, in the authentication system of the smart card reading apparatus according to the present invention, the authentication apparatus can authenticate the legitimacy of the reading software unit in the reading apparatus .

이때, 판독소프트웨어부의 실행시 유저의 공인인증서로 로그인하게 함으로써, 표준 SSL/TLS의 mutual authentication 옵션으로 판독소프트웨어부의 서버인증과 인증장치(300)의 판독소프트웨어부에 대한 클라이언트 인증을 가능하게 한다.At this time, when the reading software unit is executed, the server authenticates the reading software unit with the mutual authentication option of the standard SSL / TLS by making the user log in using the authorized certificate of the user.

소프트웨어 설치 시 일반적으로 적용되는 SSL/TLS를 통한 보안채널의 문제점은 클라이언트(Client) 단에서 접속하는 서버단의 인증서를 통해 서버를 인증하나, 서버단에서 클라이언트를 인증하지 못한다. 이러한 종래 SSL/TLS의 클라이언트 인증의 문제점을 해결하기 위해서는 클라이언트 단에서도 공인된 인증서를 통해 서버가 클라이언트를 인증하게 해야 한다. The problem of the secure channel through SSL / TLS which is generally applied when installing software is that the client authenticates the server through the certificate of the server connected at the client but does not authenticate the client at the server. In order to solve the problem of the client authentication of the conventional SSL / TLS, the client must authenticate the client through the authorized certificate at the client terminal.

이를 위해 판독장치(200)를 사용하는 주체는 판독소프트웨어부(210) 실행 시 반드시 공인인증서를 통해 인증장치(300)에 로그인을 하도록 하고, 판독장치(200) 운영주체의 정당성이 공인인증서를 통해 확인된 경우에만 판독소프트웨어부(210) 실행이 가능하도록 한다.To this end, the subject using the reading device 200 must log in to the authentication device 300 through the public key certificate when the reading software module 210 is executed. If the legitimacy of the principal of the reading device 200 is authorized So that the reading software 210 can be executed only when it is confirmed.

-무결성 검증모듈을 통한 인증(스마트카드 판독환경을 검사)-- Authentication through the integrity verification module (check the smart card reading environment) -

판독장치(200)의 무결성검증모듈이 실시간 다운로드받은 인증코드의 무결성(정당성)을 확인한 후, 무결성검증모듈이 이번에는 판독소프트웨어부 및 리더기부의 무결성을 검증하게 된다.After the integrity verification module of the reading device 200 confirms the integrity (validity) of the real-time downloaded authentication code, the integrity verification module verifies the integrity of the reading software portion and the reader portion at this time.

판독장치(200)는 안전하게 설치된 판독소프트웨어부(210)를 실행하면 우선적으로 설치된 판독소프트웨어부(210)가 최신버전인지 여부를 검증하여 항상 최신의 보안이 유지된 판독소프트웨어부(210)의 실행환경을 유지한다.The reading device 200 verifies whether or not the reading software part 210 installed first is the latest version by executing the reading software part 210 installed securely so that the execution environment of the reading software part 210, Lt; / RTI >

우선, 판독장치(200)는 판독소프트웨어부(210)에 대한 무결성(정당성)을 확인하기 위해 인증장치(300)로부터 DLL(Dynamic Linking Library)형태의 실행코드(인증코드)를 실시간으로 다운로드받아서, 일차적으로 판독소프트웨어부가 인증장치로부터 전달받은 인증코드에 대한 전자서명을 검증함으로써, 실시간 다운로드받은 인증코드의 무결성(정당성)을 확인하는 것을 특징으로 한다. First, the reading device 200 downloads an execution code (authentication code) in the form of a dynamic linking library (DLL) from the authentication device 300 in real time to check the integrity (legitimacy) of the reading software 210, (Integrity) of the authentication code that has been downloaded in real time by verifying the digital signature of the authentication code received from the reading software attachment authentication device in the first place.

즉, 판독소프트웨어부(210)를 중심으로 판독장치(200)에 대한 인증 과정은 무결성검증모듈이 인증장치로부터 DLL형태의 실행코드(인증코드)를 다운로드받아 소프트웨어 설치 시 적용되는 코드사이닝(Code Signing)과 SSL/TLS(Secure Socket Layer/Transport Layer Security)를 통해 온라인 보안채널로 판독소프트웨어부가 안전하게 설치된다. That is, in the authentication process for the reading device 200 centered on the reading software 210, the integrity verification module downloads the DLL-type execution code (authentication code) from the authentication device, Signing) and SSL / TLS (Secure Socket Layer / Transport Layer Security).

실행된 판독소프트웨어부(210)에 대한 무결성 인증을 실시하기 위해서는 안전한 세션키를 상호 공유하고 보안채널을 형성해야 한다. 이때, 인증장치로부터 전달받은 인증코드에 대한 전자서명은 상호 공유한 안전한 세션키로 하며, replay attack 등 방지를 위해 전자서명을 생성한다. In order to perform integrity authentication on the executed reading software 210, it is necessary to mutually share secure session keys and form a secure channel. At this time, the digital signature for the authentication code received from the authentication device is a mutually shared secure session key, and generates an electronic signature to prevent a replay attack or the like.

앞서 공인인증서를 통한 로그인이 성공하면 판독소프트웨어부(210)와 인증장치(300)는 상호간 세션키를 공유하고 이후 절차를 위해 안전한 보안채널을 형성한다.If the login through the authorized certificate is successful, the reading software 210 and the authentication device 300 share the mutual session key and form a secure channel for the subsequent procedure.

이러한 판독장치 및 인증장치 상호간 인증 및 판독장치에 대한 정당성을 확보하고, 판독소프트웨어부 및 리더기부에 대한 정당성 검증이 성공한 후, 판독장치 인증값을 인증장치에서 검증하여 성공한 경우에만 스마트카드에 대한 단말인증[TA(Terminal Authentication)]을 허용하게 함으로써, 스마트카드 수록정보에 대한 접근제어를 수행하는 것을 특징으로 한다.After the legitimacy verification of the reading software unit and the reader base is succeeded, the authenticating device verifies the reader device authentication value, and only when the authenticating device authenticates the reading device and the reader device, And permits authentication [TA (Terminal Authentication)], thereby performing access control on the smart card recording information.

이러한 과정까지 성공해야 비로소 스마트카드 정보를 읽거나 스마트카드 기능 이용이 가능하게 됨으로써, 스마트카드/판독장치/인증장치 3자 간 상호 정당성 확보를 가능하게 하여 궁극적으로 해커 또는 악의적 사용자에 의한 스마트카드 정보의 불법접근을 원천적으로 차단하고, 위변조된 판독환경을 통한 스마트카드의 정보 유출 및 축적 등을 방지하게 하는 본원발명의 작용효과가 있다.This process must be succeeded so that the smart card information can be read or the smart card function can be used. Thus, it is possible to secure mutual legitimacy between the smart card / reader / authentication device and ultimately, the smart card information by the hacker or malicious user And prevent the leakage and accumulation of information of the smart card through the forged and falsified reading environment.

첨부도면을 참고로 부연 설명하면 다음과 같다. With reference to the accompanying drawings, the following description will be given.

판독장치(200)를 인증하는 과정은 도 3 및 도 4에 도시된 바와 같이, 크게 2가지로 구분할 수 있으며, 인증장치(300)에 의한 판독장치(200) 인증 결과에 따라 스마트카드의 인증절차와 연계하는 부분이 포함된다.3 and 4, the process of authenticating the reading apparatus 200 can be roughly classified into two types. The authentication process of the reading apparatus 200 according to the authentication result of the reading apparatus 200 by the authentication apparatus 300 And the like.

이러한 판독장치(200) 인증과정의 2가지는 첫 번째로 판독소프트웨어부(210)의 인증을 위해 무결성 검증모듈(212)의 구성요소(전자서명, 서버난수, 인증코드, 인증서 등)를 인증장치(300)로부터 다운로드받고, 인증장치(300)와 연계하여 다운로드받은 무결성 검증모듈(212)의 구성요소들의 정당성을 확인하는 단계가 있다.Two of the authentication processes of the reading device 200 are first of all the components of the integrity verification module 212 (digital signature, server random number, authentication code, certificate, etc.) for authentication of the reading software 210, 300, and verifying the validity of the components of the integrity verification module 212 downloaded in association with the authentication device 300.

판독소프트웨어부(210)의 동작 시, 인증장치(300)로부터 DLL(Dynamic Linking Library) 형태의 실행코드(이하, 인증코드)가 실시간으로 다운로드되도록 한다.(Hereinafter referred to as an authentication code) in the form of a dynamic linking library (DLL) from the authentication device 300 in real time when the reading software 210 operates.

두 번째로, 다운로드받은 무결성 검증모듈(212)의 구성요소들이 인증장치(300)와 연계하여 판독소프트웨어부 및 리더기부를 인증하여 판독시스템을 인증하는 단계로 구분한다.Secondly, the components of the integrity verification module 212, which are downloaded, authenticate the reading software and the reader unit in association with the authentication device 300 to authenticate the reading system.

-판독장치(200)인증의 첫 번째 단계-- the first step of the reading device (200) authentication -

판독장치(200) 인증의 첫 번째 단계는 도 3의 절차를 통해 수행한다.The first step of authentication of the reading device 200 is performed through the procedure of FIG.

우선, 판독소프트웨어부를 실행(1)하고, 판독장치를 통해 공인인증서로 인증장치를 로그인하여 세션키를 공유(2)한다.First, the reading software section is executed (1), and the authentication device is logged in with a public certificate through the reading device to share the session key (2).

여기서, 판독소프트웨어부가 실행되면 판독장치(200) 운영주체의 정당성을 확인하기 위해 판독장치 운영주체의 공인인증서로 로그인을 수행한다. 공인인증서로 로그인을 수행하면 온라인상의 인증장치에서 공인인증서의 유효성을 확인하고, 유효할 경우 표준 웹 보안통신 프로토콜(SSL/TLS)를 통해 서버인증 및 클라이언트 인증을 수행하여 보안채널을 형성한다. 이 과정에서 판독장치와 인증장치는 보안채널 형성에 사용된 세션키를 공유한다.Here, when the reading software section is executed, the login is performed with the authorized certificate of the reading device operating entity to confirm the legitimacy of the operating entity of the reading device 200. [ When login is performed with a public certificate, the authentication device on the online verifies the validity of the public key certificate, and if valid, forms a secure channel by performing server authentication and client authentication through a standard web security communication protocol (SSL / TLS). In this process, the reading device and the authentication device share the session key used for forming the secure channel.

이후, 공인인증서 로그인을 수행하여 인증 성공 후, 인증장치에서서는 판독장치 인증의 시작을 인지하고, 무결성 검증모듈의 정당성 검증을 위해 무결성 검증모듈의 프로그램 코드에 대해 해쉬 값을 생성한다.(3)Then, after the authentication is successfully performed by performing the login of the authorized certificate, the authentication device recognizes the start of the reading device authentication and generates a hash value for the program code of the integrity verification module to verify the validity of the integrity verification module.

다음으로, 인증장치는 판독소프트웨어의 무결성검증모듈의 정당성 확인 시 재생공격(Replay Attack)을 방지하기 위해 서버난수 (r)을 생성한다(4).Next, the authentication device generates a server random number r (4) to prevent a replay attack in confirming the validity of the integrity verification module of the reading software.

인증장치는 무결성검증모듈의 정당성을 확인하기 위해 상기 (3) 및 (4) 절차에서 생성한 무결성검증모듈의 해쉬 값 및 서버난수(r)와 상기 (2) 절차에서 공유한 현 보안세션의 세션키(Skey)를 포함하여 실시간 해쉬 값을 생성한다.(5)The authentication apparatus checks the hash value and the server random number r of the integrity verification module generated in the procedures (3) and (4) to confirm the integrity of the integrity verification module, And generates a real-time hash value including a key (Skey). (5)

다음으로 상기 (5)의 절차와 동시에 실시간 무결성검증모듈 해쉬 값의 검증을 위한 전자서명을 인증장치의 개인키로 생성한다.(6)At the same time as the procedure (5), a digital signature for verifying the hash value of the real-time integrity verification module is generated as a private key of the authentication device.

다음으로 인증장치는 판독소프트웨어의 정당성을 인증하기 위해 동적라이브러리(DLL) 형태의 무결성검증모듈에 해당하는 구성요소들을 전송한다(실시간 전자서명, 서버난수, 인증서 포함). 이와 동시에 상기의 (6) 과정을 통해 생성한 실시간 전자서명 값을 보안채널을 통해 판독장치 상의 판독소프트웨어부에 안전하게 전달한다.(7)Next, the authentication device transmits the components corresponding to the integrity verification module in the form of a dynamic library (DLL) (including real time digital signature, server random number, and certificate) to authenticate the legitimacy of the reading software. At the same time, the real-time digital signature value generated through the process (6) is securely transmitted to the reading software unit on the reading device through the secure channel. (7)

다음으로 판독장치의 판독소프트웨어부는 인증장치로부터 무결성검증모듈과 무결성검증모듈에 대한 실시간 전자서명 값을 다운로드 받는다.(8)Next, the reading software portion of the reading device downloads the real-time digital signature value for the integrity verification module and the integrity verification module from the authentication device. (8)

다음으로 판독소프트웨어는 다운로드 받은 무결성검증모듈의 정당성을 인증하기 위해 상기 (3)의 과정과 같이 인증장치에서 수행한 방법과 동일한 방법으로 무결성검증모듈에 대한 해쉬 값을 생성한다.(9)Next, the reading software generates a hash value for the integrity verification module in the same manner as the method performed in the authentication device, as in the process (3), to authenticate the integrity of the downloaded integrity verification module.

다음으로 판독소프트웨어부는 상기 (5)의 과정과 같이 상기 (9)의 과정에서 생성한 무결성검증모듈의 해쉬 값과 인증장치에서 다운로드 받은 서버난수(r)을 적용하여 상기 (5)의 과정과 같이 실시간 무결성검증모듈 해쉬 값을 생성한다.(10)Next, the reading software unit applies the hash value of the integrity verification module generated in the process of (9) and the server random number r downloaded from the authentication device as in the process of (5) The real-time integrity verification module generates a hash value. (10)

다음으로 판독소프트웨어부는 상기 (6)의 과정에서 사용된 인증장치의 인증서로부터 공개키를 획득하고, 이 공개키로 인증장치로부터 전달받은 무결성검증모듈 해쉬 값과 상기 (10)의 과정에서 생성한 값을 통해 전자서명을 검사하여 다운로드 받은 무결성검증모듈에 대한 정당성을 검사한다. 또한 무결성검증모듈의 무결성 검증 실패 시 오류를 인증장치에 통보하고, 이후 과정을 종료하며 판독소프트웨어부 실행을 종료한다.(11)Next, the reading software obtains the public key from the certificate of the authentication device used in the process of (6), and compares the hash value of the integrity verification module received from the authentication device with the public key and the value generated in the process of (10) And verifies the integrity of the downloaded integrity verification module. Also, when the integrity verification module fails to verify integrity, an error is notified to the authentication device, and the process is terminated and the execution of the reading software module is terminated. (11)

다음으로 판독소프트웨어부는 상기의 과정이 정상적으로 완료되면 무결성검증모듈이 정당한 것으로 판단하고 무결성검증모듈을 실행한다.(12)Next, the reading software unit judges that the integrity verification module is legitimate and executes the integrity verification module when the above process is normally completed. (12)

-판독장치(200)인증의 두 번째 단계-- the second step of the reading device (200) authentication -

판독장치(200) 인증의 두 번째 단계는 도 4의 절차를 통해 수행한다.The second step of authentication of the reading device 200 is performed through the procedure of FIG.

판독장치(200) 인증의 첫 번째 단계를 통해 판독소프트웨어부(210)가 인증장치(300)와 연계하여, 인증장치(300)로부터 다운로드받은 무결성 검증모듈의 정당성이 성공적으로 확인되면, 판독소프트웨어부는 비로소 무결성 검증모듈을 실행한다.If the validity of the integrity verification module downloaded from the authentication apparatus 300 is successfully confirmed by the reading software unit 210 in conjunction with the authentication apparatus 300 through the first step of the reading apparatus 200 authentication, Execute the integrity verification module.

정당성이 확보된 무결성 검증모듈을 통한 판독장치(200) 인증과정은 다음의 도 4에 도시된 바와 같다.The authentication process of the reading device 200 through the integrity verification module with the legitimacy is as shown in the following FIG.

도 4의 각 단계에 대한 부호를 설명하면 다음과 같다.Signs for each step in FIG. 4 will be described as follows.

판독장치 인증의 첫 단계가 성공적으로 수행되면 판독소프트웨어부는 인증장치로부터 다운로드받은 무결성 검증모듈(212)의 구성요소(전자서명, 서버난수, 인증코드, 인증서 등)의 무결성 검증하기 위한 무결성 검증모듈(212)을 실행시킨다(1).If the first step of the reading device authentication is successfully performed, the reading software module may include an integrity verification module (e.g., a verification module) for verifying the integrity of components (digital signature, server random number, authentication code, certificate, etc.) of the integrity verification module 212 downloaded from the authentication device 212 are executed (1).

무결성 검증모듈(212)은 판독소프트웨어부의 정당성을 확인하기 위해 판독소프트웨어부에 대한 해쉬 값를 생성한다(2).The integrity verification module 212 generates a hash value for the reading software part to confirm the legitimacy of the reading software part (2).

다음으로 무결성 검증모듈(212)은 판독장치 인증의 첫 번째 단계의 (11)번 과정에서와 같이 인증장치의 인증서로부터 획득한 공개키와 상기 (2)의 과정에서 생성한 판독소프웨어부의 해쉬 값을 적용하여 판독소프트웨어부의 전자서명을 검사하여 판독소프트웨어부의 무결성(정당성)을 검증한다(판독소프트웨어부 전자서명 검증). 또한 판독소프트웨어부의 무결성 검증 실패 시 오류를 인증장치에 통보하고, 이후 과정을 종료하며 판독소프트웨어부를 종료한다(3).Next, the integrity verification module 212 compares the public key obtained from the certificate of the authentication device with the hash value of the read-out software section generated in the process of (2), as in the process (11) of the first step of the read- (Validity) of the reading software part is verified by checking the digital signature of the reading software part (reading software part digital signature verification). Further, when the verification of the integrity of the reading software unit fails, the error is notified to the authentication device, and the process is terminated and the reading software unit is terminated (3).

다음으로 리더기모듈은 판독장치의 PC에 연결된 스마트카드 리더기모듈의 운용과 인터페이스를 수행하는 프로그램을 말하며, 판독소프트웨어부의 무결성을 검증 시 리더기모듈의 무결성을 동시에 검증하여 악의적인 리더기모듈을 통한 스마트카드 정보에 대한 불법적 접근 및 취득을 방지한다. 무결성검증모듈은 인증장치에서 리더기모듈 해쉬값을 생성하는 방식과 동일하게 리더기모듈의 해쉬값를 생성한다(4).Next, the reader module refers to a program for operating and interfacing the smart card reader module connected to the PC of the reading device. When verifying the integrity of the reading software module, the integrity of the reader module is verified at the same time and the smart card information through the malicious reader module To prevent illegal access and acquisition of The integrity verification module generates the hash value of the reader module in the same way as the reader module hash value is generated in the authentication device (4).

다음으로 무결성 검증모듈(212)은 상기 (3)의 과정과 같이 인증장치의 공개키와 상기 (4)의 과정에서 생성한 리더기모듈의 해쉬값을 적용하여 리더기모듈의 전자서명을 검사하여 리더기모듈의 무결성(정당성)을 검증한다(리더기모듈 전자서명 검증). 또한 리더기모듈의 무결성 검증 실패 시 오류를 인증장치에 통보하고, 이후 과정을 종료하며 판독소프트웨어부 실행을 종료한다(5).Next, the integrity verification module 212 checks the digital signature of the reader module by applying the public key of the authentication device and the hash value of the reader module generated in the process of (4) as in the process of (3) (Validity of the reader module digital signature verification). In addition, when the integrity verification of the reader module fails, the error is notified to the authentication device, the process is terminated, and the execution of the reading software module is terminated (5).

다음으로 무결성 검증모듈(212)은 판독장치의 환경에 대한 인증을 위해 판독소프트웨어부와 리더기모듈의 해쉬값과, 상기 도 3의 과정에서 생성한 무결성검증모듈에 대한 해쉬값을 포함하고, 리더기인증 WL(White List)의 검증결과 및 서버난수(r)를 적용하여 해쉬값을 생성한다(판독장치 인증 해쉬값 생성). 이 과정에서 리더기인증 WL 검증을 수행하고, 판독장치 인증 해쉬값 생성 시, 그 결과를 포함한다. 리더기 인증 WL 검증은 무결성검증모듈이 인증장치로부터 다운로드 시 전달받은 리더기인증 WL의 목록에 리더기모듈이 포함되어 있는지 여부를 확인하는 것으로써, 인가되지 않은 리더기의 불법적 사용을 추가적으로 방지하기 위해 수행한다(6).Next, the integrity verification module 212 includes a hash value of the reading software module and the reader module for authentication of the environment of the reading device, and a hash value for the integrity verification module generated in the process of FIG. 3, The verification result of WL (White List) and the server random number (r) are applied to generate a hash value (reader device authentication hash value generation). In this process, the reader authentication WL verification is performed, and when the reader authentication Hash value is generated, the result is included. Reader Verification The WL Verification is performed to further prevent unauthorized use of the unauthorized reader by checking whether the reader module is included in the list of the reader authentication WLs that the integrity verification module has received when downloading from the authentication device 6).

다음으로 무결성 검증모듈(212)은 인증장치의 판독장치에 대한 인증을 위한 인증코드 값을 HMAC(Hash based Massage Authentication Code)을 적용하여 생성한다. 이 때 HMAC에 사용하는 키는 상기 도 3의 과정에서 생성한 보안채널의 세션키(Skey)를 적용하고, 상기 (6)의 과정에서 생성한 판독장치 인증 해쉬값(Hs5)를 적용한다. 생성한 판독장치 인증코드(Cc1)를 판독장치 인증을 위해 인증장치에 전송한다(7).Next, the integrity verification module 212 generates an authentication code value for authentication of the reading device of the authentication device by applying a Hash based Massage Authentication Code (HMAC). At this time, the key used for the HMAC applies the session key (Skey) of the secure channel generated in the process of FIG. 3 and applies the reader authentication Hash value (Hs5) generated in the process of (6). And transmits the generated reader device authentication code Cc1 to the authentication device for authentication of the reader device (7).

다음으로 인증장치는 저장되어 있는 무결성검증모듈 해쉬값(Hs2), 판독소프트웨어부 해쉬값(Hs3) 및 리더기모듈 해쉬값(Hs4)를 적용하여 상기 (6)의 과정과 같은 판독장치인 인증 해쉬값(Hs6)을 생성한다(8).Next, the authentication apparatus applies the hash value Hs2 of the integrity verification module, the hash value Hs3 of the read software, and the hash value Hs4 of the reader module stored therein to the authentication hash value (Hs6) (8).

다음으로 인증장치는 판독장치와 공유한 보안채널 세션키(Skey) 및 서버난수(r)을 적용하여 상기 (7)의 과정과 같이 HMAC를 적용하여 판독장치 인증 해쉬값과 리더기 WL 검증결과, 서버난수(r)에 대한 판독장치 인증코드 값 Cc2을 생성한다(9).Next, the authentication apparatus applies HMAC as in the process of (7) by applying the secure channel session key (Skey) and the server random number (r) shared with the reader, and obtains the reader device authentication hash value and the reader WL verification result, And generates the reader authentication code value Cc2 for the random number r (9).

다음으로 인증장치는 무결성검증모듈에서 전송한 판독장치 인증코드(Cc1)와 상기 (9)의 과정에서 인증장치가 생성한 판독장치 인증코드(Cc2)를 비교하여 판독장치의 정당성을 인증한다(판독장치 인증). 판독장치 인증코드는 무결성검증모듈, 판독소프트웨어부, 리더기모듈, 리더기 WL를 포함하기 때문에, 판독장치의 주요 구성요소에 대한 무결성을 상호 교차하여 효과적으로 인증한다. 또한 표준 SSL/TLS의 상호인증(Mutual-Auth) 옵션을 사용하여 보안채널을 형성하고, 이 때 생성한 세션키와 서버난수를 적용하여 악의적인 사용자에 의한 재사용공격(Replay Attack) 및 중간자공격(Man-in-the-middle Attack)을 방지한다(10).Next, the authentication device verifies the legitimacy of the reading device by comparing the reader device authentication code (Cc1) transmitted from the integrity verification module with the reader device authentication code (Cc2) generated by the authentication device in the process of (9) Device authentication). Since the reader device authentication code includes the integrity verification module, the reading software module, the reader module, and the reader WL, the authentication of the main components of the reading device is effectively cross-checked. In addition, a secure channel is formed using the standard SSL / TLS Mutual-Auth option, and the generated session key and the server random number are applied to a replay attack and a meson attack by a malicious user Man-in-the-middle attacks (10).

다음으로 인증장치는 상기의 과정이 성공적으로 완료되면 판독장치가 정당하다고 판단할 수 있으나, 스마트카드는 판독장치의 정당성을 알 수 없게 된다. 상기 (7)의 과정 이후 판독소프트웨어부는 스마트카드에 대한 판독을 위해 스마트카드와 인증과정을 수행하고, 인증이 성공한 경우 스마트카드를 판독하게 된다. 이 시점에서 스마트카드는 판독장치의 정당성을 알 수 없기 때문에, 스마트카드의 인증과정 중 스마트카드 외부의 판독환경에 대한 인증과정(TA, Terminal Authentication)과 인증장치의 판독장치 인증 결과를 연계하여 스마트카드에 대한 접근을 제어한다. TA(Terminal Authentication)는 유럽 전자여권 규격에 표준화된 TA Version2 프로토콜을 사용하여 스마트카드와 인증장치 간 수행한다. 스마트카드는 판독장치가 판독 시도 시 TA 과정을 통해 인증장치를 인증할 수 있기 때문에, 현 세션에 대한 스마트카드의 TA 수행을 인증장치가 알 수 있으며, 상기 (10)까지의 과정이 성공한 경우에만 인증장치가 상호작용을 하고, 실패한 경우 TA 과정을 중지시켜 스마트카드에 대한 악의적인 판독시도를 방지한다(판독장치 인증 성공 시 TA 허용)(11).Next, the authentication apparatus can determine that the reading apparatus is legitimate when the above process is successfully completed, but the smart card can not know the legitimacy of the reading apparatus. After the process (7), the reading software unit performs an authentication process with the smart card to read the smart card, and reads the smart card if the authentication is successful. At this point, since the validity of the reading device can not be known at this time, the authentication process (TA, Terminal Authentication) for the reading environment outside the smart card during the authentication process of the smart card is linked with the authentication result of the reading device of the authentication device, Control access to the card. TA (Terminal Authentication) is performed between the smart card and the authentication device using the TA Version2 protocol standardized in the European Passport Standard. Since the smart card can authenticate the authentication device through the TA process when the reading device attempts to read it, the authentication device can recognize the TA of the smart card for the current session, and only when the process up to (10) The authentication device interacts and, if it fails, stops the TA process to prevent malicious attempts to read the smart card (TA is allowed if the read device authentication is successful) (11).

다음으로 판독소프트웨어부는 상기 (7)의 과정 후 스마트카드에 대한 인증과 판독을 시도하며, 스마트카드와 인증장치 간의 TA를 중계한다(스마트카드 인증 및 판독)(12).Next, the reading software part attempts authentication and reading of the smart card after the process of (7), and relays the TA between the smart card and the authentication device (smart card authentication and reading) (12).

상기한 바와 같은 구성으로 이루어진 본 발명에 따른 스마트카드의 판독 인증 시스템은 스마트카드 수록정보를 판독하기 전에 온라인 상의 인증장치가 판독장치를 인증하여 판독소프트웨어부 및 리더기모듈의 정당성을 확보하고, 스마트카드가 외부환경의 정당성을 인증하는 과정과 연계하여 스마트카드에 대한 접근제어를 가능하게 함으로써 스마트카드 수록정보의 불법 유출을 시도하는 해커의 판독소프트웨어부 및 리더기모듈에 대한 위,변조 위협을 효과적으로 차단할 수 있는 작용효과가 있다.In the smart card read-out authentication system according to the present invention configured as described above, the on-line authentication device authenticates the read-out device to secure the legitimacy of the read-out software module and the reader module, Is able to effectively block the threat of tampering with the reading software part and the reader module of the hacker trying to illegally leak information of the smart card by making access control to the smart card in conjunction with the process of authenticating the external environment There is a working effect.

100 : 스마트카드 200 : 판독장치
210 : 판독소프트웨어부 211 : 판독모듈
212 : 무결성 검증모듈 213 : 실행환경 점검모듈
220 : 리더기부 300 : 인증장치
100: smart card 200: reading device
210: reading software part 211: reading module
212: integrity verification module 213: execution environment check module
220: reader base 300: authentication device

Claims (11)

스마트카드 판독장치의 인증시스템에 있어서,
스마트카드를 판독하는 기능을 수행하며, 상기 판독 기능 및 통신채널의 무결성을 검증하여 결과를 인증장치로 전송하는 판독장치(200); 및
상기 판독장치의 판독기능 및 통신채널의 무결성을 검증하기 위한 인증 데이터를 생성하고, 상기 판독장치 구동 시 상기 인증 데이터를 상기 판독장치로 전송하며, 상기 인증 데이터로 인한 인증결과를 상기 판독장치로부터 수신하는 인증장치(300);를 포함하며,
상기 인증장치(300)는 공인인증서를 통한 로그인이 성공하면 상기 판독장치(200)와 상호간 세션키를 공유하고 보안채널을 형성하며, 상기 판독장치의 스마트카드 위변조 확인과 판독기능 및 통신채널의 무결성을 검증하기 위한 인증 데이터를 상기 판독장치로 전달하는 것을 특징으로 하는 스마트카드 판독장치의 인증시스템.
An authentication system for a smart card reader device,
A reading device (200) performing the function of reading the smart card, verifying the integrity of the reading function and the communication channel and transmitting the result to the authentication device; And
Wherein the control unit generates authentication data for verifying the read function of the reading apparatus and the integrity of the communication channel, transmits the authentication data to the reading apparatus when the reading apparatus is driven, receives an authentication result based on the authentication data from the reading apparatus (300), the authentication device (300)
The authentication device 300 shares a mutual session key with the reader 200 and forms a secure channel if the login through the authorized certificate is successful. The smart card forbidden verification and reading function of the reading device and the integrity of the communication channel And transmits the authentication data for verifying the authentication data to the reading device.
제 1 항에 있어서,
상기 판독장치(200)는,
상기 인증장치(300)로부터 보안채널을 통해 최신 버전으로 안전하게 설치되며, 실시간으로 인증코드를 인증장치로부터 다운로드받아 무결성을 검증하여 그 결과를 인증장치로 전송하며, 스마트카드의 위변조를 확인하고 판독하는 기능을 수행하는 판독소프트웨어부(210); 및
상기 스마트카드를 판독하기 위한 리더기부(220);를 포함하는 것을 특징으로 하는 스마트카드 판독장치의 인증시스템.
The method according to claim 1,
The reading device (200)
The authentication code is downloaded from the authentication device 300 to the latest version securely, the authentication code is downloaded from the authentication device in real time, the integrity is verified, the result is transmitted to the authentication device, and the forgery and falsification of the smart card is confirmed A reading software section 210 for performing functions; And
And a reader unit (220) for reading the smart card.
제 1 항에 있어서,
상기 판독장치(200)는,
스마트카드의 위변조를 확인하고 판독하는 기능을 수행하는 판독모듈(211);
인증장치(300)와 통신채널을 형성하여 판독소프트웨어부와 리더기부의 무결성 및 통신채널의 무결성을 검증하고, 상기 검증결과를 인증장치(300)로 전송하는 무결성 검증모듈(212); 및
판독소프트웨어부의 실행 시 판독소프트웨어부, 리더기모듈 및 보안유틸리티의 최신버전 여부 및 정상동작 여부를 확인하는 실행환경 점검모듈(213);을 포함하는 것을 특징으로 하는 스마트카드 판독장치의 인증시스템.
The method according to claim 1,
The reading device (200)
A reading module 211 which performs a function of confirming and reading the forgery and falsification of the smart card;
An integrity verification module 212 that forms a communication channel with the authentication device 300 to verify the integrity of the reading software module and the reader module and the integrity of the communication channel and transmits the verification result to the authentication device 300; And
And an execution environment checking module (213) for checking whether the latest version of the reading software part, the reader module and the security utility and the normal operation of the reading software part when executing the reading software part.
제 1 항에 있어서,
상기 판독장치(200)는 공인인증서로 인증장치(300)에 로그인을 하도록 하고, 상기 공인인증서를 통해 판독장치 운영주체의 정당성이 확인된 경우에 판독소프트웨어부(210)를 실행하도록 하는 것을 특징으로 하는 스마트카드 판독장치의 인증시스템.
The method according to claim 1,
The reading device 200 permits the authentication device 300 to log in with a public key certificate and executes the reading software key 210 when the legitimacy of the principal of the reading device is confirmed through the public key certificate The authentication system of the smart card reader.
삭제delete (a) 인증장치(300)가 스마트카드 판독기능 및 통신채널의 무결성을 검증하기 위한 인증 데이터 생성하여 판독장치(200)로 전송하는 단계;
(b) 상기 판독장치(200)가 상기 인증장치(300)와 연계하여 상기 스마트카드 판독기능 및 통신채널의 무결성을 검증하는 단계; 및
(c) 상기 인증장치(300)가 상기 인증 데이터로 인한 인증결과를 상기 판독장치로부터 수신하여 상기 판독장치(200)를 인증하는 단계;를 포함하며,
상기 제 (a) 단계는 (a-1) 판독장치(200)가 공인인증서를 통해 로그인하는 단계; (a-2) 상기 공인인증서로 로그인하면, 인증장치(300)가 상기 공인인증서의 유효성 여부를 판단하여 보안채널을 형성하는 단계; (a-3) 상기 인증장치(300)가 정당성 검증을 위해 판독장치(200)의 무결성 검증모듈에 대한 실시간 해쉬 값을 생성하는 단계; (a-4) 상기 인증장치(300)가 상기 실시간 해쉬 값에 대한 전자서명을 생성하는 단계; 및 (a-5) 상기 인증장치(300)가 상기 무결성 검증모듈에 대한 인증데이터를 생성하여 판독장치(200)로 전송함과 동시에 상기 전자서명 값을 보안채널을 통해 상기 판독장치(200)로 전달하는 단계;를 포함하는 것을 특징으로 하는 스마트카드 판독장치의 인증방법.
(a) generating authentication data for verifying the integrity of the smart card reading function and the communication channel by the authentication device 300 and transmitting it to the reading device 200;
(b) verifying integrity of the smart card read capability and communication channel in conjunction with the authentication device (300) by the reader device (200); And
(c) receiving, by the authentication device (300), an authentication result based on the authentication data from the reading device and authenticating the reading device (200)
The step (a) includes: (a-1) logging in the reading device 200 through a public certificate; (a-2) when the authentication apparatus 300 logs in using the authorized certificate, determining whether the authorized certificate is valid and forming a secure channel; (a-3) generating the real-time hash value for the integrity verification module of the reading device 200 for the authentication of the authentication device 300; (a-4) the authentication device 300 generating an electronic signature for the real-time hash value; And (a-5) the authentication device 300 generates authentication data for the integrity verification module and transmits the authentication data to the reading device 200, and simultaneously transmits the digital signature value to the reading device 200 via a secure channel And transmitting the authentication information to the smart card reader.
삭제delete 제 6 항에 있어서,
상기 제 (a-3) 단계는 상기 인증장치(300)가 무결성 검증모듈의 정당성 확인 시 재생공격(Replay Attack)을 방지하기 위해 서버 난수(r)을 생성하여, 무결성 검증모듈의 해쉬 값 및 보안채널의 세션키를 포함하여 실시간 해쉬 값을 생성하는 단계인 것을 특징으로 하는 스마트카드 판독장치의 인증방법.
The method according to claim 6,
In the step (a-3), the authentication device 300 generates a server random number r to prevent a replay attack in confirming the integrity of the integrity verification module. The hash value of the integrity verification module and the security And generating a real-time hash value including the session key of the channel.
제 6 항에 있어서,
상기 제 (b) 단계는,
(b-1) 상기 판독장치(200)가 무결성 검증모듈(212)을 통해 판독소프트웨어부(210)에 대한 해쉬 값을 생성하도록 하는 단계;
(b-2) 상기 판독장치(200)가 인증서의 공개키와 상기 제 (b-1)의 해쉬 값을 적용하고 판독소프트웨어부의 전자서명을 검사하여 상기 판독소프트웨어부의 무결성(정당성)을 검증하는 단계;
(b-3) 상기 판독장치(200)가 리더기모듈의 해쉬 값을 생성하도록 하는 단계; 및
(b-4) 상기 판독장치(200)가 상기 인증서의 공개키와 상기 리더기모듈의 해쉬 값을 적용하고 상기 리더기모듈의 전자서명을 검사하여 리더기모듈의 무결성(정당성)을 검증하는 단계;를 포함하는 것을 특징으로 하는 스마트카드 판독장치의 인증방법.
The method according to claim 6,
The step (b)
(b-1) causing the reading device 200 to generate a hash value for the reading software 210 via the integrity verification module 212;
(b-2) verifying the integrity (legitimacy) of the reading software section by applying the public key of the certificate and the hash value of the (b-1) and examining the electronic signature of the reading software section ;
(b-3) causing the reading device 200 to generate a hash value of the reader module; And
(b-4) verifying the integrity (legitimacy) of the reader module by applying the public key of the certificate and the hash value of the reader module and checking the electronic signature of the reader module The authentication method of the smart card reading device.
제 6 항에 있어서,
상기 제 (c) 단계는,
(c-1) 판독장치(200)가 판독소프트웨어부(210)에 대한 해쉬 값, 리더기모듈의 해쉬값, 무결성 검증모듈(212)에 대한 해쉬값을 리더기모듈 검증결과 및 서버 난수(r)을 적용하여 인증 해쉬값을 생성하는 단계;
(c-2) 인증장치(300)가 무결성 검증모듈을 통해 판독장치에 대한 인증을 위한 인증코드 값을 MAC(Massage Authentication Code)을 적용하여 생성하는 제1 인증코드를 상기 판독장치로부터 수신하는 단계;
(c-3) 상기 인증장치(300)가 기 저장되어 있는 판독소프트웨어부에 대한 해쉬값, 리더기모듈의 해쉬값 및 무결성 검증모듈에 대한 해쉬값을 생성하는 단계;
(c-4) 상기 인증장치(300)가 판독소프트웨어부와 공유한 보안채널 세션키(Skey), 상기 리더기모듈 검증결과 및 서버 난수(r)을 적용하고, 상기 MAC을 적용하여 제2 인증코드를 생성하는 단계; 및
(c-5) 상기 인증장치(300)가 상기 제1 인증코드와 상기 제(c-4)에서 생성한 제2 인증코드를 비교하여 판독장치의 정당성을 인증하는 단계;를 포함하는 것을 특징으로 하는 스마트카드 판독장치의 인증방법.
The method according to claim 6,
The step (c)
(c-1) The reader 200 reads the hash value of the reader software module 210, the hash value of the reader module, the hash value of the integrity verification module 212 with the reader module verification result and the server random number r To generate an authentication hash value;
(c-2) receiving from the reading device a first authentication code that the authentication device 300 generates by applying an MAC (Massage Authentication Code) to the authentication code value for authentication to the reading device through the integrity verification module ;
(c-3) generating a hash value, a hash value of the reader module, and a hash value for the integrity verification module for the reading software unit in which the authentication device 300 has been stored;
(c-4) Applying the secure channel session key (Skey), the reader module verification result and the server random number (r) shared by the authentication device (300) with the reading software part, ≪ / RTI > And
(c-5) comparing the first authentication code with the second authentication code generated in the (c-4) by the authentication device 300 to authenticate the legitimacy of the reading device The authentication method of the smart card reading device.
제 10 항에 있어서,
(c-6) 상기 제 (c-5) 단계 이후, 상기 판독장치(200)가 스마트카드(100)에 대한 인증과 판독을 시도하며, 상기 스마트카드와 인증장치 간의 인증을 중계하는 단계;를 더 포함하는 것을 특징으로 하는 스마트카드 판독장치의 인증방법.
11. The method of claim 10,
(c-6) repeating the authentication between the smart card and the authentication device when the reading device (200) attempts authentication and reading with respect to the smart card (100) after the (c-5) Further comprising the step of authenticating the smart card.
KR20120137751A 2012-11-30 2012-11-30 System for authentication of smartcard reading system and method therefor KR101493791B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR20120137751A KR101493791B1 (en) 2012-11-30 2012-11-30 System for authentication of smartcard reading system and method therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR20120137751A KR101493791B1 (en) 2012-11-30 2012-11-30 System for authentication of smartcard reading system and method therefor

Publications (2)

Publication Number Publication Date
KR20140073629A KR20140073629A (en) 2014-06-17
KR101493791B1 true KR101493791B1 (en) 2015-02-17

Family

ID=51127012

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20120137751A KR101493791B1 (en) 2012-11-30 2012-11-30 System for authentication of smartcard reading system and method therefor

Country Status (1)

Country Link
KR (1) KR101493791B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200132254A (en) * 2019-05-16 2020-11-25 주식회사 웅진 Method for providing rental service, system and computer-readable medium recording the method

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050072184A (en) * 2004-01-06 2005-07-11 주식회사 비즈모델라인 System and method for authenticating rfid reader and information storing medium and recording medium
KR20060045951A (en) * 2004-06-17 2006-05-17 임종인 A method for providing secrecy, authentication and integrity of information to rfid tag
KR20080013837A (en) * 2007-12-06 2008-02-13 주식회사 나래누리 The smart card and the reader for mutual certification of the web server
KR101124923B1 (en) 2008-08-04 2012-03-28 에스케이플래닛 주식회사 System and method for authentication of smart card

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050072184A (en) * 2004-01-06 2005-07-11 주식회사 비즈모델라인 System and method for authenticating rfid reader and information storing medium and recording medium
KR20060045951A (en) * 2004-06-17 2006-05-17 임종인 A method for providing secrecy, authentication and integrity of information to rfid tag
KR20080013837A (en) * 2007-12-06 2008-02-13 주식회사 나래누리 The smart card and the reader for mutual certification of the web server
KR101124923B1 (en) 2008-08-04 2012-03-28 에스케이플래닛 주식회사 System and method for authentication of smart card

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200132254A (en) * 2019-05-16 2020-11-25 주식회사 웅진 Method for providing rental service, system and computer-readable medium recording the method
KR102224570B1 (en) * 2019-05-16 2021-03-09 주식회사 웅진 Method for providing rental service, system and computer-readable medium recording the method

Also Published As

Publication number Publication date
KR20140073629A (en) 2014-06-17

Similar Documents

Publication Publication Date Title
US11128477B2 (en) Electronic certification system
JP4067985B2 (en) Application authentication system and device
US8112787B2 (en) System and method for securing a credential via user and server verification
KR101648521B1 (en) A system and method for providing security in browser-based access to smart cards
CN101027676B (en) A personal token and a method for controlled authentication
US8479001B2 (en) Self-authentication communication device and device authentication system
US8132722B2 (en) System and method for binding a smartcard and a smartcard reader
JP4993122B2 (en) Platform integrity verification system and method
CN112000951B (en) Access method, device, system, electronic equipment and storage medium
CN101841525A (en) Secure access method, system and client
US9055061B2 (en) Process of authentication for an access to a web site
WO2012167352A1 (en) Credential authentication methods and systems
CN109831311B (en) Server verification method, system, user terminal and readable storage medium
CN115001695B (en) Secure provisioning of baseboard management controller identities for platforms
KR101493791B1 (en) System for authentication of smartcard reading system and method therefor
US20050137898A1 (en) Replacing blinded authentication authority
CN112738005A (en) Access processing method, device, system, first authentication server and storage medium
US11972419B2 (en) Method for authenticating payment data, corresponding devices and programs
CN113297563B (en) Method and device for accessing privileged resources of system on chip and system on chip
Urien et al. A new convergent identity system based on eap-tls smart cards
CN111182004B (en) SSL handshake method, device and equipment
US7287161B2 (en) Method and system for testing a program, and a device
CN108154361B (en) Access method of U shield embedded in mobile terminal and mobile terminal
CN115244898A (en) Secure and recorded key access by applications
KR20220153602A (en) Methods and devices for authenticating application-specific keys and requesting such authentication

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
FPAY Annual fee payment

Payment date: 20180122

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20200122

Year of fee payment: 6