KR20170085926A - Electronic money terminal and method for providing elecronic money using the same - Google Patents

Electronic money terminal and method for providing elecronic money using the same Download PDF

Info

Publication number
KR20170085926A
KR20170085926A KR1020160035563A KR20160035563A KR20170085926A KR 20170085926 A KR20170085926 A KR 20170085926A KR 1020160035563 A KR1020160035563 A KR 1020160035563A KR 20160035563 A KR20160035563 A KR 20160035563A KR 20170085926 A KR20170085926 A KR 20170085926A
Authority
KR
South Korea
Prior art keywords
electronic money
management server
money terminal
balance
keys
Prior art date
Application number
KR1020160035563A
Other languages
Korean (ko)
Other versions
KR101810165B1 (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 단국대학교 산학협력단
Publication of KR20170085926A publication Critical patent/KR20170085926A/en
Application granted granted Critical
Publication of KR101810165B1 publication Critical patent/KR101810165B1/en

Links

Images

Classifications

    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • G06Q20/065Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/02Banking, e.g. interest calculation or account maintenance
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • 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
    • H04L9/3263Cryptographic 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 involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Accounting & Taxation (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Finance (AREA)
  • Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Technology Law (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

본 발명의 일 실시예에 따른 전자 화폐 단말은 상기 전자 화폐 단말의 잔액을 저장하는 금액 저장부와, 상기 전자 화폐 단말을 관리하는 관리 서버에 대해서, 상기 관리 서버와 송수신하는 데이터가 입출력되는 데이터 포트부와, 기 설정된 복수 개의 키를 저장하는 키 저장부와, 상기 복수 개의 키 중 어느 하나인 제1 키를 기초로 상기 관리 서버로부터 상기 잔액을 갱신하는 잔액 관련 데이터가 암호화된 상태로 수신되면 이를 복호화하고, 상기 복호화된 잔액 관련 데이터를 기초로 상기 금액 저장부에 저장된 잔액이 갱신되도록 처리하는 처리부와, 상기 관리 서버가 송신할 데이터를 암호화하거나 상기 관리 서버가 수신한 암호화된 데이터를 복호화하는 관리 서버용 암복호화 장치가 상기 관리 서버와 연결될 때, 상기 전자 화폐 단말을 상기 관리 서버용 암복호화 장치에 포함된 연결부와 물리적으로 연결시키는 연결부를 포함하며, 상기 복수 개의 키는 상기 전자 화폐 단말에 포함된 연결부가 상기 관리 서버용 암복호화 장치에 포함된 연결부와 물리적으로 연결되면 생성되어 상기 키 저장부에 저장된다.The electronic money terminal according to an embodiment of the present invention includes an amount storage unit for storing the balance of the electronic money terminal, and a data server for managing the electronic money terminal, wherein data to be transmitted to and received from the management server is input / Related data for updating the balance from the management server based on a first key, which is any one of the plurality of keys, is received in an encrypted state, And a management unit for encrypting data to be transmitted by the management server or decrypting the encrypted data received by the management server so that the balance stored in the amount storage unit is updated based on the decrypted balance- When the server encryption / decryption device is connected to the management server, A plurality of keys are generated when a connection unit included in the electronic money terminal is physically connected to a connection unit included in the encryption / decryption apparatus for the management server, And stored in the key storage unit.

Description

전자 화폐 단말 및 이를 이용하여 전자 화폐를 제공하는 방법{ELECTRONIC MONEY TERMINAL AND METHOD FOR PROVIDING ELECRONIC MONEY USING THE SAME}BACKGROUND OF THE INVENTION 1. Field of the Invention [0001] The present invention relates to an electronic money terminal and a method of providing electronic money using the electronic money terminal.

본 발명은 전자 화폐 단말 및 이를 이용하여 전자 화폐를 제공하는 방법에 관한 것이다. 보다 자세하게는 전자 화폐 단말을 관리하는 관리 서버와 전자 화폐 단말 사이에서 전자 화폐의 금액과 같은 데이터가 송수신될 때, 이러한 데이터의 암복호화에 사용되는 키는 상기 관리 서버와 연결되는 관리 서버용 암복호화 장치가 전자 화폐 단말과 서로 간에 물리적으로 오프라인 상에서 연결되었을 때 생성 및 공유되도록 하고, 이러한 키를 이용하여 데이터를 암복호화한 뒤 송수신되도록 함으로써, 전자 화폐에 대한 해킹 가능성을 원천적으로 차단하는 기술에 관한 것이다.
The present invention relates to an electronic money terminal and a method for providing electronic money using the electronic money terminal. More specifically, when data such as the amount of electronic money is transmitted and received between a management server for managing an electronic money terminal and an electronic money terminal, a key used for encryption / decryption of such data is transmitted to the management server encryption / And generating and sharing data when the electronic money terminal is physically and offline connected to the electronic money terminal, encrypting and decrypting the data using the key, and transmitting / receiving the data, thereby preventing the possibility of hacking the electronic money .

기존의 암복호화 시스템의 경우 비대칭키 시스템인 RSA를 이용한 대칭키 전송과, 이와 같이 전송된 대칭키에 의한 데이터의 암복호화에 의하여 이루어진다. 참고로, RSA는 두 개의 큰 소수 (p,q)를 곱하여 만든 수를 기반으로 공개키와 비밀키를 생성하며, 이와 같이 생성된 공개키와 비밀키를 이용하여 데이터를 암호화하는 방법이다. In the conventional encryption / decryption system, symmetric key transmission using RSA, which is an asymmetric key system, and encryption / decryption of data by the symmetric key thus transmitted are performed. For reference, RSA generates a public key and a secret key based on the number generated by multiplying two large prime numbers (p, q), and encrypts the data using the generated public key and secret key.

이러한 기존의 암복호화 시스템은 전자 화폐 분야에도 사용될 수 있다. 그런데, 앞서 설명한 RSA를 이용할 경우 데이터는 공개키로 암호화되어 공유 통신망을 통해 전달되며, 공개키는 인터넷 상에서 공개 및 공유된다. 여기서, 공개키를 기반으로 비밀키가 찾아내어 진다면, 암호화된 데이터는 해킹될 수 있다. 물론, 공개키를 기반으로 비밀키를 찾아내는 것은 매우 어려운 작업으로 알려져 있다. 그러나, 공개키를 기반으로 비밀키를 찾아내는 것이 불가능하다고 수학적으로 증명된 것은 아니다. 아울러, 비밀키를 수리적인 방법으로 찾아내는 경우도 종종 발생하고 있다. 또한, 해커와 같은 악성 행위자가 특정 방법으로 적절한 응답시간 내에 구할 수 있는 소수 (p,q)를 구해놓았다면, 비밀키는 훨씬 수월하게 찾을 수 있다.This conventional encryption / decryption system can also be used in the field of electronic money. However, when using the RSA described above, the data is encrypted with the public key and transmitted through the shared communication network, and the public key is disclosed and shared on the Internet. Here, if the secret key is found based on the public key, the encrypted data can be hacked. Of course, finding a secret key based on a public key is known to be a very difficult task. However, it is not mathematically proven that it is impossible to find a secret key based on a public key. In addition, it often happens that a secret key is found in a mathematical way. Also, if a malicious agent such as a hacker finds a prime number (p, q) that can be obtained in a certain way within the appropriate response time, the secret key can be found more easily.

따라서, 전자 화폐와 같이 그 보안성이 고도로 중요한 분야에서는 데이터, 특히 전자 화폐의 금액과 같은 데이터에 대한 해킹 가능성을 보다 효과적으로 차단할 수 있는 방법에 대한 요구가 있다.
Accordingly, there is a need for a method that can more effectively block the possibility of hacking data, particularly data such as the amount of electronic money, in areas where security is very important, such as electronic money.

한국특허공개공보 2005-0017493 , 공개일자 2005년 02월 22일Korean Patent Publication No. 2005-0017493, published on February 22, 2005

본 발명의 해결하고자 하는 과제는 데이터의 암복호화에 사용되는 키를 분배하여 공유시키는 과정에서, 이러한 키에 대한 해킹 가능성을 보다 근본적으로 차단하는 기술을 제공하는 것이다.SUMMARY OF THE INVENTION It is an object of the present invention to provide a technique to more fundamentally block the possibility of hacking a key used for encryption and decryption of data in a process of distributing and sharing the key.

또한, 이러한 기술을 전자 화폐에 적용하여 전자 화폐에 대한 해킹 가능성을 차단하는 것이다.In addition, this technology is applied to electronic money to block the possibility of hacking to electronic money.

다만, 본 발명의 해결하고자 하는 과제는 이상에서 언급한 것으로 제한되지 않으며, 언급되지 않은 또 다른 해결하고자 하는 과제는 아래의 기재로부터 본 발명이 속하는 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
It is to be understood that both the foregoing general description and the following detailed description of the present invention are exemplary and explanatory and are intended to provide further explanation of the invention as claimed. will be.

본 발명의 일 실시예에 따른 전자 화폐 단말은 상기 전자 화폐 단말의 잔액을 저장하는 금액 저장부와, 상기 전자 화폐 단말을 관리하는 관리 서버에 대해서, 상기 관리 서버와 송수신하는 데이터가 입출력되는 데이터 포트부와, 기 설정된 복수 개의 키를 저장하는 키 저장부와, 상기 복수 개의 키 중 어느 하나인 제1 키를 기초로 상기 관리 서버로부터 상기 잔액을 갱신하는 잔액 관련 데이터가 암호화된 상태로 수신되면 이를 복호화하고, 상기 복호화된 잔액 관련 데이터를 기초로 상기 금액 저장부에 저장된 잔액이 갱신되도록 처리하는 처리부와, 상기 관리 서버가 송신할 데이터를 암호화하거나 상기 관리 서버가 수신한 암호화된 데이터를 복호화하는 관리 서버용 암복호화 장치가 상기 관리 서버와 연결될 때, 상기 전자 화폐 단말을 상기 관리 서버용 암복호화 장치에 포함된 연결부와 물리적으로 연결시키는 연결부를 포함하며, 상기 복수 개의 키는 상기 전자 화폐 단말에 포함된 연결부가 상기 관리 서버용 암복호화 장치에 포함된 연결부와 물리적으로 연결되면 생성되어 상기 키 저장부에 저장된다.The electronic money terminal according to an embodiment of the present invention includes an amount storage unit for storing the balance of the electronic money terminal, and a data server for managing the electronic money terminal, wherein data to be transmitted to and received from the management server is input / Related data for updating the balance from the management server based on a first key, which is any one of the plurality of keys, is received in an encrypted state, And a management unit for encrypting data to be transmitted by the management server or decrypting the encrypted data received by the management server so that the balance stored in the amount storage unit is updated based on the decrypted balance- When the server encryption / decryption device is connected to the management server, A plurality of keys are generated when a connection unit included in the electronic money terminal is physically connected to a connection unit included in the encryption / decryption apparatus for the management server, And stored in the key storage unit.

또한, 상기 금액 저장부는 상기 금액을 저장하는 공간이 1개인 것을 특징으로 할 수 있다.In addition, the amount storage unit may store one space for storing the amount of money.

또한, 상기 처리부는 상기 제1 키를 기초로 상기 잔액을 암호화하고, 상기 데이터본 발명의 일 실시예에 따른 전자 화폐 단말은 상기 전자 화폐 단말의 잔액을 저장하는 금액 저장부와, 상기 전자 화폐 단말을 관리하는 관리 서버에 대해서, 상기 관리 서버와 송수신하는 데이터가 입출력되는 데이터 포트부와, 기 설정된 복수 개의 키를 저장하는 키 저장부와, 상기 복수 개의 키 중 어느 하나인 제1 키를 기초로 상기 관리 서버로부터 상기 잔액을 갱신하는 잔액 관련 데이터가 암호화된 상태로 수신되면 이를 복호화하고, 상기 복호화된 잔액 관련 데이터를 기초로 상기 금액 저장부에 저장된 잔액이 갱신되도록 처리하는 처리부와, 상기 관리 서버가 송신할 데이터를 암호화하거나 상기 관리 서버가 수신한 암호화된 데이터를 복호화하는 관리 서버용 암복호화 장치가 상기 관리 서버와 연결될 때, 상기 전자 화폐 단말을 상기 관리 서버용 암복호화 장치에 포함된 연결부와 물리적으로 연결시키는 연결부를 포함하며, 상기 복수 개의 키는 상기 전자 화폐 단말에 포함된 연결부가 상기 관리 서버용 암복호화 장치에 포함된 연결부와 물리적으로 연결되면 생성되어 상기 키 저장부에 저장된다.Also, the processing unit encrypts the balance based on the first key, and the data. The electronic money terminal according to an embodiment of the present invention includes an amount storage unit for storing the balance of the electronic money terminal, A data storage unit for storing a predetermined number of keys, and a data storage unit for storing data based on the first key, which is one of the plurality of keys, to the management server managing the management server, Related data for updating the balance is received from the management server in an encrypted state, and for processing the balance stored in the amount storage unit to be updated based on the decrypted balance-related data; For encrypting data to be transmitted or decrypting the encrypted data received by the management server And a connection unit for physically connecting the electronic money terminal to a connection unit included in the management server for the management server when the residential device is connected to the management server, wherein the plurality of keys include a connection unit included in the electronic money terminal Is physically connected to a connection unit included in the encryption / decryption apparatus for the management server, and is generated and stored in the key storage unit.

또한, 상기 금액 저장부는 상기 금액을 저장하는 공간이 1개인 것을 특징으로 할 수 있다.In addition, the amount storage unit may store one space for storing the amount of money.

또한, 상기 처리부는 상기 제1 키를 기초로 상기 잔액을 암호화하고, 상기 데이터 포트부는 상기 암호화된 잔액을 출력하여 상기 관리 서버로 송신되도록 할 수 있다.Also, the processing unit may encrypt the balance based on the first key, and the data port unit may output the encrypted balance to be transmitted to the management server.

또한, 상기 처리부에 의하여 상기 금액 저장부에 저장된 잔액이 갱신될 때마다 그 값이 증가하는 변수를 갖는 위조 방지부를 더 포함하며, 상기 처리부는 상기 제1 키를 기초로 상기 잔액 및 상기 변수를 암호화하며, 상기 데이터 포트부는 상기 암호화된 잔액 및 상기 변수를 출력하여 상기 관리 서버로 송신되도록 할 수 있다.Further comprising a forgery prevention unit having a variable whose value is incremented every time the balance stored in the amount storage unit is updated by the processing unit, wherein the processing unit encrypts the balance and the variable based on the first key, And the data port unit may output the encrypted balance and the variable to be transmitted to the management server.

또한, 상기 키 저장부는 상기 제1 키가 상기 처리부로 전달되는 경로인 키 버스(key bus)를 통해서 상기 처리부와 연결되지만, 상기 키 버스를 통해서 상기 데이터 포트부와는 연결되지 않을 수 있다.Also, the key storage unit may be connected to the processing unit through a key bus, which is a path through which the first key is transmitted to the processing unit, but may not be connected to the data port unit through the key bus.

또한, 상기 키 저장부와 상기 관리 서버용 암복호화 장치에 포함된 키 저장부는 동일한 값의 복수 개의 키를 저장할 수 있다.In addition, the key storage unit included in the key storage unit and the encryption / decryption unit for the management server may store a plurality of keys having the same value.

또한, 난수를 생성하는 난수 생성부를 더 포함하며, 상기 복수 개의 키는 상기 난수 생성부에 의하여 생성된 난수를 기초로 생성될 수 있다.The apparatus may further include a random number generator for generating a random number, and the plurality of keys may be generated based on the random number generated by the random number generator.

상기 처리부는 상기 잔액을, 상기 전자 화폐 단말과 상기 관리 서버용 암복호화 장치가 모두 알고 있는 식별자와 결합시켜서 결합 데이터를 생성한 뒤, 상기 결합 데이터를 상기 제1 키를 기초로 암호화하고, 상기 데이터 포트부는 상기 결합 데이터를 출력하여 상기 관리 서버로 송신되도록 할 수 있다.The processing unit combines the balance with an identifier known by both the electronic money terminal and the management server encryption / decryption device to generate combined data, and then encrypts the combined data based on the first key, May output the combined data to be transmitted to the management server.

또한, 상기 처리부는 상기 복수 개의 키 중 상기 전자 화폐 단말과 상기 관리 서버용 암복호화 장치가 모두 알고 있는 기 설정된 적어도 두 개 이상의 키를 기초로 상기 식별자를 생성할 수 있다.The processing unit may generate the identifier based on at least two predetermined keys that are both known to the electronic money terminal and the encryption / decryption apparatus for the management server among the plurality of keys.

또한, 난수를 생성하는 난수 생성부를 더 포함하고, 상기 식별자는 기 설정된 개수의 복수 개의 비트로 구성되며, 상기 복수 개의 비트 중 일부의 비트는 상기 적어도 두 개 이상의 키에 의하여 값이 정해지고, 상기 복수 개의 비트 중 나머지 비트는 상기 난수 생성부에 의하여 생성된 난수에 의하여 값이 정해질 수 있다.The random number generating unit may further include a random number generator for generating a random number, wherein the identifier is composed of a predetermined number of bits, a part of the plurality of bits is determined by the at least two keys, The remaining bits of the number of bits can be determined by the random number generated by the random number generator.

또한, 상기 전자 화폐 단말에 비정상적인 것으로 정의된 행위가 가해지는 것을 인식하며, 상기 행위가 가해지는 것이 인식되면 상기 키 저장부에 저장된 상기 복수 개의 키를 삭제하는 보호부를 더 포함할 수 있다.The apparatus may further include a protection unit that recognizes that an action defined as abnormal is applied to the electronic money terminal and deletes the plurality of keys stored in the key storage unit when it is recognized that the action is applied.

또한, 상기 복수 개의 키는 새로운 복수 개의 키로 변경 가능할 수 있다.Also, the plurality of keys may be changed to a plurality of new keys.

또한, 상기 복수 개의 키가 상기 새로운 복수 개의 키로 변경될 때, 상기 전자 화폐 단말과 상기 관리 서버용 암복호화 장치가 서로 알고 있는 기 설정된 값을 기초로 상기 새로운 복수 개의 키가 생성되어 변경될 수 있다.Also, when the plurality of keys are changed to the new plurality of keys, the new plurality of keys may be generated and changed based on predetermined values that are known to each other by the electronic money terminal and the encryption / decryption device for management server.

본 발명의 일 실시예에 따른 전자 화폐 제공 방법은 전자 화폐 단말에 의하여 수행되며, 상기 전자 화폐 단말을 관리하는 관리 서버로부터, 상기 전자 화폐 단말에 저장된 잔액을 갱신하는 잔액 관련 데이터를 암호화된 상태로 수신하는 단계와, 기 저장된 복수 개의 키 중 어느 하나인 제1 키를 기초로 상기 암호화된 잔액 관련 데이터를 복호화하는 단계와, 상기 복호화된 잔액 관련 데이터를 기초로 상기 잔액을 갱신시키는 단계를 포함하며, 상기 복수 개의 키는 상기 관리 서버가 송신할 데이터를 암호화하거나 상기 관리 서버가 수신한 암호화된 데이터를 복호화하는 관리 서버용 암복호화 장치가 상기 관리 서버와 연결될 때, 상기 전자 화폐 단말에 포함된 연결부가 상기 관리 서버용 암복호화 장치에 포함된 연결부와 물리적으로 연결되면 생성되어 저장된다.
A method of providing an electronic money according to an embodiment of the present invention is performed by an electronic money terminal, and the method includes the steps of: receiving, from an administration server managing the electronic money terminal, balance-related data for updating the balance stored in the electronic money terminal in an encrypted state Decrypting the encrypted balance related data based on a first key that is one of a plurality of previously stored keys, and updating the balance based on the decrypted balance related data, When the encryption / decryption device for the management server, which encrypts the data to be transmitted by the management server or decrypts the encrypted data received by the management server, is connected to the management server, the connection unit included in the electronic money terminal And is physically connected to a connection unit included in the encryption / decryption apparatus for the management server, .

본 발명의 실시예에 따르면, 데이터의 암복호화에 사용되는 키를 생성, 분배 및 공유시키는 과정에서 이러한 키가 해킹될 가능성이 보다 근본적으로 차단된다. 따라서, 이를 이용하여 전자 화폐에 대한 해킹 가능성을 원천적으로 차단시킬 수 있다.
According to the embodiment of the present invention, the possibility that such keys are hacked is more fundamentally blocked in the process of generating, distributing and sharing the keys used for encryption / decryption of data. Therefore, the possibility of hacking the electronic money can be fundamentally blocked by using it.

도 1은 본 발명의 일 실시예에 따른 전자 화폐 단말이 사용되는 시스템을 예시적으로 도시한 도면이다.
도 2는 본 발명의 일 실시예에 따른 전자 화폐 단말의 구성을 도시한 도면이다.
도 3a는 도 2에 도시된 금액 저장부 및 위조 방지부를 도시한 도면이다.
도 3b는 도 2에 도시된 금액 저장부 및 위조 방지부가 전자 화폐 단말에서 이용되는 것을 예시적으로 도시한 도면이다.
도 4은 본 발명의 일 실시예에 따른 전자 화폐 단말과 관리 서버용 암복호화 장치가 서로 간에 연결된 것을 개념적으로 도시한 도면이다.
도 5는 본 발명의 일 실시예에 따른 전자 화폐 단말에서 키 저장부와 처리부 및 데이터 포트부가 연결된 것을 개념적으로 도시한 도면이다.
도 6a 및 6b는 본 발명의 일 실시예에 따른 식별자를 개념적으로 도시한 도면이다.
도 7은 본 발명의 일 실시예에 따른 전자 화폐를 제공하는 방법의 절차를 도시한 도면이다.
1 is a diagram illustrating an exemplary system in which an electronic money terminal according to an embodiment of the present invention is used.
2 is a diagram showing a configuration of an electronic money terminal according to an embodiment of the present invention.
FIG. 3A is a view showing the money storage unit and the anti-falsification unit shown in FIG. 2. FIG.
FIG. 3B is a diagram illustrating an example in which the money storage unit and the anti-falsification unit shown in FIG. 2 are used in an electronic money terminal.
4 is a conceptual diagram illustrating an electronic money terminal and an encryption / decryption apparatus for a management server connected to each other according to an embodiment of the present invention.
5 is a view conceptually showing a key storage unit, a processing unit, and a data port unit in an electronic money terminal according to an exemplary embodiment of the present invention.
6A and 6B are conceptual diagrams of an identifier according to an embodiment of the present invention.
7 is a flowchart illustrating a method of providing electronic money according to an embodiment of the present invention.

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.BRIEF DESCRIPTION OF THE DRAWINGS The advantages and features of the present invention and the manner of achieving them will become apparent with reference to the embodiments described in detail below with reference to the accompanying drawings. The present invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. To fully disclose the scope of the invention to those skilled in the art, and the invention is only defined by the scope of the claims.

본 발명의 실시예들을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명의 실시예에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.In the following description of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear. The following terms are defined in consideration of the functions in the embodiments of the present invention, which may vary depending on the intention of the user, the intention or the custom of the operator. Therefore, the definition should be based on the contents throughout this specification.

설명에 앞서, 일 실시예에 따른 전자 화폐 단말에 의하여 데이터가 암호화되면 이와 같이 암호화된 데이터는 관리 서버용 암복호화 장치에 의하여 복호화될 수 있으며, 그 반대도 가능한 것으로 정의하기로 한다.Prior to the description, it is assumed that when the data is encrypted by the electronic money terminal according to the embodiment, the encrypted data can be decrypted by the encryption / decryption device for the management server, and vice versa.

도 1은 본 발명의 일 실시예에 따른 전자 화폐 단말이 사용되는 시스템을 예시적으로 도시한 도면이다.1 is a diagram illustrating an exemplary system in which an electronic money terminal according to an embodiment of the present invention is used.

도 1을 참조하면, 시스템은 전자 화폐 단말(100a), 전자 화폐 사용처(10a), 관리 서버(10b) 및 관리 서버용 암복호화 장치(100b)에 의하여 구성된다. 여기서, 도 1에 도시된 시스템은 일 실시예에 따른 전자 화폐 단말(100a)이 적용되는 예를 도시한 것에 불과하다. 1, the system comprises an electronic money terminal 100a, an electronic money using place 10a, a management server 10b, and a management server encryption / decryption device 100b. Here, the system shown in FIG. 1 is merely an example in which the electronic money terminal 100a according to the embodiment is applied.

전자 화폐 사용처(10a)와 관리 서버(10b)는 네트워크(200)에 의하여 연결된다. 네트워크(200)는 CDMA, 3G, 4G, LTE-A, 블루투스, 와이파이, NFC 또는 IR과 같은 무선 통신 네트워크이거나 이와 달리 LAN과 같은 유선 통신 네트워크일 수 있다.The electronic money use place 10a and the management server 10b are connected by the network 200. [ The network 200 may be a wireless communication network such as CDMA, 3G, 4G, LTE-A, Bluetooth, Wi-Fi, NFC or IR or otherwise a wired communication network such as a LAN.

전자 화폐 사용처(10a)는 전자 화폐 단말(100a)이 연결되어 사용되는 곳이다. 이를 위하여 전자 화폐 단말(100a) 및 전자 화폐 사용처(10a)는 서로를 연결시키기 위한 구성(미도시)을 각각 포함할 수 있다. 전자 화폐 사용처(10a)는 현금 입출금기(ATM) 또는 상점 등에 설치되어 전자 화폐 단말(100a)를 읽고 그로부터 금액을 출금하는 결제 단말기 등일 수 있으나 이에 한정되는 것은 아니다.The electronic money use place 10a is a place where the electronic money terminal 100a is connected and used. For this purpose, the electronic money terminal 100a and the electronic money using place 10a may each include a configuration (not shown) for connecting them to each other. The electronic money use place 10a may be a cash dispenser (ATM), a payment terminal installed in a shop or the like to read the electronic money terminal 100a and to withdraw money therefrom, but the present invention is not limited thereto.

관리 서버(10b)는 전자 화폐 단말(100a) 자체를 관리한다. 이를 위하여, 전자 화폐 단말(100a)이 복수 개일 때 이들 각각에는 고유 번호가 할당될 수 있는데, 관리 서버(10b)는 이러한 고유 번호 및 고유 번호에 대응되는 전자 화폐 단말(100a)의 특성 등을 미리 저장한다. 관리 서버(10b)는 이러한 고유 번호를 기초로 전자 화폐 단말(100a)을 관리한다.The management server 10b manages the electronic money terminal 100a itself. To this end, when there are a plurality of electronic money terminals 100a, a unique number may be assigned to each of them. The management server 10b stores the characteristics of the electronic money terminal 100a corresponding to the unique number and the unique number in advance . The management server 10b manages the electronic money terminal 100a based on this unique number.

관리 서버(10b)는 전자 화폐 단말(100a)에 저장된 잔액을 관리한다. 예컨데, 관리 서버(10b)는 고유 번호가 i인 전자 화폐 단말에는 잔액이 얼마인지 등을 저장 및 관리할 수 있다. 관리 서버(10a)는 일반적인 은행에 설치된 서버 또는 전자 화폐를 전문적으로 취급하는 은행에 설치된 서버일 수 있다.The management server 10b manages the balance stored in the electronic money terminal 100a. For example, the management server 10b can store and manage the remaining amount in the electronic money terminal having the unique number i. The management server 10a may be a server installed in a general bank or a server installed in a bank that professionally handles electronic money.

관리 서버용 암복호화 장치(100b)는 관리 서버(10b)와 연결된다. 이를 위하여 관리 서버용 암복호화 장치(100b)와 관리 서버(10b)는 서로 간을 연결시키기 위한 구성을 각각 포함(미도시)할 수 있다. The encryption / decryption apparatus for management server 100b is connected to the management server 10b. For this purpose, the encryption / decryption apparatus 100b for management server and the management server 10b may include (not shown) a configuration for connecting each other.

관리 서버용 암복호화 장치(100b)는 관리 서버(10b)가 전자 화폐 단말(100a) 또는 전자 화폐 사용처(10a)로 송신하고자 하는 데이터를 암호화한다. 또한 관리 서버용 암복호화 장치(100a)는 전자 화폐 단말(100a)이나 전자 화폐 사용처(10a)로부터 수신된 데이터가 암호화되어 있으면 이를 복호화한다. 이 때 암호화되는 데이터는 전자 화폐 단말(100a)의 잔액(잔액 관련 데이터) 등일 수 있는데 이에 대해서는 후술하기로 한다. 또한, 관리 서버용 암복호화 장치(100b)가 데이터를 암호화하고 복호화하는 것은 전자 화폐 단말(100a)이 데이터를 암호화하고 복호화하는 것과 동일하므로, 관리 서버용 암복호화 장치(100b)가 데이터를 암호화하고 복호화하는 것에 대한 설명은 전자 화폐 단말(100a)이 데이터를 암복호화하는 부분의 설명으로 대체하기로 한다.The management server encryption / decryption apparatus 100b encrypts data that the management server 10b wants to transmit to the electronic money terminal 100a or the electronic money using place 10a. The encryption / decryption device for management server 100a also decrypts data received from the electronic money terminal 100a or the electronic money using place 10a, if it is encrypted. The data to be encrypted at this time may be the balance (balance-related data) of the electronic money terminal 100a or the like, which will be described later. Encrypting and decrypting the data by the encryption / decryption apparatus for management server 100b is the same as encrypting and decrypting data by the electronic money terminal 100a, so that the encryption / decryption apparatus for management server 100b encrypts and decrypts the data Description will be replaced with a description of the portion in which the electronic money terminal 100a encrypts and decrypts the data.

전자 화폐 단말(100a)은 전자 화폐 사용처(10a)에서 사용되는 전자 화폐다. 이러한 전자 화폐 단말(100a)은 후술할 전자 화폐의 기능을 수행하도록 프로그램된 명령어를 저장하는 메모리 및 이러한 명령어를 수행하는 프로세서에 의하여 구현 가능하다.The electronic money terminal 100a is electronic money used in the electronic money using place 10a. The electronic money terminal 100a can be implemented by a memory that stores instructions to be programmed to perform the functions of an electronic money described later and a processor that executes such instructions.

보다 구체적으로 살펴보면, 전자 화폐 단말(100a)은 잔액을 저장한다. 전자 화폐 단말(100a)의 잔액이나 기타 정보 등은 암호화된 뒤, 전자 화폐 사용처(10a)를 거쳐서 관리 서버(10b)로 전달되거나 또는 전자 화폐 단말(100a)로부터 직접 관리 서버(10b)로 전달될 수 있다.More specifically, the electronic money terminal 100a stores the balance. The balance or other information of the electronic money terminal 100a is encrypted and then transmitted to the management server 10b via the electronic money use place 10a or directly from the electronic money terminal 100a to the management server 10b .

아울러, 전자 화폐 단말(100a)이 전자 화폐 사용처(10a)에서 사용되면, 전자 화폐 단말(100a)은 사용된 금액을 제외한 잔액 등을 암호화한다. 암호화된 잔액이나 기타 정보는 전자 화폐 사용처(10a)를 거쳐서 관리 서버(10b)로 전달되거나 또는 전자 화폐 단말(100a)로부터 직접 관리 서버(10b)로 전달될 수 있다.In addition, when the electronic money terminal 100a is used in the electronic money using place 10a, the electronic money terminal 100a encrypts the balance or the like excluding the used money. The encrypted balance or other information may be transferred to the management server 10b via the electronic money use place 10a or directly from the electronic money terminal 100a to the management server 10b.

또한, 전자 화폐 단말(100a)은 관리 서버(10b)로부터, 관리 서버(10b)가 관리하는 잔액 등을 수신할 수 있다. 이 때 수신된 잔액은 암호화된 상태일 수 있다. 이 경우 전자 화폐 단말(100a)은 암호화된 잔액을 복호화한 뒤, 현재의 잔액을 수신된 잔액으로 갱신할 수 있다.In addition, the electronic money terminal 100a can receive the balance or the like managed by the management server 10b from the management server 10b. At this time, the received balance may be in an encrypted state. In this case, the electronic money terminal 100a can decrypt the encrypted balance and update the current balance to the received balance.

이하에서는, 전술한 기능을 수행하는 전자 화폐 단말(100a)의 구체적인 구성에 대하여 보다 자세하게 살펴보기로 한다. 이 때, 전자 화폐 단말(100a)의 구성은 관리 서버용 암복호화 장치(100b)와 동일하며, 전자 화폐 단말(100a)과 관리 서버용 암복호화 장치(100b)는 통칭하여 암복호화 장치(100)로 지칭될 수 있다.Hereinafter, the specific configuration of the electronic money terminal 100a that performs the above-described functions will be described in more detail. At this time, the configuration of the electronic money terminal 100a is the same as that of the management server-side encryption / decryption apparatus 100b, and the electronic money terminal 100a and the management server-use encryption / decryption apparatus 100b are collectively referred to as the encryption / decryption apparatus 100 .

도 2는 본 발명의 일 실시예에 따른 전자 화폐 단말(100a)의 구성에 대하여 도시한 도면이다.2 is a diagram showing a configuration of an electronic money terminal 100a according to an embodiment of the present invention.

도 2를 참조하면, 전자 화폐 단말(100a)은 금액 저장부(101), 키 저장부(110), 처리부(120), 데이터 포트부(130) 및 연결부(140)를 포함한다. 또한, 전자 화폐 단말(100)은 추가적으로 위조 방지부(103), 난수 생성부(150), 보호부(160), 리셋부(170), 알고리즘 저장부(180) 및 접속부(190)를 포함할 수 있다. 이 중에서, 처리부(120)와 난수 생성부(150)는 이들의 기능을 수행하도록 프로그램된 명령어를 저장하는 메모리 및 이러한 명령어를 수행하는 마이크로프로세서에 의하여 구현될 수 있다.Referring to FIG. 2, the electronic money terminal 100a includes an amount storage unit 101, a key storage unit 110, a processing unit 120, a data port unit 130, and a connection unit 140. The electronic money terminal 100 further includes an anti-falsification unit 103, a random number generation unit 150, a protection unit 160, a reset unit 170, an algorithm storage unit 180 and a connection unit 190 . Among these, the processing unit 120 and the random number generation unit 150 may be implemented by a memory that stores instructions programmed to perform these functions and a microprocessor that executes such instructions.

연결부(140)에 대하여 먼저 살펴보면, 연결부(140)는 전자 화폐 단말(100a)이 관리 서버용 암복호화 장치(100b)와 연결되어야 하는 경우, 이들을 서로 간에 연결시키는 구성이다. 예컨데, 연결부(140)는 하드웨어적으로 구현된 커넥터일 수 있다. 도 4를 참조하여 보다 자세하게 살펴보면, 전자 화폐 단말(100a) 및 관리 서버용 암복호화 장치(100b)은 서로 간에 연결부(140)를 통하여 물리적으로, 그리고 이들이 각각 복수 개이면 링 형태로 연결될 수 있다. 즉, 연결부(140)는 암복호화 장치(100) 복수 개를 서로 간에 물리적으로, 오프라인 상에서 연결시킨다.First, the connection unit 140 is configured to connect the electronic money terminal 100a to the management server-use encryption / decryption apparatus 100b when they are to be connected to each other. For example, the connection unit 140 may be a hardware-implemented connector. 4, the electronic money terminal 100a and the management server encryption / decryption apparatus 100b may be physically connected to each other through a connection unit 140, and if they are plural, they may be connected in a ring form. That is, the connection unit 140 connects a plurality of the encryption / decryption apparatuses 100 physically and offline.

다시 도 2를 참조하면, 금액 저장부(101)는 전자 화폐 단말(100a)의 잔액을 저장한다. 이를 위하여 금액 저장부(101)는 데이터를 저장하는 메모리로 구현 가능하다. 이 때의 금액 저장부(101)는 금액을 저장하는 공간이 1개인 것으로 구현될 수 있다. 금액을 저장하는 공간이 1개인 경우, 악의적 목적을 가진 자가 서로 다른 금액을 각각의 공간에 저장시킴으로써 전자 화폐를 해킹하는 것을 차단시킬 수 있다.Referring again to FIG. 2, the amount storage unit 101 stores the balance of the electronic money terminal 100a. For this, the amount storage unit 101 may be implemented as a memory for storing data. The amount storage unit 101 at this time can be implemented with one space for storing money. If there is only one space to store money, a person with a malicious intent can block different amounts of money from being hacked by storing them in their respective spaces.

데이터 포트부(130)는 전자 화폐 단말(100a)이 관리 서버(10b)와 송수신하는 데이터가 입출력되는 구성이다. 예컨데, 데이터 포트부(130)는 잔액과 같은 데이터가 처리부(120)에 의하여 암호화되면, 암호화된 데이터가 전자 화폐 사용처(10a)를 통해서 관리 서버(10b)로 송신될 수 있도록, 암호화된 데이터를 전자 화폐 사용처(10a)로 출력한다. 또한, 관리 서버(10b)가 전자 화폐 사용처(10a)로 잔액과 같은 데이터를 송신하면, 데이터 포트부(130)는 전자 화폐 사용처(10a)로부터 이러한 데이터를 입력받는다. 전술한 데이터 포트부(130)는 데이터를 입출력하는 하드웨어적인 포트일 수 있다.The data port unit 130 is a configuration in which data exchanged with the management server 10b is input / output by the electronic money terminal 100a. For example, when the data such as the balance is encrypted by the processing unit 120, the data port unit 130 transmits the encrypted data to the management server 10b so that the encrypted data can be transmitted to the management server 10b through the electronic money using place 10a And outputs it to the electronic money use place 10a. In addition, when the management server 10b transmits data such as balance to the electronic money using place 10a, the data port unit 130 receives such data from the electronic money using place 10a. The data port unit 130 may be a hardware port for inputting and outputting data.

키 저장부(110)는 기 설정된 복수 개의 키를 저장한다. 복수 개의 키 각각은 데이터를 암호화하는데 사용되며, 각각 복수 개의 비트로 구성될 수 있다. The key storage unit 110 stores a plurality of predetermined keys. Each of the plurality of keys is used for encrypting data, and each of the keys may be composed of a plurality of bits.

키 저장부(110)는 난수 생성부(150)에 의하여 생성된 임의의 개수, 예를 들면 1000개의 난수의 값을 기초로 복수 개의 키를 생성할 수 있다. 이 때, 임의의 개수의 난수의 값 그 자체가 복수 개의 키가 되거나, 이와 달리 상기 임의의 개수의 난수를 키 저장부(110)가 가공하여 생성된 값이 복수 개의 키가 될 수도 있다.The key storage unit 110 may generate a plurality of keys based on random numbers generated by the random number generation unit 150, for example, 1000 random numbers. In this case, the random number itself may be a plurality of keys, or alternatively, the value generated by processing the arbitrary number of random numbers by the key storage unit 110 may be a plurality of keys.

이 때, 전자 화폐 단말(100a)에 포함된 리셋부(170)는 시드(seed) ― 난수를 생성할 때 사용되는 값 ― 를 생성하여 난수 생성부(150)에 제공한다. 아울러, 이러한 시드는 연결부(140)를 통하여 다른 전자 화폐 단말(100a) 또는 관리 서버용 암복호화 장치(100b)에 포함된 난수 생성부(150)에도 전달 및 제공된다. 시드를 전달 및 제공받은 난수 생성부(150)는 동일한 시드를 이용하여 난수를 생성한다. 따라서, 전자 화폐 단말(100a) 및 관리 서버용 암복호화 장치(100b)가 서로 간에 연결될 경우, 각각에서는 동일한 난수가 생성되며, 따라서 이들은 각각 동일한 값을 갖는 복수 개의 키를 가질 수 있다.At this time, the reset unit 170 included in the electronic money terminal 100a generates a seed - a value used when generating a random number - and provides it to the random number generation unit 150. The seed is also transmitted and provided to the random number generator 150 included in the other electronic money terminal 100a or the management server encryption / decryption apparatus 100b through the connection unit 140. [ The random number generation unit 150 that has received and provided the seed generates a random number using the same seed. Therefore, when the electronic money terminal 100a and the encryption / decryption apparatus 100b for management server are connected to each other, the same random numbers are generated in each case, so that they can have a plurality of keys each having the same value.

여기서, 리셋부(170)에 대하여 보다 자세하게 살펴보면, 리셋부(170)는 사용자에 의한 입력을 받아들이는 버튼 등을 포함할 수 있다. 또한, 리셋부(170)는 난수 생성부(150)와 연결된다. 전자 화폐 단말(100a)이 관리 서버용 암복호화 장치(100b)와 서로 간에 연결되고 리셋부(170)가 버튼이나 터치 등을 통하여 사용자의 입력을 받아들이면, 리셋부(170)는 시드를 생성하여 난수 생성부(150)로 제공한다.Here, the reset unit 170 may include a button or the like for receiving an input by a user. The reset unit 170 is connected to the random number generation unit 150. When the electronic money terminal 100a is connected to the management server for the encryption and decryption apparatus 100b for the management server and the reset unit 170 receives a user's input through a button or a touch, the reset unit 170 generates a seed, To the generating unit 150.

이상에서 살펴본 바와 같이, 전자 화폐 단말(100a) 및 관리 서버용 암복호화 장치(100b)는 서로 간에 물리적으로 오프라인 상에서 연결되었을 때 복수 개의 키를 생성하여 공유한다. 즉, 복수 개의 키가, 유선이든 무선이든 통신망을 통해서 이들 간에 전달되는 일이 발생하지 않는다. 따라서, 기존의 RSA와는 달리 키를 분배하여 공유시키는 과정에서 키가 유출되거나 해킹될 위험이 전혀 없다.As described above, the electronic money terminal 100a and the management server encryption / decryption apparatus 100b generate and share a plurality of keys when they are physically and offline connected to each other. That is, a plurality of keys are not transmitted between them via a communication network, whether they are wired or wireless. Therefore, unlike the existing RSA, there is no risk of key leakage or hacking in distributing and sharing the key.

키 저장부(110)에 저장된 복수 개의 키는 갱신(업데이트)될 수 있다. 갱신 시점은 주기적으로 또는 필요한 때에 임의로 이루어질 수 있는데, 전자 화폐 단말(100a) 및 관리 서버용 암복호화 장치(100b)는 이러한 갱신 시점에 대하여 서로 약속한 규칙을 가지고 있을 수 있으며, 따라서 동일한 시점에 복수 개의 키를 갱신할 수 있다. The plurality of keys stored in the key storage unit 110 can be updated (updated). The update timing may be periodically or arbitrarily required as needed. The electronic money terminal 100a and the encryption / decryption apparatus 100b for management server may have agreed rules for the update time, The key can be updated.

아울러, 키를 갱신하는 것은 새로운 복수 개의 키를 생성하는 것이므로, 이 경우에도 난수 생성부(150)에 의하여 생성된 난수를 기초로 복수 개의 키를 생성할 수 있다. 키를 갱신할 때 난수 생성부(150)에 전달되는 시드는 전자 화폐 단말(100a) 및 관리 서버용 암복호화 장치(100b)가 서로 간에 알고 있는 기 설정된 값, 예를 들면 갱신 전 1번째 또는 마지막 번째의 키일 수 있다. 즉, 전자 화폐 단말(100a) 및 관리 서버용 암복호화 장치(100b)는 갱신을 위하여 동일한 시드를 가지고 복수 개의 키를 생성하며, 이와 같이 생성된 복수 개의 키를 갱신에 사용한다. 따라서, 복수 개의 키가 갱신이 되더라도 전자 화폐 단말(100a) 및 관리 서버용 암복호화 장치(100b)는 동일한 값의 복수 개의 키를 공유할 수 있다.In addition, in this case, a plurality of keys can be generated based on the random number generated by the random number generation unit 150 since updating the key generates a plurality of new keys. When the key is updated, the seed transmitted to the random number generation unit 150 is set to a predetermined value that is known between the electronic money terminal 100a and the management server encryption / decryption apparatus 100b, for example, the first or last It can be key. That is, the electronic money terminal 100a and the management server encryption / decryption apparatus 100b generate a plurality of keys with the same seed for updating, and use a plurality of keys thus generated for updating. Therefore, even when a plurality of keys are updated, the electronic money terminal 100a and the management server encryption / decryption apparatus 100b can share a plurality of keys having the same value.

처리부(120)는 전자 화폐 단말(100a)이 관리 서버용 암복호화 장치(100b)로 송신할 데이터를 암호화한다. 보다 자세하게 살펴보면, 키 저장부(110)에 저장된 복수 개의 키 중 어느 하나인 제1 키가 선택된다. 제1 키를 선택하는 주체는 키 저장부(110) 또는 처리부(120)일 수 있다. 처리부(120)는 제1 키를 기초로 암호화 대상인 데이터를 암호화한다. 여기서, 제1 키를 기초로 데이터를 암호화하는 암호화 알고리즘은 기존에 공지된 것을 사용할 수 있으며, 알고리즘 저장부(180)에 저장될 수 있다. 알고리즘 저장부(180)는 ROM의 형태일 수 있다. 이 때, 제1 키를 기초로 암호화된 데이터는 제1 키에 의해서만 복호화가 가능하다.The processing unit 120 encrypts the data to be transmitted to the management server-use encryption / decryption apparatus 100b by the electronic money terminal 100a. In more detail, a first key, which is one of a plurality of keys stored in the key storage unit 110, is selected. The subject selecting the first key may be the key storage unit 110 or the processing unit 120. The processing unit 120 encrypts data to be encrypted based on the first key. Here, the encryption algorithm for encrypting the data based on the first key may use the previously known encryption key, and may be stored in the algorithm storage unit 180. The algorithm storage unit 180 may be in the form of a ROM. At this time, the encrypted data based on the first key can be decrypted only by the first key.

처리부(120)는 관리 서버용 암복호화 장치(100b)에 의하여 암호화된 데이터가 전자 화폐 사용처(10a)를 통해서 수신되면 이를 복호화하는데, 복호화하는 알고리즘은 전술한 알고리즘 저장부(180)에 저장될 수 있다. 보다 자세하게 살펴보면, 처리부(120)는 암호화된 데이터를 키 저장부(110)에 저장된 복수 개의 키 중 어느 하나인 키를 이용하여 복호화한다. 여기서, 키를 이용하여 암호화된 데이터를 복호화하는 알고리즘은 기존에 공지된 것을 사용할 수 있다.The processing unit 120 decrypts data encrypted by the encryption / decryption apparatus for management server 100b when it is received through the electronic money using place 10a, and the algorithm for decrypting the data can be stored in the algorithm storing unit 180 . In more detail, the processing unit 120 decrypts the encrypted data using a key, which is one of a plurality of keys stored in the key storage unit 110. [ Here, algorithms for decrypting the encrypted data using the keys may be those well known in the art.

처리부(120)가 복호화한 데이터는 잔액일 수 있다. 이 경우, 처리부(120)는 복호화한 데이터에 포함된 잔액으로 금액 저장부(101)에 저장되어 있던 기존의 잔액을 갱신할 수 있다.The data decoded by the processing unit 120 may be a balance. In this case, the processing unit 120 can update the existing balance stored in the amount storage unit 101 with the balance included in the decoded data.

여기서, 처리부(120)가 암호화된 데이터를 복호화하기 위해서는, 암호화된 데이터가 복수의 키 중 어떠한 키를 기초로 암호화되었는지 여부를 알아야 한다. 이하에서는 이에 대하여 자세히 설명하기로 하되, 데이터를 암호화하는 처리부를 제1 처리부로 그리고 이러한 제1 처리부를 포함하는 암복호화 장치를 제1 암복호화 장치로, 데이터를 복호화하는 처리부를 제2 처리부로 그리고 이러한 제2 처리부를 포함하는 암복호화 장치를 제2 암복호화 장치로 지칭하기로 한다. 제1 암복호화 장치, 그리고 제2 암복호화 장치는 각각 전자 화폐 단말(100a) 또는 관리 서버용 암복호화 장치(100b)일 수 있다.Here, in order for the processing unit 120 to decrypt the encrypted data, it is necessary to know whether or not the encrypted data is encrypted based on which of the plurality of keys. Hereinafter, a description will be given in detail. A detailed description will be given below in detail. The processing unit for encrypting data is referred to as a first processing unit, the encryption / decryption apparatus including the first processing unit is referred to as a first encryption / decryption apparatus, the processing unit for decrypting data is referred to as a second processing unit The encryption / decryption apparatus including the second processing unit will be referred to as a second encryption / decryption apparatus. The first encryption / decryption device, and the second encryption / decryption device may be the electronic money terminal 100a or the encryption / decryption device 100b for the management server, respectively.

제1 처리부는 암호화 대상인 데이터에 식별자(또는 control block이라고 지칭될 수도 있음)를 결합시킨 결합 데이터를 생성한다. 식별자는 제1 암복호화 장치와 제2 암복호화 장치가 서로 간에 모두 알고 있는 값이다. 제1 처리부는 키 저장부(110)로부터 제1 키를 전달받으며, 제1 키를 기초로 결합 데이터를 암호화한다. 암호화된 결합 데이터는 제1 암복호화 장치가 제2 암복호화 장치로 송신한다.The first processing unit generates combined data obtained by combining an identifier (or a control block) with data to be encrypted. The identifier is a value that the first and second encryption / decryption devices are known to each other. The first processing unit receives the first key from the key storage unit 110, and encrypts the combined data based on the first key. The encrypted combined data is transmitted by the first encryption / decryption device to the second encryption / decryption device.

제2 암복호화 장치는 암호화된 결합 데이터를 수신한다. 제2 처리부는 암호화된 결합 데이터를 다음과 같은 과정을 통하여 복호화하되, 이는 예시적인 것이므로 본 발명의 사상이 이에 한정되는 것은 아니다. 먼저, 키 저장부(110)로부터 복수 개의 키를 하나씩 전달받는다. 전달받은 키를 기초로 암호화된 결합 데이터에 대하여 복호화를 시도한다. 복호화한 결과로부터 식별자를 분리한다. 분리된 식별자가 제2 암복호화 장치가 알고 있는 값인지 여부를 판별한다. 만약 분리된 식별자가 제2 암복호화 장치가 알고 있는 값인 경우에는 전달받은 키가 암호화에 사용된 키인 것으로 간주하며, 복호화된 결합 데이터 중에서 식별자가 분리된 나머지 데이터를 복호화된 데이터로 취급한다. 그러나, 알고 있는 값이 아닌 경우에는 알고 있는 값이 나올 때까지 키 저장부(110)로부터 새로운 키를 전달받아서 복호화 과정을 반복한다.The second encryption / decryption device receives the encrypted combined data. The second processing unit decrypts the encrypted combined data through the following process, which is an example, and thus the spirit of the present invention is not limited thereto. First, a plurality of keys are received from the key storage unit 110 one by one. And decrypts the encrypted combined data based on the received key. And separates the identifier from the decoded result. And determines whether the separated identifier is a value known to the second encryption / decryption apparatus. If the separated identifier is a value known to the second encryption / decryption apparatus, it is regarded that the received key is a key used for encryption, and the rest of the decrypted data is treated as decrypted data. However, if it is not a known value, a new key is received from the key storage unit 110 until a known value is obtained, and the decoding process is repeated.

이를 통해 살펴보면, 해커가 암호화된 결합 데이터를 복호화하기 위해서는, 복수 개의 키를 모두 알아야 하며, 추가적으로 식별자가 무엇인지도 알아야 한다. 그러나, 복수 개의 키는 전자 화폐 단말(100a) 및 관리 서버용 암복호화 장치(100b)가 물리적으로 오프라인 상에서 서로 연결되었을 때 공유되기 때문에 유출될 우려가 없으며, 식별자 또한 전자 화폐 단말(100a) 및 관리 서버용 암복호화 장치(100b)의 초기 제작 과정에서 ROM과 같은 곳에 심어지기 때문에 해커가 이를 알아낼 수 없다. 따라서, 일 실시예에 따른 전자 화폐 단말(100a) 및 관리 서버용 암복호화 장치(100b)를 사용하면 해킹의 위험을 원천적으로 차단시킬 수 있다.If you look at it, in order for a hacker to decrypt encrypted encrypted data, you need to know all of the keys, plus know what the identifier is. However, since a plurality of keys are shared when the electronic money terminal 100a and the encryption / decryption apparatus 100b for management server are physically connected to each other in the offline state, there is no possibility of leakage, and the identifier is also used for the electronic money terminal 100a and the management server Since the encryption / decryption apparatus 100b is planted in the ROM in the initial production process, it can not be detected by the hacker. Therefore, the use of the electronic money terminal 100a and the management server-use encryption / decryption apparatus 100b according to the embodiment can prevent the risk of hacking.

한편, 이하에서는 식별자에 대하여 보다 자세하게 살펴보기로 한다. 전술한 바와 같이 식별자는 전자 화폐 단말(100a) 및 관리 서버용 암복호화 장치(100b)가 서로 간에 모두 알고 있는 값이다. 도 6a는 식별자(122)가 데이터(121)와 결합된, 결합 데이터를 개념적으로 도시한 도면이다. 도 6a를 참조하면, 식별자(122)는 기 설정된 개수, 예를 들면 n개의 비트로 구성될 수 있다. Hereinafter, the identifiers will be described in more detail. As described above, the identifier is a value that the electronic money terminal 100a and the management server encryption / decryption apparatus 100b know together. FIG. 6A is a conceptual illustration of the combined data, in which the identifier 122 is combined with the data 121. FIG. Referring to FIG. 6A, the identifier 122 may be composed of a predetermined number, for example, n bits.

이러한 n개의 비트는 전자 화폐 단말(100a) 및 관리 서버용 암복호화 장치(100b)가 서로 알고 있는 약속된 규칙에 의하여 그 값이 채워질 수 있다. 도 6b는 식별자를 구성하는 n개의 비트가 전자 화폐 단말(100a) 및 관리 서버용 암복호화 장치(100b)가 서로 알고 있는 약속된 규칙에 의하여 그 값이 채워지는 것을 개념적으로 도시한 도면이다. 이하에서는 이러한 약속된 규칙에 대하여 보다 자세하게 살펴보기로 한다. These n bits can be filled in by the agreed rule that the electronic money terminal 100a and the management server encryption / decryption apparatus 100b know each other. 6B is a diagram conceptually showing that the n bits constituting the identifier are filled with the values according to the agreed rules which are known to each other by the electronic money terminal 100a and the management server encryption / decryption apparatus 100b. Hereinafter, these promised rules will be discussed in more detail.

먼저, 전자 화폐 단말(100a) 및 관리 서버용 암복호화 장치(100b)가 서로 알고 있는 기 설정된 적어도 두 개 이상의 키를 이용하여, n개의 비트의 특정 위치에 특정 값을 할당한다. 예를 들면, 전자 화폐 단말(100a) 및 관리 서버용 암복호화 장치(100b)가 50개의 키, 즉 제1 키부터 제50 키까지 서로 알고 있다고 가정하자. 그리고 제1 키를 n으로 모듈러 연산을 한 값을 제1 값이라고 하고 제2 키를 2로 모듈러 연산을 한 값을 제2 값이라고 하면, n개의 비트 중 제1 값이 나타내는 번째의 비트에 제2 값을 할당한다. 다음으로, 제3 키를 n으로 모듈러 연산을 한 값을 제3 값이라고 하고 제4 키를 2로 모듈러 연산을 한 값을 제4 값이라고 하면, n개의 비트 중 제3 값이 나타내는 번째의 비트에 제4 값을 할당한다. 이와 같은 방식으로 50개의 키를 이용하여 n개의 비트의 특정 위치에 특정 값을 할당한다. 이 때, 이미 값이 할당된 위치에 또 값을 할당해야 한다면, 뒤에 할당된 값을 해당 위치에 할당한다. 이 후, n개의 비트 중 값이 할당되지 않은 비트가 있을 수 있다. 값이 할당되지 않은 비트에는 난수 생성부(150)에서 생성한 비트를 할당한다. 도 6b는 전술한 과정에 의하여 식별자를 생성한 것을 개념적으로 도시한 도면이다. 도 6b를 참조하면, n개의 비트 중 적어도 두 개 이상의 키를 이용하여 값이 할당되는 비트는 b로 표시되고, 난수 생성부(150)가 생성한 난수가 할당되는 비트는 a로 표시된다.First, the electronic money terminal 100a and the management server encryption / decryption apparatus 100b allocate specific values to specific positions of n bits using at least two predetermined keys that are known to each other. For example, assume that the electronic money terminal 100a and the management server encryption / decryption apparatus 100b know 50 keys, that is, the first key to the 50th key. If a value obtained by performing a modulo operation on the first key by n is a first value and a value obtained by performing a modulo operation on a second key by 2 is a second value, 2 < / RTI > Next, if a value obtained by performing a modulo operation on the third key by n is a third value and a value obtained by performing a modulo operation on the fourth key by 2 is a fourth value, then the third bit of the n bits To the fourth value. In this manner, 50 keys are used to assign specific values to specific positions of n bits. At this time, if another value is to be assigned to a position to which the value has already been assigned, the assigned value is assigned to the next position. Thereafter, there may be a bit among n bits that is not assigned a value. The bit generated by the random number generation unit 150 is allocated to a bit to which a value is not allocated. FIG. 6B is a view conceptually showing the generation of an identifier by the above-described process. Referring to FIG. 6B, a bit to which a value is assigned using at least two keys among n bits is represented by b, and a bit to which a random number generated by the random number generation unit 150 is allocated is represented by a.

이와 같이 제1 처리부에 의하여 생성된 식별자는, 제2 처리부에 의해서도 동일한 알고리즘으로 도출할 수 있다. 즉, 제2 암복호화 장치는 제1 암복호화 장치와 동일한 알고리즘으로 식별자를 생성한다. 이 후, 제1 암복호화 장치로부터 암호화된 결합 데이터를 수신하면, 제2 처리부는 암호화된 결합 데이터를 복수 개의 키를 이용하여 복호화를 시도한다. 복호화를 시도한 결과 제2 처리부는 결합 데이터로부터 식별자를 분리한다. 이 후, 분리된 식별자 중에서 값이 할당되는 비트 위치인 b에 대해서만 자신이 생성한 식별자와 비교를 한다. 비교 결과 값이 할당되는 비트 위치인 b에 대해서 같은 값이 나오면, 해당 키가 암호화에 사용된 키인 것으로 간주한다.The identifiers generated by the first processing unit can be derived by the same algorithm by the second processing unit. That is, the second encryption / decryption apparatus generates an identifier by the same algorithm as that of the first encryption / decryption apparatus. Thereafter, upon receiving the encrypted combined data from the first encryption / decryption apparatus, the second processing unit attempts to decrypt the encrypted combined data using the plurality of keys. As a result of attempting decoding, the second processing unit separates the identifier from the combined data. After that, only the bit position b to which the value is allocated among the separated identifiers is compared with the identifier generated by itself. If the same value is found for the bit position b where the comparison result value is assigned, the key is regarded as the key used for encryption.

이와 같이 생성된 식별자를 이용할 경우, 해커는 복수 개의 키 전부, 그리고 식별자 생성에 사용되는 적어도 두 개 이상의 키 및 식별자를 생성할 때 사용되는 알고리즘을 모두 알아야만이 데이터를 해킹할 수 있다. 그러나, 전술한 바와 같이 키는 전자 화폐 단말(100a) 및 관리 서버용 암복호화 장치(100b)가 하드웨어적으로 오프라인 상에서 연결될 때 공유되기 때문에 유출될 우려가 없으며, 식별자 또한 암복호화 장치(100)의 초기 제작 과정에서 ROM과 같은 곳에 심어지기 때문에 해커가 이를 알아낼 수 없다. 따라서, 일 실시예에 따르면 해킹의 위험을 원천적으로 차단할 수 있다.When using the generated identifier, the hacker can hack the data only if he or she knows all of the plurality of keys, and at least two algorithms used when generating the at least two keys and identifiers used in generating the identifier. However, as described above, since the key is shared when the electronic money terminal 100a and the management server encryption / decryption apparatus 100b are connected in hardware offline, there is no fear that the key will be leaked, Because it is planted in the same place as the ROM during the production process, it can not be detected by hackers. Thus, according to one embodiment, the risk of hacking can be fundamentally blocked.

한편, 도 5를 참조하면, 데이터 포트부(130)는 데이터 버스(125)를 통해서 처리부(125)와 연결된다. 데이터 버스(125)란 데이터가 송수신되는 경로를 의미한다. 키 저장부(110)는 처리부(120)와 키 버스(115)를 통해서 연결된다. 키 버스(115)란 키 저장부(110)에 저장된 키가 처리부(120)로 전달되는 경로를 의미한다.5, the data port unit 130 is connected to the processing unit 125 through the data bus 125. [ The data bus 125 is a path through which data is transmitted and received. The key storage unit 110 is connected to the processing unit 120 through a key bus 115. The key bus 115 is a path through which a key stored in the key storage unit 110 is transmitted to the processing unit 120. [

이 때, 키 저장부(110)는 키 버스(115)를 통해서 처리부(120)와는 연결되지만, 데이터 포트부(130)와는 직접적으로 연결되지 않는다. 따라서, 외부에서는 데이터 포트부(130)를 통해서 키 저장부(110)에 직접 접근할 수 없으며, 그 결과 외부에서는 키 저장부(110)에 저장된 복수 개의 키에 접근할 수 없다.At this time, the key storage unit 110 is connected to the processing unit 120 through the key bus 115, but is not directly connected to the data port unit 130. Therefore, it is not possible to directly access the key storage unit 110 through the data port unit 130 from the outside, and as a result, it is impossible to access a plurality of keys stored in the key storage unit 110 outside.

다시 도 2를 참조하면, 위조 방지부(103)는 전자 화폐 단말(100a)의 잔액이 위조되는 것을 방지하기 위한 구성이다. 이를 위하여, 예컨데 위조 방지부(103)는 처리부(120)에 의하여 금액 저장부(101)에 저장된 잔액이 갱신될 때마다 그 값을 정해진 규칙에 따라 증가시키는 변수를 갖는다. 변수는 잔액이 갱신될 때마다 그 값이 예컨데 1씩 증가할 수 있다. 도 3a는 금액 저장부(101)에 저장된 잔액이 \50,000이면서 위조 방지부(103)를 구성하는 변수의 값이 k인 것을 예시적으로 도시한 도면이다.Referring again to FIG. 2, the anti-falsification unit 103 is a structure for preventing the balance of the electronic money terminal 100a from being falsified. For this purpose, for example, the anti-falsification unit 103 has a variable for increasing the value of the balance stored in the amount storage unit 101 by the processing unit 120 according to a predetermined rule. The variable can be increased by, for example, 1 each time the balance is updated. 3A is a diagram exemplarily showing that the balance stored in the amount storage unit 101 is \ 50,000 and the value of the variable constituting the anti-falsification unit 103 is k.

위조 방지부(103)에 의하여 전자 화폐 단말(100a)의 잔액이 위조되지 않도록 하는 것은 도 3b를 참조하여 보다 자세하게 살펴보기로 한다. 도 3b를 참조하면, 전자 화폐 단말(100a)의 현재 잔액은 제1 잔액(S10)이다. 전자 화폐 단말(100a)이 전자 화폐 사용처(10a)에서 일정 금액만큼 사용되는 경우, 현재 잔액인 제1 잔액(S10)은 관리 서버(10b)로 송신(S11)되며, 이와 함께 도 3b에는 도시되지 않았지만 전자 화폐 사용처(10a)에서 일정 금액이 사용되었다는 정보 또한 관리 서버(10b)로 송신된다.[0050] The counterfeit preventing unit 103 prevents the balance of the electronic money terminal 100a from being forged will be described in more detail with reference to FIG. 3B. Referring to FIG. 3B, the current balance of the electronic money terminal 100a is the first balance S10. When the electronic money terminal 100a is used for a predetermined amount in the electronic money using place 10a, the first balance S10 as the current balance is transmitted (S11) to the management server 10b and is not shown in FIG. 3b But information indicating that a certain amount of money has been used in the electronic money using place 10a is also transmitted to the management server 10b.

관리 서버(10b)는 제1 잔액(S10) 및 전자 화폐 사용처(10a)에서 사용된 일정 금액을 기초로 전자 화폐 단말(100a)의 제2 잔액을 산출한다(S12). 그리고 관리 서버(10b)는 이러한 제2 잔액에 변수 k를 부가한 뒤 암호화한다. 제2 잔액과 변수 k는 암호화되어 전자 화폐 단말(100a)로 송신된다(S13).The management server 10b calculates the second balance of the electronic money terminal 100a based on the first balance S10 and the fixed amount used in the electronic money using place 10a (S12). Then, the management server 10b adds the variable k to the second balance and encrypts it. The second balance and the variable k are encrypted and transmitted to the electronic money terminal 100a (S13).

전자 화폐 단말(100a)은 암호화된 데이터를 복호화한다. 이 후, 복호화된 데이터에 포함된 잔액을 기초로 금액 저장부(101)에 저장된 현재의 잔액을 제1 잔액에서 제2 잔액으로 갱신한다(S14). 또한, 복호화된 데이터에 포함된 변수 k를 기초로, 이러한 변수 k에 1을 더한 k+1을 위조 방지부(103)에 저장한다(S14).The electronic money terminal 100a decrypts the encrypted data. Thereafter, the current balance stored in the amount storage unit 101 is updated from the first balance to the second balance based on the balance included in the decoded data (S14). Further, based on the variable k included in the decrypted data, k + 1 obtained by adding 1 to the variable k is stored in the anti-falsification unit 103 (S14).

전자 화폐 단말(100a)은 제2 잔액 및 변수 k+1을 암호화하여 관리 서버(10b)로 송신한다(S15).The electronic money terminal 100a encrypts the second balance and the variable k + 1 and transmits it to the management server 10b (S15).

관리 서버(10b)는 관리 서버용 암복호화 장치(100b)를 통해 암호화된 데이터를 복호화한다. 이 후, 복호화된 데이터에서 전자 화폐 단말(100a)의 잔액이 제2 잔액이 맞는지를 확인하며, 변수 k가 값이 +1만큼 증가한 k+1인지를 확인한다.The management server 10b decrypts the encrypted data through the encryption / decryption device for management server 100b. Then, it is confirmed whether the balance of the electronic money terminal 100a is the second balance from the decrypted data, and it is confirmed whether the variable k is k + 1 which is increased by +1.

이를 통해 살펴보면, 잔액이 갱신될 때마다 위조 방지부(103)의 변수 k의 값이 정해진 규칙에 따라 증가되어야 한다. 아울러, 금액 저장부(101)는 금액을 저장하는 1개의 공간만을 갖는다. 따라서, 갱신되어야 하는 잔액을 관리 서버(10b)가 전자 화폐 단말(100a)로 송신하였을 때, 전자 화폐 단말(100a)이 잔액을 갱신하지 않은 채로 관리 서버(10b)가 송신한 잔액을 그대로 관리 서버(10b)로 송신(반사)만함으로써 악의적으로 잔액을 조작하는 행위가 차단될 수 있다.As a result, whenever the balance is updated, the value of the variable k of the anti-falsification unit 103 must be increased according to a predetermined rule. In addition, the amount storage unit 101 has only one space for storing money. Therefore, when the management server 10b transmits the balance to be updated to the electronic money terminal 100a, the balance transmitted from the management server 10b without the electronic money terminal 100a having updated the balance is directly transferred to the management server 10b, (Reflected) by the user 10b, malicious manipulation of the balance may be blocked.

보호부(160)는 전자 화폐 단말(100a)에 비정상적인 것으로 정의된 행위가 가해지는 것을 인식하며, 이러한 행위가 가해지는 것이 인식되면 키 저장부(110)에 저장된 복수 개의 키를 삭제한다. 비정상적인 것으로 정의된 행위에는, 예를 들면 키 저장부(110)에 저장된 복수 개의 키를 전자기적으로 복제하기 위한 시도, 진동이나 열 등을 감지하는 시도 등일 수 있으나 이에 한정되는 것은 아니다.The protection unit 160 recognizes that an action defined as abnormal is applied to the electronic money terminal 100a and deletes a plurality of keys stored in the key storage unit 110 when it is recognized that the action is applied. Actions defined as abnormal may include, but are not limited to, attempts to electromagnetically replicate a plurality of keys stored in the key storage unit 110, attempts to detect vibrations or heat, and the like.

접속부(190)는 전자 화폐 단말(100a)와 전자 화폐 사용처(10a)를 연결시킨다. 이러한 접속부(190)는 하드웨어적인 커넥터이거나 이와 달리 무선 통신(블루투스, NFC, 와이파이 등) 모듈일 수도 있으나 이에 한정되는 것은 아니다.The connection unit 190 connects the electronic money terminal 100a and the electronic money using place 10a. The connection unit 190 may be a hardware connector or a wireless communication (Bluetooth, NFC, WiFi, etc.) module, but is not limited thereto.

도 7은 본 발명의 일 실시예에 따른 전자 화폐를 제공하는 방법의 절차를 도시한 도면으로, 전자 화폐를 제공하는 방법은 전술한 전자 화폐 단말(100a)에 의하여 수행될 수 있다. 아울러, 이하에서 설명할 전자 화폐를 제공하는 방법은 실시예에 따라서 이하에서 설명할 적어도 하나 이상의 단계가 수행되지 않거나 언급되지 않은 새로운 단계가 추가로 수행될 수도 있으며, 그 순서가 변경될 수도 있다.FIG. 7 is a flowchart illustrating a method of providing electronic money according to an embodiment of the present invention. The method of providing electronic money may be performed by the electronic money terminal 100a described above. In addition, a method of providing electronic money to be described below may be carried out in accordance with an embodiment, and a new step may be performed in which at least one step is not performed or is not mentioned, and the order may be changed.

도 7을 참조하면, 전자 화폐를 제공하는 방법은 전자 화폐 단말(100a)을 관리하는 관리 서버(100b)로부터, 전자 화폐 단말(100a)에 저장된 잔액을 갱신하는 잔액 관련 데이터를 암호화된 상태로 수신하는 단계(S100)와, 기 저장된 복수 개의 키 중 어느 하나인 제1 키를 기초로 암호화된 잔액 관련 데이터를 복호화하는 단계(S110)와, 복호화된 잔액 관련 데이터를 기초로 잔액을 갱신시키는 단계(S120)를 포함한다. 여기서, 복수 개의 키는 관리 서버(100b)가 송신할 데이터를 암호화하거나 관리 서버(100b)가 수신한 암호화된 데이터를 복호화하는 관리 서버용 암복호화 장치(10b)가 관리 서버(100b)와 연결될 때, 전자 화폐 단말(100a)에 포함된 연결부(140)가 관리 서버용 암복호화 장치(10b)에 포함된 연결부와 물리적으로 연결되면 생성되어 저장되는 것을 특징으로 한다.Referring to FIG. 7, a method of providing electronic money includes receiving balance-related data for updating the balance stored in the electronic money terminal 100a in an encrypted state from the management server 100b managing the electronic money terminal 100a (S110) of decrypting the encrypted balance-related data based on the first key, which is one of the previously stored keys, and a step of updating the balance based on the decrypted balance-related data S120). When a management server 100b encrypts data to be transmitted by the management server 100b or decrypts encrypted data received by the management server 100b, when the encryption / decryption device 10b for management server is connected to the management server 100b, When the connection unit 140 included in the electronic money terminal 100a is physically connected to the connection unit included in the management server for the management server 10b, the generated connection unit 140 is created and stored.

한편, 전자 화폐를 제공하는 방법의 구체적인 내용은 전자 화폐 단말(100a)을 설명하면서 이미 상세하게 설명하였는바, 이에 대해서는 설명을 생략하기로 한다.Meanwhile, details of the method of providing electronic money have been described in detail while explaining the electronic money terminal 100a, and a description thereof will be omitted.

이상에서 살펴본 바와 같이, 본 발명의 실시예에 따르면 데이터의 암복호화에 사용되는 키를 분배하여 공유시키는 과정에서, 이러한 키가 해킹될 가능성이 원천적으로 차단된다. 따라서, 이를 이용하여 전자 화폐에 대한 해킹 가능성을 원천적으로 차단시킬 수 있다.As described above, according to the embodiment of the present invention, in the process of distributing and sharing keys used for encryption / decryption of data, the possibility that such keys are hacked is fundamentally blocked. Therefore, the possibility of hacking the electronic money can be fundamentally blocked by using it.

본 발명에 첨부된 블록도의 각 블록과 흐름도의 각 단계의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수도 있다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 블록도의 각 블록 또는 흐름도 각 단계에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 블록도의 각 블록 및 흐름도의 각 단계에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.Combinations of each step of the flowchart and each block of the block diagrams appended to the present invention may be performed by computer program instructions. These computer program instructions may be loaded into a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus so that the instructions, which may be executed by a processor of a computer or other programmable data processing apparatus, And means for performing the functions described in each step are created. These computer program instructions may also be stored in a computer usable or computer readable memory capable of directing a computer or other programmable data processing apparatus to implement the functionality in a particular manner so that the computer usable or computer readable memory It is also possible for the instructions stored in the block diagram to produce a manufacturing item containing instruction means for performing the functions described in each block or flowchart of the block diagram. Computer program instructions may also be stored on a computer or other programmable data processing equipment so that a series of operating steps may be performed on a computer or other programmable data processing equipment to create a computer- It is also possible that the instructions that perform the processing equipment provide the steps for executing the functions described in each block of the block diagram and at each step of the flowchart.

또한, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들 또는 단계들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.Also, each block or each step may represent a module, segment, or portion of code that includes one or more executable instructions for executing the specified logical function (s). It should also be noted that in some alternative embodiments, the functions mentioned in the blocks or steps may occur out of order. For example, two blocks or steps shown in succession may in fact be performed substantially concurrently, or the blocks or steps may sometimes be performed in reverse order according to the corresponding function.

이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
The foregoing description is merely illustrative of the technical idea of the present invention and various changes and modifications may be made by those skilled in the art without departing from the essential characteristics of the present invention. Therefore, the embodiments disclosed in the present invention are intended to illustrate rather than limit the scope of the present invention, and the scope of the technical idea of the present invention is not limited by these embodiments. The scope of protection of the present invention should be construed according to the following claims, and all technical ideas within the scope of equivalents should be construed as falling within the scope of the present invention.

10a: 전자 화폐 사용처
100a: 전자 화폐 단말
10b: 관리 서버
100b: 관리 서버용 암복호화 장치
10a: Where to use electronic money
100a: Electronic money terminal
10b: management server
100b: encryption / decryption device for management server

Claims (14)

전자 화폐 단말로서,
상기 전자 화폐 단말의 잔액을 저장하는 금액 저장부와,
상기 전자 화폐 단말을 관리하는 관리 서버에 대해서, 상기 관리 서버와 송수신하는 데이터가 입출력되는 데이터 포트부와,
기 설정된 복수 개의 키를 저장하는 키 저장부와,
상기 복수 개의 키 중 어느 하나인 제1 키를 기초로 상기 관리 서버로부터 상기 잔액을 갱신하는 잔액 관련 데이터가 암호화된 상태로 수신되면 이를 복호화하고, 상기 복호화된 잔액 관련 데이터를 기초로 상기 금액 저장부에 저장된 잔액이 갱신되도록 처리하는 처리부와,
상기 관리 서버가 송신할 데이터를 암호화하거나 상기 관리 서버가 수신한 암호화된 데이터를 복호화하는 관리 서버용 암복호화 장치가 상기 관리 서버와 연결될 때, 상기 전자 화폐 단말을 상기 관리 서버용 암복호화 장치에 포함된 연결부와 물리적으로 연결시키는 연결부를 포함하며,
상기 복수 개의 키는,
상기 전자 화폐 단말에 포함된 연결부가 상기 관리 서버용 암복호화 장치에 포함된 연결부와 물리적으로 연결되면 생성되어 상기 키 저장부에 저장되는
전자 화폐 단말.
As an electronic money terminal,
An amount storage unit for storing the balance of the electronic money terminal,
A management server for managing the electronic money terminal, the management server comprising: a data port unit for inputting / outputting data to /
A key storage unit for storing a plurality of predetermined keys,
Related data for updating the balance from the management server on the basis of the first key, which is any one of the plurality of keys, is received in an encrypted state, decrypts the balance-related data, and, based on the decrypted balance- To be updated,
When the management server encryption / decryption device for encrypting data to be transmitted by the management server or decrypting the encrypted data received by the management server is connected to the management server, the electronic money terminal is connected to a connection unit And a connection portion that physically connects the connection portion
Wherein the plurality of keys comprises:
When a connection unit included in the electronic money terminal is physically connected to a connection unit included in the management server-side encryption / decryption apparatus, the generated connection unit is stored in the key storage unit
Electronic money terminal.
제 1 항에 있어서,
상기 금액 저장부는,
상기 금액을 저장하는 공간이 1개인 것을 특징으로 하는
전자 화폐 단말.
The method according to claim 1,
The amount-
And the space for storing the amount of money is one
Electronic money terminal.
제 1 항에 있어서,
상기 처리부는 상기 제1 키를 기초로 상기 잔액을 암호화하고,
상기 데이터 포트부는 상기 암호화된 잔액을 출력하여 상기 관리 서버로 송신되도록 하는
전자 화폐 단말.
The method according to claim 1,
The processing unit encrypts the balance based on the first key,
And the data port unit outputs the encrypted balance to be transmitted to the management server
Electronic money terminal.
제 1 항에 있어서,
상기 처리부에 의하여 상기 금액 저장부에 저장된 잔액이 갱신될 때마다 그 값이 기 정의된 규칙에 따라 변화하는 변수를 갖는 위조 방지부를 더 포함하며,
상기 처리부는,
상기 제1 키를 기초로 상기 잔액 및 상기 변수를 암호화하며,
상기 데이터 포트부는 상기 암호화된 잔액 및 상기 변수를 출력하여 상기 관리 서버로 송신되도록 하는
전자 화폐 단말.
The method according to claim 1,
Further comprising a forgery prevention unit having a variable whose value changes according to a predefined rule every time the balance stored in the amount storage unit is updated by the processing unit,
Wherein,
Encrypt the balance and the variable based on the first key,
And the data port unit outputs the encrypted balance and the variable to be transmitted to the management server
Electronic money terminal.
제 1 항에 있어서,
상기 키 저장부는,
상기 제1 키가 상기 처리부로 전달되는 경로인 키 버스(key bus)를 통해서 상기 처리부와 연결되지만, 상기 키 버스를 통해서 상기 데이터 포트부와는 연결되지 않는
전자 화폐 단말.
The method according to claim 1,
The key storage unit stores,
The first key is connected to the processing unit through a key bus that is a path to be transmitted to the processing unit, but is not connected to the data port unit through the key bus
Electronic money terminal.
제 1 항에 있어서,
상기 키 저장부와 상기 관리 서버용 암복호화 장치에 포함된 키 저장부는,
동일한 값의 복수 개의 키를 저장하는
전자 화폐 단말.
The method according to claim 1,
The key storage unit included in the key storage unit and the encryption /
Store a plurality of keys of the same value
Electronic money terminal.
제 1 항에 있어서,
난수를 생성하는 난수 생성부를 더 포함하며,
상기 복수 개의 키는,
상기 난수 생성부에 의하여 생성된 난수를 기초로 생성되는
전자 화폐 단말.
The method according to claim 1,
And a random number generator for generating a random number,
Wherein the plurality of keys comprises:
And generating a random number based on the random number generated by the random number generating unit
Electronic money terminal.
제 1 항에 있어서,
상기 처리부는,
상기 잔액을, 상기 전자 화폐 단말과 상기 관리 서버용 암복호화 장치가 모두 알고 있는 식별자와 결합시켜서 결합 데이터를 생성한 뒤, 상기 결합 데이터를 상기 제1 키를 기초로 암호화하고,
상기 데이터 포트부는,
상기 결합 데이터를 출력하여 상기 관리 서버로 송신되도록 하는
전자 화폐 단말.
The method according to claim 1,
Wherein,
Combining the balance with identifiers known by both the electronic money terminal and the management server encryption / decryption device to generate combined data, encrypting the combined data based on the first key,
Wherein the data port unit comprises:
And outputs the combined data to be transmitted to the management server
Electronic money terminal.
제 8 항에 있어서,
상기 처리부는,
상기 복수 개의 키 중 상기 전자 화폐 단말과 상기 관리 서버용 암복호화 장치가 모두 알고 있는 기 설정된 적어도 두 개 이상의 키를 기초로 상기 식별자를 생성하는
전자 화폐 단말.
9. The method of claim 8,
Wherein,
The identifier is generated based on at least two predetermined keys that are both known to the electronic money terminal and the management server for the management server among the plurality of keys
Electronic money terminal.
제 8 항에 있어서,
난수를 생성하는 난수 생성부를 더 포함하고,
상기 식별자는,
기 설정된 개수의 복수 개의 비트로 구성되며, 상기 복수 개의 비트 중 일부의 비트는 적어도 두 개 이상의 키에 의하여 값이 정해지고, 상기 복수 개의 비트 중 나머지 비트는 상기 난수 생성부에 의하여 생성된 난수에 의하여 값이 정해지는
전자 화폐 단말.
9. The method of claim 8,
And a random number generator for generating a random number,
Wherein the identifier comprises:
Wherein a number of bits of a predetermined number is defined by at least two or more keys and the remaining bits of the plurality of bits are generated by a random number generated by the random number generator The value is determined
Electronic money terminal.
제 1 항에 있어서,
상기 전자 화폐 단말에 비정상적인 것으로 정의된 행위가 가해지는 것을 인식하며, 상기 행위가 가해지는 것이 인식되면 상기 키 저장부에 저장된 상기 복수 개의 키를 삭제하는 보호부를 더 포함하는
전자 화폐 단말.
The method according to claim 1,
Further comprising a protection unit that recognizes that an action defined as abnormal is applied to the electronic money terminal and deletes the plurality of keys stored in the key storage unit when it is recognized that the action is applied
Electronic money terminal.
제 1 항에 있어서,
상기 복수 개의 키는 새로운 복수 개의 키로 변경 가능한
전자 화폐 단말.
The method according to claim 1,
The plurality of keys may be changed into a plurality of new keys
Electronic money terminal.
제 12 항에 있어서,
상기 복수 개의 키가 상기 새로운 복수 개의 키로 변경될 때,
상기 전자 화폐 단말과 상기 관리 서버용 암복호화 장치가 서로 알고 있는 기 설정된 값을 기초로 상기 새로운 복수 개의 키가 생성되어 변경되는
전자 화폐 단말.
13. The method of claim 12,
When the plurality of keys are changed to the new plurality of keys,
Wherein the new plurality of keys are generated and changed based on a preset value that is known between the electronic money terminal and the management server-use encryption /
Electronic money terminal.
전자 화폐 단말에 의하여 전자 화폐를 제공하는 방법으로서,
상기 전자 화폐 단말을 관리하는 관리 서버로부터, 상기 전자 화폐 단말에 저장된 잔액을 갱신하는 잔액 관련 데이터를 암호화된 상태로 수신하는 단계와,
기 저장된 복수 개의 키 중 어느 하나인 제1 키를 기초로 상기 암호화된 잔액 관련 데이터를 복호화하는 단계와,
상기 복호화된 잔액 관련 데이터를 기초로 상기 잔액을 갱신시키는 단계를 포함하며,
상기 복수 개의 키는,
상기 관리 서버가 송신할 데이터를 암호화하거나 상기 관리 서버가 수신한 암호화된 데이터를 복호화하는 관리 서버용 암복호화 장치가 상기 관리 서버와 연결될 때, 상기 전자 화폐 단말에 포함된 연결부가 상기 관리 서버용 암복호화 장치에 포함된 연결부와 물리적으로 연결되면 생성되어 저장되는
전자 화폐를 제공하는 방법
A method for providing electronic money by an electronic money terminal,
Receiving, in an encrypted state, balance-related data for updating a balance stored in the electronic money terminal from a management server managing the electronic money terminal;
Decrypting the encrypted balance-related data based on a first key, which is one of a plurality of previously stored keys,
And updating the balance based on the decrypted balance related data,
Wherein the plurality of keys comprises:
When the management server encryption / decryption device for encrypting data to be transmitted by the management server or decrypting the encrypted data received by the management server is connected to the management server, a connection unit included in the electronic money terminal is connected to the management server encryption / Is created and stored when it is physically connected to the connection part included in
How to provide electronic money
KR1020160035563A 2016-01-15 2016-03-24 Electronic money terminal and method for providing elecronic money using the same KR101810165B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20160005635 2016-01-15
KR1020160005635 2016-01-15

Publications (2)

Publication Number Publication Date
KR20170085926A true KR20170085926A (en) 2017-07-25
KR101810165B1 KR101810165B1 (en) 2018-01-25

Family

ID=59426783

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160035563A KR101810165B1 (en) 2016-01-15 2016-03-24 Electronic money terminal and method for providing elecronic money using the same

Country Status (1)

Country Link
KR (1) KR101810165B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112765615A (en) * 2020-12-07 2021-05-07 北京百度网讯科技有限公司 Data storage method and device and electronic equipment

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101479290B1 (en) * 2014-08-19 2015-01-05 (주)세이퍼존 Agent for providing security cloud service, security token device for security cloud service

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112765615A (en) * 2020-12-07 2021-05-07 北京百度网讯科技有限公司 Data storage method and device and electronic equipment

Also Published As

Publication number Publication date
KR101810165B1 (en) 2018-01-25

Similar Documents

Publication Publication Date Title
US11615411B2 (en) POS system with white box encryption key sharing
RU2701480C2 (en) Cryptographic system for sharing keys
JP6449970B2 (en) IoT device
KR101834504B1 (en) Apparatus and method for encrypting and decrypting
JP2017519457A (en) Device for determining the shared key
JP6034998B1 (en) System for sharing encryption keys
JP2016526851A (en) System for sharing encryption keys
KR101810165B1 (en) Electronic money terminal and method for providing elecronic money using the same
EP3193487B1 (en) Encryption/decryption device and encryption/decryption method
WO2017025597A1 (en) Key sharing device and method
KR101829423B1 (en) Apparatus for encrypting or decrypting and method for encrypting or decrypting using the same
KR101834522B1 (en) Apparatus for confirming data and method for confirming data using the same
US11075756B2 (en) Method of encryption, method of decryption, corresponding computer device and program
KR101834514B1 (en) Apparatus for providing security for communication between customer terminal and service providing terminal
KR101834515B1 (en) Apparatus for encrypting and decrypting including input unit

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
GRNT Written decision to grant