KR100866608B1 - System and Method for mutual authentication between a remote user and a server using a mobile device, Recording medium thereof - Google Patents

System and Method for mutual authentication between a remote user and a server using a mobile device, Recording medium thereof Download PDF

Info

Publication number
KR100866608B1
KR100866608B1 KR1020070016251A KR20070016251A KR100866608B1 KR 100866608 B1 KR100866608 B1 KR 100866608B1 KR 1020070016251 A KR1020070016251 A KR 1020070016251A KR 20070016251 A KR20070016251 A KR 20070016251A KR 100866608 B1 KR100866608 B1 KR 100866608B1
Authority
KR
South Korea
Prior art keywords
mobile device
server
password
authentication
cipher text
Prior art date
Application number
KR1020070016251A
Other languages
Korean (ko)
Other versions
KR20080076399A (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 KR1020070016251A priority Critical patent/KR100866608B1/en
Publication of KR20080076399A publication Critical patent/KR20080076399A/en
Application granted granted Critical
Publication of KR100866608B1 publication Critical patent/KR100866608B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

모바일 기기(예를 들어, USB stick과 같은 일반 저장 장치)를 이용한 사용자와 서버간의 상호 인증 시스템, 그 방법 및 기록매체가 개시된다.A mutual authentication system, a method and a recording medium between a user and a server using a mobile device (for example, a general storage device such as a USB stick) are disclosed.

본 발명은 서버와 모바일 기기를 포함하는 시스템에 있어서, 상기 서버는 상기 모바일 기기의 아이디 및 패스워드를 이용하여 연산된 제1인자 및 제2인자를 상기 모바일 기기에 저장하는 등록부; 상기 모바일 기기로부터 수신되는 제1암호문 및 제2암호문을 이용하여 연산된 값과 상기 모바일 기기로부터 수신되는 제2인자, 제1타임 스탬프 및 상기 아이디를 이용하여 연산된 값이 일치하면, 사용자 인증을 수락하는 서버 인증부; 및 상기 사용자 인증이 수락되면, 상기 제3암호문 및 상기 서버의 비밀값인 제4암호문 생성시간인 제2타임 스탬프를 이용하여 상기 서버의 비밀값인 제4암호문을 생성하고, 상기 생성된 제4암호문을 상기 모바일 기기에 전송하는 서버 암호문 전송부를 포함하고, 상기 모바일 기기는 로그인 요청이 있으면, 상기 제1인자 및 상기 패스워드를 이용하여 패스워드 검증자를 생성하며, 상기 모바일 기기에서 제1난수 및 제2난수를 생성하고, 상기 제1난수와 상기 제2인자를 이용하여 제1암호문을 연산하며, 상기 패스워드 검증자와 메시지 인증 코드값 생성 시간인 제1타임 스탬프와 상기 아이디를 이용하여 상기 모바일 기기의 메시지 인증 코드값을 생성하고, 상기 메시지 인증 코드값과 상기 패스워드 검증자와 상기 제1난수를 이용하여 제2암호문을 연산하며, 상기 제2난수 및 상기 제2인자를 이용하여 제3암호문을 연산하여, 상기 아이디, 상기 제2인자, 제1암호문, 제2암호문, 제3암호문 및 제1타임 스탬프로 이루어진 로그인 메시지를 상기 서버에 전송하는 로그인 요청부; 및 상기 아이디 및 상기 제2타임 스탬프를 이용하여 연산된 값이 상기 제4암호문과 일치하면, 상호 인증을 완료하는 모바일 기기 인증부를 포함한다.The present invention provides a system including a server and a mobile device, wherein the server comprises: a register configured to store first and second factors calculated using an ID and a password of the mobile device in the mobile device; If the value calculated using the first and second cipher texts received from the mobile device and the value calculated using the second factor, the first time stamp, and the ID received from the mobile device match, user authentication is performed. Accepting server authentication unit; And if the user authentication is accepted, generate a fourth passphrase of a secret value of the server using the third passphrase and a second time stamp that is a secret time of the fourth passphrase of the server, and generate the fourth passphrase. A server cipher text transmission unit for transmitting a cipher text to the mobile device, wherein the mobile device generates a password verifier using the first factor and the password when a login request is requested, and the first random number and the second random number in the mobile device. Generates a random number, calculates a first cipher text using the first random number and the second factor, and uses the first time stamp and the ID of the password verifier and the message authentication code value generation time of the mobile device. Generate a message authentication code value, and calculate a second passphrase using the message authentication code value and the password verifier and the first random number, Computing a third cipher text by using the second random number and the second factor, the server receives a login message consisting of the ID, the second argument, the first cipher text, the second cipher text, the third cipher text, and the first time stamp. Login request unit to send to; And a mobile device authentication unit for completing mutual authentication when the value calculated using the ID and the second time stamp matches the fourth cipher text.

본 발명에 의하면, 사용자들이 용이하게 이용할 수 있는 일반 저장장치나 모바일 기기를 이용하여 효율성을 높일 수 있으며, 발급비용이 비싸고 보급률이 저조한 스마트 카드를 대체하여 사용자의 정보를 일반 저장장치나 모바일 기기에 저장하면서도 tamper-resistant 한 성질을 갖는 스마트카드를 이용한 상호인증에서와 같은 레벨의 안전성을 제공할 수 있고, 별도의 리더기가 필요하지 않아 사용의 제약을 줄일 수 있다.According to the present invention, efficiency can be improved by using a general storage device or a mobile device that can be easily used by users, and the user's information is transferred to a general storage device or a mobile device by replacing a smart card with a high issuance cost and a low penetration rate. While storing, it can provide the same level of safety as in mutual authentication using smart cards that have tamper-resistant properties.

Description

모바일 기기를 이용한 사용자와 서버간의 상호 인증 시스템, 그 방법 및 기록매체 {System and Method for mutual authentication between a remote user and a server using a mobile device, Recording medium thereof}System and Method for mutual authentication between a remote user and a server using a mobile device, Recording medium

도 1은 본 발명에 따른 모바일 기기를 이용한 사용자와 서버간의 상호 인증 시스템의 블럭도이다.1 is a block diagram of a mutual authentication system between a user and a server using a mobile device according to the present invention.

도 2는 본 발명에 따른 모바일 기기를 이용한 사용자와 서버간의 상호 인증 방법의 흐름도이다.2 is a flowchart illustrating a mutual authentication method between a user and a server using a mobile device according to the present invention.

도 3은 도 2의 제1인자 및 제2인자를 모바일 기기에 저장하는 과정의 상세 흐름도이다.3 is a detailed flowchart of a process of storing the first and second factors of FIG. 2 in a mobile device.

도 4는 도 3의 과정의 일 예를 도시한 것이다.4 illustrates an example of the process of FIG. 3.

도 5는 도 2의 로그인 요청 이후의 과정의 일 예를 도시한 것이다.5 illustrates an example of a process after the login request of FIG. 2.

본 발명은 개체간 인증에 관한 것으로, 특히, 모바일 기기(예를 들어, USB stick과 같은 일반 저장 장치)를 이용한 사용자와 서버간의 상호 인증 시스템, 그 방법 및 기록매체에 관한 것이다.The present invention relates to inter-personal authentication, and more particularly, to a mutual authentication system, a method and a recording medium between a user and a server using a mobile device (eg, a general storage device such as a USB stick).

유·무선통신 및 인터넷의 발달은 여러 가지 정보보호 서비스들의 필요성을 대두시켰다. 따라서 정보보호 서비스들을 실질적으로 구현시키기 위한 여러 가지 기술 개발의 필요성이 제기되었으며 이러한 기술에 대한 많은 연구가 다양한 목적에 의하여 세분화되어 실행되고 있다. The development of wired / wireless communication and the Internet has raised the need for various information security services. Therefore, the necessity of developing various technologies for practically implementing information security services has been raised, and many researches on these technologies are divided and executed for various purposes.

개체 간 (세션) 키 교환은 정보보호 분야에 해당하는 기술로 정보보호에 있어서 가장 기본적이며 핵심적인 기술이다. 공개 네트워크 (예를 들어, Ad-hoc 네트워크, 모바일 네트워크, 홈 네트워크) 상에서 개체 간에 비밀 통신을 하거나 무결성이 보장된 통신 또는 서로를 인증해야 하는 경우에 통신하는 개체들끼리 하나의 암호학적으로 안전한 키만 공유할 수만 있다면 문제는 쉽게 해결될 수 있다. 즉, 공유된 키로 통신문을 비밀키 암호 알고리즘 (예를 들어 DES, AES, SEED 등)을 이용해서 암호화함으로써 비밀통신을 구현할 수 있으며, 또한 통신문에 대한 무결성은 이 키를 MAC (Massage Authentication Code) 알고리즘의 키로 사용함으로써 구현될 수 있다. 그리고 서로에 대한 인증은 서로 공유한 비밀정보 (보통 키 값)에 대한 정보를 알고 있음을 증명하여 실현될 수 있다. 즉, 안전한 통신을 구현하기 위해서는 개체 간 키 교환이 우선적으로 선행되어야 한다. 따라서 키 교환은 정보보호기술에 있어서 필요불가결한 요소이다.(Session) key exchange between entities is a technology in the field of information security and is the most basic and core technology in information security. Only one cryptographically secure key between entities communicating on a public network (e.g., ad-hoc networks, mobile networks, home networks), when confidential communication between entities is guaranteed, or when there is a need to authenticate each other The problem can easily be solved if you can share it. That is, secret communication can be implemented by encrypting the communication message with a shared key using a secret key encryption algorithm (for example, DES, AES, SEED, etc.). In addition, the integrity of the communication message is a MAC (Massage Authentication Code) algorithm. It can be implemented by using as a key of. And authentication to each other can be realized by proving that the information about the shared secret information (usually the key value) is known. That is, in order to implement secure communication, key exchange between objects must be preceded first. Therefore, key exchange is an indispensable element in information security technology.

최근에는 관용암호계 및 스마트카드를 이용한 사용자인증 시스팀의 구현에 있어 사용자 ID개념을 이용하여 컴퓨터 단말기에서 관리하는 키의 수를 한개로 줄이고 카드와 단말 간의 상호인증을 가능하게 하는 스마트카드를 이용한 사용자 인증방법이 제시되었다.Recently, in the implementation of a user authentication system using a conventional encryption system and a smart card, a user using a smart card using a user ID concept reduces the number of keys managed by a computer terminal to one and enables mutual authentication between the card and the terminal. An authentication method is presented.

종래의 스마트카드를 이용한 인증방법은 카드발급센터에서 임의의 사용자의 인증비밀키를 생성하여 스마트카드에 공개된 정보인 ID와 비밀정보인 패스워드 및 인증비밀키를 담아 발급하고, 스마트카드에 저장된 정보를 이용하여 사용자인증을 수행하는 것이다. 이때, ID, 패스워드 및 인증비밀키를 담아 발급하는 단계는 사용자가 자신이 사용할 ID를 결정하여 패스워드와 함께 카드발급센터에 등록요청을 하는 단계와, 카드발급센터는 ID를 이용하여 인증비밀키를 연산하는 단계와, 공개된 정보의 ID와 비밀정보의 패스워드 및 인증비밀키를 스마트카드에 담아 발급하는 단계를 포함한다. 이때, 두 개체 (클라이언트-서버) 간 인증 및 키 교환을 위해서는 클라이언트가 서버로부터 발급받은 스마트카드를 이용하여 이를 수행하게 된다.In the conventional authentication method using a smart card, an authentication secret key of an arbitrary user is generated in a card issuing center and issued with an ID, a secret information, a password, and an authentication secret key, the information stored on the smart card. User authentication is performed using. At this time, the step of issuing the ID, password and authentication secret key is the user determines the ID to be used by the user to request registration with the card issuance center along with the password, and the card issuance center uses the ID to authenticate the authentication secret key. Calculating and issuing a smart card with an ID of the public information, a password of the secret information, and an authentication secret key. At this time, for authentication and key exchange between two entities (client-server), the client performs this by using a smart card issued from the server.

종래의 스마트 카드를 이용한 인증 방법은 스마트카드와 컴퓨터 단말기를 이용한 상호인증 기술로 서버측면에서는 각 사용자의 비밀키나 패스워드를 보관할 필요 없이, 단 하나의 키만을 보관하여 인증을 수행하는 특성을 갖는다. 이는 사용자의 증가, 감소 및 변경에 따른 어려움을 해결한다. The conventional authentication method using a smart card is a mutual authentication technology using a smart card and a computer terminal, and has a characteristic of performing authentication by storing only one key on the server side without storing a secret key or password of each user. This solves the difficulty of increasing, decreasing and changing users.

그러나, 종래의 인증 방법은 스마트카드라는 tamper-resistant한 성질을 갖는 저장장치를 이용하여 사용자의 정보를 저장하는데 이 장치를 다른 일반 저장장치나 모바일 장치와 같이 안전성을 제공하지 않는 장치로 변경시킬 경우, 안전성을 제공하지 못하고, 스마트카드의 생산비용이 비싸기 때문에 많이 보급되어있지 않고, 스마트카드를 이용한 인증 시 스카트카드 리더기를 필요로 하는 특성 때문에 사용에 제약이 따르는 문제점이 있다.However, the conventional authentication method stores a user's information by using a tamper-resistant storage device called a smart card, but when the device is changed to a device that does not provide safety like other general storage devices or mobile devices. It does not provide a lot of safety because it does not provide safety, and the production cost of the smart card is expensive, and there is a problem in that the use of the smart card reader requires a scart card reader due to its limitations in use.

따라서, 본 발명이 이루고자 하는 첫번째 기술적 과제는 발급비용이 비싸고 보급률이 저조한 스마트 카드를 대체하여 사용자의 정보를 일반 저장장치나 모바일 기기에 저장하면서도 tamper-resistant 한 성질을 갖는 스마트카드를 이용한 상호인증에서와 같은 레벨의 안전성을 제공할 수 있고, 효율성을 높일 수 있으며, 별도의 리더기가 필요하지 않아 사용의 제약을 줄일 수 있는 모바일 기기를 이용한 사용자와 서버간의 상호 인증 시스템을 제공하는 데 있다.Therefore, the first technical problem to be achieved by the present invention is to replace the smart card with a high issue cost and low penetration rate in mutual authentication using a smart card having tamper-resistant properties while storing the user's information in a general storage device or a mobile device. It is to provide a mutual authentication system between a user and a server using a mobile device that can provide the same level of safety, increase efficiency, and reduce the restriction of use because a separate reader is not required.

본 발명이 이루고자 하는 두번째 기술적 과제는 상기의 모바일 기기를 이용한 사용자와 서버간의 상호 인증 시스템에 적용된 모바일 기기를 이용한 사용자와 서버간의 상호 인증 방법을 제공하는 데 있다.The second technical problem to be achieved by the present invention is to provide a mutual authentication method between a user and a server using a mobile device applied to a mutual authentication system between a user and a server using the mobile device.

본 발명이 이루고자 하는 세번째 기술적 과제는 상기의 모바일 기기를 이용한 사용자와 서버간의 상호 인증 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는 데 있다.A third technical object of the present invention is to provide a computer-readable recording medium recording a program for executing a mutual authentication method between a user and a server using a mobile device on a computer.

상기의 첫번째 기술적 과제를 이루기 위하여, 본 발명은 서버와 모바일 기기를 포함하는 시스템에 있어서, 상기 서버는 상기 모바일 기기의 아이디 및 패스워드를 이용하여 연산된 제1인자 및 제2인자를 상기 모바일 기기에 저장하는 등록부; 상기 모바일 기기로부터 수신되는 제1암호문 및 제2암호문을 이용하여 연산된 값과 상기 모바일 기기로부터 수신되는 제2인자, 제1타임 스탬프 및 상기 아이디를 이용하여 연산된 값이 일치하면, 사용자 인증을 수락하는 서버 인증부; 및 상기 사용자 인증이 수락되면, 상기 제3암호문 및 상기 서버의 비밀값인 제4암호문 생성시간인 제2타임 스탬프를 이용하여 상기 서버의 비밀값인 제4암호문을 생성하고, 상기 생성된 제4암호문을 상기 모바일 기기에 전송하는 서버 암호문 전송부를 포함하고, 상기 모바일 기기는 로그인 요청이 있으면, 상기 제1인자 및 상기 패스워드를 이용하여 패스워드 검증자를 생성하며, 상기 모바일 기기에서 제1난수 및 제2난수를 생성하고, 상기 제1난수와 상기 제2인자를 이용하여 제1암호문을 연산하며, 상기 패스워드 검증자와 메시지 인증 코드값 생성 시간인 제1타임 스탬프와 상기 아이디를 이용하여 상기 모바일 기기의 메시지 인증 코드값을 생성하고, 상기 메시지 인증 코드값과 상기 패스워드 검증자와 상기 제1난수를 이용하여 제2암호문을 연산하며, 상기 제2난수 및 상기 제2인자를 이용하여 제3암호문을 연산하여, 상기 아이디, 상기 제2인자, 제1암호문, 제2암호문, 제3암호문 및 제1타임 스탬프로 이루어진 로그인 메시지를 상기 서버에 전송하는 로그인 요청부; 및 상기 아이디 및 상기 제2타임 스탬프를 이용하여 연산된 값이 상기 제4암호문과 일치하면, 상호 인증을 완료하는 모바일 기기 인증부를 포함하는 모바일 기기를 이용한 사용자와 서버간의 상호 인증 시스템을 제공한다.In order to achieve the first technical problem, the present invention provides a system comprising a server and a mobile device, wherein the server is the first and second factors calculated using the ID and password of the mobile device to the mobile device; A register to store; If the value calculated using the first and second cipher texts received from the mobile device and the value calculated using the second factor, the first time stamp, and the ID received from the mobile device match, user authentication is performed. Accepting server authentication unit; And if the user authentication is accepted, generate a fourth passphrase of a secret value of the server using the third passphrase and a second time stamp that is a secret time of the fourth passphrase of the server, and generate the fourth passphrase. A server cipher text transmission unit for transmitting a cipher text to the mobile device, wherein the mobile device generates a password verifier using the first factor and the password when a login request is requested, and the first random number and the second random number in the mobile device. Generates a random number, calculates a first cipher text using the first random number and the second factor, and uses the first time stamp and the ID of the password verifier and the message authentication code value generation time of the mobile device. Generate a message authentication code value, and calculate a second passphrase using the message authentication code value and the password verifier and the first random number, Computing a third cipher text by using the second random number and the second factor, the server receives a login message consisting of the ID, the second argument, the first cipher text, the second cipher text, the third cipher text, and the first time stamp. Login request unit to send to; And a mobile device authentication unit configured to complete mutual authentication when the value calculated using the ID and the second time stamp matches the fourth cipher text, and provides a mutual authentication system between the user and the server using the mobile device.

상기의 두번째 기술적 과제를 이루기 위하여, 본 발명은 모바일 기기의 아이디 및 패스워드, 서버에서 선택된 임의의 난수를 이용하여 연산된 제1인자 및 제2인자를 상기 모바일 기기에 저장하는 단계; 상기 모바일 기기에서 로그인 요청이 있으면 상기 제1인자 및 상기 패스워드를 이용하여 패스워드 검증자를 생성하는 단계; 상기 모바일 기기에서 제1난수 및 제2난수를 생성하고, 상기 제1난수와 상기 제2인자를 이용하여 제1암호문을 연산하며, 상기 패스워드 검증자와 메시지 인증 코드값 생성 시간인 제1타임 스탬프와 상기 아이디를 이용하여 상기 모바일 기기의 상기 메시지 인증 코드값을 생성하고, 상기 메시지 인증 코드값과 상기 패스워드 검증자와 상기 제1난수를 이용하여 제2암호문을 연산하며, 상기 제2난수 및 상기 제2인자를 이용하여 제3암호문을 연산하는 단계; 상기 아이디, 상기 제2인자, 제1암호문, 제2암호문, 제3암호문 및 상기 제1타임 스탬프로 이루어진 로그인 메시지를 상기 서버에 전송하는 단계; 상기 제1암호문 및 제2암호문을 이용하여 연산된 값과 상기 제2인자, 상기 제1타임 스탬프 및 상기 아이디를 이용하여 연산된 값이 일치하면, 사용자 인증을 수락하는 단계; 상기 사용자 인증이 수락되면, 상기 제3암호문 및 상기 서버의 비밀값인 제4암호문 생성 시간인 제2타임 스탬프를 이용하여 상기 서버의 제4암호문을 생성하고, 상기 생성된 제4암호문을 상기 모바일 기기에 전송하는 단계; 및 상기 아이디 및 상기 제2타임 스탬프를 이용하여 연산된 값이 상기 제4암호문과 일치하면 상기 모바일 기기에서 서버 인증을 수락하여, 상호 인증을 완료하는 단계를 포함하는 모바일 기기를 이용한 사용자와 서버간의 상호 인증 방법을 제공한다.In order to achieve the second technical problem, the present invention comprises the steps of storing the first factor and the second factor calculated by using a random number selected from the mobile device ID and password of the mobile device; Generating a password verifier using the first factor and the password when a login request is made at the mobile device; Generating a first random number and a second random number in the mobile device, calculating a first cipher text using the first random number and the second factor, and generating a first time stamp that is a time for generating the password verifier and a message authentication code value And generating the message authentication code value of the mobile device using the ID, and calculating a second pass phrase using the message authentication code value and the password verifier and the first random number, wherein the second random number and the Calculating a third cipher text using the second argument; Transmitting a login message consisting of the ID, the second factor, the first passphrase, the second passphrase, the third passphrase, and the first time stamp to the server; Accepting user authentication if a value calculated using the first password text and a second password text and a value calculated using the second argument, the first time stamp, and the ID match; If the user authentication is accepted, a fourth cipher text of the server is generated by using the third cipher text and a second time stamp that is a secret time of the fourth cipher text, which is a secret value of the server, and the fourth cipher text is generated by the mobile terminal. Transmitting to the device; And if the value calculated using the ID and the second time stamp matches the fourth cipher text, accepting server authentication at the mobile device to complete mutual authentication. Provide a mutual authentication method.

상기의 세번째 기술적 과제를 이루기 위하여, 본 발명은 상기의 모바일 기기를 이용한 사용자와 서버간의 상호 인증 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.In order to achieve the third technical problem, the present invention provides a computer-readable recording medium having recorded thereon a program for executing a mutual authentication method between a user and a server using a mobile device on a computer.

본 발명은 일반 저장장치나 모바일 기기를 이용하여 사용자와 서버가 안전하게 상호인증하는 방법에 관한 것이다. 본 발명은 USB와 같은 일반저장장치나 모바일 기기를 이용하여 상호인증이 가능하게 한다.The present invention relates to a method for securely mutual authentication between a user and a server using a general storage device or a mobile device. The present invention enables mutual authentication using a general storage device such as USB or a mobile device.

본 발명은 이전에 스마트카드를 이용한 인증 시스템이 갖는 사용자 정보를 서버가 아닌 스마트카드에 저장하는 장점을 살리면서, 비싸고 보급률이 저조한 스마트카드를 이용하는 대신 일반 저장장치나 모바일 장치를 이용하여 그 효율성을 높이고 스마트카드 리더기를 필요로 하지 않는 사용자-서버간의 상호 인증기술을 제공한다. The present invention utilizes the advantage of storing the user information of the authentication system using a smart card in the smart card, not the server, using the conventional storage device or mobile device instead of expensive and low penetration rate smart card to improve its efficiency. It provides a user-server mutual authentication technology that does not require a smart card reader.

즉, 서버의 DB가 노출되자마자 공격자는 클라이언트들의 패스워드를 이용하여 서버에게 정당한 클라이언트로 위장하지 못하게 하면서, tamper-resistant한 성질을 갖는 스마트카드가 아닌 일반 저장장치나 모바일을 이용하여 상호인증을 가능하게 함으로써 사용자 편리성과 인증의 효율성을 증대시키고자 한다. In other words, as soon as the DB of the server is exposed, the attacker does not disguise the server as a legitimate client by using the client's password and enables mutual authentication using a general storage device or a mobile device, not a smart card with tamper-resistant properties. In order to improve user convenience and authentication efficiency.

본 발명은 일반저장장치나 모바일에 저장된 내용을 이 공격자에게 들어나게 되어도 사용자의 패스워드 정보 없이는 클라이언트로 위장하는 것이 불가능하고 마찬가지로 서버의 비밀정보 없이는 사용자에게 서버로 위장하는 것이 불가능하다. 또, 이 기술은 종래에 스마트카드의 tamper-resistant한 성질에 의존하여 안전성을 제공한 스마트카드를 이용한 인증 시스템의 장점을 그대로 제공한다. In the present invention, even if the contents stored in the general storage device or the mobile are received by the attacker, it is impossible to impersonate the client without the user's password information, and likewise, it is impossible to impersonate the user without the server's secret information. In addition, this technology provides the advantages of the authentication system using a smart card, which provides security based on the tamper-resistant nature of the smart card.

이하에서는 도면을 참조하여 본 발명의 바람직한 실시 예를 설명하기로 한다. 그러나, 다음에 예시하는 본 발명의 실시 예는 여러 가지 다른 형태로 변형될 수 있으며, 본 발명의 범위가 다음에 상술하는 실시 예에 한정되는 것은 아니다.Hereinafter, with reference to the drawings will be described a preferred embodiment of the present invention. However, embodiments of the present invention illustrated below may be modified in various other forms, and the scope of the present invention is not limited to the embodiments described below.

도 1은 본 발명에 따른 모바일 기기를 이용한 사용자와 서버간의 상호 인증 시스템의 블럭도이다.1 is a block diagram of a mutual authentication system between a user and a server using a mobile device according to the present invention.

모바일 기기(100)는 등록 요청부(101), 저장부(102), 로그인 요청부(103) 및 모바일 기기 인증부(104)를 포함한다. 모바일 기기는 USB stick과 같은 일반 저장 장치를 포함한다.The mobile device 100 includes a registration request unit 101, a storage unit 102, a login request unit 103, and a mobile device authentication unit 104. Mobile devices include general storage devices such as USB sticks.

등록 요청부(101)는 아이디 및 패스워드를 선택하여 서버(190)에 전송한다. 등록 요청부(101)는 모바일 기기(100)의 아이디 및 패스워드를 시큐어 채널을 통해 서버(190)에 전송한다.The registration request unit 101 selects an ID and a password and transmits them to the server 190. The registration requester 101 transmits the ID and password of the mobile device 100 to the server 190 through the secure channel.

저장부(102)는 서버(190)로부터 수신된 제1인자 및 제2인자를 저장한다.The storage unit 102 stores the first factor and the second factor received from the server 190.

로그인 요청부(103)는 로그인 요청이 있으면, 상기 제1인자 및 상기 패스워드를 이용하여 패스워드 검증자를 생성한다. 그리고, 상기 모바일 기기에서 제1난수 및 제2난수를 생성하고, 상기 제1난수와 상기 제2인자를 이용하여 제1암호문을 연산하며, 상기 패스워드 검증자와 메시지 인증 코드값 생성 시간인 제1타임 스탬프와 상기 아이디를 이용하여 상기 모바일 기기의 메시지 인증 코드값을 생성하고, 상기 메시지 인증 코드값과 상기 패스워드 검증자와 상기 제1난수를 이용하여 제2암호문을 연산하며, 상기 제2난수 및 상기 제2인자를 이용하여 제3암호문을 연산한다. 로그인 요청부(103)는 상기 아이디, 제2인자, 제1암호문, 제2암호문, 제3암호문 및 상기 제1타임 스탬프로 이루어진 로그인 메시지를 서버(190)에 전송한다.If there is a login request, the login request unit 103 generates a password verifier using the first factor and the password. And generating a first random number and a second random number in the mobile device, calculating a first passphrase using the first random number and the second factor, and generating a password verification message and a message authentication code value. The message authentication code value of the mobile device is generated using the time stamp and the ID, and a second password text is calculated using the message authentication code value and the password verifier and the first random number, and the second random number and The third cipher text is calculated using the second argument. The login request unit 103 transmits a login message composed of the ID, the second factor, the first passphrase, the second passphrase, the third passphrase, and the first time stamp to the server 190.

모바일 기기 인증부(104)는 아이디 및 제2타임 스탬프를 이용하여 연산된 값이 제4암호문과 일치하면, 상호 인증을 완료한다.If the value calculated using the ID and the second time stamp matches the fourth cipher text, the mobile device authentication unit 104 completes mutual authentication.

서버(190)는 등록부(191), 서버 인증부(192) 및 서버 암호문 전송부(193)를 포함한다.The server 190 includes a register 191, a server authentication unit 192, and a server cipher text transmission unit 193.

등록부(191)는 모바일 기기(100)의 아이디 및 패스워드를 이용하여 제1인자 및 제2인자를 연산한다. 등록부(191)는 연산된 제1인자 및 제2인자를 모바일 기기(100)에 저장한다. 바람직하게는, 등록부(191)는 모바일 기기(100)로부터 수신되는 아이디, 패스워드 및 서버(190)에서 선택된 임의의 난수를 이용하여 제1인자 및 제2인자를 연산할 수 있다. 이때, 등록부(191)는 제1인자 및 제2인자를 시큐어 채널을 통해 모바일 기기(100)에 전송하고, 제1인자 및 제2인자를 서버(190)에서 삭제한다.The registration unit 191 calculates the first factor and the second factor by using the ID and password of the mobile device 100. The register 191 stores the calculated first and second factors in the mobile device 100. Preferably, the registration unit 191 may calculate the first factor and the second factor using an ID, a password, and any random number selected by the server 190 received from the mobile device 100. At this time, the registration unit 191 transmits the first factor and the second factor to the mobile device 100 through the secure channel, and deletes the first factor and the second factor from the server 190.

서버 인증부(192)는 모바일 기기(100)로부터 수신되는 제1암호문 및 제2암호문을 이용하여 연산된 값과 모바일 기기(100)로부터 수신되는 제2인자, 제1타임 스탬프 및 아이디를 이용하여 연산된 값이 일치하면, 사용자 인증을 수락한다. 바람직하게는, 서버 인증부(192)는

Figure 112007014412777-pat00001
Figure 112007014412777-pat00002
Figure 112007014412777-pat00003
가 성립하면, 사용자 인증을 수락하도록 구성될 수 있다. 이때, 제1암호문이
Figure 112007014412777-pat00004
, 제2암호문이
Figure 112007014412777-pat00005
이고, 제1타임 스탬프가 T, 제2인자가
Figure 112007014412777-pat00006
, 아이디가
Figure 112007014412777-pat00007
, 해쉬함수가 H, 서버의 비밀키가
Figure 112007014412777-pat00008
이며, p가 서버에서 선택된 값이다.The server authenticator 192 may use a value calculated using the first cipher text and the second cipher text received from the mobile device 100 and the second factor, the first time stamp, and the ID received from the mobile device 100. If the calculated values match, accept user authentication. Preferably, the server authentication unit 192 is
Figure 112007014412777-pat00001
Figure 112007014412777-pat00002
Figure 112007014412777-pat00003
Can be configured to accept user authentication. At this time, the first passphrase
Figure 112007014412777-pat00004
, The second cipher
Figure 112007014412777-pat00005
The first time stamp is T and the second factor is
Figure 112007014412777-pat00006
, Id
Figure 112007014412777-pat00007
H, the hash function H, the server's secret key
Figure 112007014412777-pat00008
P is the value selected on the server.

서버 암호문 전송부(193)는 상기 사용자 인증이 수락되면, 상기 제3암호문 및 상기 서버의 비밀값인 제4암호문 생성 시간인 제2타임 스탬프를 이용하여 상기 서버의 비밀값인 제4암호문을 생성한다. 서버 암호문 전송부(193)는 상기 생성된 제4암호문을 상기 모바일 기기(100)에 전송한다.When the user authentication is accepted, the server cipher text transmission unit 193 generates the fourth cipher text, which is the secret value of the server, by using the third cipher text and the second time stamp that is the fourth cipher text generation time, which is the secret value of the server. do. The server cipher text transmission unit 193 transmits the generated fourth cipher text to the mobile device 100.

바람직하게는, 서버 암호문 전송부(193)는 제3암호문이

Figure 112008044923891-pat00085
이고, 제2타임 스탬프가
Figure 112008044923891-pat00086
이며, 해쉬함수가 h인 경우에, 제4암호문
Figure 112008044923891-pat00087
을 연산하도록 구성될 수 있다. 이때, 모바일 기기 인증부(104)는
Figure 112008044923891-pat00088
를 연산하고,
Figure 112008044923891-pat00089
가 제4암호문과 일치하는지 판단하도록 구성될 수 있다. 이때,
Figure 112008044923891-pat00090
가 제1인자 및 제2인자의 연산시에 서버에서 선택된 임의의 난수이고, b는 모바일 기기에서 선택된 제2난수이다.Preferably, the server cipher text transmission unit 193 is a third cipher text
Figure 112008044923891-pat00085
The second time stamp
Figure 112008044923891-pat00086
If the hash function is h, the fourth ciphertext
Figure 112008044923891-pat00087
Can be configured to compute. At this time, the mobile device authentication unit 104
Figure 112008044923891-pat00088
Is computed,
Figure 112008044923891-pat00089
May be configured to determine whether is identical to the fourth cipher text. At this time,
Figure 112008044923891-pat00090
Is any random number selected at the server in the calculation of the first and second factors, and b is the second random number selected at the mobile device.

도 2는 본 발명에 따른 모바일 기기를 이용한 사용자와 서버간의 상호 인증 방법의 흐름도이다.2 is a flowchart illustrating a mutual authentication method between a user and a server using a mobile device according to the present invention.

먼저, 모바일 기기의 아이디 및 패스워드, 서버에서 선택된 임의의 난수를 이용하여 연산된 제1인자 및 제2인자를 상기 모바일 기기에 저장한다(210 과정).First, the first and second factors calculated using the ID and password of the mobile device and any random number selected from the server are stored in the mobile device (step 210).

다음, 모바일 기기에서 로그인 요청이 있는지 판단한다(220 과정). 이 과정에서 로그인 요청이 없는 경우 로그인 요청을 대기하도록 하거나 모든 과정을 종료하도록 할 수 있다.Next, the mobile device determines whether there is a login request (step 220). If there is no login request in this process, you can wait for the login request or terminate the whole process.

이때, 로그인 요청이 있으면, 상기 제1인자 및 상기 패스워드를 이용하여 패스워드 검증자를 생성하며, 상기 모바일 기기에서 제1난수 및 제2난수를 생성하고, 상기 제1난수와 상기 제2인자를 이용하여 제1암호문을 연산하며, 상기 패스워드 검증자와 상기 모바일 기기의 메시지 인증 코드값 생성 시간인 제1타임 스탬프와 상기 아이디를 이용하여 상기 모바일 기기의 메시지 인증 코드값을 생성하고, 상기 메시지 인증 코드값과 상기 패스워드 검증자와 상기 제1난수를 이용하여 제2암호문을 연산하며, 상기 제2난수 및 상기 제2인자를 이용하여 제3암호문을 연산한다(230 과정). 또한, 모바일 기기의 아이디, 제2인자, 제1암호문, 제2암호문, 제3암호문 및 상기 제1타임 스탬프로 이루어진 로그인 메시지를 서버에 전송한다(230 과정).At this time, if there is a login request, a password verifier is generated using the first factor and the password, a first random number and a second random number are generated in the mobile device, and the first random number and the second argument are used. Computing a first passphrase, generating a message authentication code value of the mobile device using the first time stamp and the ID which is the time for generating the message authentication code value of the password verifier and the mobile device, and the message authentication code value And a second cipher text using the password verifier and the first random number, and a third cipher text using the second random number and the second factor (step 230). In addition, a login message including the ID, the second argument, the first passphrase, the second passphrase, the third passphrase, and the first time stamp of the mobile device is transmitted to the server (step 230).

다음, 제1암호문 및 제2암호문을 이용하여 연산된 값과 제2인자, 제1타임 스탬프 및 아이디를 이용하여 연산된 값이 일치하면, 사용자 인증을 수락한다(240 과정). 이 과정(240 과정)은 제1타임 스탬프에서 상기 로그인 메시지를 수신한 시간을 뺀 값이 임계값 이상이면, 사용자 인증을 거절하는 과정을 포함할 수 있다.Next, if the value calculated using the first passphrase and the second passphrase coincides with the value calculated using the second argument, the first time stamp, and the ID, the user authentication is accepted (step 240). This process (step 240) may include a step of rejecting user authentication if a value obtained by subtracting the time of receiving the login message from the first time stamp is greater than or equal to a threshold value.

사용자 인증이 수락되면, 상기 제3암호문 및 상기 서버의 비밀값인 제4암호문 생성 시간인 제2타임 스탬프를 이용하여 상기 서버의 비밀값인 제4암호문을 생성하고, 상기 생성된 제4암호문을 상기 모바일 기기에 전송한다(250 과정). 이때, 사용자 인증이 수락되지 않으면, 모든 과정을 종료한다.If the user authentication is accepted, a fourth password, which is a secret value of the server, is generated by using the third password and a second time stamp, which is a secret time of the fourth password, which is the secret value of the server. In step 250, the mobile device transmits to the mobile device. At this time, if the user authentication is not accepted, all processes are terminated.

다음, 아이디 및 제2타임 스탬프를 이용하여 연산된 값이 제4암호문과 일치하는지 판단한다(260 과정). 이 과정(260 과정)은 상기 제4암호문을 수신한 시간에서 제2타임 스탬프를 뺀 값이 임계값 이상이면, 상호 인증이 실패한 것으로 판단하는 과정을 포함할 수 있다.Next, it is determined whether the calculated value matches the fourth cipher text using the ID and the second time stamp (step 260). This process (step 260) may include determining that mutual authentication has failed if the value obtained by subtracting the second time stamp from the time of receiving the fourth cipher text is greater than or equal to a threshold value.

이때, 위에서 연산된 값이 제4암호문과 일치하면, 상호 인증을 완료하고(271 과정), 일치하지 않으면, 상호 인증이 실패한 것으로 판단한다(272 과정).At this time, if the value calculated above matches the fourth cipher text, mutual authentication is completed (step 271). If not, it is determined that mutual authentication has failed (step 272).

도 3은 도 2의 제1인자 및 제2인자를 모바일 기기에 저장하는 과정(210 과정)의 상세 흐름도이다.3 is a detailed flowchart of a process (step 210) of storing the first and second factors of FIG. 2 in a mobile device.

먼저, 모바일 기기의 아이디 및 패스워드를 시큐어 채널을 통해 서버에 전송한다(311 과정).First, the ID and password of the mobile device are transmitted to the server through the secure channel (step 311).

다음, 아이디, 패스워드 및 서버에서 선택된 임의의 난수를 이용하여 제1인자 및 제2인자를 연산한다(312 과정).Next, the first factor and the second factor are calculated using the ID, password, and any random number selected in the server (step 312).

다음, 제1인자 및 제2인자를 시큐어 채널을 통해 모바일 기기에 전송한 다(313 과정).Next, the first and second factors are transmitted to the mobile device through the secure channel (step 313).

마지막으로, 모바일 기기의 저장 공간에 제1인자 및 제2인자를 저장하고, 서버에서 제1인자 및 제2인자를 삭제한다(314 과정).Finally, the first and second factors are stored in the storage space of the mobile device and the first and second factors are deleted from the server (step 314).

도 4는 도 3의 과정의 일 예를 도시한 것이다.4 illustrates an example of the process of FIG. 3.

도 4에 도시된 과정은 등록 단계에 해당한다. 먼저, 사용자

Figure 112007014412777-pat00015
는 자신의 아이디
Figure 112007014412777-pat00016
와 패스워드
Figure 112007014412777-pat00017
를 선택하여 서버
Figure 112007014412777-pat00018
에게 안전하게 전송한다.The process shown in FIG. 4 corresponds to a registration step. First, user
Figure 112007014412777-pat00015
Has his id
Figure 112007014412777-pat00016
And password
Figure 112007014412777-pat00017
Select Server
Figure 112007014412777-pat00018
Send securely to

다음, 서버는

Figure 112007014412777-pat00019
∈ G 를 랜덤하게 선택하여
Figure 112007014412777-pat00020
를 계산한다. 여기서,
Figure 112007014412777-pat00021
mod p 이고
Figure 112007014412777-pat00022
mod p 이다.Next, the server
Figure 112007014412777-pat00019
∈ select G randomly
Figure 112007014412777-pat00020
Calculate here,
Figure 112007014412777-pat00021
mod p
Figure 112007014412777-pat00022
mod p.

다음, 서버는 사용자의 모바일 장치에

Figure 112007014412777-pat00023
를 안전하게 전송한다. Next, the server is on your mobile device
Figure 112007014412777-pat00023
Send it safely.

마지막으로, 사용자의 모바일 장치가 서버로부터 메시지를 받으면,

Figure 112007014412777-pat00024
의 일반 저장장치는 그 값을 저장한다. Finally, when the user's mobile device receives a message from the server,
Figure 112007014412777-pat00024
The general storage of is to store the value.

도 5는 도 2의 로그인 요청 이후의 과정(230-272 과정)의 일 예를 도시한 것이다.FIG. 5 illustrates an example of processes (steps 230-272) after the login request of FIG. 2.

도 5의 과정은 크게 로그인 과정과 인증 과정으로 나누어진다.The process of Figure 5 is largely divided into a login process and an authentication process.

로그인 과정은 다음과 같다.The login process is as follows.

Figure 112007014412777-pat00025
의 일반 저장장치는 다음의 연산을 수행한다.
Figure 112007014412777-pat00025
The general storage of performs the following operations.

먼저, 임의의 값

Figure 112008044923891-pat00091
∈ G 를 선택한다. 다음,
Figure 112008044923891-pat00092
mod p 와
Figure 112008044923891-pat00093
mod p를 계산한다. 다음,
Figure 112008044923891-pat00094
mod p,
Figure 112008044923891-pat00095
mod p, 그리고
Figure 112008044923891-pat00096
mod p 를 계산한다. 이때,
Figure 112008044923891-pat00097
는 로긴 장치의 현재 타임 스탬프(timestamp) 정보로, 즉 패스워드 검증키
Figure 112008044923891-pat00098
를 기반으로 생성한 메시지 인증 코드값
Figure 112008044923891-pat00099
을 생성할 때의 시간 정보를 의미한다. 마지막으로, 인증을 위해서 서버에게 로그인 메시지
Figure 112008044923891-pat00100
를 보낸다. First, random value
Figure 112008044923891-pat00091
∈ Select G. next,
Figure 112008044923891-pat00092
with mod p
Figure 112008044923891-pat00093
Calculate mod p next,
Figure 112008044923891-pat00094
mod p,
Figure 112008044923891-pat00095
mod p, and
Figure 112008044923891-pat00096
Calculate mod p At this time,
Figure 112008044923891-pat00097
Is the current timestamp information for the login device, i.e. the password verification key.
Figure 112008044923891-pat00098
Message authentication code value generated based on
Figure 112008044923891-pat00099
Means time information when generating the. Finally, a login message to the server for authentication
Figure 112008044923891-pat00100
Send it.

인증 과정은 다음과 같다.The certification process is as follows.

먼저,

Figure 112008044923891-pat00101
의 정당성을 확인한 후 정당하다면 인증과정을 수행한다. 다음, 서버는 상기 로그인 메시지를 수신한 타임 스탬프 값
Figure 112008044923891-pat00102
을 이용하여 서버는
Figure 112008044923891-pat00103
Figure 112008044923891-pat00104
라면 인증과정 수행을 거절한다. 다음,
Figure 112008044923891-pat00105
Figure 112008044923891-pat00106
Figure 112008044923891-pat00107
인지 확인하여 등호가 성립하면, 서버는 사용자 인증을 수락하고 등호가 성립하지 않으면 사용자 인증을 거절한다. 다음, 서버는 상기 제 4 암호문을 생성할 때의 타임 스탬프 값
Figure 112008044923891-pat00108
에 따라
Figure 112008044923891-pat00109
를 계산하여 사용자 저장장치에 인증 메시지
Figure 112008044923891-pat00110
를 보낸다. 다음, 메시지를 받은 사용자 저장장치는 로긴 장치의 상기 인증 메시지를 수신할 때의 타임 스탬프 값인
Figure 112008044923891-pat00111
값을 이용하여
Figure 112008044923891-pat00112
인지 확인하여 맞는다면 상호인증에 실패한다. 마지막으로, 사용자 저장장치는
Figure 112008044923891-pat00113
를 계산하여
Figure 112008044923891-pat00114
인지 확인하여 등호가 성립한다면 사용자와 서버간의 상호인증에 성공한다. 등호가 성립하지 않는다면 인증에 성공하지 못한다. first,
Figure 112008044923891-pat00101
After verifying the validity of the validity, if necessary, the certification process is performed. Next, the server receives a timestamp value upon receiving the login message.
Figure 112008044923891-pat00102
Using the server
Figure 112008044923891-pat00103
Figure 112008044923891-pat00104
If not, it refuses to perform the authentication process. next,
Figure 112008044923891-pat00105
Figure 112008044923891-pat00106
Figure 112008044923891-pat00107
If the equal sign is established by checking whether the equal sign is established, the server accepts user authentication and rejects user authentication if the equal sign is not established. Next, the server generates a timestamp value when generating the fourth cipher text.
Figure 112008044923891-pat00108
Depending on the
Figure 112008044923891-pat00109
The authentication message to the user storage device
Figure 112008044923891-pat00110
Send it. Next, the user storage device receiving the message is a time stamp value when receiving the authentication message of the login device.
Figure 112008044923891-pat00111
Using the value
Figure 112008044923891-pat00112
If it is correct, mutual authentication fails. Finally, user storage is
Figure 112008044923891-pat00113
By calculating
Figure 112008044923891-pat00114
If the equal sign is established, the mutual authentication between the user and the server is successful. If the equal sign does not hold, authentication is not successful.

바람직하게는, 본 발명의 모바일 기기를 이용한 사용자와 서버간의 상호 인증 방법을 컴퓨터에서 실행시키기 위한 프로그램을 컴퓨터로 읽을 수 있는 기록매체에 기록하여 제공할 수 있다.Preferably, a program for executing a mutual authentication method between a user and a server using a mobile device of the present invention on a computer may be recorded and provided on a computer-readable recording medium.

본 발명은 소프트웨어를 통해 실행될 수 있다. 소프트웨어로 실행될 때, 본 발명의 구성 수단들은 필요한 작업을 실행하는 코드 세그먼트들이다. 프로그램 또는 코드 세그먼트들은 프로세서 판독 가능 매체에 저장되거나 전송 매체 또는 통신망에서 반송파와 결합된 컴퓨터 데이터 신호에 의하여 전송될 수 있다.The invention can be implemented via software. When implemented in software, the constituent means of the present invention are code segments that perform the necessary work. The program or code segments may be stored on a processor readable medium or transmitted by a computer data signal coupled with a carrier on a transmission medium or network.

컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 테이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 장치의 예로는 ROM, RAM, CD-ROM, DVD±ROM, DVD-RAM, 자기 테이프, 플로피 디스크, 하드 디스크(hard disk), 광데이터 저장장치 등이 있다. 또한, 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 장치에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.The computer-readable recording medium includes all kinds of recording devices in which data is stored which can be read by a computer system. Examples of computer-readable recording devices include ROM, RAM, CD-ROM, DVD ± ROM, DVD-RAM, magnetic tape, floppy disks, hard disks, optical data storage devices, and the like. The computer readable recording medium can also be distributed over network coupled computer devices so that the computer readable code is stored and executed in a distributed fashion.

본 발명은 도면에 도시된 일 실시예를 참고로 하여 설명하였으나 이는 예시적인 것에 불과하며 당해 분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 실시예의 변형이 가능하다는 점을 이해할 것이다. 그러나, 이와 같은 변형은 본 발명의 기술적 보호범위내에 있다고 보아야 한다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해서 정해져야 할 것이다.Although the present invention has been described with reference to one embodiment shown in the drawings, this is merely exemplary and will be understood by those of ordinary skill in the art that various modifications and variations can be made therefrom. However, such modifications should be considered to be within the technical protection scope of the present invention. Therefore, the true technical protection scope of the present invention will be defined by the technical spirit of the appended claims.

상술한 바와 같이, 본 발명에 의하면, 사용자들이 용이하게 이용할 수 있는 일반 저장장치나 모바일 기기를 이용하여 효율성을 높일 수 있으며, 발급비용이 비싸고 보급률이 저조한 스마트 카드를 대체하여 사용자의 정보를 일반 저장장치나 모바일 기기에 저장하면서도 tamper-resistant 한 성질을 갖는 스마트카드를 이용한 상호인증에서와 같은 레벨의 안전성을 제공할 수 있고, 별도의 리더기가 필요하지 않아 사용의 제약을 줄일 수 있는 효과가 있다.As described above, according to the present invention, efficiency can be improved by using a general storage device or a mobile device that can be easily used by users, and the user's information is generally stored by replacing a smart card with a high issuance cost and a low penetration rate. It can provide the same level of safety as that of mutual authentication using smart cards with tamper-resistant properties while being stored in devices or mobile devices.

Claims (12)

모바일 기기의 아이디 및 패스워드, 서버에서 선택된 임의의 난수를 이용하여 연산된 제1인자 및 제2인자를 상기 모바일 기기에 저장하는 단계;Storing the first and second factors calculated using the ID and password of the mobile device and any random number selected by the server on the mobile device; 상기 모바일 기기에서 로그인 요청이 있으면 상기 제1인자 및 상기 패스워드를 이용하여 패스워드 검증자를 생성하는 단계;Generating a password verifier using the first factor and the password when a login request is made at the mobile device; 상기 모바일 기기에서 제1난수 및 제2난수를 생성하고, 상기 제1난수와 상기 제2인자를 이용하여 제1암호문을 연산하며, 상기 패스워드 검증자와 메시지 인증 코드값 생성 시간인 제1타임 스탬프와 상기 아이디를 이용하여 상기 모바일 기기의 상기 메시지 인증 코드값을 생성하고, 상기 메시지 인증 코드값과 상기 패스워드 검증자와 상기 제1난수를 이용하여 제2암호문을 연산하며, 상기 제2난수 및 상기 제2인자를 이용하여 제3암호문을 연산하는 단계;Generating a first random number and a second random number in the mobile device, calculating a first cipher text using the first random number and the second factor, and generating a first time stamp that is a time for generating the password verifier and a message authentication code value And generating the message authentication code value of the mobile device using the ID, and calculating a second pass phrase using the message authentication code value and the password verifier and the first random number, wherein the second random number and the Calculating a third cipher text using the second argument; 상기 아이디, 상기 제2인자, 제1암호문, 제2암호문, 제3암호문 및 상기 제1타임 스탬프로 이루어진 로그인 메시지를 상기 서버에 전송하는 단계;Transmitting a login message consisting of the ID, the second factor, the first passphrase, the second passphrase, the third passphrase, and the first time stamp to the server; 상기 제1암호문 및 제2암호문을 이용하여 연산된 값과 상기 제2인자, 상기 제1타임 스탬프 및 상기 아이디를 이용하여 연산된 값이 일치하면, 사용자 인증을 수락하는 단계;Accepting user authentication if a value calculated using the first password text and a second password text and a value calculated using the second argument, the first time stamp, and the ID match; 상기 사용자 인증이 수락되면, 상기 제3암호문 및 상기 서버의 비밀값인 제4암호문 생성 시간인 제2타임 스탬프를 이용하여 상기 서버의 제4암호문을 생성하고, 상기 생성된 제4암호문을 상기 모바일 기기에 전송하는 단계; 및If the user authentication is accepted, a fourth cipher text of the server is generated by using the third cipher text and a second time stamp that is a secret time of the fourth cipher text, which is a secret value of the server, and the fourth cipher text is generated by the mobile terminal. Transmitting to the device; And 상기 아이디 및 상기 제2타임 스탬프를 이용하여 연산된 값이 상기 제4암호문과 일치하면 상기 모바일 기기에서 서버 인증을 수락하여, 상호 인증을 완료하는 단계를 포함하는 모바일 기기를 이용한 사용자와 서버간의 상호 인증 방법.If the value calculated using the ID and the second time stamp matches the fourth cipher text, accepting server authentication by the mobile device, and completing mutual authentication; Authentication method. 제 1 항에 있어서,The method of claim 1, 상기 모바일 기기에 저장하는 단계는Saving to the mobile device 상기 모바일 기기의 아이디 및 패스워드를 시큐어 채널을 통해 서버에 전송하는 단계;Transmitting the ID and password of the mobile device to a server through a secure channel; 상기 아이디, 패스워드 및 상기 서버에서 선택된 임의의 난수를 이용하여 제1인자 및 제2인자를 연산하고, 상기 제1인자 및 제2인자를 시큐어 채널을 통해 상기 모바일 기기에 전송하는 단계; 및Calculating a first factor and a second factor using the ID, password, and any random number selected by the server, and transmitting the first and second factors to the mobile device through a secure channel; And 상기 모바일 기기의 저장 공간에 상기 제1인자 및 제2인자를 저장하고, 상기 서버에서 상기 제1인자 및 제2인자를 삭제하는 단계를 포함하는 것을 특징으로 하는 모바일 기기를 이용한 사용자와 서버간의 상호 인증 방법.Storing the first factor and the second factor in a storage space of the mobile device, and deleting the first factor and the second factor from the server. Authentication method. 제 1 항에 있어서,The method of claim 1, 상기 사용자 인증을 수락하는 단계는Accepting the user authentication 상기 제1타임 스탬프에서 상기 로그인 메시지를 수신한 시간을 뺀 값이 임계값 이상이면, 사용자 인증을 거절하는 단계를 포함하는 것을 특징으로 하는 모바일 기기를 이용한 사용자와 서버간의 상호 인증 방법.And if the value obtained by subtracting the time for receiving the login message from the first time stamp is greater than or equal to a threshold value, rejecting user authentication. 제 1 항에 있어서,The method of claim 1, 상기 상호 인증을 완료하는 단계는Completing the mutual authentication is 상기 제4암호문을 수신한 시간에서 상기 제2타임 스탬프를 뺀 값이 임계값 이상이면, 상호 인증이 실패한 것으로 판단하는 단계를 포함하는 것을 특징으로 하는 모바일 기기를 이용한 사용자와 서버간의 상호 인증 방법.And determining that mutual authentication has failed if the value obtained by subtracting the second time stamp from the time of receiving the fourth cipher text is equal to or greater than a threshold value. 제 1 항에 있어서,The method of claim 1, 상기 사용자 인증을 수락하는 단계는Accepting the user authentication 상기 제1암호문이
Figure 112007014412777-pat00048
, 제2암호문이
Figure 112007014412777-pat00049
이고, 상기 제1타임 스탬프가 T, 상기 제2인자가
Figure 112007014412777-pat00050
, 상기 아이디가
Figure 112007014412777-pat00051
, 해쉬함수가 H, 상기 서버의 비밀키가
Figure 112007014412777-pat00052
이며, p가 상기 서버에서 선택된 값인 경우에,
Figure 112007014412777-pat00053
Figure 112007014412777-pat00054
Figure 112007014412777-pat00055
가 성립하면, 상기 사용자 인증을 수락하는 단계인 것을 특징으로 하는 모바일 기기를 이용한 사용자와 서버간의 상호 인증 방법.
The first passphrase
Figure 112007014412777-pat00048
, The second cipher
Figure 112007014412777-pat00049
Where the first time stamp is T and the second factor is
Figure 112007014412777-pat00050
, The id is
Figure 112007014412777-pat00051
, Hash function H, the secret key of the server
Figure 112007014412777-pat00052
If p is a value selected in the server,
Figure 112007014412777-pat00053
Figure 112007014412777-pat00054
Figure 112007014412777-pat00055
If is established, mutual authentication between the user and the server using a mobile device, characterized in that for accepting the user authentication.
제 1 항에 있어서,The method of claim 1, 상기 제4암호문을 상기 모바일 기기에 전송하는 단계는Transmitting the fourth cipher text to the mobile device 상기 제3암호문이
Figure 112007014412777-pat00056
이고, 상기 제2타임 스탬프가
Figure 112007014412777-pat00057
이며, 해쉬함수가 h, 상기 서버의 비밀키가
Figure 112007014412777-pat00058
인 경우에, 상기 제4암호문
Figure 112007014412777-pat00059
을 연산하는 단계를 포함하는 것을 특징으로 하는 모바일 기기를 이용한 사용자와 서버간의 상호 인증 방법.
The third ciphertext
Figure 112007014412777-pat00056
Wherein the second time stamp is
Figure 112007014412777-pat00057
H, the hash function h,
Figure 112007014412777-pat00058
If is, the fourth passphrase
Figure 112007014412777-pat00059
Computing the mutual authentication method between the user and the server using a mobile device, characterized in that it comprises a step.
제 1 항에 있어서,The method of claim 1, 상기 상호 인증을 완료하는 단계는Completing the mutual authentication is 상기 제2타임 스탬프가
Figure 112008044923891-pat00115
, 상기 아이디가
Figure 112008044923891-pat00116
, 해쉬함수가 h, 상기 서버의 비밀키가
Figure 112008044923891-pat00117
이며,
Figure 112008044923891-pat00118
와 p가 상기 제1인자 및 제2인자의 연산시에 선택된 값이고, 상기 제2난수가 b인 경우에,
Figure 112008044923891-pat00119
를 연산하는 단계; 및
The second time stamp is
Figure 112008044923891-pat00115
, The id is
Figure 112008044923891-pat00116
H is the hash function, and the server's private key
Figure 112008044923891-pat00117
Is,
Figure 112008044923891-pat00118
And p are values selected in the calculation of the first and second factors, and the second random number is b,
Figure 112008044923891-pat00119
Calculating a; And
상기
Figure 112008044923891-pat00120
가 상기 제4암호문과 일치하는지 판단하는 단계를 포함하는 것을 특징으로 하는 모바일 기기를 이용한 사용자와 서버간의 상호 인증 방법.
remind
Figure 112008044923891-pat00120
And determining whether the fourth password is identical to the fourth cipher text.
제 1 항 내지 제 7 항 중 어느 한 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.A computer-readable recording medium having recorded thereon a program for executing the method of claim 1 on a computer. 서버와 모바일 기기를 포함하는 시스템에 있어서,In a system comprising a server and a mobile device, 상기 서버는The server is 상기 모바일 기기의 아이디 및 패스워드를 이용하여 연산된 제1인자 및 제2인자를 상기 모바일 기기에 저장하는 등록부;A register configured to store the first and second factors calculated using the ID and password of the mobile device in the mobile device; 상기 모바일 기기로부터 수신되는 제1암호문 및 제2암호문을 이용하여 연산된 값과 상기 모바일 기기로부터 수신되는 제2인자, 제1타임 스탬프 및 상기 아이디를 이용하여 연산된 값이 일치하면, 사용자 인증을 수락하는 서버 인증부; 및If the value calculated using the first and second cipher texts received from the mobile device and the value calculated using the second factor, the first time stamp, and the ID received from the mobile device match, user authentication is performed. Accepting server authentication unit; And 상기 사용자 인증이 수락되면, 상기 제3암호문 및 상기 서버의 비밀값인 제4암호문 생성시간인 제2타임 스탬프를 이용하여 상기 서버의 비밀값인 제4암호문을 생성하고, 상기 생성된 제4암호문을 상기 모바일 기기에 전송하는 서버 암호문 전송부를 포함하고,If the user authentication is accepted, a fourth password, which is the secret value of the server, is generated by using the third password and a second time stamp, which is a secret time of the fourth password, which is the secret value of the server. Includes a server cipher text transmission unit for transmitting to the mobile device, 상기 모바일 기기는The mobile device 로그인 요청이 있으면, 상기 제1인자 및 상기 패스워드를 이용하여 패스워드 검증자를 생성하며, 상기 모바일 기기에서 제1난수 및 제2난수를 생성하고, 상기 제1난수와 상기 제2인자를 이용하여 제1암호문을 연산하며, 상기 패스워드 검증자와 메시지 인증 코드값 생성 시간인 제1타임 스탬프와 상기 아이디를 이용하여 상기 모바일 기기의 메시지 인증 코드값을 생성하고, 상기 메시지 인증 코드값과 상기 패스워드 검증자와 상기 제1난수를 이용하여 제2암호문을 연산하며, 상기 제2난수 및 상기 제2인자를 이용하여 제3암호문을 연산하여, 상기 아이디, 상기 제2인자, 제1암호문, 제2암호문, 제3암호문 및 제1타임 스탬프로 이루어진 로그인 메시지를 상기 서버에 전송하는 로그인 요청부; 및If there is a login request, a password verifier is generated using the first factor and the password, a first random number and a second random number are generated in the mobile device, and a first random number is generated using the first random number and the second argument. Computes a cipher text, and generates a message authentication code value of the mobile device using the first time stamp and the ID of the password verifier and the message authentication code value generation time, and the message verification code value and the password verifier Computing a second cipher text using the first random number, and calculating a third cipher text using the second random number and the second factor, the ID, the second factor, the first cipher text, the second cipher text, the first cipher text. A login request unit for transmitting a login message consisting of a three-password and a first time stamp to the server; And 상기 아이디 및 상기 제2타임 스탬프를 이용하여 연산된 값이 상기 제4암호문과 일치하면, 상호 인증을 완료하는 모바일 기기 인증부를 포함하는 모바일 기기를 이용한 사용자와 서버간의 상호 인증 시스템.And a mobile device authentication unit for completing mutual authentication when a value calculated using the ID and the second time stamp matches the fourth cipher text. 제 9 항에 있어서,The method of claim 9, 상기 등록부는The register 상기 모바일 기기로부터 수신되는 아이디, 패스워드 및 상기 서버에서 선택된 임의의 난수를 이용하여 제1인자 및 제2인자를 연산하고, 상기 제1인자 및 제2인자를 시큐어 채널을 통해 상기 모바일 기기에 전송하고, 상기 제1인자 및 제2인자를 삭제하는 것을 특징으로 하고,Calculate a first factor and a second factor using an ID, a password received from the mobile device, and any random number selected from the server, and transmit the first and second factors to the mobile device through a secure channel. And deleting the first and second factors, 상기 모바일 기기는The mobile device 상기 모바일 기기의 아이디 및 패스워드를 시큐어 채널을 통해 서버에 전송하는 등록 요청부; 및A registration request unit for transmitting the ID and password of the mobile device to a server through a secure channel; And 상기 제1인자 및 제2인자를 저장하는 저장부를 포함하는 것을 특징으로 하는 모바일 기기를 이용한 사용자와 서버간의 상호 인증 시스템.And a storage unit for storing the first factor and the second factor. 제 9 항에 있어서,The method of claim 9, 상기 서버 인증부는The server authentication unit 상기 제1암호문이
Figure 112007014412777-pat00066
, 제2암호문이
Figure 112007014412777-pat00067
이고, 상기 제1타임 스탬프가 T, 상기 제2인자가
Figure 112007014412777-pat00068
, 상기 아이디가
Figure 112007014412777-pat00069
, 해쉬함수가 H, 상기 서버의 비밀키가
Figure 112007014412777-pat00070
이며, p가 상기 서버에서 선택된 값인 경우에,
Figure 112007014412777-pat00071
Figure 112007014412777-pat00072
Figure 112007014412777-pat00073
가 성립하면, 상기 사용자 인증을 수락하는 것을 특징으로 하는 모바일 기기를 이용한 사용자와 서버간의 상호 인증 시스템.
The first passphrase
Figure 112007014412777-pat00066
, The second cipher
Figure 112007014412777-pat00067
Where the first time stamp is T and the second factor is
Figure 112007014412777-pat00068
, The id is
Figure 112007014412777-pat00069
, Hash function H, the secret key of the server
Figure 112007014412777-pat00070
If p is a value selected in the server,
Figure 112007014412777-pat00071
Figure 112007014412777-pat00072
Figure 112007014412777-pat00073
Is established, the mutual authentication system between the user and the server using the mobile device, characterized in that for accepting the user authentication.
제 11 항에 있어서,The method of claim 11, 상기 서버 암호문 전송부는The server cipher text transmission unit 상기 제3암호문이
Figure 112008044923891-pat00121
이고, 상기 제2타임 스탬프가
Figure 112008044923891-pat00122
이며, 해쉬함수가 h인 경우에, 상기 제4암호문
Figure 112008044923891-pat00123
을 연산하고,
The third ciphertext
Figure 112008044923891-pat00121
Wherein the second time stamp is
Figure 112008044923891-pat00122
And if the hash function is h, the fourth ciphertext
Figure 112008044923891-pat00123
Is computed,
상기 모바일 기기 인증부는The mobile device authentication unit
Figure 112008044923891-pat00124
가 상기 제1인자 및 제2인자의 연산시에 선택된 임의의 난수이고, 상기 제2난수가 b인 경우에,
Figure 112008044923891-pat00125
를 연산하고, 상기
Figure 112008044923891-pat00126
가 상기 제4암호문과 일치하는지 판단하는 것을 특징으로 하는 모바일 기기를 이용한 사용자와 서버간의 상호 인증 시스템.
Figure 112008044923891-pat00124
Is an arbitrary random number selected at the time of operation of the first and second factors, and the second random number is b,
Figure 112008044923891-pat00125
And calculate
Figure 112008044923891-pat00126
And a user authentication system and a server using the mobile device.
KR1020070016251A 2007-02-15 2007-02-15 System and Method for mutual authentication between a remote user and a server using a mobile device, Recording medium thereof KR100866608B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070016251A KR100866608B1 (en) 2007-02-15 2007-02-15 System and Method for mutual authentication between a remote user and a server using a mobile device, Recording medium thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070016251A KR100866608B1 (en) 2007-02-15 2007-02-15 System and Method for mutual authentication between a remote user and a server using a mobile device, Recording medium thereof

Publications (2)

Publication Number Publication Date
KR20080076399A KR20080076399A (en) 2008-08-20
KR100866608B1 true KR100866608B1 (en) 2008-11-04

Family

ID=39879663

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070016251A KR100866608B1 (en) 2007-02-15 2007-02-15 System and Method for mutual authentication between a remote user and a server using a mobile device, Recording medium thereof

Country Status (1)

Country Link
KR (1) KR100866608B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101770744B1 (en) * 2015-05-26 2017-08-24 충남대학교산학협력단 Method for Processing Mobile Payment based on Web
KR101838890B1 (en) * 2015-08-04 2018-03-15 주식회사 세한알에프시스템 Transaction System of Card Information, Payment Server and Card Terminal therefor

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101275694B1 (en) * 2011-08-30 2013-06-18 성균관대학교산학협력단 Method for setting route based on cloud server using vehicle ad-hoc network, apparatus for the same and system for the same
KR102050737B1 (en) 2012-08-28 2019-12-03 에스케이플래닛 주식회사 Method for authentication users using multi-channel based on trusted platform, apparatus thereof, terminal thereof and system thereof

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005094089A (en) 2003-09-12 2005-04-07 Mitsubishi Electric Corp Authentication unit, unit to be authenticated, authentication system, authentication method, method to be authenticated, program and computer readable medium recording that program
KR20050080579A (en) * 2004-02-10 2005-08-17 삼성전자주식회사 Method for identifying of a data processing appratus which has a recording device and appratuses therefor
JP2005277890A (en) 2004-03-25 2005-10-06 Citizen Watch Co Ltd Authentication method
JP2006352215A (en) 2005-06-13 2006-12-28 Felica Networks Inc Mutual authentication system, information processor, information processing method, and computer program

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005094089A (en) 2003-09-12 2005-04-07 Mitsubishi Electric Corp Authentication unit, unit to be authenticated, authentication system, authentication method, method to be authenticated, program and computer readable medium recording that program
KR20050080579A (en) * 2004-02-10 2005-08-17 삼성전자주식회사 Method for identifying of a data processing appratus which has a recording device and appratuses therefor
JP2005277890A (en) 2004-03-25 2005-10-06 Citizen Watch Co Ltd Authentication method
JP2006352215A (en) 2005-06-13 2006-12-28 Felica Networks Inc Mutual authentication system, information processor, information processing method, and computer program

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101770744B1 (en) * 2015-05-26 2017-08-24 충남대학교산학협력단 Method for Processing Mobile Payment based on Web
KR101838890B1 (en) * 2015-08-04 2018-03-15 주식회사 세한알에프시스템 Transaction System of Card Information, Payment Server and Card Terminal therefor

Also Published As

Publication number Publication date
KR20080076399A (en) 2008-08-20

Similar Documents

Publication Publication Date Title
US9887989B2 (en) Protecting passwords and biometrics against back-end security breaches
Das et al. A secure and efficient uniqueness-and-anonymity-preserving remote user authentication scheme for connected health care
US11171785B2 (en) Authentication method and system
US8627424B1 (en) Device bound OTP generation
US7562221B2 (en) Authentication method and apparatus utilizing proof-of-authentication module
TWI497336B (en) Data security devices and computer program
Qi et al. A secure biometrics-based authentication key exchange protocol for multi-server TMIS using ECC
US20160323272A1 (en) Method using a single authentication device to authenticate a user to a service provider among a plurality of service providers and device for performing such a method
US20200014538A1 (en) Methods and systems to facilitate authentication of a user
Li et al. Robust three‐factor remote user authentication scheme with key agreement for multimedia systems
Mishra et al. A secure password-based authentication and key agreement scheme using smart cards
JPWO2007094165A1 (en) Identification system and program, and identification method
JP2004530331A (en) Cryptographic authentication using a temporary (ephemeral) module
Chaturvedi et al. Improved biometric-based three-factor remote user authentication scheme with key agreement using smart card
Odelu et al. A secure and efficient ECC‐based user anonymity preserving single sign‐on scheme for distributed computer networks
Bouchaala et al. Enhancing security and efficiency in cloud computing authentication and key agreement scheme based on smart card
Mishra et al. An anonymous biometric‐based remote user‐authenticated key agreement scheme for multimedia systems
Truong et al. Robust mobile device integration of a fingerprint biometric remote authentication scheme
KR100866608B1 (en) System and Method for mutual authentication between a remote user and a server using a mobile device, Recording medium thereof
CN112383401B (en) User name generation method and system for providing identity authentication service
Khatoon et al. An improved user authentication and key agreement scheme for roaming service in ubiquitous network
Zhu et al. A Novel One-Time Identity-Password Authenticated Scheme Based on Biometrics for E-coupon System.
JP2022533979A (en) User authentication and signature device using user biometrics, and method thereof
KR100980321B1 (en) System for user authenticating and Method thereof
Limbasiya et al. Secure and energy-efficient key-agreement protocol for multi-server architecture

Legal Events

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

Payment date: 20110914

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20121004

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee