KR102370162B1 - 가상코드 기반의 제어시스템, 방법 및 프로그램, 제어디바이스 및 제어신호생성수단 - Google Patents

가상코드 기반의 제어시스템, 방법 및 프로그램, 제어디바이스 및 제어신호생성수단 Download PDF

Info

Publication number
KR102370162B1
KR102370162B1 KR1020200010943A KR20200010943A KR102370162B1 KR 102370162 B1 KR102370162 B1 KR 102370162B1 KR 1020200010943 A KR1020200010943 A KR 1020200010943A KR 20200010943 A KR20200010943 A KR 20200010943A KR 102370162 B1 KR102370162 B1 KR 102370162B1
Authority
KR
South Korea
Prior art keywords
code
virtual
command
control signal
virtual code
Prior art date
Application number
KR1020200010943A
Other languages
English (en)
Other versions
KR20200016307A (ko
Inventor
유창훈
Original Assignee
주식회사 센스톤
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 센스톤 filed Critical 주식회사 센스톤
Publication of KR20200016307A publication Critical patent/KR20200016307A/ko
Priority to KR1020220025698A priority Critical patent/KR102417138B1/ko
Application granted granted Critical
Publication of KR102370162B1 publication Critical patent/KR102370162B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q9/00Arrangements in telecontrol or telemetry systems for selectively calling a substation from a main station, in which substation desired apparatus is selected for applying a control signal thereto or for obtaining measured values therefrom
    • H04Q9/04Arrangements for synchronous operation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • G06Q20/367Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
    • G06Q20/3672Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes initialising or reloading thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/606Protecting data by securing the transmission between two devices or processes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • 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
    • G06Q20/0658Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash e-cash managed locally
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • G06Q20/326Payment applications installed on the mobile devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • G06Q20/327Short range or proximity payments by means of M-devices
    • G06Q20/3274Short range or proximity payments by means of M-devices using a pictured code, e.g. barcode or QR-code, being displayed on the M-device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • G06Q20/327Short range or proximity payments by means of M-devices
    • G06Q20/3278RFID or NFC payments by means of M-devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/351Virtual cards
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/354Card activation or deactivation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • G06Q20/367Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
    • G06Q20/3674Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes involving authentication
    • 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
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3821Electronic credentials
    • 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/385Payment protocols; Details thereof using an alias or single-use codes
    • 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/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/409Device specific authentication in transaction processing
    • G06Q20/4093Monitoring of device authentication
    • 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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • H04L63/0838Network architectures or network communication protocols for network security for authentication of entities using passwords using one-time-passwords
    • 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/321Cryptographic 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 a third party or a trusted authority
    • H04L9/3213Cryptographic 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 a third party or a trusted authority using tickets or tokens, e.g. Kerberos
    • 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/3226Cryptographic 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 using a predetermined code, e.g. password, passphrase or PIN
    • H04L9/3228One-time or temporary data, i.e. information which is sent for every authentication or authorization, e.g. one-time-password, one-time-token or one-time-key
    • 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/3234Cryptographic 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 additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/03Protecting confidentiality, e.g. by encryption
    • H04W12/033Protecting confidentiality, e.g. by encryption of the user plane, e.g. user's traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/102Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying security measure for e-commerce
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2209/00Arrangements in telecontrol or telemetry systems
    • H04Q2209/40Arrangements in telecontrol or telemetry systems using a wireless architecture

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Accounting & Taxation (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Finance (AREA)
  • General Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Technology Law (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Selective Calling Equipment (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephone Function (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Transfer Between Computers (AREA)
  • Automation & Control Theory (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명은 가상코드 기반의 제어시스템, 방법 및 프로그램, 제어디바이스 및 제어신호생성수단에 관한 것이다.
본 발명의 일실시예에 따른 가상코드를 포함하는 제어신호 기반 제어방법은, 제어모듈이 제어신호생성수단으로부터 특정시점에 생성된 제어신호를 수신하되, 상기 제어신호는 특정한 가상코드를 포함하고, 상기 가상코드는 복수의 세부코드를 특정한 규칙에 따라 결합하여 생성되는 것인, 제어신호 수신단계; 상기 제어모듈이 상기 가상코드에 포함된 복수의 세부코드를 추출하는 단계; 및 상기 제어모듈이 복수의 세부코드를 기반으로 특정한 명령어가 포함된 저장위치를 탐색하는 명령어 탐색단계;를 포함하고, 상기 가상코드는 동일시점에 상기 명령어에 따라 상이하게 생성되는 것이며, 단위카운트마다 상이하게 생성되는 것이고, 상기 제어모듈은 제어디바이스 내에 내장 또는 설치되는 것이며, 단위카운트마다 정상적으로 생성된 가상코드가 수신되면, 상기 복수의 세부코드를 기반으로 탐색시작지점과 탐색경로를 결정하여 상기 저장위치로 탐색하는 것을 특징으로 하고, 상기 단위카운트는 특정한 시간간격으로 설정되어, 상기 시간간격이 경과됨에 따라 변경되는 것이다.

Description

가상코드 기반의 제어시스템, 방법 및 프로그램, 제어디바이스 및 제어신호생성수단 {SYSTEM, METHOD AND PROGRAM FOR CONTROLLING DEVICE BY VIRTUAL CODE, CONTROLLED DEVICE, AND THE MEANS FOR MAKING CONTROL SIGNAL}
본 발명은 가상코드 기반의 제어시스템, 방법 및 프로그램, 제어디바이스 및 제어신호발생수단에 관한 것이다.
일반적으로, 제어디바이스(예를 들어, 사물인터넷(Internet of Things; IoT)기기 또는 무인운동체)를 제어하기 위해 별도의 단말장치(예를 들어, 특정한 어플리케이션이 설치된 이동단말기, 리모컨 또는 컨트롤러 등)으로 무선통신 신호를 발신한다. 단말장치는 무선통신신호에 제어명령을 포함하여 제어디바이스로 전송한다.
그러나 특정한 명령어를 코드로 단순히 변환하여 전송하는 경우, 타인이 제어디바이스에 대한 명령어 코드를 쉽게 확인할 수 있게 되고, 동일한 명령어를 동일한 무선통신신호(예를 들어, RF신호로 제어신호가 전송되는 경우에 동일한 주파수의 RF신호)를 이용하여 전송해서 제어디바이스를 통제할 수 있게 된다. 즉, 사용자는 타인에게 제어디바이스에 대한 제어권을 타인에게 탈취 당하는 상황이 발생하게 된다.
따라서, 각 시점마다 명령어 코드가 변동됨에 따라 타인이 특정시점의 명령어 코드를 획득하여 제어디바이스에 대한 제어권을 탈취할 수 없도록 하는 제어시스템, 방법 및 프로그램이 필요하다.
공개특허공보 제10-2012-0094481호, 2012.08.24.
본 발명은 단위카운트마다 변동되며 명령어에 따라 구별되는 가상코드를 이용하여 제어디바이스 내에서 실제 명령어를 탐색하고 검증하여, 타인이 특정한 명령어를 포함한 제어신호를 전송함에 따라 제어권을 탈취하는 것을 방지하는, 가상코드 기반의 제어시스템, 방법 및 프로그램, 제어디바이스 및 제어신호발생수단을 제공하고자 한다.
본 발명이 해결하고자 하는 과제들은 이상에서 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
본 발명의 일실시예에 따른 가상코드를 포함하는 제어신호 기반 제어방법은, 제어모듈이 제어신호생성수단으로부터 특정시점에 생성된 제어신호를 수신하되, 상기 제어신호는 특정한 가상코드를 포함하고, 상기 가상코드는 복수의 세부코드를 특정한 규칙에 따라 결합하여 생성되는 것인, 제어신호 수신단계; 상기 제어모듈이 상기 가상코드에 포함된 복수의 세부코드를 추출하는 단계; 및 상기 제어모듈이 복수의 세부코드를 기반으로 특정한 명령어가 포함된 저장위치를 탐색하는 명령어 탐색단계;를 포함하고, 상기 가상코드는 동일시점에 상기 명령어에 따라 상이하게 생성되는 것이며, 단위카운트마다 상이하게 생성되는 것이고, 상기 제어모듈은 제어디바이스 내에 내장 또는 설치되는 것이며, 단위카운트마다 정상적으로 생성된 가상코드가 수신되면, 상기 복수의 세부코드를 기반으로 탐색시작지점과 탐색경로를 결정하여 상기 저장위치로 탐색하는 것을 특징으로 하고, 상기 단위카운트는 특정한 시간간격으로 설정되어, 상기 시간간격이 경과됨에 따라 변경되는 것이다.
또한, 다른 일실시예로, 상기 제어신호생성수단은, 각각의 명령어에 대응되는 복수의 가상코드생성함수를 포함하고, 사용자에 의해 특정시점에 선택된 명령어에 대응되는 가상코드생성함수로 생성한 가상코드를 상기 제어신호로 전송하는 것을 특징으로 한다.
또한, 다른 일실시예로, 상기 가상코드생성함수는, 각각의 세부코드를 생성하는 복수의 세부코드생성함수; 및 각각의 세부코드를 특정한 결합규칙에 따라 결합하는 세부코드결함함수;를 포함하고, 상기 세부코드생성함수는 상기 제어디바이스의 고유값 또는 상기 제어신호생성수단의 고유값을 반영하여 상기 결합규칙을 적용하고, 상기 제어모듈은 상기 제어신호생성수단과 동일한 세부코드결합함수를 포함하여, 상기 세부코드결합함수를 이용하여 복수의 세부코드를 추출하는 것을 특징으로 한다.
또한, 다른 일실시예로, 상기 제어모듈은 상기 제어디바이스 내의 위치정보획득모듈에 의해 획득되는 시간데이터를 기반으로 상기 제어신호생성수단과 시간 동기화하여 단위카운트를 일치시키는 단계;를 더 포함한다.
또한, 다른 일실시예로, 상기 가상코드생성함수는 제1코드생성함수 및 제2코드생성함수를 포함하고, 상기 제1코드생성함수 및 상기 제2코드생성함수는 대응되는 명령어 또는 단위카운트가 상이하면 상이한 코드를 생성하는 것을 특징으로 하며, 상기 세부코드는, 저장위치탐색의 시작지점을 설정하는 제1코드; 및 특정한 탐색방식에 따라, 상기 시작지점으로부터 상기 저장위치로의 탐색경로를 설정하는 제2코드;를 포함하는 것이고, 상기 제1코드 및 상기 제2코드는 단위카운트마다 변경되는 것이다.
또한, 다른 일실시예로, 상기 저장위치탐색알고리즘이 하나의 트랙상에서 제1코드 및 제2코드를 기반으로 포인터를 이동시키는 것인 경우, 상기 명령어 탐색단계는, 상기 제어신호생성수단으로부터 수신된 상기 가상코드 내 제1코드에 대응하는 트랙 상의 지점으로 포인터를 이동하는 단계; 상기 제1코드에 대응하는 위치를 탐색시작지점으로 설정하고, 상기 제2코드에 대응하는 카운트 수만큼 트랙을 회귀하여 명령어 저장위치에 매칭된 지점을 탐색하는 단계; 및 명령어 저장위치에 포함된 상기 명령어를 추출하는 단계;를 포함한다.
또한, 다른 일실시예로, 상기 제어모듈은 각각의 명령어를 상이한 초기 단위카운트에 대응되는 저장위치에 저장하고, 상기 가상코드는, 상기 초기 단위카운트에 대응되는 시점 또는 명령어 입력시점에서 가상보안코드를 더한 카운트를 기반으로 생성된 제1코드 및 제2코드로 구성되고, 상기 가상보안코드는, 제어신호생성수단의 고유값 또는 제어디바이스의 고유값을 기반으로 OTP함수를 통해 생성되는 특정자릿수의 코드값으로서, 상기 제어신호생성수단으로부터 상기 제어모듈로 별도로 제공되지 않는 것이며, 상기 제어모듈이 상기 가상코드를 수신한 시점으로부터 특정범위 내의 시간값을 기반으로 산출된 생성가상보안번호를 상기 가상코드에서 추출된 수신가상보안코드와 비교하여 상기 가상코드가 정상적으로 생성된 것인지 검증하는 단계;를 더 포함한다.
본 발명의 다른 일실시예에 따른 가상코드를 포함하는 제어신호 기반 제어방법은, 제어모듈이 제어신호생성수단으로부터 특정시점에 생성된 제어신호를 수신하되, 상기 제어신호는 특정한 가상코드를 포함하고, 상기 가상코드는 명령어식별코드 및 하나 이상의 세부코드를 특정한 규칙에 따라 결합하여 생성되는 것인, 제어신호 수신단계; 상기 제어모듈이 상기 가상코드에 포함된 하나 이상의 세부코드 및 상기 명령어식별코드를 추출하는 단계; 상기 제어모듈이 상기 하나 이상의 세부코드를 기반으로 가상코드가 정상적으로 생성된 것인지 검증하는 단계; 및 상기 제어모듈이 상기 가상코드가 정상적으로 생성된 것이면 상기 명령어식별코드에 대응되는 명령어를 입력하는 단계;를 포함하고, 상기 가상코드는 동일시점에 상기 명령어에 따라 상이하게 생성되는 것이며, 단위카운트마다 상이하게 생성되는 것이고, 상기 제어모듈은 제어디바이스 내에 내장 또는 설치되는 것이며, 상기 단위카운트는 특정한 시간간격으로 설정되어, 상기 시간간격이 경과됨에 따라 변경되는 것이다.
또한, 다른 일실시예로, 상기 가상코드 검증단계는, 상기 제어모듈이 특정한 명령어에 대응되는 저장위치탐색알고리즘을 기반으로 복수의 세부코드를 이용하여 저장위치를 탐색하는 단계; 및 상기 저장위치 내에 명령어가 저장되어 있는지 여부 또는 상기 저장위치 내의 명령어와 상기 명령어식별코드에 대응되는 명령어가 일치하는지 여부를 판단하여 가상코드를 검증하는 단계;를 포함하고, 상기 가상코드는 제1코드 및 제2코드를 포함하고, 상기 제어모듈은 상기 명령어에 따라 상이한 상기 저장위치탐색알고리즘을 포함하고, 각각의 명령어를 각 명령어의 저장위치탐색알고리즘 내의 특정한 초기 단위카운트에 대응되는 저장위치에 저장하고, 단위카운트마다 정상적으로 생성된 가상코드가 수신되면, 상기 제1코드에 대응하는 상기 시작지점으로부터 상기 제2코드에 상응하는 탐색경로에 따라 이동한 지점을 상기 저장위치로 판단하는 것을 특징으로 한다.
또한, 다른 일실시예로, 상기 세부코드는 가상보안코드를 포함하고, 상기 가상보안코드는, 제어신호생성수단의 고유값 또는 제어디바이스의 고유값을 기반으로 OTP함수를 통해 생성되는 특정자릿수의 코드값이며, 상기 가상코드 검증단계는, 상기 제어모듈이 상기 가상코드를 수신한 시점으로부터 특정범위 내의 시간값을 기반으로 산출된 생성가상보안번호를 상기 가상코드에서 추출된 수신가상보안코드와 비교하여 상기 가상코드가 정상적으로 생성된 것인지 검증하는 것을 특징으로 한다.
본 발명의 또 다른 일실시예에 따른 가상코드를 포함하는 제어신호 기반 제어방법은, 제어신호생성수단이 사용자로부터 특정한 명령어입력요청을 수신하는 단계; 상기 제어신호생성수단이 상기 명령어입력요청에 따라 특정한 명령어에 대응되는 가상코드생성함수를 기반으로 가상코드를 생성하는 단계; 및 상기 제어모듈이 가상코드를 제어신호로 제어디바이스에 전송하는 단계;를 포함하고, 상기 가상코드는 제1코드 및 제2코드를 특정한 규칙에 따라 결합하여 생성되는 것이고, 동일시점에 상기 명령어에 따라 상이하게 생성되는 것이며, 단위카운트마다 상이하게 생성되는 것이고, 상기 제어디바이스 내의 제어모듈에 의해 특정한 명령어가 포함된 저장위치 탐색에 이용되는 것이고, 상기 제어모듈은 단위카운트마다 정상적으로 생성된 가상코드가 수신되면, 상기 제1코드에 대응하는 상기 시작지점으로부터 상기 제2코드에 상응하는 탐색경로에 따라 이동한 지점을 상기 저장위치로 판단하고, 상기 단위카운트는 특정한 시간간격으로 설정되어, 상기 시간간격이 경과됨에 따라 변경되는 것이다.
본 발명의 또 다른 일실시예에 따른 가상코드를 포함하는 제어신호 기반 제어방법은, 제어신호생성수단이 사용자로부터 특정한 명령어입력요청을 수신하는 단계; 상기 제어신호생성수단이 상기 명령어입력요청에 따라 특정한 명령어에 대응되는 가상코드생성함수를 기반으로 가상코드를 생성하는 단계; 및 상기 제어모듈이 가상코드를 제어신호로 제어디바이스에 전송하는 단계;를 포함하고, 상기 가상코드 생성단계는, 특정한 명령어에 대응되는 명령어식별코드를 추출하는 단계; 상기 명령어에 대응되는 세부코드생성함수를 이용하여 하나 이상의 세부코드를 생성하는 단계; 및 상기 명령어식별코드와 상기 하나 이상의 세부코드를 결합하여, 상기 가상코드를 생성하는 단계;를 포함하고, 상기 제어디바이스는 제어모듈을 포함하고, 상기 제어모듈은 상기 가상코드에 포함된 하나 이상의 세부코드 및 상기 명령어식별코드를 추출하고, 상기 하나 이상의 세부코드를 기반으로 가상코드가 정상적으로 생성된 것인지 검증하고, 상기 가상코드가 정상적으로 생성된 것이면 상기 명령어식별코드에 대응되는 명령어를 입력하는 것을 특징으로 하고, 상기 가상코드는 단위카운트마다 상이하게 생성되는 것이고, 상기 단위카운트는 특정한 시간간격으로 설정되어, 상기 시간간격이 경과됨에 따라 변경되는 것이다.
본 발명의 다른 일실시예에 따른 가상코드를 포함하는 제어신호 기반 제어프로그램은, 하드웨어와 결합되어 상기 언급된 가상코드를 포함하는 제어신호 기반 제어방법을 실행하며, 매체에 저장된다.
본 발명의 또 다른 일실시예에 따른 제어디바이스는, 제어신호생성수단으로부터 특정시점에 전송된 제어신호를 수신하되, 상기 제어신호는 특정한 가상코드를 포함하는 것인, 제어신호수신부; 상기 가상코드에 포함된 복수의 세부코드를 추출하는 세부코드추출부; 및 복수의 세부코드를 기반으로 특정한 명령어가 포함된 저장위치를 탐색하는 명령어 탐색부;를 포함하고, 상기 가상코드는 복수의 세부코드에 포함되는 제1코드 및 제2코드를 특정한 규칙에 따라 결합하여 생성되는 것이고, 상기 제1코드 또는 상기 제2코드는 동일시점에 상기 명령어에 따라 상이하게 생성되는 것이며, 단위카운트마다 상이하게 생성되는 것이고, 상기 명령어 탐색부는 단위카운트마다 정상적으로 생성된 가상코드가 수신되면, 상기 제1코드에 대응하는 상기 시작지점으로부터 상기 제2코드에 상응하는 탐색경로에 따라 이동한 지점을 상기 저장위치로 판단하는 것을 특징으로 하며, 상기 단위카운트는 특정한 시간간격으로 설정되어, 상기 시간간격이 경과됨에 따라 변경되는 것이다.
본 발명의 또 다른 일실시예에 따른 제어디바이스는, 제어신호생성수단으로부터 특정시점에 전송된 제어신호를 수신하되, 상기 제어신호는 특정한 가상코드를 포함하는 것인, 제어신호수신부; 상기 가상코드에 포함된 명령어식별코드 및 하나 이상의 세부코드를 추출하는 세부코드추출부; 상기 하나 이상의 세부코드를 기반으로 가상코드가 정상적으로 생성된 것인지 검증하는 가상코드검증부; 및 상기 가상코드가 정상적으로 생성된 것이면 상기 명령어식별코드에 대응되는 명령어를 입력하는 제어결정부;를 포함하고, 상기 가상코드는 명령어식별코드 및 하나 이상의 세부코드를 특정한 규칙에 따라 결합하여 생성되는 것이고, 상기 세부코드는 동일시점에 상기 명령어에 따라 상이하게 생성되는 것이며, 단위카운트마다 상이하게 생성되는 것이고, 상기 단위카운트는 특정한 시간간격으로 설정되어, 상기 시간간격이 경과됨에 따라 변경되는 것이다.
상기와 같은 본 발명에 따르면, 타인이 제어디바이스에 대해 명령어를 전송함에 따라 제어권을 탈취하는 것을 방지할 수 있다. 즉, 타인이 사용자의 제어신호발생수단을 동일하게 복제하지 않는 이상 특정시점에 특정한 명령어에 부합하는 가상코드를 생성할 수 없어서, 제어디바이스와 매칭된 제어신호발생수단 이외의 장치로 제어디바이스를 제어하는 것을 방지할 수 있다.
또한, 상이한 명령어에 대해 시점에 무관하게 중복되는 가상코드가 발생하지 않음에 따라 제어모듈에서 명령어를 잘못 파악하는 문제가 발생하지 않을 수 있다.
도 1은 본 발명의 일실시예에 따른 가상코드 기반의 디바이스 제어시스템의 구성도이다.
도 2는 본 발명의 일실시예에 따른 제어신호생성수단의 내부구성도이다.
도 3 및 도 4는 본 발명의 일실시예에 따른 제어디바이스의 내부구성도이다.
도 5는 본 발명의 일실시예에 따른 가상코드 기반의 디바이스 제어방법의 순서도이다.
도 6은 본 발명의 일실시예에 따른 k각형 구름이동에 따른 명령어 탐색과정을 포함하는 가상코드 기반의 디바이스 제어방법의 순서도이다.
도 7은 본 발명의 일실시예에 따라 k각형의 구름이동을 통해 명령어 저장위치를 탐색하는 저장위치탐색알고리즘에 대한 예시도면이다.
도 8은 본 발명의 일실시예에 따른 트랙상 이동을 통한 명령어 탐색과정을 포함하는 가상코드 기반의 디바이스 제어방법의 순서도이다.
도 9은 본 발명의 일실시예에 따른 세부코드를 기반으로 트랙상을 이동하여 명령어 저장위치를 탐색하는 저장위치탐색알고리즘에 대한 예시도면이다.
도 10은 본 발명의 일실시예에 따른 가상보안코드를 이용하여 명령어 탐색시점을 이동시키는 방식의 예시도면이다.
도 11 내지 도 13은 본 발명의 다른 일실시예에 따른 제어모듈이 가상코드 기반의 디바이스 제어방법의 순서도이다.
도 14 내지 도 15는 본 발명의 일실시예에 따른 제어신호생성모듈이 가상코드를 생성하는 과정에 대한 가상코드 기반의 제어방법의 순서도이다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명한다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 게시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 게시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다.
본 명세서에서 '제어디바이스'는 무선통신을 통해 제어되는 디바이스를 모두 포함한다. 예를 들어, 제어디바이스는 무인이동체(Unmanned Vehicle), 가전기기(예를 들어, TV, 스피커, 에어컨 등) 등을 포함할 수 있다.
본 명세서에서 '제어신호'는 제어디바이스의 제어 또는 통제를 위해 송신되는 무선통신신호를 의미한다.
본 명세서에서 '명령어'는 제어디바이스에 대한 특정한 제어명령으로 미리 정해진 것을 의미한다. '명령어'는 특정한 코드데이터로 생성될 수 있다.
본 명세서에서 '가상코드'는 명령어에 연결되도록 임시적으로 생성되는 코드로서, 숫자를 포함하는 문자로 이루어진 특정한 자릿수의 코드이다.
본 명세서에서 '문자'는 코드를 구성하는 구성요소로서, 대문자알파벳, 소문자알파벳, 숫자 및 특수문자 등의 전부 또는 일부를 포함한다.
본 명세서에서 '코드'는 문자가 나열된 문자열을 의미한다.
본 명세서에서 '세부코드'는 가상코드에 포함되는 일부코드를 의미한다. 즉, 가상코드가 별도로 생성된 복수의 코드를 결합하여 생성되는 경우, 세부코드는 별도로 생성되어 가상코드를 구성하는 개별 코드를 의미한다.
본 명세서에서 '단위카운트'는 특정한 시간간격으로 설정되어, 상기 시간간격이 경과됨에 따라 변경되는 것으로 정의된 단위이다. 예를 들어, 1카운트는 특정한 시간간격(예를 들어, 1.5초)으로 설정되어 사용될 수 있다.
본 명세서에서 '가상코드생성함수'는 가상코드를 생성하는데 이용되는 함수를 의미한다.
이하, 도면을 참조하여, 본 발명의 실시예들에 따른 가상코드 기반의 제어시스템, 방법 및 프로그램, 제어디바이스 및 제어신호발생수단에 대한 상세한 설명을 기재한다.
도 1은 본 발명의 일실시예에 따른 가상코드 기반의 제어시스템의 연결관계도이다.
도 2는 본 발명의 다른 일실시예에 따른 제어신호생성수단의 내부구성도이다.
도 3은 본 발명의 일실시예에 따른 제어디바이스의 내부구성도이다.
도 1 내지 도 3을 참조하면, 본 발명의 일실시예에 따른 가상코드 기반의 제어시스템(1)은, 제어신호생성모듈(100); 및 제어모듈(200);을 포함한다.
제어신호생성모듈(100)은 제어모듈(200)이 명령어를 탐색할 수 있는 정보를 포함하는 가상코드를 생성하는 역할을 수행한다. 즉, 제어신호생성모듈(100)은 가상코드생성함수에 따라 가상코드를 생성한다. 이 때, 제어모듈(200)에서 가상코드를 기반으로 명령어를 탐색하므로, 제어신호생성모듈(100)은 명령어를 저장하지 않을 수 있다. 이를 통해 제어신호생성모듈(100)의 해킹 등을 통해 명령어와 가상코드생성함수 간의 연결관계가 유출되는 것을 방지할 수 있다. 가상코드생성함수에 대한 구체적인 설명은 후술한다. 제어신호생성모듈(100)은 제어디바이스를 제어하기 위한 제어신호생성수단(예를 들어, 제어디바이스와 무선통신으로 연결되는 컨트롤러, 이동단말기 내에 설치 또는 내장되는 제어디바이스 제어용 어플리케이션 등)에 포함될 수 있다.
제어모듈(200)은 제어디바이스 내에 내장 또는 설치되는 것이다. 제어모듈(200)은 제어신호생성모듈(100)에서 생성되어 제공된 가상코드를 기반으로 명령어를 탐색하는 역할을 수행한다. 제어모듈(200)은 제어신호생성모듈(100)로부터 수신된 가상코드로부터 명령어를 탐색하기 위해 제어신호생성모듈(100)과 동일한 가상코드생성함수를 저장할 수 있다. 제어모듈(200)이 가상코드를 기반으로 명령어를 탐색하는 방식에 대한 구체적인 설명은 후술한다.
또한, 제어모듈(200)은 가상코드가 제어신호생성모듈(100)에서 정상적으로 생성된 코드인지 여부를 검증하는 역할을 수행한다. 제어모듈(200)이 가상코드의 정상여부를 판단하는 방식에 대한 구체적인 설명은 후술한다.
제어모듈(200)은 제어신호생성모듈(100)을 포함하는 제어신호생성수단으로부터 가상코드를 포함하여 송신되는 제어신호를 통해 가상코드를 수신한다. 이를 위해, 제어신호생성수단과 제어디바이스는 다양한 무선통신 방식으로 제어신호를 송수신할 수 있다.
즉, 일실시예로, 제어신호생성수단은 제1무선통신모듈(120)을 포함하고, 제어디바이스는 제2무선통신모듈(220)을 포함한다. 제2무선통신모듈(220)은 제1무선통신모듈(120)로부터 제어신호생성모듈(100)이 생성한 제어신호를 수신한다. 또한, 제어디바이스가 제어신호생성수단으로 제어디바이스의 상태정보를 제공하는 경우, 제2무선통신모듈(220)은 제1무선통신모듈(120)로 상기 상태정보를 포함하는 무선통신신호를 전송한다. 제1무선통신모듈(120)과 제2무선통신모듈(220)은 블루투스(Bluetooth), LTE, 3G, Wi-Fi, RF 등의 다양한 통신방식으로 신호 송수신을 수행할 수 있다.
또한, 다른 일실시예로, 제1무선통신모듈(120)과 제2무선통신모듈(220)은 명령어 검증용 코드 생성 및 검증과정을 수행한다. 즉, 제1무선통신모듈(120)은 제어신호생성모듈(100)에서 가상코드를 생성하는 것과 동일한 방식으로 명령어 검증용 코드를 생성할 수 있다. 즉, 검증용 코드 생성함수는 후술되는 가상코드 생성 방식(예를 들어, 제어신호생성모듈에서 가상코드생성함수에 의해 가상코드를 생성하고 제어모듈에서 가상코드에 대응되는 실제 명령어를 탐색하는 방식)을 동일하게 적용하여, 제1무선통신모듈(120)이 명령어 검증용 코드를 생성하고, 제2무선통신모듈이 명령어 검증용 코드가 정상적으로 생성된 것인지 확인하여 제어디바이스와 매칭된 제어신호생성수단에서 전송된 것이 맞는 지 확인한다. 제2무선통신모듈(220)은 제어모듈(200)에서 가상코드를 검증하는 방식과 동일한 방식으로 명령어 검증용 코드를 검증한다. 명령어 검증용 코드 생성함수는 가상코드생성함수와 상이한 규칙이 적용될 수 있다. 이 때, 제1무선통신모듈(120)은 제2무선통신모듈(220)로 가상코드와 명령어 검증용 코드가 결합된 형태의 최종코드를 전송하고, 제2무선통신모듈(220)는 최종코드에서 가상코드와 명령어 검증용 코드를 분리한 후 명령어 검증용 코드로 검증과정을 수행한다. 상기 최종코드는 명령어 검증용 코드와 가상코드를 결합하는 특정한 규칙에 의해 생성될 수 있고, 제1무선통신모듈(120)과 제2무선통신모듈(220)는 동일한 결합규칙을 포함한다.
도 2를 참조하면, 본 발명의 실시예들에 따른 제어신호생성수단은, 제어신호생성모듈(100); 및 제1무선통신모듈(120);을 포함한다. 상기 제어신호생성수단은, 제어신호생성모듈(100)에 해당하는 프로그램이 내장(Embeded)되거나 제어신호생성모듈(100)에 해당하는 프로그램 또는 어플리케이션이 설치된 장치일 수 있다. 예를 들어, 제어신호생성수단은 제어신호생성모듈(100)에 해당하는 어플리케이션이 설치된 스마트폰이나 제어신호생성모듈(100) 내장된 무선컨트롤러일 수 있다.
제어신호생성모듈(100)은 사용자로부터 입력된 제어명령에 따라 가상코드를 생성하는 역할을 수행한다. 일실시예로, 상기 제어신호생성모듈(100)은 사용자명령수신부(101); 가상코드생성부(102); 및 세부코드생성부(103)를 포함할 수 있다.
가상코드생성부(102)는 하나 이상의 세부코드를 조합하여 가상코드로 생성하는 역할을 수행한다. 일실시예로, 상기 가상코드는 복수의 세부코드를 특정한 규칙에 따라 결합하여 생성되는 것이다.
즉, 일실시예로, 가상코드생성함수는 세부코드생성함수 및 세부코드결합함수의 전부 또는 일부를 포함한다. 상기 세부코드결합함수는 복수의 세부코드를 조합하는 규칙이다. 복수의 세부코드를 결합하여 하나의 가상코드를 생성하는 방식으로는 다양한 방식이 적용될 수 있다. 상기 세부코드결합함수의 일 예로, 가상코드생성부(102)는 N자리의 제1코드와 N자리의 제2코드를 번갈아 배치하는 방식으로 가상코드를 생성할 수 있다. 또한, 다른 일 예로, 세부코드결합함수는 제1코드 뒤에 제2코드를 결합하는 함수일 수 있다. 가상함수에 포함되는 세부코드가 늘어남에 따라 세부코드결합함수도 다양하게 생성될 수 있다.
상기 세부코드생성부(103)는 하나 이상의 세부코드를 생성하는 역할을 수행한다. 가상코드생성함수는 각각의 세부코드생성함수를 포함한다. 예를 들어, 가상코드생성함수는 복수의 세부코드생성함수를 이용하여 복수의 세부코드를 생성하고, 복수의 세부코드를 결합하는 세부코드결합함수를 이용하여 가상코드를 생성한다.
일실시예로, 세부코드생성부(103)는 세부코드생성함수로 제1함수와 제2함수를 포함하여, 제1코드 및 제2코드를 생성한다. 제1코드와 제2코드는 제어디바이스 내에서 명령어의 저장위치를 탐색하기 위한 상관관계를 가지나, 제어신호생성수단은 보안성을 높이기 위해 제1코드를 생성하는 제1함수와 제2코드를 생성하는 제2함수를 세부코드생성함수로 포함할 뿐, 제1코드와 제2코드의 상관관계에 대한 데이터를 포함하지 않을 수 있다.
또한, 일실시예로, 가상코드가 제1코드 및 제2코드의 특정한 규칙에 따른 조합으로 생성되는 경우, 제1코드와 제2코드는 명령어가 저장된 저장위치를 탐색하기 위한 각각의 역할을 수행할 수 있다. 예를 들어, 제1코드는 저장위치탐색의 시작지점을 설정하고, 제2코드는 특정한 탐색방식에 따라 상기 시작지점으로부터 상기 저장위치로의 탐색경로를 설정한다. 즉, 제어신호생성수단으로부터 단위카운트마다 정상적으로 생성된 가상코드가 제공되면, 제어디바이스는 제1코드에 대응하는 탐색시작지점으로부터 제2코드에 상응하는 탐색경로에 따라 이동한 지점을 명령어의 저장위치로 판단한다. 가상코드를 구성하는 제1코드와 제2코드를 기반으로 저장위치를 탐색하는 구체적인 방식은 후술한다.
세부코드생성부(103)가 세부코드를 생성하는 방식의 일실시예로, 세부코드생성부(103)는 단위카운트마다 새로운 세부코드를 생성하고, 이에 따라 제어신호생성수단은 단위카운트마다 새로운 가상코드를 생성한다. 단위카운트마다 신규로 생성되는 가상코드는 중복되어 생성되지 않는다. 구체적으로, 세부코드생성부(103)는, 단위카운드마다 신규생성되는 가상코드가 특정한 사용자 또는 특정한 제어신호생성수단에게 정해진 기간동안 중복생성되지 않을 뿐만 아니라, 특정한 그룹에 속한 사용자간에도 중복생성되지 않도록 설정된다.
가상코드의 중복생성을 방지하는 구체적인 일실시예로, M개 문자로 N자리의 상기 제1코드 또는 상기 제2코드를 생성하는 경우, 가상코드생성함수에 포함되는 세부코드생성함수는 MN개의 코드를 제1코드 또는 제2코드로 생성할 수 있고, 각각의 코드를 세부코드생성함수가 구동되는 초기시점으로부터 각 카운트마다 매칭한다. 예를 들어, 단위카운트를 1초로 설정하는 경우, 세부코드생성함수가 최초 구동된 시점에서부터 매 초에 상이한 MN개의 코드를 매칭한다. 그리고, 특정한 세부코드생성함수를 이용하는 주기를 MN 카운트에 해당하는 시간길이(예를 들어, 1카운트가 1초인 경우, MN 초)보다 짧은 시간길이로 설정하면 제1코드 또는 제2코드는 사용주기 동안에 동일한 코드가 중복 생성되지 않는다. 즉, 시간이 흐름에 따라 카운트가 증가할 때, 사용자가 특정시점에 제어신호생성수단에 가상코드생성요청을 하는 경우, 제어신호생성수단은 특정시점에 대응되는 카운트에 매칭된 코드값을 제1코드 또는 제2코드로 생성할 수 있다.
가상코드의 중복생성을 방지하는 구체적인 다른 일실시예로, 가상코드생성함수의 사용주기가 경과되면, 제1코드 또는 제2코드를 생성하는 함수(즉, 제1함수 또는 제2함수)를 변경하거나 제1코드와 제2코드의 매칭관계를 변경하여 이전 사용주기와 상이한 가상코드가 생성되도록 한다. 가상코드가 제1함수에 의해 생성되는 제1코드와 제2함수에 의해 생성되는 제2코드가 결합되는 경우, 제1코드생성함수 또는 제2코드생성함수가 변경되면, 제어신호생성수단은 제1코드 또는 제2코드가 등장하는 순서가 이전 사용주기와 달라짐에 따라 이전주기와 상이한 가상코드를 생성하는 가상코드생성함수를 신규 사용주기에 적용할 수 있다. 또한, 제어신호생성수단은 이전 사용주기에서 사용된 가상코드와 동일한 코드가 신규 사용주기 내 각 카운트의 가상코드로 등장하지 않도록(즉, 제1함수에 따라 생성되는 제1코드와 제2함수에 따라 생성되는 제2코드의 매칭관계가 신규 사용주기의 모든 카운트에서 이전 사용주기 내에 포함된 매칭관계 중에 포함되지 않도록) 제1함수와 제2함수를 선택할 수 있다. 즉, MN 개의 코드를 1회씩 적용할 수 있는 사용주기를 경과한 후 가상코드생성함수 조절 또는 갱신을 통해 이전 사용주기와 겹치는 가상코드가 생성되지 않는 신규 사용주기의 가상코드생성함수를 적용할 수 있다.
이 때, 제어신호생성모듈(100) 및 제어디바이스는 가상코드생성함수를 갱신하는 규칙을 저장할 수 있다. 즉, 제어신호생성모듈(100) 및 제어모듈(200)은 복수의 제1함수와 제2함수를 각 사용주기에 적용하는 순서 또는 규칙을 저장할 수 있다.
또한, 가상코드의 중복생성을 방지하는 구체적인 다른 일실시예로, 다른 명령어에 대해 동일한 가상코드가 동일시점에 생성되지 않도록, 가상코드에 포함되는 제1코드 또는 제2코드 중 어느 하나는 적어도 명령어마다 동일시점에 항상 상이하게 존재하는 값(즉, 명령어고유값)을 반영하여 생성될 수 있다. 일실시예로, 명령어고유값은 특정한 제어디바이스와 제어신호생성수단 간의 초기설정 시에 각각의 명령어를 저장한 저장위치에 대응되는 단위카운트 또는 시점(예를 들어, 제어디바이스 내에 특정한 저장위치탐색알고리즘이 구동된 최초시점으로부터 특정시간이 경과한 후 특정한 명령어를 저장하여 특정한 명령어에 대한 세부코드생성함수가 적용되기 시작한 시점)으로부터 현재까지 경과된 시간(또는 카운트수)일 수 있다. 하나의 제어디바이스에 대해 복수의 명령어를 포함하는 경우, 각각의 명령어를 매칭시킨 카운트를 동일하지 않게 하면(즉, 저장위치탐색알고리즘 상의 동일한 위치 또는 시점에 여러 명령어를 저장하지 않으면), 명령어가 매칭된 시점(또는 카운트)으로부터 사용자로부터 명령입력이 수행된 시점까지의 경과된 시간은 각 명령어마다 상이하게 된다. 따라서, 세부코드생성함수 중 적어도 어느 하나는 명령어를 저장위치탐색알고리즘에 저장한 시점(또는 카운트)으로부터 특정시점까지의 경과된 시간을 명령어고유값으로 이용하여, 각 시점마다 각각의 제어신호생성수단에서 생성되는 가상코드가 상이하도록 할 수 있다. 이를 통해, 제어디바이스가 사용자를 구별하기 위한 데이터를 별도로 수신하지 않고 가상코드를 수신하는 것만으로 제어신호생성수단의 구별이 가능하도록 할 수 있다.
예를 들어, 제어디바이스가 드론(Drone: 무인비행체)인 경우, 제어신호생성수단에서 사용자의 조작에 의해 선택될 수 있는 명령어는 상승, 하강, 전진, 후진 등을 포함할 수 있다. 특정한 제어디바이스에 대한 명령어는 하나의 그룹으로 설정되고, 제어디바이스 내에 포함된 하나의 저장위치탐색알고리즘에 의해 가상코드 내의 명령어 탐색이 수행된다. 저장위치탐색알고리즘 내에서 제어디바이스 초기 설정 시로부터 A시간만큼 경과된 시점에 제1명령어(예를 들어, 상승 명령어)가 매칭되고 B(B는 A보다 큰 값)시간만큼 경과된 시점에 제2명령어(예를 들어, 전진 명령어)가 매칭되면, 제1명령어 및 제2명령어는 제1사용자와 제2사용자로부터 가상코드 생성이 요청된 C(C는 B보다 큰 값)시간에 카드발급 시점으로부터 경과된 시간길이가 항상 상이하게 된다. 따라서, 세부코드생성함수는 각각의 명령어가 저장위치탐색알고리즘 내에 저장된 시점으로부터 경과된 시간길이를 변수로 적용함에 따라 동일시점에 동일한 가상코드가 생성되지 않도록 할 수 있다. 또한, 제어디바이스는 두개의 명령어가 동시에 수신되더라도 각각의 명령어를 정확히 인식할 수 있다. 상기 저장위치탐색알고리즘은 카운트 경과에 따라 현재 카운트와 매칭되는 저장위치가 변경되는 알고리즘일 수 있다. 상기 저장위치탐색알고리즘에 대한 상세한 설명은 후술한다.
또한, 특정한 명령어가 저장위치탐색알고리즘 내의 특정한 저장위치에 매칭된 시점으로부터 경과된 시간길이는 시간이 흐름에 따라 계속 증가하게 되므로, 특정한 명령어에 대한 세부코드(예를 들어, 제2코드)는 동일한 값이 생성되지 않고 계속 다른 값이 생성된다.
또한, 가상코드의 중복생성을 방지하는 구체적인 또 다른 일실시예로, 전체주기에서 사용자에 무관하게 중복된 가상코드가 발생되지 않도록, 제1코드는 제어디바이스 내에서 특정한 명령어에 대한 제1함수가 구동되는 초기시점(예를 들어, 제어디바이스와 제어신호발생수단을 최초 연동된 시점, 제어디바이스 생산 후 최초 구동 시점, 또는 초기화 시점)으로부터 각 카운트마다 매칭된 코드 중에서 가상코드 생성요청이 된 시점(또는 카운트)에 대응되는 코드값으로 설정하고, 제2코드는 명령어가 저장위치탐색알고리즘 내에 매칭된 시점으로부터 경과된 시간(즉, 명령어고유값)을 반영하여 생성되는 코드값으로 설정하고, 가상코드를 상기 제1코드와 제2코드가 결합된 코드값으로 이용할 수 있다. 제1코드는 각 카운트마다 상이한 코드값이 되고 제2코드는 동일시점에 명령어마다 상이한 코드값을 가지게 되어서, 제1코드와 제2코드가 결합된 가상코드는 모든 제어신호생성수단과 모든 시점에 상이한 코드값이 출력되게 된다.
다른 일실시예로, 가상코드는 명령어 유형을 구별하기 위한 명령어식별코드를 포함한다. 즉, 가상코드생성부(102)는 특정한 명령어가 사용자로부터 입력되면 이에 대응되는 명령어식별코드를 추출하여 가상코드에 포함시킨다. 명령어식별코드는 제어모듈(200)이 가상코드를 수신하면 바로 대응되는 명령어를 파악할 수 있도록 한다. 제어모듈(200)은 명령어식별코드를 통해 명령어를 파악한 후 가상코드 내의 세부코드를 기반으로 가상코드를 검증하여 명령어를 제어명령으로 입력할 지 여부를 판단한다.
또한, 명령어식별코드는, 상기 가상코드 내에 미리 정해진 위치에 결합될 수 있다. 각 명령어 별로 가상코드생성함수가 부여되는 경우, 제어모듈(200)은 가상코드에서 명령어식별코드를 먼저 추출하여야 명령어 유형을 판단할 수 있어야 한다. 따라서, 명령어식별코드는 별도의 함수 없이 분리가능하도록 가상코드 내의 미리 정해진 위치(예를 들어, 가상코드의 제일 앞 N자리수)에 결합될 수 있다.
가상코드가 명령어식별코드를 포함하는 경우, 일실시예로, 제어모듈(200)은 특정한 제어디바이스에 대한 각각의 명령어를 별도의 그룹으로 구분하여 각각의 명령어를 별도의 저장위치탐색알고리즘 또는 가상코드생성함수를 이용하고, 제어신호생성모듈(100)은 각각의 명령어에 대응되는 명령어식별코드를 포함한 가상코드를 전송한다.
구체적으로, 가상코드생성부(102)는 명령어식별코드에 특정한 명령어에 대응되는 OTP함수를 기반으로 생성된 가상보안코드를 추가하여 가상코드를 생성할 수 있다. 제어모듈(200)은 가상코드를 수신한 후에 명령어식별코드를 이용하여 명령어 유형을 판단하고, 가상보안코드를 이용하여 가상코드가 정상적으로 생성된 것인지 검증한다. 제어모듈(200)이 가상보안코드를 이용하여 가상코드를 검증하는 방식에 대해서는 후술한다.
또한, 가상코드생성부(102)는 특정한 명령어식별코드에 매칭된 저장위치탐색알고리즘에 부합하는 복수의 세부코드(예를 들어, 제1코드 및 제2코드)를 생성하고, 명령어식별코드와 결합하여 가상코드를 생성할 수 있다. 즉, 제어모듈(200)은 각각의 명령어에 대한 저장위치탐색알고리즘을 개별적으로 구동할 수 있다. 이에 따라, 가상코드생성부(102)는 제어모듈(200) 내의 개별 저장위치탐색알고리즘에 대응되도록 각각의 명령어에 대한 가상코드생성함수를 별도로 포함할 수 있다. 명령어별 저장위치탐색알고리즘 및 세부코드를 이용하여 가상코드를 검증하는 방식에 대해서는 후술한다.
또한, 다른 일실시예로, 상기 가상코드생성함수(구체적으로, 각각의 세부코드생성함수)는, M개의 문자를 오름차순으로 나열하는 다수의 나열규칙 중 어느 하나가 적용된다. 즉, 제어신호생성수단(즉, 제어신호생성모듈(100))은 각각의 제어디바이스 또는 각각의 명령어에 대한 세부코드생성함수에 M개 문자를 오름차순으로 나열하는 규칙을 상이하게 적용할 수 있다. 구체적으로, 각각의 제어디바이스마다(즉, 상이한 식별값을 가지는 디바이스마다) 각 디바이스의 독립적인 제어를 위해 상이한 나열규칙이 적용된 가상코드생성함수가 적용될 수 있고, 가상코드가 명령어식별코드를 포함하는 경우에 각각의 저장위치탐색알고리즘에 따라 상이한 나열규칙이 적용된 가상코드생성함수가 적용될 수 있다.
예를 들어, 알파벳 대문자를 오름차순으로 나열하는 나열규칙은, 일반적인 순서인 A, B, C,…, Z 순서가 될 수 있고, A, C, B,…, Z 순서가 될 수도 있다. 가상코드생성함수에서 나열규칙이 달라짐에 따라 가상코드생성함수가 구동되는 초기시점부터 각 카운트에 차례대로 코드가 매칭되는 순서가 달라지게 된다. 제어모듈(200)은 동일한 나열규칙에 따라 생성된 코드가 각 카운트에 매칭되어 있거나, 동일한 나열규칙 자체를 가상코드생성함수에 포함하여 저장할 수 있다. 따라서, 각 디바이스별 또는 각 명령어별(가상코드가 명령어식별코드를 포함하는 경우) 가상코드생성함수가 상이한 세부코드결합함수를 포함하거나 상이한 문자 나열규칙을 포함하여, 각 그룹별로 상이한 가상코드생성함수를 가지도록 할 수 있다.
또한, 일실시예로, 가상코드는 가상보안코드를 포함한다. 예를 들어, 가상코드는 하나 이상의 세부코드와 가상보안코드를 포함하거나 가상보안코드를 세부코드로 포함한다. 상기 보안코드는 특정한 보안코드생성함수를 기반으로 생성되는 코드로서, 정상적인 가상코드인지 여부를 검증하기 위해 이용된다. 상기 보안코드생성함수는 시간데이터와 제어신호생성수단 또는 제어디바이스의 고유값을 함수값으로 사용하여 특정한 자릿수의 보안코드를 생성한다.
가상보안코드를 활용하여 가상코드의 정상여부를 판단하는 과정의 일 예는 다음과 같다. 제어모듈(200)은 초기 설정 시에 제어신호생성수단의 고유값(예를 들어, 제어용 어플리케이션이 설치된 스마트폰의 고유값 등)을 수신하여 명령어의 저장위치에 함께 저장하거나 명령어 저장위치에 연결된 별도의 저장공간에 저장할 수 있다. 제어신호생성수단이 가상보안코드를 포함한 가상코드를 생성하여 제어디바이스에 제공하면, 제어디바이스는 세부코드를 기반으로 가상코드가 생성된 시간데이터를 획득하고, 내부에 저장된 특정한 제어신호생성수단의 고유값을 추출하여 시간데이터와 함께 가상보안코드생성함수(예를 들어, OTP(One-Time Password) 함수)에 적용하여 가상보안코드를 산출한다. 제어디바이스는 제어신호생성수단에서 수신한 가상보안코드(즉, 수신가상보안코드)와 내부에 저장된 가상보안코드생성함수로 산출한 가상보안코드(즉, 생성가상보안코드)가 일치하는 지 판단한다. 제어신호생성수단에서 가상코드를 생성하는 시점과 제어디바이스(200)에서 가상코드를 수신한 시점 사이에 차이가 존재할 수 있으므로, 제어디바이스(200)는 시간딜레이를 고려하여 특정시간 범위 내(예를 들어, 가상코드를 수신한 시점으로부터 특정 카운트 이전까지)의 가상보안코드(즉, OTP번호)를 계산하여, 제어신호생성수단으로부터 수신된 수신가상보안코드와 일치하는 값이 존재하는지 확인한다. 제어모듈(200)은 수신가상보안코드와 생성가상보안코드가 일치하면 정상적인 가상코드로 판단하여 명령어를 제어명령으로 결정한다.
또한, 다른 예로, 가상보안코드생성함수는 각 카운트마다 다른 l자리(l은 자연수)의 코드를 생성하여 함수값으로 함께 적용할 수 있다. 즉, 가상보안코드생성함수는 l자리의 랜덤코드생성함수(예를 들어, l자리의 코드를 생성하는 OTP함수)를 포함할 수 있다.
상기 제1무선통신모듈(120)은 상기 가상코드를 제어디바이스로 전송하기 위해 무선통신신호로 출력하는 역할을 수행한다. 제1무선통신모듈(120)은 가상코드를 외부로 제공할 수 있는 다양한 구성을 포함할 수 있다. 제1무선통신모듈(120)은 무선인터넷모듈; 근거리통신모듈; RF신호모듈 등의 전부 또는 일부를 포함한다.
도 3 및 도 4을 참조하면, 본 발명의 또 다른 일실시예에 따른 제어디바이스는, 제어모듈(200); 제2무선통신모듈(220);을 포함한다.
상기 제2무선통신모듈(220)은 제어신호생성수단으로부터 제어신호를 수신하는 역할을 수행한다. 제1무선통신모듈(120)에 대응되는 다양한 무선통신 방식이 적용될 수 있다. 구체적으로, 제2무선통신모듈(220)은 제어신호생성수단으로부터 특정시점에 전송된 제어신호를 수신하는 제어신호수신부를 포함할 수 있다. 상기 제어신호는 특정한 가상코드를 포함하는 것이다.
제어모듈(200)은 제어신호로부터 가상코드를 추출하고 가상코드에서 추출된 세부코드 또는 명령어식별코드를 기반으로 명령어 판단 또는 가상코드가 정상적으로 생성된 것인 검증하는 역할을 수행한다.
일실시예로, 도 3에서와 같이, 상기 제어모듈(200)은, 세부코드추출부(201); 및 명령어탐색부(202);를 포함한다. 상기 세부코드추출부(201)는 상기 가상코드에 포함된 복수의 세부코드를 추출하는 역할을 수행한다. 상기 가상코드는 복수의 세부코드를 특정한 규칙에 따라 결합하여 생성되는 것이고, 상기 복수의 세부코드는 동일시점에 상기 명령어에 따라 상이하게 생성되는 것이며, 단위카운트마다 상이하게 생성되는 것이다.
제어모듈(200)의 세부코드추출부(201)는 제어신호생성수단과 동일한 세부코드결합함수를 포함하여, 세부코드추출부(201)는 세부코드결합함수를 적용하여 가상코드에서 복수의 세부코드를 추출할 수 있다. 예를 들어, 제어신호생성수단에서 두 개의 세부코드(즉, 제1코드 및 제2코드)가 결합된 가상코드를 생성하는 경우, 세부코드추출부(201)는 가상코드의 문자배열에서 세부코드결합함수를 적용하여 제1코드 및 제2코드를 분리해낼 수 있다.
상기 명령어탐색부(202)는 복수의 세부코드를 기반으로 특정한 명령어가 포함된 저장위치를 탐색하는 역할을 수행한다. 상기 명령어탐색부(202)는 단위카운트마다 정상적으로 생성된 가상코드가 수신되면, 상기 제1코드에 대응하는 상기 시작지점으로부터 상기 제2코드에 상응하는 탐색경로에 따라 이동한 지점을 상기 저장위치로 판단한다. 제어모듈(200)이 저장위치를 판단하는 구체적인 방식은 상세히 후술한다.
다른 일실시예로, 도 4에서와 같이, 상기 제어모듈(200)은, 세부코드추출부(201); 가상코드검증부(203); 및 제어결정부(204);를 포함한다. 상기 세부코드추출부(201)는 상기 가상코드에 포함된 명령어식별코드 및 하나 이상의 세부코드를 추출한다. 상기 가상코드는 명령어식별코드 및 하나 이상의 세부코드를 특정한 규칙에 따라 결합하여 생성되는 것이고, 상기 세부코드는 동일시점에 상기 명령어에 따라 상이하게 생성되는 것이며, 단위카운트마다 상이하게 생성되는 것이다.
일 예로, 세부코드추출부(201)는 미리 정해진 위치에서 명령어식별코드를 추출한다. 구체적으로, 명령어식별코드는 특정한 세부코드결합함수가 판단되기 전에 먼저 추출되어야 하므로, 제어모듈(200)와 제어신호생성모듈(100)은 특정한 위치(예를 들어, 가상코드의 처음 N개 자릿수)에 명령어식별코드를 부착하는 것으로 미리 정하고, 제어모듈(200)은 가상코드를 수신하면 미리 정해진 위치에서 명령어식별코드를 추출한다. 제어모듈(200)은, 가상코드가 정상적으로 생성된 것으로 판단되면, 명령어식별코드에 대응되는 명령어를 제어명령으로 결정한다.
또한, 세부코드추출부(201)는, 가상코드가 하나의 세부코드(예를 들어, 가상보안코드)만 포함하는 경우, 명령어식별코드를 제외한 나머지 코드를 세부코드로 판단한다.
또한, 세부코드추출부(201)는, 가상코드가 복수의 세부코드(예를 들어, 제1코드 및 제2코드)를 포함하는 경우), 특정한 명령어에 대응되는 가상코드생성함수 내 세부코드결합함수를 이용하여 복수의 세부코드를 분리한다. 또한, 복수의 세부코드가 가상보안코드를 포함하는 경우, 세부코드추출부(201)는 가상보안코드를 별도로 추출한다.
상기 가상코드검증부(203)는 상기 하나 이상의 세부코드를 기반으로 가상코드가 정상적으로 생성된 것인지 검증한다. 일실시예로, 세부코드로 하나의 가상보안코드만을 포함하는 경우, 전술한 바와 같이, 제어모듈(200)은 제어신호생성모듈(100)에서 생성되어 제공된 가상보안코드(즉, 수신가상보안코드)와 제어모듈(200) 내에서 명령어 수신시점에 생성된 가상보안코드(즉, 생성가상보안코드)를 비교하여 가상코드가 정상적으로 생성된 것인지 검증한다(이하, 제1검증방식).
또한, 다른 일실시예로, 복수의 세부코드로 제1코드와 제2코드를 포함하는 경우, 특정한 명령어식별코드에 대응되는 저장위치탐색알고리즘에 제1코드와 제2코드를 적용하여 탐색된 저장위치 내에서 명령어가 포함되어 있는지 여부 또는 저장위치 내의 명령어와 명령어식별코드에 대응되는 명령어가 일치하는지 여부를 비교하여, 가상코드가 정상적으로 생성된 것인지 검증한다(이하, 제2검증방식). 제어모듈(200)이 제1코드 및 제2코드를 이용하여 저장위치탐색알고리즘에서 저장위치를 탐색하는 방식은 후술한다.
또한, 또 다른 일실시예로, 복수의 세부코드로 제1코드, 제2코드 및 가상보안코드를 포함하는 경우, 제어모듈(200)은 상기 제1검증방식 및 상기 제2검증방식 중 적어도 하나를 적용하여 가상코드가 정상적으로 생성되었는지 여부를 검증한다.
상기 제어결정부(204)는 상기 가상코드가 정상적으로 생성된 것이면 상기 명령어식별코드에 대응되는 명령어를 입력한다. 즉, 제어결정부(204)는 정상적으로 생성된 가상코드 내의 명령어식별코드에 대응되는 명령어를 제어명령으로 결정하여 제어디바이스를 구동한다.
도 5는 본 발명의 일실시예에 따른 가상코드를 포함하는 제어신호 기반 제어방법의 순서도이다.
도 5를 참조하면, 본 발명의 일실시예에 따른 가상코드를 포함하는 제어신호 기반 제어방법은, 제어모듈(200)이 제어신호생성수단으로부터 특정시점에 생성된 제어신호를 수신하는 단계(S120; 제어신호 수신단계); 상기 제어모듈(200)이 상기 가상코드에 포함된 복수의 세부코드를 추출하는 단계(S140; 세부코드추출단계); 및 상기 제어모듈(200)이 복수의 세부코드를 기반으로 특정한 명령어가 포함된 저장위치를 탐색하는 단계(S160; 명령어 탐색단계);를 포함한다.
제어모듈(200)이 제어신호생성수단으로부터 특정시점에 생성된 제어신호를 수신한다(S120; 제어신호 수신단계). 예를 들어, 제어모듈(200)은 제어디바이스의 제2무선통신모듈(220)이 수신한 제어신호 내에 포함된 가상코드를 획득한다. 상기 제어신호는 특정한 명령어에 대응되는 특정한 가상코드를 포함한다.
제어모듈(200)이 상기 가상코드에 포함된 복수의 세부코드를 추출한다(S140). 제어모듈(200)은 가상코드 생성 시에 이용된 세부코드결합함수를 역으로 적용하여 각각의 세부코드를 추출한다.
가상코드는, 전술한 바와 같이, 제어신호생성모듈(100) 내의 특정한 제어디바이스와 특정한 명령어에 대응되는 가상코드생성함수에 의해 생성된다. 상기 가상코드는 가상코드생성함수 내에 포함된 복수의 세부코드생성함수에 의해 복수의 세부코드를 생성하고, 복수의 세부코드를 특정한 규칙(즉, 세부코드결합함수)에 따라 결합하여 생성된다. 즉, 상기 가상코드생성함수는, 각각의 세부코드를 생성하는 복수의 세부코드생성함수; 및 각각의 세부코드를 특정한 결합규칙에 따라 결합하는 세부코드결함함수;를 포함할 수 있다. 상기 세부코드생성함수는 제어디바이스의 고유값 또는 제어신호생성수단의 고유값을 반영하여 제어디바이스마다 상이한 결합규칙을 적용한다.
상기 가상코드는 명령어가 입력된 시점(또는 카운트) 또는 명령어 유형에 무관하게 중복되게 생성되지 않는다. 전술된 가상코드생성방식에 대한 상세한 설명은 생략한다.
제어모듈(200)이 복수의 세부코드를 기반으로 특정한 명령어가 포함된 저장위치를 탐색한다(S160; 명령어 탐색단계). 복수의 세부코드는 상호간에 상관관계를 가지고 있고, 제어모듈(200)은 세부코드 간의 상관관계를 기반으로 명령어 저장위치를 탐색한다.
상기 제어모듈(200)은 특정한 제어디바이스에 대한 복수의 명령어를 상이한 초기 단위카운트에 대응되는 저장위치에 저장한다. 제어모듈(200)은 각각의 명령어에 대응하는 가상코드 내의 제1코드 및 제2코드를 통해 해당 명령어가 매칭된 초기 단위카운트를 탐색한다. 일실시예로, 각각의 명령어에 대한 초기 단위카운트는, 제어모듈(200)과 제어신호생성모듈(100) 간의 초기설정시점(예를 들어, 후술되는 저장위치탐색알고리즘이 구동되는 최초시점)으로부터 경과되는 특정한 카운트 개수이다. 제어모듈(200)은 명령어에 따라 초기설정시점으로부터 상이한 카운트 개수를 설정한다.
그리고, 제어모듈(200)과 제어신호생성모듈(100)은 각 명령어에 대한 초기 단위카운트(즉, 초기설정시점으로부터 경과된 단위카운트 개수)를 기반으로 가상코드생성함수를 설정한다. 예를 들어, 가상코드가 세부코드인 제1코드와 제2코드로 이루어지고, 제1코드가 초기설정시점으로부터 현재시점까지 경과된 단위카운트 개수를 기반으로 생성되고 제2코드가 각 명령어에 대응되는 시점으로부터 경과된 단위카운트 개수를 기반으로 생성되는 경우, 제어모듈(200)과 제어신호는 각 명령어에 대한 제2코드를 생성하는 제2함수를 각각 생성한다. 이를 통해, 제어모듈(200)과 제어신호생성모듈(100)은 명령어를 가상코드의 형태로 송수신할 수 있다.
가상코드 내의 복수의 세부코드는 단위카운트마다 생성되는 코드가 변경(예를 들어, 가상코드가 2개의 세부코드로 이루어지는 경우, 제1코드 및 제2코드는 단위카운트마다 변경)될 수 있고, 제어모듈(200)은 단위카운트마다 가상코드가 변경되어도 명령어 저장위치를 탐색할 수 있도록 명령어 저장위치에 매칭된 지점을 변경된 제1코드 및 제2코드에 부합하는 위치로 단위카운트마다 조절한다.
가상코드를 구성하는 세부코드 간의 상관관계에 관한 일실시예로, 제어모듈(200)은 단위카운트마다 정상적으로 생성된 가상코드가 수신되면, 복수의 세부코드를 기반으로 탐색시작지점과 탐색경로를 결정하여 저장위치로 탐색한다. 구체적으로, 가상코드가 제1코드와 제2코드의 결합으로 이루어지는 경우, 제어모듈(200)은 제1코드를 탐색시작지점(즉, 명령어 저장위치의 탐색을 시작하는 지점)으로 설정하고, 제2코드를 상기 탐색시작지점으로부터 저장위치로 이동하는 경로로 적용하여 저장위치를 탐색할 수 있다. 즉, 단위카운트마다 정상적으로 생성된 가상코드가 수신되면, 제어모듈(200)은 제1코드에 대응하는 시작지점으로부터 상기 제2코드에 상응하는 탐색경로에 따라 이동한 탐색지점을 명령어의 저장위치 또는 저장위치에 매칭된 지점(예를 들어, 별도 서버에 탐색지점에 매칭되어 있는 저장공간)으로 판단한다.
일실시예로, 제2코드가 제1코드에 상응하는 탐색시작지점으로부터의 저장위치까지의 경로에 대한 정보를 모두 포함하는 경우, 제어모듈(200)은 제1코드에 상응하는 탐색시작지점으로부터 제2코드에 상응하는 탐색경로에 따라 명령어 저장위치 또는 저장위치에 매칭된 지점을 찾을 수 있다.
다른 일실시예로, 제어모듈(200)은 단위카운트마다 명령어의 저장위치를 가상코드에 부합하게 조절하는 저장위치탐색알고리즘을 포함할 수 있다. 즉, 상기 제어모듈(200)은, 단위카운트마다 명령어 저장위치에 매칭된 지점으로의 탐색경로를 조절하는 저장위치탐색알고리즘을 포함한다. 상기 제1코드 및 상기 제2코드는 단위카운트마다 변경되는 경우, 제어모듈(200)은 변경되는 제1코드 및 제2코드에 부합하게 저장위치탐색알고리즘을 조절할 수 있다. 상기 저장위치탐색알고리즘은 다양한 형태로 구현될 수 있다.
일실시예로, 도 6에서와 같이, 저장위치탐색알고리즘이 k(k는 MN)개의 코드가 나열된 트랙 상을 k각형이 각 코드가 배치된 지점에 꼭지점이 대응되면서 구름이동하는 것일 수 있다. 이 때, 상기 명령어탐색단계(S160)는, 제어모듈(200)이 상기 제어신호생성수단으로부터 수신된 상기 가상코드 내 제1코드에 대응하는 트랙 상의 지점으로 k각형을 구름이동하는 단계(S161); 상기 제1코드에 대응하는 위치를 시작지점으로 설정하고, 상기 제2코드에 적용된 탐색방식에 따라 제2코드를 기반으로 k각형의 배치상태에서의 저장위치 또는 상기 저장위치가 매칭된 지점을 탐색하는 단계(S162; 저장위치탐색단계); 및 상기 저장위치에 포함된 명령어를 추출하는 단계(S163);를 포함한다.
제어모듈(200)은, 도 7에서와 같이, 제어신호생성수단으로부터 수신된 상기 가상코드 내 제1코드에 대응하는 트랙 상의 지점으로 k각형을 구름이동한다(S161). 저장위치탐색알고리즘은 제1코드에 해당하는 MN개의 코드가 나열된 트랙을 따라 구름이동하는 k각형(k는 MN)이며, k각형의 꼭지점이 제1코드 트랙 상에 코드가 배치되는 지점에 대응되면서 이동한다. 이 때, 제어모듈(200)은 제1코드에 대응되는 지점에 k각형의 꼭지점이 접하도록 k각형을 구름이동(또는 구름이동)을 적용할 수 있다.
제어모듈(200)은, 도 7에서와 같이, 상기 제1코드에 대응하는 위치가 시작지점으로 설정하고, 상기 제2코드에 적용된 탐색방식에 따라 제2코드를 기반으로 k각형의 배치상태에서의 저장위치 또는 저장위치에 매칭된 지점(즉, k각형의 특정한 꼭지점)을 탐색한다(S162; 저장위치탐색단계). 상기 저장위치는 상기 k각형의 각각의 꼭지점에 매칭된다. 제1코드 트랙(즉, 제1트랙)과 k각형이 대응되는 지점이 제1코드에 대응하는 저장위치 탐색시작지점이 된다. 제어모듈(200)은 탐색시작지점에서 제2코드를 기반으로 저장위치의 매칭지점을 탐색한다.
제2코드를 기반으로 k각형에서 저장위치를 탐색하는 방식으로는 다양한 방식이 적용될 수 있다. 일 예로, 제어모듈(200)은 k각형이 접한 제1트랙 상의 위치에서 제2코드에 상응하는 각도(예를 들어, k각형의 꼭지점을 향하도록 180도를 MN개로 분할한 특정한 각도)로 지시함에 따라, 가상코드에 대응하는 명령어가 저장된 저장위치인 k각형의 꼭지점을 탐색할 수 있다.
또한, 다른 예로, k각형이 제1트랙 상의 제1코드에 대응하는 지점에 접한 상태에서, 제어모듈(200)은 k각형의 중심과 제1트랙 상의 접점을 기준으로, 전체 중심각(즉, 360도)을 MN개로 분할하고, 각각의 각도를 MN개의 제2코드에 매칭한다. 이 때, k각형의 중심과 제1트랙 상의 접점을 이은 선으로부터 특정개수의 단위각도(즉, 360도/MN)를 이동한 선의 방향은 k각형의 특정한 꼭지점이 된다. 따라서, 특정한 각도에 대응하는 제2코드가 수신되면, 제어모듈(200)은 해당 각도 방향에 위치한 꼭지점을 탐색할 수 있다.
또한, 다른 예로, 제2코드의 특정 자리를 각도산출 방향을 결정하는 것으로 사용할 수 있다. 즉, N개(N은 자연수)의 문자를 이용하여 제2코드를 생성하는 경우, 1개의 자리(Digit)로 각도 측정방향을 결정할 수 있다. 예를 들어, 제어모듈(200)은 k각형의 중심과 제1트랙 상의 접점을 기준으로, 전체 중심각(즉, 360도)을 분할하여 각각의 각도에 제2코드를 매칭하는 경우, k각형의 중심과 제1트랙 상의 접점을 이은 선으로부터 좌측방향으로 측정되는 각도인지 우측방향으로 측정되는 각도인지를 1개의 자리(Digit)의 값으로 결정할 수 있다.
일 예로, 저장위치탐색알고리즘은, k각형 상의 각 꼭지점에 각도 측정방향에 따라 다른 2개의 제2코드가 하나의 꼭지점에 배정할 수 있다. 즉, 하나의 꼭지점에 내각으로 도달 시와 외각으로 도달 시에 다른 제2코드와 매칭되고, 다른 명령어가 연결될 수 있다. 다른 일 예로, 저장위치탐색알고리즘은, N개(N은 자연수)의 문자를 이용하여 제2코드를 생성하는 경우에 N-1개로 전체각도(예를 들어, 중심각을 기준으로 분할하는 경우 360도)의 반에 대해 매칭하고 1개 자리를 이용하여 각 꼭지점에 도달하기 위한 각도 적용방향을 결정할 수 있다.
제2코드를 기반으로 k각형에서 저장위치를 탐색하는 방식은 이에 한정되지 아니하고, 제2코드에 상응하는 k각형 상의 지점과 제1트랙 상의 접점 사이를 특정한 비율로 나누는 지점을 저장위치로 탐색하는 방식 등의 다양한 방식이 적용될 수 있다.
그 후, 제어모듈(200)은 상기 저장위치에 포함된 명령어를 추출한다(S163). 즉, 제어모듈(200)은 k각형의 꼭지점에 대응되는 저장위치를 찾아서, 저장위치 내의 명령어를 추출한다.
또한, 다른 일실시예로, 상기 저장위치탐색알고리즘은 가상코드를 구성하는 복수의 세부코드를 기반으로 트랙상을 이동하여 명령어 저장위치에 매칭된 지점으로 이동하는 것이다. 일 예로, 상기 명령어저장위치에 매칭된 지점은 제어신호생성모듈(100)에 명령어가 저장된 카운트(즉, 시점)에 대응하는 트랙상의 지점일 수 있다. 이를 위해, 상기 저장위치탐색알고리즘이 하나의 트랙상에서 제1코드 및 제2코드를 기반으로 포인터를 이동시키는 것인 경우, 상기 명령어 탐색단계(S160)는, 도 8에서와 같이, 상기 제어신호생성수단으로부터 수신된 상기 가상코드 내 제1코드에 대응하는 트랙 상의 지점으로 포인터를 이동하는 단계(S164); 상기 제1코드에 대응하는 위치를 탐색시작지점으로 설정하고, 상기 제2코드에 대응하는 카운트 수만큼 트랙을 회귀하여 명령어 저장위치에 매칭된 지점을 탐색하는 단계(S165); 및 명령어 저장위치에 포함된 상기 명령어를 추출하는 단계(S166);를 포함한다.
구체적으로, 도 9를 참조하면, 하나의 트랙상에서 제1코드와 제2코드를 기반으로 이동하는 저장위치탐색알고리즘을 이용하는 경우, 제어모듈(200)은 가상코드생성함수가 구동된 시점부터 트랙 시작지점에서 출발한 포인터(Pointer)가 단위카운트가 경과될 때마다 트랙 상의 분할단위를 이동하여 명령어 저장시점(A시점)에 위치한 트랙상의 지점을 명령어 저장위치에 매칭된 지점으로 결정할 수 있다. 구체적으로, 가상코드가 가상코드생성함수가 구동된 시점으로부터 경과된 시간을 기반으로 생성된 제1코드와 특정한 제어신호생성모듈(100)에 명령어가 저장된 시점으로부터 경과된 시간을 기반으로 생성된 제2코드를 포함하는 경우, 제어모듈(200)은 제1코드에 대응되는 코드값이 매칭된 트랙상의 카운트를 탐색시작지점으로 설정하고, 제2코드에 제2함수의 역함수를 적용함에 따라 산출된 카운트값만큼 상기 탐색시작지점으로부터 트랙을 따라서 회귀하여 저장위치탐색알고리즘에 명령어가 저장된 시점의 트랙상의 지점(즉, 명령어저장위치에 매칭된 지점)을 탐색한다. 제어모듈(200)은 상기 저장위치에서 추출된 상기 명령어로 제어디바이스를 제어한다.
또한, 다른 일실시예로, 상기 제어모듈(200)이 상기 제1코드 또는 상기 제2코드를 상기 제1함수 또는 제2함수의 역함수를 적용하여 정상적으로 생성된 가상코드에 해당하는지 검증하는 단계;를 더 포함한다. 예를 들어, 제1코드가 제어모듈(200) 내에서 특정한 가상코드생성함수 및 저장위치탐색알고리즘이 구동된 최초시점(즉, 제어디바이스가 초기 구동 또는 초기 설정된 시점)으로부터 경과된 카운트 개수에 대응하는 코드값이고, 제2코드가 특정한 명령어가 매칭된 시점(즉, 상기 최초시점으로부터 특정한 명령어에 매칭된 특정 카운트 개수가 경과된 시점)으로부터 경과된 카운트 개수에 대응하는 코드값인 경우, 제어모듈(200)은 명령어를 저장위치에 저장할 때 특정 카운트 개수(즉, 특정한 명령어가 매칭된 카운트와 최초시점 사이의 카운트 개수)에 대응하는 시간길이(Ts)를 함께 저장한다. 제어모듈(200)은 가상코드 내 제1코드에 제1함수의 역함수를 적용하여 가상코드생성함수 구동 시로부터 가상코드 생성시점까지의 경과시간(T1)을 산출하고, 가상코드 내 제2코드에 제2함수의 역함수를 적용하여 명령어 발급 시로부터 가상코드 생성시점까지의 경과시간(T2)를 산출한다. 그 후, 제어모듈(200)은 T1과 T2의 차이가 Ts에 해당하는지 여부를 판단하여 가상코드를 검증한다.
또한, 다른 일실시예로, 가상코드는 가상보안코드를 더 포함한다. 이 때, 제어모듈(200)은 가상코드에서 가상보안코드를 추출하여 가상코드가 정상적으로 생성된 것인지 검증하는 과정을 수행할 수 있다.
일실시예로, 가상보안코드는 제어디바이스 또는 제어신호생성수단의 고유값을 기반으로 생성될 수 있다. 상기 고유값은 각각의 제어디바이스 또는 제어신호생성모듈(100)마다 개별적으로 부여된 장치고유값이다. 예를 들어, 특정한 스마트폰을 제어신호생성수단으로 이용하여 제어신호생성모듈(100)에 해당하는 어플리케이션이 설치되는 경우, 상기 고유값은 각각의 스마트폰 마다 부여되는 것이므로, 악의적 목적으로 스마트폰을 해킹하거나 사용자의 스마트폰을 몰래 확인하여 고유값을 획득하지 않으면 확인할 수 없다. 따라서, 제어모듈(200)이 제어신호생성수단에 의해 고유값을 기반으로 생성된 가상보안코드를 수신하여 제어신호생성수단을 검증할 수 있다.
또한, 다른 일실시예로, 제어신호생성수단은 시간값을 반영하여 가상보안코드를 생성할 수 있다. 즉, 제어신호생성수단은 OTP(One Time Password: 고정된 패스워드 대신 무작위로 생성되는 일회용 패스워드를 이용하는 사용자인증)방식을 이용하여 가상보안코드를 생성할 수 있다. 제어모듈(200)은 가상보안코드에 해당하는 OTP번호를 제어신호생성수단으로부터 수신하고, 제어신호생성수단으로부터 OTP번호를 수신한 카운트로부터 특정범위 내의 카운트에서 산출된 OTP번호를 비교하여 제어신호생성수단을 검증한다. 즉, 제어모듈(200)은 명령어 저장위치 내에 제어디바이스 또는 제어신호생성모듈(100)의 고유값을 함께 저장하여서, 가상코드가 수신된 시점에 명령어 저장공간에서 추출된 고유값을 이용하여 생성된 OTP번호와 제어신호생성수단으로부터 수신된 OTP번호가 일치하는지 판단하여 제어신호생성수단을 검증(즉, 가상코드가 제어디바이스와 매칭된 제어신호생성수단에서 생성된 것인지를 검증)한다.
또한, 다른 일실시예로, 가상보안코드는 제어신호생성모듈(100)이 외부로 출력하지 않고 제1코드 및 제2코드 생성에 반영될 수 있다. 예를 들어, 상기 가상코드는, 상기 초기 단위카운트에 대응되는 시점 또는 명령어 입력시점에서 가상보안코드를 더한 카운트를 기반으로 생성된 제1코드 및 제2코드로 구성된다. 이 때, 상기 가상보안코드는, 제어신호생성수단의 고유값 또는 제어디바이스의 고유값을 기반으로 OTP함수를 통해 생성되는 특정자릿수의 코드값일 수 있고, 제1코드와 제2코드의 생성에 반영됨에 따라 제어신호생성수단으로부터 제어모듈(200)로 별도로 제공되지 않을 수 있다.
일실시예로, 도 10에서와 같이, 제어신호생성수단은 제어신호생성수단 또는 제어디바이스의 고유값을 기반으로 생성된 가상보안코드값을 명령어 저장시점에 더한 카운트의 제1코드를 생성하고, 가상보안코드값에 대응되는 카운트의 제2코드를 생성한다. 즉, 제1코드 및 제2코드는 제어신호생성수단A에 명령어가 저장된 A시점으로부터 가상보안코드값만큼 이동(shifting)된 카운트를 기반으로 생성된다. A시점으로부터 이동(Shifting)된 카운트는 생성되는 가상보안코드 값에 따라 현재시점에 대응하는 카운트보다 이전 카운트가 될 수도 있고, 이후 카운트가 될 수도 있다. 제어모듈(200)은 수신된 제1코드와 제2코드를 저장위치탐색알고리즘에 적용하여 명령어 저장위치가 매칭된 지점을 탐색할 수 있다. 이를 통해, 타인이 가상코드를 구성하는 제1코드 및 제2코드가 제공되는 순서를 확인할 수 없게 되어, 보안성이 향상될 수 있다.
또한, 다른 일실시예로, 제어모듈(200)은 가상보안코드를 기반으로 생성된 제2코드에서 가상보안코드를 추출한 후, 가상보안코드생성함수(즉, OTP함수)를 가상코드를 수신한 카운트로부터 특정범위 내의 카운트를 입력하여 산출된 OTP번호 중에 가상보안코드와 일치하는 값이 있는지 여부를 확인한다. 제어모듈(200)은 제2코드에 제2함수의 역함수를 적용하여 제2코드 생성에 이용된 가상보안코드값(즉, OTP함수값)을 획득하고, 가상보안코드값과 동일한 값을 산출하는 카운트를 찾아낸다. 가상코드의 전송시간에 의해 제어신호생성모듈(100)에서 가상보안코드가 생성된 시점과 제어모듈(200)이 가상보안코드를 수신한 시점의 차이가 존재함에 따라 제어모듈(200)이 가상코드를 수신한 카운트와 가상보안코드에 해당하는 OTP번호를 생성한 카운트가 일치하지 않을 수도 있으므로, 제어모듈(200)은 가상코드를 수신한 카운트로부터 오차범위를 허용한다. 이를 통해, 제어모듈(200)은 가상코드를 전송한 제어신호생성모듈(100)이 정상적으로 명령어와 매칭된 것인지 검증할 수 있어서, 보안성이 향상될 수 있다. 또한, 사용자는, 가상코드 입력 시에 특정한 자릿수의 가상보안코드를 입력하지 않아도 제어모듈(200)이 자체적으로 가상보안코드를 탐색하여 제어신호생성수단을 검증(즉, 가상코드가 제어디바이스와 매칭된 제어신호생성수단에서 생성된 것인지를 검증)하므로, 제어신호생성수단을 간편하게 사용할 수 있다.
또한, 다른 일실시예로, 제어신호생성수단은 명령어 입력 시점(즉, 사용자로부터 제어신호생성수단에 특정한 명령어에 대응되는 제어명령이 입력된 시점)에 제어신호생성수단 또는 제어디바이스의 고유값을 기반으로 생성된 가상보안코드값을 더한 카운트에 대응하는 제1코드를 생성하고, 명령어 저장시점(A시점)과 명령어 입력 시점(C시점) 간의 카운트 차이와 가상보안코드값을 더한 카운트에 대응하는 제2코드를 생성한다. 즉, 제어신호생성수단이 제1코드와 제2코드를 생성하는 수신은 다음과 같다.
제1코드 = f1(C시점 카운트 + 가상보안코드)
제2코드 = f2(C시점 카운트 ?? A시점 카운트 + 가상보안코드)
(A시점: 명령어 저장시점, C시점: 명령어 입력시점의 카운트, 가상보안코드: OTP번호)
제어모듈(200)은 수신한 가상코드 내의 제1코드 및 제2코드를 기반으로 명령어 저장위치를 탐색하고, 명령어 저장위치 내에 함께 포함된 제어신호생성수단 또는 제어디바이스의 고유값을 추출한다. 제어모듈(200)은 제어신호생성수단 또는 제어디바이스의 고유값을 기반으로 제어신호 수신시점으로부터 특정카운트 범위 내의 가상보안코드(즉, OTP번호)를 생성한다. 그 후, 제어모듈(200)은 명령어 초기 저장시점(A시점)으로부터 제어신호 수신시점을 기준으로 특정카운트범위 내의 각 카운트까지의 카운트 개수와 가상보안코드(즉, OTP번호)의 합이 제2코드에 대응하는 카운트수(즉, 제2코드에 제2함수의 역함수를 적용한 값)와 같은 카운트가 존재하는지 확인한다. 제어모듈(200)은 제1코드 및 제2코드를 기반으로 명령어 저장위치가 매칭된 지점을 탐색함에 따라 명령어 초기 저장시점을 파악할 수 있다. 이를 통해, 제어모듈(200)은 가상코드를 제공한 제어신호생성수단이 정상적인 것인지(즉, 해당 가상코드를 송신한 제어신호생성수단이 제어디바이스와 1:1로 매칭된 것인지) 또는 가상코드가 정상적으로 생성된 것인지 여부를 확인할 수 있다.
또한, 다른 일실시예로, 도 11에서와 같이, 상기 제어모듈(200)이 상기 제어디바이스 내의 위치정보획득모듈에 의해 획득되는 시간데이터를 기반으로 상기 제어신호생성수단과 시간 동기화하여 단위카운트를 일치시키는 단계(S110);를 더 포함한다. 제어디바이스와 제어신호생성모듈(100)은 위치정보획득모듈(예를 들어, GPS모듈)을 포함할 수 있다. 제어모듈(200)과 제어신호생성모듈(100)은 시간경과에 따라 단위카운트를 증가시키므로, 내부의 타이머 오차를 최소화하기 위해 시간 동기화하는 과정이 필요하다. 제어모듈(200)와 제어신호생성모듈(100)은 위치정보획득모듈에 의해 획득된 시간데이터로 동기화를 수행하여 타이머 오차를 없앨 수 있다.
도 12는 본 발명의 일실시예에 따른 가상코드를 포함하는 제어신호 기반 제어방법의 순서도이다.
도 12를 참조하면, 본 발명의 다른 일실시예에 따른 가상코드를 포함하는 제어신호 기반 제어방법은, 제어모듈(200)이 제어신호생성수단으로부터 특정시점에 생성된 제어신호를 수신하는 단계(S220; 제어신호 수신단계); 제어모듈(200)이 상기 가상코드에 포함된 하나 이상의 세부코드 및 상기 명령어식별코드를 추출하는 단계(S240); 상기 제어모듈(200)이 상기 하나 이상의 세부코드를 기반으로 가상코드가 정상적으로 생성된 것인지 검증하는 단계(S260); 및 상기 제어모듈(200)이 상기 가상코드가 정상적으로 생성된 것이면 상기 명령어식별코드에 대응되는 명령어를 입력하는 단계(S280);를 포함한다. 기 설명된 내용에 대한 상세한 설명은 생략한다.
제어모듈(200)이 제어신호생성수단으로부터 특정시점에 생성된 제어신호를 수신한다(S220). 상기 제어신호는 특정한 가상코드를 포함하고, 상기 가상코드는 명령어식별코드 및 하나 이상의 세부코드를 특정한 규칙에 따라 결합하여 생성되는 것이다. 전술된 가상코드에 대한 상세한 설명은 생략한다.
제어모듈(200)이 상기 가상코드에 포함된 하나 이상의 세부코드 및 상기 명령어식별코드를 추출한다(S240). 상기 가상코드는 동일시점에 상기 명령어에 따라 상이하게 생성되는 것이며, 단위카운트마다 상이하게 생성되는 것이다.
가상코드가 제어신호생성수단이 명령어를 안내하는 코드인 명령어식별코드를 포함하는 경우, 상기 세부코드추출단계(S240)는 상기 가상코드 내에서 명령어식별코드를 추출하고, 상기 명령어식별코드를 기반으로 상기 제어신호생성모듈(100)의 명령어 종류를 판단한다.
또한, 전술된 바와 같이, 명령어식별코드는 제어모듈(200)이 별도의 함수를 이용하지 않고 식별할 수 있도록 미리 정해진 위치에 결합될 수 있다. 예를 들어, 가상코드가 복수의 식별코드를 포함하는 경우, 명령어식별코드를 이용하여 가상코드생성함수를 결정하는 과정은, 복수의 세부코드를 추출하는 과정 이전에 수행될 수 있다. 명령어식별코드에 의해 가상코드생성함수가 결정되어야 가상코드생성함수 내에 포함된 세부코드결합함수가 결정되어 복수의 세부코드를 추출할 수 있다. 이를 위해, 제어모듈(200)이 별도의 함수 없이도 용이하게 분리해내도록, 명령어식별코드는 가상코드 내에 고정된 위치(예를 들어, 가상코드의 제일 앞의 특정 개수의 자리)에 결합될 수 있다.
상기 명령어식별코드는 특정한 명령어에 대한 가상코드생성함수 또는 상기 저장위치탐색알고리즘을 결정한다. 구체적으로, 제어모듈(200)은 각 명령어별로 상이한 저장위치탐색알고리즘을 각각 이용하는 경우에 명령어식별코드를 통해 명령어에 대응하는 저장위치탐색알고리즘을 판단하고, 명령어식별코드에 세부코드로 가상보안코드만 결합하여 전송하는 경우에 명령어식별코드를 통해 명령어에 대응하는 가상보안코드를 생성하는 가상보안코드생성함수를 판단한다.
상기 제어모듈(200)이 상기 하나 이상의 세부코드를 기반으로 가상코드가 정상적으로 생성된 것인지 검증한다(S260). 제어모듈(200)은 가상코드가 정상적으로 생성된 것인지 판단함에 따라 가상코드를 전송한 제어신호생성수단이 제어디바이스와 정상적으로 매칭된 것인지 여부를 판단한다. 가상코드가 정상적으로 생성된 것인지 판단하는 방식으로는 다양한 방식이 적용될 수 있다.
또한, 다른 일실시예로, 도 13에서와 같이, 상기 가상코드 검증단계(S260)는, 상기 제어모듈(200)이 특정한 명령어에 대응되는 저장위치탐색알고리즘을 기반으로 복수의 세부코드를 이용하여 저장위치를 탐색하는 단계(S261); 및 상기 저장위치 내에 명령어가 저장되어 있는지 여부 또는 상기 저장위치 내의 명령어와 상기 명령어식별코드에 대응되는 명령어가 일치하는지 여부를 판단하여 가상코드를 검증하는 단계(S262);를 포함한다. 기 설명된 세부코드 생성방식에 대한 상세한 설명 및 저장위치탐색알고리즘에 의해 저장위치를 탐색하는 방식에 대한 상세한 설명은 생략한다.
일실시예로, 상기 가상코드는 제1코드 및 제2코드를 포함하고, 상기 제어모듈(200)은 상기 명령어에 따라 상이한 상기 저장위치탐색알고리즘을 포함하고, 각각의 명령어를 각 명령어의 저장위치탐색알고리즘 내의 특정한 명령어 저장시점(즉, 초기 단위카운트)에 대응되는 저장위치에 저장하고, 단위카운트마다 정상적으로 생성된 가상코드가 수신되면, 상기 제1코드에 대응하는 상기 시작지점으로부터 상기 제2코드에 상응하는 탐색경로에 따라 이동한 지점을 상기 저장위치로 판단한다.
또한, 다른 일실시예로, 상기 가상코드 검증단계(S260)는, 상기 제어모듈(200)이 가상코드를 수신한 시점으로부터 특정범위 내의 시간값을 기반으로 산출된 생성가상보안번호를 상기 가상코드에서 추출된 수신가상보안코드와 비교하여 상기 가상코드가 정상적으로 생성된 것인지 검증한다. 즉, 상기 세부코드는 가상보안코드를 포함한다. 상기 가상보안코드는, 제어신호생성수단의 고유값 또는 제어디바이스의 고유값을 기반으로 OTP함수를 통해 생성되는 특정자릿수의 코드값일 수 있다. 기 설명된 가상보안코드를 이용하여 가상코드를 검증하는 방식에 대한 상세한 설명은 생략한다.
가상코드는 세부코드로 가상보안코드만을 포함할 수도 있고, 제1코드 및 제2코드와 함께 가상보안코드를 포함할 수도 있다. 세부코드가 가상보안코드로만 형성되는 경우, 제어모듈(200)은 가상코드에서 명령어식별코드를 제외한 나머지 코드를 가상보안코드로 판단한다. 또한, 가상보안코드는 제1코드와 제2코드 생성 시에 이용되어 직접 가상코드에 포함되어 전송되지 않을 수 있다. 기 설명된 제1코드와 제2코드 생성 시에 가상보안코드를 이용하는 방식 및 제1코드와 제2코드에서 가상보안코드를 추출하는 방식에 대한 상세한 설명은 생략한다.
제어모듈(200)이 상기 가상코드가 정상적으로 생성된 것이면 상기 명령어식별코드에 대응되는 명령어를 입력한다(S280).
도 14는 본 발명의 일실시예에 따른 가상코드를 포함하는 제어신호 기반 제어방법의 순서도이다.
도 14를 참조하면, 본 발명의 또 다른 일실시예에 따른 가상코드를 포함하는 제어신호 기반 제어방법은, 제어신호생성수단이 사용자로부터 특정한 명령어입력요청을 수신하는 단계(S320); 상기 제어신호생성수단이 상기 명령어입력요청에 따라 특정한 명령어에 대응되는 가상코드생성함수를 기반으로 가상코드를 생성하는 단계(S340); 및 상기 제어신호생성수단이 가상코드를 제어신호로 제어디바이스에 전송하는 단계(S360);를 포함한다. 제어신호생성수단에 대한 설명에서 기설명된 내용에 대한 상세한 기재는 생략한다.
제어신호생성수단이 사용자로부터 특정한 명령어입력요청을 수신한다(S320). 예를 들어, 제어신호생성수단은 사용자의 컨트롤러 조작 또는 유저인터페이스 조작을 통해 명령어입력요청을 수신한다. 명령어입력요청을 수신하는 방식은 기재된 방식에 한정되지 않고, 음성명령을 수신하는 방식 등의 다양한 방식이 적용될 수 있다.
제어신호생성수단이 명령어입력요청에 따라 특정한 명령어에 대응되는 가상코드생성함수를 기반으로 가상코드를 생성한다(S340). 상기 가상코드는 동일시점에 상기 명령어에 따라 상이하게 생성되는 것이며, 단위카운트마다 상이하게 생성되는 것이다.
일실시예로, 제어신호생성수단은 세부코드생성함수를 이용하여 제1코드 및 제2코드를 생성하고, 특정한 규칙(즉, 세부코드결합함수)에 따라 결합하여 가상코드를 생성한다. 이 때, 가상코드 내 제1코드 및 제2코드는 상기 제어디바이스 내의 제어모듈(200)에 의해 특정한 명령어가 포함된 저장위치 탐색에 이용된다.
또한, 일실시예로, 도 15에서와 같이, 제어신호생성모듈(100)은 명령어식별코드를 포함한 형태로 가상코드를 생성한다. 이를 위해, 상기 가상코드 생성단계(S340)는, 특정한 명령어에 대응되는 명령어식별코드를 추출하는 단계(S342); 상기 명령어에 대응되는 세부코드생성함수를 이용하여 하나 이상의 세부코드를 생성하는 단계(S344); 및 상기 명령어식별코드와 상기 하나 이상의 세부코드를 결합하여, 상기 가상코드를 생성하는 단계(S346);를 포함한다.
제어신호생성수단이 가상코드를 제어신호로 제어디바이스에 전송한다(S360). 제어신호생성모듈(100)은 제1무선통신모듈(120)에 제어디바이스의 제2무선통신모듈(220)이 수신할 수 있는 무선통신 방식으로 전송을 요청한다.
그 후, 제어모듈(200)은 제어신호 내의 가상코드를 추출한 후 명령어 판단 및 가상코드 검증과정을 수행한다. 일실시예로, 상기 제어모듈(200)은, 특정한 제어디바이스에 대해 하나의 저장위치탐색알고리즘을 이용하는 경우, 단위카운트마다 정상적으로 생성된 가상코드가 수신되면, 세부코드 중 제1코드에 대응하는 상기 시작지점으로부터 세부코드 중 제2코드에 상응하는 탐색경로에 따라 이동한 지점을 상기 저장위치로 판단한다. 제어모듈(200)은 저장위치 내의 명령어를 제어명령으로 결정한다. 또한, 다른 일실시예로, 복수의 명령어식별코드를 가상코드에 포함하는 경우, 상기 제어모듈(200)은 상기 가상코드에 포함된 하나 이상의 세부코드 및 상기 명령어식별코드를 추출하고, 상기 하나 이상의 세부코드를 기반으로 가상코드가 정상적으로 생성된 것인지 검증하고, 상기 가상코드가 정상적으로 생성된 것이면 상기 명령어식별코드에 대응되는 명령어를 입력한다.
이상에서 전술한 본 발명의 일 실시예에 따른 제어신호 기반 제어방법은, 하드웨어인 컴퓨터와 결합되어 실행되기 위해 프로그램(또는 어플리케이션)으로 구현되어 매체에 저장될 수 있다.
상기 전술한 프로그램은, 상기 컴퓨터가 프로그램을 읽어 들여 프로그램으로 구현된 상기 방법들을 실행시키기 위하여, 상기 컴퓨터의 프로세서(CPU)가 상기 컴퓨터의 장치 인터페이스를 통해 읽힐 수 있는 C, C++, JAVA, 기계어 등의 컴퓨터 언어로 코드화된 코드(Code)를 포함할 수 있다. 이러한 코드는 상기 방법들을 실행하는 필요한 기능들을 정의한 함수 등과 관련된 기능적인 코드(Functional Code)를 포함할 수 있고, 상기 기능들을 상기 컴퓨터의 프로세서가 소정의 절차대로 실행시키는데 필요한 실행 절차 관련 제어 코드를 포함할 수 있다. 또한, 이러한 코드는 상기 기능들을 상기 컴퓨터의 프로세서가 실행시키는데 필요한 추가 정보나 미디어가 상기 컴퓨터의 내부 또는 외부 메모리의 어느 위치(주소 번지)에서 참조되어야 하는지에 대한 메모리 참조관련 코드를 더 포함할 수 있다. 또한, 상기 컴퓨터의 프로세서가 상기 기능들을 실행시키기 위하여 원격(Remote)에 있는 어떠한 다른 컴퓨터나 서버 등과 통신이 필요한 경우, 코드는 상기 컴퓨터의 통신 모듈을 이용하여 원격에 있는 어떠한 다른 컴퓨터나 서버 등과 어떻게 통신해야 하는지, 통신 시 어떠한 정보나 미디어를 송수신해야 하는지 등에 대한 통신 관련 코드를 더 포함할 수 있다.
상기 저장되는 매체는, 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 구체적으로는, 상기 저장되는 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있지만, 이에 제한되지 않는다. 즉, 상기 프로그램은 상기 컴퓨터가 접속할 수 있는 다양한 서버 상의 다양한 기록매체 또는 사용자의 상기 컴퓨터상의 다양한 기록매체에 저장될 수 있다. 또한, 상기 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장될 수 있다.
이상, 첨부된 도면을 참조로 하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야의 통상의 기술자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며, 제한적이 아닌 것으로 이해해야만 한다.

Claims (15)

  1. 제어모듈이 제어신호생성수단으로부터 특정시점에 생성된 제어신호를 수신하되, 상기 제어신호는 특정한 가상코드를 포함하고, 상기 가상코드는 동일시점에 명령어에 따라 상이하게 생성되는 것으로서 복수의 세부코드를 특정한 규칙에 따라 결합하여 생성되는 것이고, 상기 복수의 세부코드는 상호 상관관계를 가지면서 단위시간마다 변경되어 생성되는 것인, 제어신호 수신단계;
    상기 제어모듈이 상기 가상코드에 포함된 복수의 세부코드를 추출하는 단계;
    상기 제어모듈이 복수의 세부코드를 기반으로 특정한 명령어에 대한 저장위치를 탐색한 후, 상기 명령어를 추출하는 명령어 추출단계; 및
    상기 제어모듈이 제1 가상보안코드를 생성하고, 상기 가상코드 내에 포함된 제2 가상보안코드와 상기 제1 가상보안코드를 비교하여 상기 가상코드가 정상적으로 생성된 것인지 검증하되, 상기 제1 가상보안코드는 상기 저장위치 내에 포함된 상기 제어신호생성수단 고유값 또는 제어디바이스의 고유값을 기반으로 생성되는 것인, 가상코드 검증 단계;를 포함하고,
    상기 제어모듈은,
    제어디바이스 내에 내장 또는 설치되는 것인,
    가상코드를 포함하는 제어신호 기반 제어방법.
  2. 제1항에 있어서,
    상기 검증 단계는,
    상기 제1 가상보안코드와 상기 제2 가상보안코드가 일치하면, 상기 가상코드가 정상적으로 생성된 것으로 판단하는
    가상코드를 포함하는 제어신호 기반 제어 방법.
  3. 제2항에 있어서,
    상기 제1 가상보안코드 및 제2 가상보안코드는 시간데이터를 기초로 생성되는 것이고,
    상기 검증 단계는,
    상기 가상코드를 수신한 시점으로부터 기 설정된 범위 내의 복수의 시간데이터를 기반으로 복수의 제1 가상보안코드를 생성하는 단계; 및
    각각의 제1 가상보안코드와 상기 제2 가상보안코드를 비교하여 상기 복수의 제1 가상보안코드 중 상기 제2 가상보안코드와 일치하는 제1 가상보안코드가 존재하면, 상기 가상코드가 정상적으로 생성된 것으로 판단하는 단계를 포함하는,
    가상코드를 포함하는
    제어신호 기반 제어방법.
  4. 제3항에 있어서,
    상기 가상코드가 정상적으로 생성된 것으로 판단되면, 상기 제어모듈이 상기 추출된 명령어를 입력하는 단계를 더 포함하는,
    가상코드를 포함하는 제어신호 기반 제어방법.
  5. 제1항에 있어서,
    상기 명령어 추출 단계는,
    단위카운트마다 정상적으로 생성된 가상코드가 수신되면, 상기 복수의 세부코드를 기초로 상기 저장위치의 탐색시작지점과 탐색경로를 결정하여 상기 저장위치를 탐색하는 것이고,
    상기 단위카운트는,
    특정한 시간간격으로 설정되어, 상기 시간간격이 경과됨에 따라 변경되는 것인,
    가상코드를 포함하는 제어신호 기반 제어방법.
  6. 제어모듈이 제어신호생성수단으로부터 특정시점에 생성된 제어신호를 수신하되, 상기 제어신호는 특정한 가상코드를 포함하고, 상기 가상코드는 동일시점에 명령어에 따라 상이하게 생성되는 것으로서, 명령어식별코드 및 복수의 세부코드를 특정한 규칙에 따라 결합하여 생성되는 것이고, 상기 복수의 세부코드는 상호 상관관계를 가지면서 단위시간마다 변경되어 생성되는 것인, 제어신호 수신단계;
    상기 제어모듈이 상기 가상코드에 포함된 상기 명령어식별코드 및 상기 복수의 세부코드를 추출하는 단계; 및
    상기 제어모듈이 상기 복수의 세부코드를 기반으로 특정한 명령어에 대한 저장위치를 탐색한 후, 상기 명령어를 추출하는 명령어 추출단계;를 포함하고,
    상기 명령어 추출단계는,
    상기 저장위치 내에 명령어가 저장되어 있지 않으면, 상기 가상코드가 정상적으로 생성되지 않은 것으로 판단하는 제1검증단계를 포함하고,
    상기 제어모듈은
    제어디바이스 내에 내장 또는 설치되는 것인,
    가상코드를 포함하는 제어신호 기반 제어방법.
  7. 제6항에 있어서,
    상기 추출된 상기 저장위치 내의 명령어와 상기 명령어식별코드에 대응되는 명령어가 일치하는지 여부를 판단하여 상기 가상코드를 검증하는 제2검증단계;를 포함하는,
    가상코드를 포함하는 제어신호 기반 제어방법.
  8. 제7항에 있어서,
    상기 가상코드가 정상적으로 생성된 것으로 판단되면, 상기 제어모듈이 상기 추출된 명령어를 입력하는 단계를 더 포함하는,
    가상코드를 포함하는 제어신호 기반 제어방법.
  9. 제6항에 있어서,
    상기 명령어 추출 단계는,
    단위카운트마다 정상적으로 생성된 가상코드가 수신되면, 상기 복수의 세부코드를 기초로 상기 저장위치의 탐색시작지점과 탐색경로를 결정하여 상기 저장위치를 탐색하는 것이고,
    상기 단위카운트는,
    특정한 시간간격으로 설정되어, 상기 시간간격이 경과됨에 따라 변경되는 것인,
    가상코드를 포함하는 제어신호 기반 제어방법.
  10. 제1항 내지 제9항 중 어느 하나의 항의 가상코드를 포함하는 제어신호 기반 제어방법을 수행하기 위하여 컴퓨터 판독가능 기록매체에 저장된 컴퓨터 프로그램.
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
KR1020200010943A 2017-08-09 2020-01-30 가상코드 기반의 제어시스템, 방법 및 프로그램, 제어디바이스 및 제어신호생성수단 KR102370162B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220025698A KR102417138B1 (ko) 2017-08-09 2022-02-28 가상코드 기반의 명령어 검증 방법, 제어 디바이스 및 제어신호 생성 장치

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR1020170100953 2017-08-09
KR20170100953 2017-08-09
KR1020180033008A KR102073883B1 (ko) 2017-08-09 2018-03-22 가상코드 기반의 제어시스템, 방법 및 프로그램, 제어디바이스 및 제어신호생성수단

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020180033008A Division KR102073883B1 (ko) 2017-08-09 2018-03-22 가상코드 기반의 제어시스템, 방법 및 프로그램, 제어디바이스 및 제어신호생성수단

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020220025698A Division KR102417138B1 (ko) 2017-08-09 2022-02-28 가상코드 기반의 명령어 검증 방법, 제어 디바이스 및 제어신호 생성 장치

Publications (2)

Publication Number Publication Date
KR20200016307A KR20200016307A (ko) 2020-02-14
KR102370162B1 true KR102370162B1 (ko) 2022-03-04

Family

ID=65528760

Family Applications (17)

Application Number Title Priority Date Filing Date
KR1020170113479A KR101978812B1 (ko) 2017-08-09 2017-09-05 가상카드번호 기반의 금융거래제공시스템, 가상카드번호생성장치, 가상카드번호검증장치, 가상카드번호 기반의 금융거래제공방법 및 가상카드번호 기반의 금융거래제공프로그램
KR1020170149296A KR102602310B1 (ko) 2017-08-09 2017-11-10 스마트 인증 카드 장치, 가상인증코드를 이용한 인증 제공 시스템 및 방법
KR1020170149153A KR101950904B1 (ko) 2017-08-09 2017-11-10 가상카드번호를 생성하는 스마트카드, 스마트카드 기반의 가상카드번호 제공방법 및 프로그램
KR1020180033008A KR102073883B1 (ko) 2017-08-09 2018-03-22 가상코드 기반의 제어시스템, 방법 및 프로그램, 제어디바이스 및 제어신호생성수단
KR1020180055344A KR102005495B1 (ko) 2017-08-09 2018-05-15 가상토큰 기반의 결제제공시스템, 가상토큰생성장치, 가상토큰검증서버, 가상토큰 기반의 결제제공방법 및 가상토큰 기반의 결제제공프로그램
KR1020180064710A KR102005535B1 (ko) 2017-08-09 2018-06-05 매장 내부통신망 기반의 결제시스템, 매장 내부통신망 기반의 결제기능을 포함하는 이동단말기, 매장 내부통신망 기반의 결제서비스 제공방법, 및 이를 수행하는 프로그램
KR1020180081707A KR102053910B1 (ko) 2017-08-09 2018-07-13 지불카드에서 생성된 가상코드의 화면출력방법 및 프로그램, 가상코드를 생성하는 지불카드
KR1020190017794A KR102094815B1 (ko) 2017-08-09 2019-02-15 가상카드번호를 생성하는 스마트카드, 스마트카드 기반의 가상카드번호 제공방법 및 프로그램
KR1020190054310A KR102099974B1 (ko) 2017-08-09 2019-05-09 가상카드번호 기반의 금융거래제공시스템, 가상카드번호생성장치, 가상카드번호검증장치, 가상카드번호 기반의 금융거래제공방법 및 가상카드번호 기반의 금융거래제공프로그램
KR1020190089772A KR102308230B1 (ko) 2017-08-09 2019-07-24 매장 내부통신망 기반의 결제시스템, 매장 내부통신망 기반의 결제기능을 포함하는 이동단말기, 매장 내부통신망 기반의 결제서비스 제공방법, 및 이를 수행하는 프로그램
KR1020190159146A KR102304333B1 (ko) 2017-08-09 2019-12-03 지불카드에서 생성된 가상코드의 화면출력방법 및 프로그램, 가상코드를 생성하는 지불카드
KR1020200010943A KR102370162B1 (ko) 2017-08-09 2020-01-30 가상코드 기반의 제어시스템, 방법 및 프로그램, 제어디바이스 및 제어신호생성수단
KR1020200041825A KR102277199B1 (ko) 2017-08-09 2020-04-06 가상카드번호 기반의 금융거래제공시스템, 가상카드번호생성장치, 가상카드번호검증장치, 가상카드번호 기반의 금융거래제공방법 및 가상카드번호 기반의 금융거래제공프로그램
KR1020210089465A KR102355676B1 (ko) 2017-08-09 2021-07-08 가상카드번호 기반의 금융거래제공시스템, 가상카드번호생성장치, 가상카드번호검증장치, 가상카드번호 기반의 금융거래제공방법 및 가상카드번호 기반의 금융거래제공프로그램
KR1020220008894A KR102499624B1 (ko) 2017-08-09 2022-01-21 가상카드번호 기반의 금융거래제공시스템, 가상카드번호생성장치, 가상카드번호검증장치, 가상카드번호 기반의 금융거래제공방법 및 가상카드번호 기반의 금융거래제공프로그램
KR1020220025698A KR102417138B1 (ko) 2017-08-09 2022-02-28 가상코드 기반의 명령어 검증 방법, 제어 디바이스 및 제어신호 생성 장치
KR1020220080658A KR102518771B1 (ko) 2017-08-09 2022-06-30 가상코드 기반의 명령어 검증 방법, 제어 디바이스 및 제어신호 생성 장치

Family Applications Before (11)

Application Number Title Priority Date Filing Date
KR1020170113479A KR101978812B1 (ko) 2017-08-09 2017-09-05 가상카드번호 기반의 금융거래제공시스템, 가상카드번호생성장치, 가상카드번호검증장치, 가상카드번호 기반의 금융거래제공방법 및 가상카드번호 기반의 금융거래제공프로그램
KR1020170149296A KR102602310B1 (ko) 2017-08-09 2017-11-10 스마트 인증 카드 장치, 가상인증코드를 이용한 인증 제공 시스템 및 방법
KR1020170149153A KR101950904B1 (ko) 2017-08-09 2017-11-10 가상카드번호를 생성하는 스마트카드, 스마트카드 기반의 가상카드번호 제공방법 및 프로그램
KR1020180033008A KR102073883B1 (ko) 2017-08-09 2018-03-22 가상코드 기반의 제어시스템, 방법 및 프로그램, 제어디바이스 및 제어신호생성수단
KR1020180055344A KR102005495B1 (ko) 2017-08-09 2018-05-15 가상토큰 기반의 결제제공시스템, 가상토큰생성장치, 가상토큰검증서버, 가상토큰 기반의 결제제공방법 및 가상토큰 기반의 결제제공프로그램
KR1020180064710A KR102005535B1 (ko) 2017-08-09 2018-06-05 매장 내부통신망 기반의 결제시스템, 매장 내부통신망 기반의 결제기능을 포함하는 이동단말기, 매장 내부통신망 기반의 결제서비스 제공방법, 및 이를 수행하는 프로그램
KR1020180081707A KR102053910B1 (ko) 2017-08-09 2018-07-13 지불카드에서 생성된 가상코드의 화면출력방법 및 프로그램, 가상코드를 생성하는 지불카드
KR1020190017794A KR102094815B1 (ko) 2017-08-09 2019-02-15 가상카드번호를 생성하는 스마트카드, 스마트카드 기반의 가상카드번호 제공방법 및 프로그램
KR1020190054310A KR102099974B1 (ko) 2017-08-09 2019-05-09 가상카드번호 기반의 금융거래제공시스템, 가상카드번호생성장치, 가상카드번호검증장치, 가상카드번호 기반의 금융거래제공방법 및 가상카드번호 기반의 금융거래제공프로그램
KR1020190089772A KR102308230B1 (ko) 2017-08-09 2019-07-24 매장 내부통신망 기반의 결제시스템, 매장 내부통신망 기반의 결제기능을 포함하는 이동단말기, 매장 내부통신망 기반의 결제서비스 제공방법, 및 이를 수행하는 프로그램
KR1020190159146A KR102304333B1 (ko) 2017-08-09 2019-12-03 지불카드에서 생성된 가상코드의 화면출력방법 및 프로그램, 가상코드를 생성하는 지불카드

Family Applications After (5)

Application Number Title Priority Date Filing Date
KR1020200041825A KR102277199B1 (ko) 2017-08-09 2020-04-06 가상카드번호 기반의 금융거래제공시스템, 가상카드번호생성장치, 가상카드번호검증장치, 가상카드번호 기반의 금융거래제공방법 및 가상카드번호 기반의 금융거래제공프로그램
KR1020210089465A KR102355676B1 (ko) 2017-08-09 2021-07-08 가상카드번호 기반의 금융거래제공시스템, 가상카드번호생성장치, 가상카드번호검증장치, 가상카드번호 기반의 금융거래제공방법 및 가상카드번호 기반의 금융거래제공프로그램
KR1020220008894A KR102499624B1 (ko) 2017-08-09 2022-01-21 가상카드번호 기반의 금융거래제공시스템, 가상카드번호생성장치, 가상카드번호검증장치, 가상카드번호 기반의 금융거래제공방법 및 가상카드번호 기반의 금융거래제공프로그램
KR1020220025698A KR102417138B1 (ko) 2017-08-09 2022-02-28 가상코드 기반의 명령어 검증 방법, 제어 디바이스 및 제어신호 생성 장치
KR1020220080658A KR102518771B1 (ko) 2017-08-09 2022-06-30 가상코드 기반의 명령어 검증 방법, 제어 디바이스 및 제어신호 생성 장치

Country Status (6)

Country Link
US (6) US11188895B2 (ko)
EP (4) EP3644257A4 (ko)
JP (4) JP6931472B6 (ko)
KR (17) KR101978812B1 (ko)
CN (1) CN111095323B (ko)
SG (3) SG10201900350UA (ko)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101978812B1 (ko) * 2017-08-09 2019-05-15 주식회사 센스톤 가상카드번호 기반의 금융거래제공시스템, 가상카드번호생성장치, 가상카드번호검증장치, 가상카드번호 기반의 금융거래제공방법 및 가상카드번호 기반의 금융거래제공프로그램
WO2019031716A2 (ko) 2017-08-09 2019-02-14 주식회사 센스톤 가상토큰 기반의 결제제공시스템, 가상토큰생성장치, 가상토큰검증서버, 가상토큰 기반의 결제제공방법 및 가상토큰 기반의 결제제공프로그램
ES2778451T3 (es) * 2017-11-22 2020-08-10 Siemens Ag Protección de procedimientos de inicio de sesión
WO2020027495A1 (ko) 2018-07-30 2020-02-06 주식회사 엘지화학 리튬 전극 및 이를 포함하는 리튬 이차전지
KR102005554B1 (ko) 2018-08-09 2019-07-30 주식회사 센스톤 공카드를 이용한 금융거래제공방법 및 시스템
US20200242590A1 (en) * 2019-01-24 2020-07-30 Shopify Inc. E-commerce platform with tokenization system
WO2020162738A1 (ko) 2019-02-08 2020-08-13 주식회사 센스톤 웨어러블 디바이스 기반의 금융거래를 제공하는 방법, 프로그램, 서버 및 웨어러블 디바이스
CN110097358A (zh) * 2019-04-28 2019-08-06 北京小米支付技术有限公司 虚拟卡片生成方法、装置、设备及存储介质
WO2021040462A1 (ko) * 2019-08-30 2021-03-04 주식회사 센스톤 가상법인카드 기반의 금융거래를 제공하는 방법, 프로그램 및 시스템
KR102346701B1 (ko) * 2019-08-30 2022-01-03 주식회사 센스톤 가상카드번호 기반의 금융거래장치, 가상카드번호 기반의 금융거래제공방법 및 가상카드번호 기반의 금융거래제공프로그램
WO2021040358A2 (ko) * 2019-08-30 2021-03-04 주식회사 센스톤 인증용가상코드를 이용한 사용자 인증 방법 및 이를 위한 시스템
WO2021040243A1 (ko) 2019-08-30 2021-03-04 주식회사 센스톤 가상카드번호 기반의 금융거래장치, 가상카드번호 기반의 금융거래제공방법 및 가상카드번호 기반의 금융거래제공프로그램
WO2021040444A1 (ko) * 2019-08-30 2021-03-04 주식회사 센스톤 가상코드 기반의 거래 시스템, 방법 및 프로그램
US11113685B2 (en) * 2019-12-23 2021-09-07 Capital One Services, Llc Card issuing with restricted virtual numbers
KR20210090850A (ko) 2020-01-13 2021-07-21 주식회사 코밴 스마트 결제 방법
EP3907683B1 (en) * 2020-02-24 2024-01-03 SSenStone Inc. Method and program for authentication between apparatuses based on virtual authentication code
JP7297107B2 (ja) * 2020-02-24 2023-06-23 センストーン インコーポレイテッド 仮想コードを用いたユーザ設定情報認証方法、プログラム及び装置
EP3968253B1 (en) * 2020-02-24 2024-04-17 SSenStone Inc. Method, program, and device for authenticating user setting information by using virtual code
WO2021172876A1 (ko) * 2020-02-24 2021-09-02 주식회사 센스톤 가상인증코드 기반의 절차 승인 장치 및 방법
WO2021172877A1 (ko) * 2020-02-24 2021-09-02 주식회사 센스톤 가상인증코드 기반의 장치 간 인증 방법 및 프로그램
KR102630287B1 (ko) * 2020-12-14 2024-01-30 주식회사 네오수텍 가상카드번호 생성 스마트카드와 가상카드번호 복호화 장치
KR102502339B1 (ko) * 2021-03-04 2023-02-23 주식회사 센스톤 Nfc를 이용한 카드데이터 기반의 가상보안코드 생성을 위한 단말기, 카드 장치 및 그 방법
US20220400107A1 (en) * 2021-06-15 2022-12-15 Capital One Services, Llc Modifying a document object of a graphical user interface to present a temporary credential

Family Cites Families (76)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4802218A (en) * 1986-11-26 1989-01-31 Wright Technologies, L.P. Automated transaction system
JPH04220030A (ja) * 1990-12-19 1992-08-11 Alpine Electron Inc デ−タ通信方式
JP3319230B2 (ja) * 1994-08-05 2002-08-26 株式会社デンソー 遠隔操作装置
BR9606663A (pt) * 1995-05-17 1997-09-16 Chamberlain Group Inc Transmissor para enviar um sinal criptografado para controlar um atuador receptor para receber um sinal criptografado de um transmissor e para gerar um sinal de atuação e receptor para receber um sinal de frequência de rádio criptografado de um transmissor e para gerar um sinal de atuação
US6049289A (en) * 1996-09-06 2000-04-11 Overhead Door Corporation Remote controlled garage door opening system
US6000832A (en) * 1997-09-24 1999-12-14 Microsoft Corporation Electronic online commerce card with customer generated transaction proxy number for online transactions
US7136995B1 (en) * 2000-11-03 2006-11-14 Enova Technology Corporation Cryptographic device
JP4616510B2 (ja) * 2001-05-17 2011-01-19 株式会社リコー 電子商取引方法、決済代行方法、使い捨て後払い方式情報発行方法、および決済依頼方法
JP2002298055A (ja) * 2001-03-29 2002-10-11 Oki Electric Ind Co Ltd 電子商取引システム
US7917585B2 (en) * 2001-06-21 2011-03-29 Cybersoft, Inc. Apparatus, methods and articles of manufacture for intercepting, examining and controlling code, data and files and their transfer
US7383432B1 (en) * 2001-07-09 2008-06-03 Advanced Micro Devices, Inc. Software modem with hidden authentication commands
US7363494B2 (en) * 2001-12-04 2008-04-22 Rsa Security Inc. Method and apparatus for performing enhanced time-based authentication
WO2004051585A2 (en) * 2002-11-27 2004-06-17 Rsa Security Inc Identity authentication system and method
NO20050152D0 (no) * 2005-01-11 2005-01-11 Dnb Nor Bank Asa Fremgangsmate ved frembringelse av sikkerhetskode og programmbar anordning for denne
US7786843B2 (en) * 2005-04-19 2010-08-31 Johnson Controls Technology Company System and method for training a trainable transmitter and a remote control system receiver
US8091128B2 (en) * 2006-09-14 2012-01-03 Ntt Docomo, Inc. Information flow enforcement for RISC-style assembly code in the presence of timing-related covert channels and multi-threading
JP4869963B2 (ja) 2007-01-29 2012-02-08 オリンパス株式会社 撮像システム
JP5147258B2 (ja) * 2007-02-21 2013-02-20 株式会社野村総合研究所 決済システムおよび決済方法
US8181259B2 (en) * 2007-03-23 2012-05-15 Universal Electronics Inc. System and method for upgrading the functionality of a controlling device via a secure portable adapter device
US8494959B2 (en) * 2007-08-17 2013-07-23 Emc Corporation Payment card with dynamic account number
US8065715B2 (en) * 2008-01-31 2011-11-22 Microsoft Corporation Authenticating a user of a wireless data processing device
CN101299662B (zh) * 2008-06-23 2012-05-09 山东大学 一种基于gnss的时变加密通信方法
KR100992797B1 (ko) * 2008-10-15 2010-11-08 주식회사 아레오네트웍스 무선통신 기능을 구비한 아이씨카드
US9881297B2 (en) * 2008-11-14 2018-01-30 Mastercard International Incorporated Methods and systems for secure mobile device initiated payments using generated image data
JP4932867B2 (ja) * 2009-03-30 2012-05-16 京楽産業.株式会社 電子機器、主制御基板、周辺基板、認証方法および認証プログラム
KR101132056B1 (ko) * 2009-06-15 2012-04-02 에스케이플래닛 주식회사 통합 전자화폐 관리 시스템 및 국가 통합 전자화폐 관리 방법
KR101719635B1 (ko) 2009-10-08 2017-03-27 이르데토 비.브이. 동적 함수 호출 시스템들에서 공격적인 자기-수정을 위한 시스템 및 방법
KR101051420B1 (ko) * 2010-06-29 2011-07-22 (주)에이티솔루션 안전 otp 생성 장치 및 방법
US10032163B2 (en) * 2010-12-02 2018-07-24 B & H Worldwide, Llc Processing a financial transaction using single-use financial account card number via portable communication device
JP5400097B2 (ja) * 2011-06-30 2014-01-29 楽天株式会社 クレジットカード情報処理システム、クレジットカード情報処理方法、注文情報受付装置、クレジットカード決済装置、プログラム及び情報記録媒体
EP3848874B1 (en) * 2012-04-16 2024-04-17 sticky.io, Inc. Systems and methods for facilitating a transaction using a virtual card on a mobile device
KR101413110B1 (ko) * 2012-05-23 2014-07-02 주식회사 비즈모델라인 토큰 코드를 이용한 금융거래 처리 방법
WO2013181281A1 (en) * 2012-05-29 2013-12-05 Protean Payment, Inc. Payment card and methods
KR101666032B1 (ko) * 2012-05-31 2016-10-14 한국전자통신연구원 로드 가능한 모듈에 대한 가상화 지원 방법 및 장치
US9129171B2 (en) * 2012-07-31 2015-09-08 Panasonic Intellectual Property Management Co., Ltd. Code reading device and code reading method
KR20120102565A (ko) * 2012-09-04 2012-09-18 주식회사 비즈모델라인 동적 생성되는 코드를 이용한 결제 인증 방법
KR101316466B1 (ko) 2012-11-20 2013-10-08 신한카드 주식회사 다이나믹 트랙 2 정보를 이용한 모바일 결제 시스템 및 방법
KR101330943B1 (ko) * 2012-12-10 2013-11-26 신한카드 주식회사 일회성 카드정보를 이용한 결제 방법
KR101354388B1 (ko) * 2012-12-12 2014-01-23 신한카드 주식회사 일회성 카드번호 생성방법
KR20140097832A (ko) * 2013-01-30 2014-08-07 주식회사 케이티 가상 카드를 물리적 카드로 생성 및 만료하는 장치
KR101557895B1 (ko) * 2013-02-15 2015-10-19 류창화 안전결제코드를 이용한 결제 방법 및 이에 이용되는 안전결제중개서버
KR101480034B1 (ko) * 2013-02-22 2015-01-08 농협은행(주) Qr 보안코드를 이용한 금융 서비스 제공 방법
JP5740050B2 (ja) * 2013-04-30 2015-06-24 楽天株式会社 情報処理装置、情報処理方法、および情報処理プログラム
KR101499535B1 (ko) 2013-05-29 2015-03-06 주식회사 엘지씨엔에스 컴퓨터 실행 가능한 하이브리드 어플리케이션 수행 방법, 이를 수행하는 컴퓨터 실행 장치 및 이를 저장한 기록 매체
KR101339723B1 (ko) 2013-08-19 2013-12-10 주식회사 벨소프트 휴대폰 본인인증 도용방지와 스미싱 방지를 위한 문자메시지 보안시스템 및 방법
KR20150020927A (ko) * 2013-08-19 2015-02-27 김창훈 이동통신단말기를 이용한 카드 결제 시스템 및 방법
US9311636B2 (en) * 2013-09-11 2016-04-12 Chien-Kang Yang Mobile payment method and mobile payment apparatus
JP2015061261A (ja) * 2013-09-20 2015-03-30 アプリックスIpホールディングス株式会社 送受信システム、送信装置、受信装置、これらにおける制御方法およびプログラム
US20150142657A1 (en) * 2013-11-21 2015-05-21 Mastercard International Incorporated Linking physical card to virtual card account method and apparatus
KR102193696B1 (ko) * 2013-12-05 2020-12-22 주식회사 비즈모델라인 카드를 이용한 일회용코드 기반 안심 로그인 방법
US9652770B1 (en) * 2014-04-30 2017-05-16 Wells Fargo Bank, N.A. Mobile wallet using tokenized card systems and methods
KR101621254B1 (ko) * 2014-08-27 2016-05-31 유한회사 실릭스 오티피 기반의 가상 번호 결제 방법, 컴퓨터 판독가능한 기록매체 및 시스템
KR102334894B1 (ko) * 2014-12-24 2021-12-03 십일번가 주식회사 웹 기반 인증 결제 장치, 웹 기반 인증 결제 방법, 웹 기반 인증 결제 시스템 및 컴퓨터 프로그램이 기록된 기록매체
US9979719B2 (en) 2015-01-06 2018-05-22 Duo Security, Inc. System and method for converting one-time passcodes to app-based authentication
KR101667193B1 (ko) * 2015-04-02 2016-10-19 현대오토에버 주식회사 일회용 카드번호를 이용하여 결제서비스를 제공하는 방법 및 결제시스템
KR101760502B1 (ko) * 2015-07-14 2017-07-21 김병수 다이나믹 트랙 2 결제 시스템 및 방법
KR20170040469A (ko) * 2015-10-05 2017-04-13 페이몬㈜ Otp 기반의 스마트카드 및 이를 이용한 인증방법
KR101675927B1 (ko) * 2015-10-08 2016-11-14 주식회사 지씨엠씨 신용 조회 단말기, 결제 관리 서버, 결제 관리 방법, 결제 단말, 결제 단말의 동작방법, 결제 관리를 위해 매체에 저장된 컴퓨터 프로그램 및 신용 조회 단말기
KR101644568B1 (ko) 2015-10-15 2016-08-12 주식회사 한국엔에프씨 이동통신단말기간 카드 결제를 수행하는 모바일 카드 결제 시스템 및 방법
KR20180083911A (ko) * 2015-11-16 2018-07-23 엑손모빌 업스트림 리서치 캄파니 흡착재 및 이산화탄소의 흡착 방법
KR20160006646A (ko) 2015-12-29 2016-01-19 주식회사 비즈모델라인 엔에프씨오티피카드를 이용한 비대면 거래 인증 방법
KR101751894B1 (ko) 2015-12-29 2017-07-03 한국정보통신주식회사 결제 단말 장치 및 일회용 카드 코드를 이용한 결제 처리 방법
CN105704149A (zh) * 2016-03-24 2016-06-22 国网江苏省电力公司电力科学研究院 一种电力移动应用安全防护方法
CN105894279A (zh) * 2016-03-29 2016-08-24 联想(北京)有限公司 一种信息处理方法及装置、设备
EP3406067B1 (en) * 2016-04-28 2019-06-05 Serge Covain Electronic device for generating a control signal in a secured fashion and method for generating said control signal using the electronic device
US20180018654A1 (en) * 2016-07-15 2018-01-18 Mike Miskin Portable electronic payment security devices, systems and methods
TWI635444B (zh) * 2016-11-03 2018-09-11 動信科技股份有限公司 Touch smart card
US20180337925A1 (en) * 2017-05-17 2018-11-22 Bank Of America Corporation System for allowing secure access and use of a virtual credential
KR20170078563A (ko) * 2017-06-15 2017-07-07 한국정보통신주식회사 결제 단말 장치 및 일회용 카드 코드를 이용한 결제 처리 방법
KR20170078564A (ko) * 2017-06-15 2017-07-07 한국정보통신주식회사 일회용 카드 코드 생성 방법, 그를 이용한 카드 결제 승인 방법, 카드 리더기 및 서버
KR101978812B1 (ko) * 2017-08-09 2019-05-15 주식회사 센스톤 가상카드번호 기반의 금융거래제공시스템, 가상카드번호생성장치, 가상카드번호검증장치, 가상카드번호 기반의 금융거래제공방법 및 가상카드번호 기반의 금융거래제공프로그램
US10783516B2 (en) * 2018-04-11 2020-09-22 Capital One Services, Llc Systems and methods for automatically identifying a checkout webpage and injecting a virtual token
US11935044B2 (en) * 2018-08-09 2024-03-19 SSenStone Inc. System, method and program for providing financial transaction by virtual code, virtual code generator and virtual code verification device
KR102005549B1 (ko) * 2018-08-09 2019-07-30 주식회사 센스톤 가상코드 기반의 금융거래제공시스템, 가상코드생성장치, 가상코드검증장치, 가상코드 기반의 금융거래제공방법 및 가상코드 기반의 금융거래제공프로그램
EP3654264A1 (en) * 2018-11-14 2020-05-20 Mastercard International Incorporated Credential management for mobile devices
CN111861451A (zh) * 2019-04-25 2020-10-30 刘永乐 离线交易的方法、客户端设备及pos机

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
'국내 기술로 신용카드 부정사용 무력화...16자리 카드번호 실시간 변경해 원천 차단', 전자신문(2018.03.13. 게재)
서승현. '통합인증센터를 활용한 일회용 가상카드번호 생성 및 결제서비스 프로토콜'. 정보보호학회논문지. 한국정보보호학회. 2010년, 제20권 제3호, pp.9-21

Also Published As

Publication number Publication date
JP6931472B6 (ja) 2021-10-20
EP3644256A4 (en) 2020-07-01
KR20220016244A (ko) 2022-02-08
JP2021170398A (ja) 2021-10-28
CN111095323A (zh) 2020-05-01
KR20190139805A (ko) 2019-12-18
US11842334B2 (en) 2023-12-12
US20220138727A1 (en) 2022-05-05
JP6931472B2 (ja) 2021-09-08
JP2020004436A (ja) 2020-01-09
KR20190055039A (ko) 2019-05-22
KR102602310B1 (ko) 2023-11-16
US11775963B2 (en) 2023-10-03
EP3644256A1 (en) 2020-04-29
US11188895B2 (en) 2021-11-30
JP2020530164A (ja) 2020-10-15
KR20190016893A (ko) 2019-02-19
KR20190016879A (ko) 2019-02-19
KR102277199B1 (ko) 2021-07-14
KR20190016878A (ko) 2019-02-19
KR102308230B1 (ko) 2021-10-01
KR101950904B1 (ko) 2019-05-20
SG10201800375TA (en) 2019-03-28
KR102417138B1 (ko) 2022-07-05
EP3644257A1 (en) 2020-04-29
JP6920385B2 (ja) 2021-08-18
KR20190016890A (ko) 2019-02-19
KR20190089820A (ko) 2019-07-31
KR20190016880A (ko) 2019-02-19
US20200202329A1 (en) 2020-06-25
KR102304333B1 (ko) 2021-09-23
EP4033436A1 (en) 2022-07-27
EP4033436B1 (en) 2023-09-27
EP3667593A2 (en) 2020-06-17
JP2019091485A (ja) 2019-06-13
US20230401567A1 (en) 2023-12-14
KR101978812B1 (ko) 2019-05-15
KR102094815B1 (ko) 2020-03-30
KR102355676B1 (ko) 2022-02-08
KR20220035057A (ko) 2022-03-21
SG10201900350UA (en) 2019-03-28
KR20190016888A (ko) 2019-02-19
KR20200038916A (ko) 2020-04-14
US11250417B2 (en) 2022-02-15
CN111095323B (zh) 2024-05-10
EP3667593A4 (en) 2020-06-17
KR20220098709A (ko) 2022-07-12
KR20190016884A (ko) 2019-02-19
KR102499624B1 (ko) 2023-02-14
KR20190019980A (ko) 2019-02-27
KR102073883B1 (ko) 2020-03-02
US20200133215A1 (en) 2020-04-30
US20200134610A1 (en) 2020-04-30
EP3644257A4 (en) 2020-06-03
KR102005535B1 (ko) 2019-07-30
KR20200016307A (ko) 2020-02-14
KR102099974B1 (ko) 2020-05-15
KR102518771B1 (ko) 2023-04-07
JP7187624B2 (ja) 2022-12-12
SG10201806705SA (en) 2019-03-28
JP6742455B2 (ja) 2020-08-19
KR102005495B1 (ko) 2019-10-01
KR102053910B1 (ko) 2019-12-09
US20200051070A1 (en) 2020-02-13
KR20210090130A (ko) 2021-07-19

Similar Documents

Publication Publication Date Title
KR102370162B1 (ko) 가상코드 기반의 제어시스템, 방법 및 프로그램, 제어디바이스 및 제어신호생성수단
KR102269913B1 (ko) 가상코드 기반의 무인이동체 제어시스템, 방법 및 프로그램, 제어디바이스 및 제어신호생성수단
EP2996360B1 (en) System for matching signatures on the basis of motion signature information
CN105426714B (zh) 用于基于设备的认证的系统和方法
US10481569B2 (en) Household appliance control method and device, and central processing device
KR102451863B1 (ko) Qr 코드를 이용한 방문자 관리 방법 및 시스템
KR20170060312A (ko) 사용자 인증 방법 및 장치
US20220109985A1 (en) Virtual code-based control system, method and program, control device and control signal generating means for unmanned moving object
JP2018530204A (ja) ワイヤレス接続を実現する方法及びシステム
KR20210154999A (ko) 전자 장치 및 그 제어 방법
KR102607541B1 (ko) 가상코드 기반 인증방법 및 프로그램
US20220182376A1 (en) User authentication method using authentication virtual code and system therefor
KR20220164265A (ko) 드론 제어, 조종자 인증 및 드론 식별 방법, 시스템 및 프로그램
KR102257271B1 (ko) 양방향 멀티 무선 광통신 장치 및 방법

Legal Events

Date Code Title Description
A107 Divisional application of patent
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant