特許第6931472号(P6931472)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ センストン インク.の特許一覧

特許6931472仮想コード基盤の制御システム、方法及びプログラム、制御デバイス及び制御信号生成手段
<>
  • 特許6931472-仮想コード基盤の制御システム、方法及びプログラム、制御デバイス及び制御信号生成手段 図000002
  • 特許6931472-仮想コード基盤の制御システム、方法及びプログラム、制御デバイス及び制御信号生成手段 図000003
  • 特許6931472-仮想コード基盤の制御システム、方法及びプログラム、制御デバイス及び制御信号生成手段 図000004
  • 特許6931472-仮想コード基盤の制御システム、方法及びプログラム、制御デバイス及び制御信号生成手段 図000005
  • 特許6931472-仮想コード基盤の制御システム、方法及びプログラム、制御デバイス及び制御信号生成手段 図000006
  • 特許6931472-仮想コード基盤の制御システム、方法及びプログラム、制御デバイス及び制御信号生成手段 図000007
  • 特許6931472-仮想コード基盤の制御システム、方法及びプログラム、制御デバイス及び制御信号生成手段 図000008
  • 特許6931472-仮想コード基盤の制御システム、方法及びプログラム、制御デバイス及び制御信号生成手段 図000009
  • 特許6931472-仮想コード基盤の制御システム、方法及びプログラム、制御デバイス及び制御信号生成手段 図000010
  • 特許6931472-仮想コード基盤の制御システム、方法及びプログラム、制御デバイス及び制御信号生成手段 図000011
  • 特許6931472-仮想コード基盤の制御システム、方法及びプログラム、制御デバイス及び制御信号生成手段 図000012
  • 特許6931472-仮想コード基盤の制御システム、方法及びプログラム、制御デバイス及び制御信号生成手段 図000013
  • 特許6931472-仮想コード基盤の制御システム、方法及びプログラム、制御デバイス及び制御信号生成手段 図000014
  • 特許6931472-仮想コード基盤の制御システム、方法及びプログラム、制御デバイス及び制御信号生成手段 図000015
  • 特許6931472-仮想コード基盤の制御システム、方法及びプログラム、制御デバイス及び制御信号生成手段 図000016
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6931472
(24)【登録日】2021年8月18日
(45)【発行日】2021年9月8日
(54)【発明の名称】仮想コード基盤の制御システム、方法及びプログラム、制御デバイス及び制御信号生成手段
(51)【国際特許分類】
   G06F 21/14 20130101AFI20210826BHJP
【FI】
   G06F21/14
【請求項の数】15
【全頁数】32
(21)【出願番号】特願2020-506909(P2020-506909)
(86)(22)【出願日】2018年7月11日
(65)【公表番号】特表2020-530164(P2020-530164A)
(43)【公表日】2020年10月15日
(86)【国際出願番号】KR2018007848
(87)【国際公開番号】WO2019031715
(87)【国際公開日】20190214
【審査請求日】2020年3月25日
(31)【優先権主張番号】10-2017-0100953
(32)【優先日】2017年8月9日
(33)【優先権主張国】KR
(31)【優先権主張番号】10-2018-0033008
(32)【優先日】2018年3月22日
(33)【優先権主張国】KR
(73)【特許権者】
【識別番号】517002580
【氏名又は名称】株式会社センストーン
【氏名又は名称原語表記】SSENSTONE INC.
(74)【代理人】
【識別番号】100121382
【弁理士】
【氏名又は名称】山下 託嗣
(72)【発明者】
【氏名】ユ,チャン フン
【審査官】 小林 秀和
(56)【参考文献】
【文献】 特開2010−231724(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 21/14
(57)【特許請求の範囲】
【請求項1】
制御モジュールが制御信号生成手段から特定時点に生成された制御信号を受信し、前記制御信号は特定の仮想コードを含み、前記仮想コードは複数の細部コードを特定の規則に従って結合して生成される制御信号受信段階と、
前記制御モジュールが前記仮想コードに含まれている複数の細部コードを抽出する段階と、
前記制御モジュールが複数の細部コードに基づいて特定の命令語が含まれている格納位置を探索する命令語探索段階と、を含み、
前記仮想コードは、
同一時点に前記命令語に応じて異なるように生成され、単位カウント毎に異なるように生成され、
前記制御モジュールは、
制御デバイス内に内蔵又はインストールされ、
単位カウント毎に正常に生成された仮想コードが受信されると、前記複数の細部コードに基づいて探索開始地点と探索経路を決定して前記格納位置として探索することを特徴とし、
前記単位カウントは、
特定の時間間隔に設定され、前記時間間隔が経過するにつれて変更される、仮想コードを含む制御信号基盤の制御方法。
【請求項2】
前記制御信号生成手段は、
それぞれの命令語に対応する仮想コード生成関数を含み、
使用者により特定時点に選択された命令語に対応する仮想コード生成関数で生成した仮想コードを前記制御信号として伝送することを特徴とする、請求項1に記載の仮想コードを含む制御信号基盤の制御方法。
【請求項3】
前記仮想コード生成関数は、
それぞれの細部コードを生成する複数の細部コード生成関数と、
それぞれの細部コードを特定の結合規則に従って結合する細部コード結合関数と、を含み、
前記細部コード生成関数は、前記制御デバイスの固有値又は前記制御信号生成手段の固有値を反映して前記結合規則を適用し、
前記制御モジュールは、前記制御信号生成手段と同一の細部コード結合関数を含み、当該細部コード結合関数を用いて複数の細部コードを抽出することを特徴とする、請求項2に記載の仮想コードを含む制御信号基盤の制御方法。
【請求項4】
前記制御モジュールは、前記制御デバイス内の位置情報獲得モジュールにより獲得される時間データに基づいて前記制御信号生成手段と時間同期することで単位カウントを一致させる段階を更に含むことを特徴とする、請求項1に記載の仮想コードを含む制御信号基盤の制御方法。
【請求項5】
前記仮想コード生成関数は、第1コード生成関数及び第2コード生成関数を含み、
前記第1コード生成関数及び前記第2コード生成関数は、対応する命令語又は単位カウントが異なると、異なるコードを生成することを特徴とし、
前記細部コードは、
格納位置探索の開始地点を設定する第1コードと、
特定の探索方式によって、前記開始地点から前記格納位置への探索経路を設定する第2コードと、を含み、
前記第1コード及び前記第2コードは、単位カウント毎に変更されることを特徴とする、請求項2に記載の仮想コードを含む制御信号基盤の制御方法。
【請求項6】
格納位置探索アルゴリズムが1つのトラック上で第1コード及び第2コードに基づいてポインタを移動させる場合、
前記命令語探索段階は、
前記制御信号生成手段から受信した前記仮想コード内の第1コードに対応するトラック上の地点にポインタを移動する段階と、
前記第1コードに対応する位置を探索開始地点として設定し、前記第2コードに対応するカウント数だけトラックを回帰して命令語の格納位置にマッチした地点を探索する段階と、
命令語の格納位置に含まれる前記命令語を抽出する段階と、
を含むことを特徴とする、請求項5に記載の仮想コードを含む制御信号基盤の制御方法。
【請求項7】
前記制御モジュールは、それぞれの命令語を異なる初期単位カウントに対応する格納位置に格納し、
前記仮想コードは、
前記初期単位カウントに対応する時点又は命令語の入力時点で仮想セキュリティコードを足したカウントに基づいて生成された第1コード及び第2コードで構成され、
前記仮想セキュリティコードは、
制御信号生成手段の固有値又は制御デバイスの固有値に基づいて所定のカウント毎に生成される特定桁数のコード値であって、前記制御信号生成手段から前記制御モジュールに別途に提供されず、
前記仮想コードを受信した時点から特定範囲内の時間に前記制御モジュールが生成した前記仮想セキュリティコードを前記仮想コードから抽出された前記仮想セキュリティコードと比較して前記仮想コードが正常に生成されたかを検証する段階を更に含むことを特徴とする、請求項6に記載の仮想コードを含む制御信号基盤の制御方法。
【請求項8】
制御モジュールが制御信号生成手段から特定時点に生成された制御信号を受信し、前記制御信号は特定の仮想コードを含み、前記仮想コードは命令語識別コード及び1つ以上の細部コードを特定の規則に従って結合して生成される制御信号受信段階と、
前記制御モジュールが前記仮想コードに含まれている1つ以上の細部コード及び前記命令語識別コードを抽出する段階と、
前記制御モジュールが前記1つ以上の細部コードに基づいて仮想コードが正常に生成されたかを検証する段階と、
前記仮想コードが正常に生成されたものであれば、前記制御モジュールが前記命令語識別コードに対応する命令語を入力する段階と、を含み、
前記仮想コードは同一時点に前記命令語に応じて異なるように生成され、単位カウント毎に異なるように生成され、
前記制御モジュールは制御デバイス内に内蔵又はインストールされ、
前記単位カウントは、
特定の時間間隔に設定され、前記時間間隔が経過するにつれて変更され、
前記仮想コードを検証する段階は、
前記制御モジュールが特定の命令語に対応する格納位置探索アルゴリズムに基づいて複数の細部コードを用いて格納位置を探索する段階と、
前記格納位置内に命令語が格納されているか否か、又は、前記格納位置内の命令語と前記命令語識別コードに対応する命令語が一致するか否かを判断して仮想コードを検証する段階とを含む、
仮想コードを含む制御信号基盤の制御方法。
【請求項9】
記仮想コードは第1コード及び第2コードを含み、
前記制御モジュールは、
前記命令語によって異なる前記格納位置探索アルゴリズムを含み、
それぞれの命令語を各命令語の格納位置探索アルゴリズム内の特定の初期単位カウントに対応する格納位置に格納し、
単位カウント毎に正常に生成された仮想コードが受信されると、前記第1コードに対応する開始地点から前記第2コードに相応する探索経路に沿って移動した地点を前記格納位置として判断することを特徴とする、請求項8に記載の仮想コードを含む制御信号基盤の制御方法。
【請求項10】
前記細部コードは仮想セキュリティコードを含み、
前記仮想セキュリティコードは、制御信号生成手段の固有値又は制御デバイスの固有値に基づいて所定のカウント毎に生成される特定桁数のコード値であり
前記仮想コードを検証する段階は、
前記仮想コードを受信した時点から特定範囲内の時間に前記制御モジュールが生成した前記仮想セキュリティコードを前記仮想コードから抽出された前記仮想セキュリティコードと比較して前記仮想コードが正常に生成されたかを検証することを特徴とする、請求項8に記載の仮想コードを含む制御信号基盤の制御方法。
【請求項11】
制御信号生成手段が使用者から特定の命令語の入力要請を受信する段階と、
前記制御信号生成手段が前記命令語の入力要請に従って特定の命令語に対応する仮想コード生成関数に基づいて仮想コードを生成する段階と、
前記制御信号生成手段が仮想コードを制御信号として制御デバイスに伝送する段階とを含み、
前記仮想コードは、
第1コード及び第2コードを特定の規則に従って結合して生成され、
同一時点に前記命令語に応じて異なるように生成され、
単位カウント毎に異なるように生成され、
前記制御デバイス内の制御モジュールにより特定の命令語が含まれている格納位置の探索に用いられ、
前記制御モジュールは、
単位カウント毎に正常に生成された仮想コードが受信されると、前記第1コードに対応する開始地点から前記第2コードに相応する探索経路に沿って移動した地点を前記格納位置として判断し、
前記単位カウントは、
特定の時間間隔に設定され、前記時間間隔が経過するにつれて変更される、仮想コードを含む制御信号基盤の制御方法。
【請求項12】
制御信号生成手段が使用者から特定の命令語の入力要請を受信する段階と、
前記制御信号生成手段が前記命令語の入力要請に従って特定の命令語に対応する仮想コード生成関数に基づいて仮想コードを生成する段階と、
前記制御信号生成手段が仮想コードを制御信号として制御デバイスに伝送する段階とを含み、
前記仮想コードを生成する段階は、
特定の命令語に対応する命令語識別コードを抽出する段階と、
前記命令語に対応する細部コード生成関数を用いて1つ以上の細部コードを生成する段階と、
前記命令語識別コードと前記1つ以上の細部コードとを結合して、前記仮想コードを生成する段階とを含み、
前記制御デバイスは制御モジュールを含み、
前記制御モジュールは、
前記仮想コードに含まれている1つ以上の細部コード及び前記命令語識別コードを抽出し、
特定の命令語に対応する格納位置探索アルゴリズムに基づいて複数の細部コードを用いて格納位置を探索し、
前記格納位置内に命令語が格納されているか否か、又は、前記格納位置内の命令語と前記命令語識別コードに対応する命令語が一致するか否かを判断して仮想コードが正常に生成されたかを検証し、
前記仮想コードが正常に生成されたものであれば、前記命令語識別コードに対応する命令語を入力することを特徴とし、
前記仮想コードは単位カウント毎に異なるように生成され、
前記単位カウントは、
特定の時間間隔に設定され、前記時間間隔が経過するにつれて変更される、仮想コードを含む制御信号基盤の制御方法。
【請求項13】
媒体に格納され、請求項1〜請求項12の何れか一項の方法をハードウェアであるコンピュータで実行するための仮想コードを含む制御信号基盤の制御プログラム。
【請求項14】
制御信号生成手段から特定時点に伝送された制御信号を受信し、前記制御信号は特定の仮想コードを含む制御信号受信部と、
前記仮想コードに含まれている複数の細部コードを抽出する細部コード抽出部と、
複数の細部コードに基づいて特定の命令語が含まれている格納位置を探索する命令語探索部と、を含み、
前記仮想コードは、
複数の細部コードに含まれる第1コード及び第2コードを特定の規則に従って結合して生成され、
前記第1コード又は前記第2コードは、
同一時点に前記命令語に応じて異なるように生成され、単位カウント毎に異なるように生成され、
前記命令語探索部は、
単位カウント毎に正常に生成された仮想コードが受信されると、前記第1コードに対応する開始地点から前記第2コードに相応する探索経路に沿って移動した地点を前記格納位置として判断することを特徴とし、
前記単位カウントは、
特定の時間間隔に設定され、前記時間間隔が経過するにつれて変更される、制御デバイス。
【請求項15】
制御信号生成手段から特定時点に伝送された制御信号を受信し、前記制御信号は特定の仮想コードを含む制御信号受信部と、
前記仮想コードに含まれている命令語識別コード及び1つ以上の細部コードを抽出する細部コード抽出部と、
前記1つ以上の細部コードに基づいて仮想コードが正常に生成されたかを検証する仮想コード検証部と、
前記仮想コードが正常に生成されたものであれば、前記命令語識別コードに対応する命令語を入力する制御決定部と、を含み、
前記仮想コードは、
命令語識別コード及び1つ以上の細部コードを特定の規則に従って結合して生成され、
前記細部コードは、
同一時点に前記命令語に応じて異なるように生成され、単位カウント毎に異なるように生成され、
前記単位カウントは、
特定の時間間隔に設定され、前記時間間隔が経過するにつれて変更され、
前記仮想コード検証部は、
特定の命令語に対応する格納位置探索アルゴリズムに基づいて複数の細部コードを用いて格納位置を探索し、
前記格納位置内に命令語が格納されているか否か、又は、前記格納位置内の命令語と前記命令語識別コードに対応する命令語が一致するか否かを判断して仮想コードを検証する、
制御デバイス。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は仮想コード基盤の制御システム、方法及びプログラム、制御デバイス及び制御信号発生手段に関する。
【背景技術】
【0002】
一般に、制御デバイス(例えば、モノのインターネット(Internet of Things;IoT)機器又は無人運動体)を制御するために、別途の端末装置(例えば、特定のアプリケーションがインストールされた移動端末、リモコン又はコントローラなど)で無線通信信号を発信する。端末装置は、無線通信信号に制御命令を含めて制御デバイスに伝送する。
【0003】
しかし、単に特定の命令語をコードに変換して伝送する場合、他人が制御デバイスに対する命令語コードを容易に確認できるようになり、同一の命令語を同一の無線通信信号(例えば、RF信号で制御信号が伝送される場合に同一の周波数のRF信号)を用いて伝送して制御デバイスを統制できるようになる。即ち、制御デバイスに対する制御権限を他人に奪われる状況が発生する。
【0004】
従って、各時点毎に命令語コードが変わることによって他人が特定時点の命令語コードを獲得して制御デバイスに対する制御権限を奪うことをできなくする制御システム、方法及びプログラムが必要である。
【発明の概要】
【発明が解決しようとする課題】
【0005】
そこで、本発明は上記事情に鑑みてなされたものであって、その目的は、単位カウント毎に変動し、命令語によって区別される仮想コードを用いて制御デバイス内で実際の命令語を探索して検証し、他人が特定の命令語を含む制御信号を伝送することによって制御権限を奪うのを防止する、仮想コード基盤の制御システム、方法及びプログラム、制御デバイス及び制御信号発生手段を提供することにある。
【0006】
本発明が解決しようとする課題は、以上で言及した課題に制限されず、言及されていない他の課題は、以下の記載から通常の技術者が明確に理解できるであろう。
【課題を解決するための手段】
【0007】
本発明の一実施例による仮想コードを含む制御信号基盤の制御方法は、制御モジュールが制御信号生成手段から特定時点に生成された制御信号を受信し、前記制御信号は特定の仮想コードを含み、前記仮想コードは複数の細部コードを特定の規則に従って結合して生成される制御信号受信段階と、前記制御モジュールが前記仮想コードに含まれている複数の細部コードを抽出する段階と、前記制御モジュールが複数の細部コードに基づいて特定の命令語が含まれている格納位置を探索する命令語探索段階とを含み、前記仮想コードは同一時点に前記命令語に応じて異なるように生成され、単位カウント毎に異なるように生成され、前記制御モジュールは制御デバイス内に内蔵又はインストールされ、単位カウント毎に正常に生成された仮想コードが受信されると、前記複数の細部コードに基づいて探索開始地点と探索経路を決定して前記格納位置として探索することを特徴とし、前記単位カウントは特定の時間間隔に設定され、前記時間間隔が経過するにつれて変更される。
【0008】
また、他の実施例として、前記制御信号生成手段は、それぞれの命令語に対応する複数の仮想コード生成関数を含み、使用者により特定時点に選択された命令語に対応する仮想コード生成関数で生成した仮想コードを前記制御信号として伝送することを特徴とする。
【0009】
更に、他の実施例として、前記仮想コード生成関数は、それぞれの細部コードを生成する複数の細部コード生成関数と、それぞれの細部コードを特定の結合規則に従って結合する細部コード欠陥関数とを含み、前記細部コード生成関数は、前記制御デバイスの固有値又は前記制御信号生成手段の固有値を反映して前記結合規則を適用し、前記制御モジュールは、前記制御信号生成手段と同一の細部コード結合関数を含み、前記細部コード結合関数を用いて複数の細部コードを抽出することを特徴とする。
【0010】
また、他の実施例として、前記制御モジュールは、前記制御デバイス内の位置情報獲得モジュールにより獲得される時間データに基づいて前記制御信号生成手段と時間同期することで単位カウントを一致させる段階を更に含む。
【0011】
更に、他の実施例として、前記仮想コード生成関数は、第1コード生成関数及び第2コード生成関数を含み、前記第1コード生成関数及び前記第2コード生成関数は、対応する命令語又は単位カウントが異なると、異なるコードを生成することを特徴とし、前記細部コードは、格納位置探索の開始地点を設定する第1コードと、特定の探索方式によって前記開始地点から前記格納位置への探索経路を設定する第2コードとを含み、前記第1コード及び前記第2コードは単位カウント毎に変更される。
【0012】
また、他の実施例として、前記格納位置探索アルゴリズムが1つのトラック上で第1コード及び第2コードに基づいてポインタを移動させる場合、前記命令語探索段階は、前記制御信号生成手段から受信した前記仮想コード内の第1コードに対応するトラック上の地点にポインタを移動する段階と、前記第1コードに対応する位置を探索開始地点として設定し、前記第2コードに対応するカウント数だけトラックを回帰して命令語の格納位置にマッチした地点を探索する段階と、命令語の格納位置に含まれる前記命令語を抽出する段階とを含む。
【0013】
更に、他の実施例として、前記制御モジュールは、それぞれの命令語を異なる初期単位カウントに対応する格納位置に格納し、前記仮想コードは、前記初期単位カウントに対応する時点又は命令語の入力時点で仮想セキュリティコードを足したカウントに基づいて生成された第1コード及び第2コードで構成され、前記仮想セキュリティコードは、制御信号生成手段の固有値又は制御デバイスの固有値に基づいてOTP関数によって生成される特定桁数のコード値であって、前記制御信号生成手段から前記制御モジュールに別途に提供されず、前記制御モジュールが前記仮想コードを受信した時点から特定範囲内の時間値に基づいて算出された生成仮想セキュリティ番号を前記仮想コードから抽出された受信仮想セキュリティコードと比較して前記仮想コードが正常に生成されたかを検証する段階を更に含む。
【0014】
本発明の他の実施例による仮想コードを含む制御信号基盤の制御方法は、制御モジュールが制御信号生成手段から特定時点に生成された制御信号を受信し、前記制御信号は特定の仮想コードを含み、前記仮想コードは命令語識別コード及び1つ以上の細部コードを特定の規則に従って結合して生成される制御信号受信段階と、前記制御モジュールが前記仮想コードに含まれている1つ以上の細部コード及び前記命令語識別コードを抽出する段階と、前記制御モジュールが前記1つ以上の細部コードに基づいて仮想コードが正常に生成されたかを検証する段階と、前記仮想コードが正常に生成されたものであれば、前記制御モジュールが前記命令語識別コードに対応する命令語を入力する段階と、を含み、前記仮想コードは同一時点に前記命令語に応じて異なるように生成され、単位カウント毎に異なるように生成され、前記制御モジュールは制御デバイス内に内蔵又はインストールされ、前記単位カウントは特定の時間間隔に設定され、前記時間間隔が経過するにつれて変更される。
【0015】
また、他の実施例として、前記仮想コード検証段階は、前記制御モジュールが特定の命令語に対応する格納位置探索アルゴリズムに基づいて複数の細部コードを用いて格納位置を探索する段階と、前記格納位置内に命令語が格納されているか否か、又は、前記格納位置内の命令語と前記命令語識別コードに対応する命令語が一致するか否かを判断して仮想コードを検証する段階とを含み、前記仮想コードは第1コード及び第2コードを含み、前記制御モジュールは前記命令語によって異なる前記格納位置探索アルゴリズムを含み、それぞれの命令語を各命令語の格納位置探索アルゴリズム内の特定の初期単位カウントに対応する格納位置に格納し、単位カウント毎に正常に生成された仮想コードが受信されると、前記第1コードに対応する前記開始地点から前記第2コードに相応する探索経路に沿って移動した地点を前記格納位置として判断することを特徴とする。
【0016】
更に、他の実施例として、前記細部コードは仮想セキュリティコードを含み、前記仮想セキュリティコードは、制御信号生成手段の固有値又は制御デバイスの固有値に基づいてOTP関数によって生成される特定桁数のコード値であり、前記仮想コード検証段階は、前記制御モジュールが前記仮想コードを受信した時点から特定範囲内の時間値に基づいて算出された生成仮想セキュリティ番号を前記仮想コードから抽出された受信仮想セキュリティコードと比較して前記仮想コードが正常に生成されたかを検証することを特徴とする。
【0017】
本発明の更に他の実施例による仮想コードを含む制御信号基盤の制御方法は、制御信号生成手段が使用者から特定の命令語の入力要請を受信する段階と、前記制御信号生成手段が前記命令語の入力要請に従って特定の命令語に対応する仮想コード生成関数に基づいて仮想コードを生成する段階と、前記制御モジュールが仮想コードを制御信号として制御デバイスに伝送する段階とを含み、前記仮想コードは第1コード及び第2コードを特定の規則に従って結合して生成され、同一時点に前記命令語に応じて異なるように生成され、単位カウント毎に異なるように生成され、前記制御デバイス内の制御モジュールにより特定の命令語が含まれている格納位置の探索に用いられ、前記制御モジュールは単位カウント毎に正常に生成された仮想コードが受信されると、前記第1コードに対応する前記開始地点から前記第2コードに相応する探索経路に沿って移動した地点を前記格納位置として判断し、前記単位カウントは特定の時間間隔に設定され、前記時間間隔が経過するにつれて変更される。
【0018】
本発明の別の実施例による仮想コードを含む制御信号基盤の制御方法は、制御信号生成手段が使用者から特定の命令語の入力要請を受信する段階と、前記制御信号生成手段が前記命令語の入力要請に従って特定の命令語に対応する仮想コード生成関数に基づいて仮想コードを生成する段階と、前記制御モジュールが仮想コードを制御信号として制御デバイスに伝送する段階とを含み、前記仮想コード生成段階は、特定の命令語に対応する命令語識別コードを抽出する段階と、前記命令語に対応する細部コード生成関数を用いて1つ以上の細部コードを生成する段階と、前記命令語識別コードと前記1つ以上の細部コードとを結合して、前記仮想コードを生成する段階とを含み、前記制御デバイスは制御モジュールを含み、前記制御モジュールは前記仮想コードに含まれている1つ以上の細部コード及び前記命令語識別コードを抽出し、前記1つ以上の細部コードに基づいて仮想コードが正常に生成されたかを検証し、前記仮想コードが正常に生成されたものであれば、前記命令語識別コードに対応する命令語を入力することを特徴とし、前記仮想コードは単位カウント毎に異なるように生成され、前記単位カウントは特定の時間間隔に設定され、前記時間間隔が経過するにつれて変更される。
【0019】
本発明の他の実施例による仮想コードを含む制御信号基盤の制御プログラムは、ハードウェアと結合されて前記言及された仮想コードを含む制御信号基盤の制御方法を実行し、媒体に格納される。
【0020】
本発明の更に他の実施例による制御デバイスは、制御信号生成手段から特定時点に伝送された制御信号を受信し、前記制御信号は特定の仮想コードを含む制御信号受信部と、前記仮想コードに含まれている複数の細部コードを抽出する細部コード抽出部と、複数の細部コードに基づいて特定の命令語が含まれている格納位置を探索する命令語探索部とを含み、前記仮想コードは複数の細部コードに含まれる第1コード及び第2コードを特定の規則に従って結合して生成され、前記第1コード又は前記第2コードは同一時点に前記命令語に応じて異なるように生成され、単位カウント毎に異なるように生成され、前記命令語探索部は、単位カウント毎に正常に生成された仮想コードが受信されると、前記第1コードに対応する前記開始地点から前記第2コードに相応する探索経路に沿って移動した地点を前記格納位置として判断することを特徴とし、前記単位カウントは特定の時間間隔に設定され、前記時間間隔が経過するにつれて変更される。
【0021】
本発明の別の実施例による制御デバイスは、制御信号生成手段から特定時点に伝送された制御信号を受信し、前記制御信号は特定の仮想コードを含む制御信号受信部と、前記仮想コードに含まれている命令語識別コード及び1つ以上の細部コードを抽出する細部コード抽出部と、前記1つ以上の細部コードに基づいて仮想コードが正常に生成されたかを検証する仮想コード検証部と、前記仮想コードが正常に生成されたものであれば、前記命令語識別コードに対応する命令語を入力する制御決定部とを含み、前記仮想コードは命令語識別コード及び1つ以上の細部コードを特定の規則に従って結合して生成され、前記細部コードは同一時点に前記命令語によって異なるように生成され、単位カウント毎に異なるように生成され、前記単位カウントは特定の時間間隔に設定され、前記時間間隔が経過するにつれて変更される。
【発明の効果】
【0022】
前記のような本発明によれば、他人が制御デバイスに対して命令語を伝送することによって制御権限を奪うのを防止できる。即ち、他人が使用者の制御信号発生手段を同一にコピーしない限り、特定時点に特定の命令語に符合する仮想コードを生成できないため、制御デバイスとマッチした制御信号発生手段以外の装置で制御デバイスを制御するのを防止できるという効果を奏する。
【0023】
また、異なる命令語に対して時点に関係なく重複する仮想コードが発生しないことにより制御モジュールで命令語を誤って把握する問題が発生しなくなることができる。
【図面の簡単な説明】
【0024】
図1】本発明の一実施例による仮想コード基盤のデバイス制御システムの構成図である。
図2】本発明の一実施例による制御信号生成手段の内部構成図である。
図3】本発明の一実施例による制御デバイスの内部構成図である。
図4】本発明の一実施例による制御デバイスの内部構成図である。
図5】本発明の一実施例による仮想コード基盤のデバイス制御方法の順序図である。
図6】本発明の一実施例によるk角形の転がり移動による命令語探索過程を含む仮想コード基盤のデバイス制御方法の順序図である。
図7】本発明の一実施例によってk角形の転がり移動によって命令語の格納位置を探索する格納位置探索アルゴリズムに対する例示図である。
図8】本発明の一実施例によるトラック上の移動による命令語探索過程を含む仮想コード基盤のデバイス制御方法の順序図である。
図9】本発明の一実施例による細部コードに基づいてトラック上を移動して命令語の格納位置を探索する格納位置探索アルゴリズムに対する例示図である。
図10】本発明の一実施例による仮想セキュリティコードを用いて命令語の探索時点を移動させる方式の例示図である。
図11】本発明の他の実施例による制御モジュールが仮想コード基盤のデバイス制御方法の順序図である。
図12】本発明の他の実施例による制御モジュールが仮想コード基盤のデバイス制御方法の順序図である。
図13】本発明の他の実施例による制御モジュールが仮想コード基盤のデバイス制御方法の順序図である。
図14】本発明の一実施例による制御信号生成モジュールが仮想コードを生成する過程に対する仮想コード基盤の制御方法の順序図である。
図15】本発明の一実施例による制御信号生成モジュールが仮想コードを生成する過程に対する仮想コード基盤の制御方法の順序図である。
【発明を実施するための形態】
【0025】
以下、添付の図面を参照して本発明の好適な実施例を詳細に説明する。本発明の利点及び特徴、そしてそれらを達成する方法は、添付の図面と共に詳細に後述されている実施例を参照すれば明確になる。しかし、本発明は、以下で開示される実施例に制限されるものではなく、互いに異なる多様な形態で実現することができる。但し、本実施例は本発明の開示を完全なものにし、本発明が属する技術分野における通常の技術者に本発明の範囲を完全に理解させるために提供されるものであり、本発明は請求範囲の範囲により定義されるに過ぎない。明細書全体に亘って同一の参照符号は同一の構成要素を示す。
【0026】
他の定義がなければ、本明細書で用いられる全ての用語(技術及び科学的用語を含む)は、本発明が属する技術分野における通常の技術者が共通して理解できる意味として用いられる。また、一般に用いられる辞典に定義されている用語は、明白に特に定義されていない限り、理想的に又は過度に解釈されない。
【0027】
本明細書で用いられた用語は、実施例を説明するためのものであり、本発明を制限しようとするものではない。本明細書において、単数型は特に言及しない限り複数型も含む。明細書で用いられる「含む(comprises)」及び/又は「含んでいる(comprising)」は、言及された構成要素以外に1つ以上の他の構成要素の存在又は追加を排除しない。
【0028】
本明細書において、「制御デバイス」は、無線通信を介して制御されるあらゆるデバイスを含む。例えば、制御デバイスは、無人移動体(Unmanned Vehicle)、家電機器(例えば、TV、スピーカ、エアコンなど)などを含み得る。
【0029】
本明細書において、「制御信号」は、制御デバイスの制御又は統制のために送信される無線通信信号を意味する。
【0030】
本明細書において、「命令語」は、制御デバイスに対する特定の制御命令で予め定められたものを意味する。「命令語」は、特定のコードデータで構成できる。
【0031】
本明細書において、「仮想コード」は、命令語に連結されるように仮に生成されるコードであって、数字を含む文字からなる特定の桁数のコードである。
【0032】
本明細書において、「文字」は、コードを構成する構成要素であって、アルファベットの大文字、アルファベットの小文字、数字及び特殊文字などの全部又は一部を含む。
【0033】
本明細書において、「コード」は、文字が並んでいる文字列を意味する。
【0034】
本明細書において、「細部コード」は、仮想コードに含まれる一部のコードを意味する。即ち、仮想コードが別途に生成された複数のコードを結合して生成される場合、細部コードは別途に生成されて仮想コードを構成する個別のコードを意味する。
【0035】
本明細書において、「単位カウント」は、特定の時間間隔に設定され、前記時間間隔が経過するにつれて変更されるものとして定義された単位である。例えば、1カウントは、特定の時間間隔(例えば、1.5秒)に設定され用いられ得る。
【0036】
本明細書において、「仮想コード生成関数」は、仮想コードを生成するのに用いられる関数を意味する。
【0037】
以下、図面を参照して、本発明の実施例による仮想コード基盤の制御システム、方法及びプログラム、制御デバイス及び制御信号発生手段について詳細に説明する。
【0038】
図1は、本発明の一実施例による仮想コード基盤の制御システムの連結関係図である。
【0039】
図2は、本発明の他の実施例による制御信号生成手段の内部構成図である。
【0040】
図3は、本発明の一実施例による制御デバイスの内部構成図である。
【0041】
図1ないし図3を参照すれば、本発明の一実施例による仮想コード基盤の制御システム1は、制御信号生成モジュール100と、制御モジュール200とを含む。
【0042】
制御信号生成モジュール100は、制御モジュール200が命令語を探索できる情報を含む仮想コードを生成する役割を果たす。即ち、制御信号生成モジュール100は、仮想コード生成関数によって仮想コードを生成する。このとき、制御モジュール200が仮想コードを基に命令語を探索するので、制御信号生成モジュール100は命令語を格納しなくてもよい。これにより、制御信号生成モジュール100のハッキングなどによって命令語と仮想コード生成関数間の連結関係が流出するのを防止できる。仮想コード生成関数についての具体的な説明は後述する。制御信号生成モジュール100は、制御デバイスを制御するための制御信号生成手段(例えば、制御デバイスと無線通信により接続されるコントローラ、移動端末内にインストール又は内蔵される制御デバイス制御用アプリケーションなど)に含めることができる。
【0043】
制御モジュール200は、制御デバイス内に内蔵又はインストールされるものである。制御モジュール200は、制御信号生成モジュール100で生成されて提供された仮想コードに基づいて命令語を探索する役割を果たす。制御モジュール200は、制御信号生成モジュール100から受信した仮想コードから命令語を探索するために、制御信号生成モジュール100と同一の仮想コード生成関数を格納できる。制御モジュール200が仮想コードに基づいて命令語を探索する方式についての具体的な説明は後述する。
【0044】
また、制御モジュール200は、仮想コードが制御信号生成モジュール100で正常に生成されたコードか否かを検証する役割を果たす。制御モジュール200が仮想コードの正否を判断する方式についての具体的な説明は後述する。
【0045】
制御モジュール200は、制御信号生成モジュール100を含む制御信号生成手段から仮想コードを含んで送信される制御信号によって仮想コードを受信する。このために、制御信号生成手段と制御デバイスは、多様な無線通信方式で制御信号を送受信できる。
【0046】
即ち、一実施例として、制御信号生成手段は第1無線通信モジュール120を含み、制御デバイスは第2無線通信モジュール220を含む。第2無線通信モジュール220は、第1無線通信モジュール120から制御信号生成モジュール100が生成した制御信号を受信する。また、制御デバイスが制御信号生成手段に制御デバイスの状態情報を提供する場合、第2無線通信モジュール220は、第1無線通信モジュール120に前記状態情報を含む無線通信信号を伝送する。第1無線通信モジュール120と第2無線通信モジュール220は、ブルートゥース(登録商標)(Bluetooth)、LTE、3G、Wi-Fi、RFなどの多様な通信方式で信号を送受信できる。
【0047】
また、他の実施例として、第1無線通信モジュール120と第2無線通信モジュール220は、命令語検証用コードの生成及び検証過程を実行する。即ち、第1無線通信モジュール120は、制御信号生成モジュール100で仮想コードを生成するのと同一の方式で、命令語検証用コードを生成できる。即ち、検証用コード生成関数は、後述する仮想コード生成方式(例えば、制御信号生成モジュールが仮想コード生成関数により仮想コードを生成し、制御モジュールが仮想コードに対応する実際の命令語を探索する方式)を同一に適用して、第1無線通信モジュール120が命令語検証用コードを生成し、第2無線通信モジュールが、命令語検証用コードが、正常に生成されたかを確認し、制御デバイスとマッチした制御信号生成手段から送られたか否かを確認する。第2無線通信モジュール220は、制御モジュール200で仮想コードを検証する方式と同一の方式で命令語検証用コードを検証する。命令語検証用コード生成関数に仮想コード生成関数と異なる規則を適用することができる。このとき、第1無線通信モジュール120は、第2無線通信モジュール220に仮想コードと命令語検証用コードが結合された形態の最終コードを伝送し、第2無線通信モジュール220は、最終コードから仮想コードと命令語検証用コードを分離した後、命令語検証用コードで検証過程を実行する。前記最終コードは、命令語検証用コードと仮想コードを結合する特定の規則により生成でき、第1無線通信モジュール120と第2無線通信モジュール220は同一の結合規則を含む。
【0048】
図2を参照すれば、本発明の実施例による制御信号生成手段は、制御信号生成モジュール100と、第1無線通信モジュール120と、を含む。前記制御信号生成手段は、制御信号生成モジュール100に該当するプログラムが内蔵(Embeded)されるか、制御信号生成モジュール100に該当するプログラム又はアプリケーションがインストールされた装置とできる。例えば、制御信号生成手段は、制御信号生成モジュール100に該当するアプリケーションがインストールされたスマートフォン、制御信号生成モジュール100が内蔵された無線コントローラとできる。
【0049】
制御信号生成モジュール100は、使用者から入力された制御命令に従って仮想コードを生成する役割を果たす。一実施例として、前記制御信号生成モジュール100は、使用者命令受信部101と、仮想コード生成部102と、細部コード生成部103とを含むことができる。
【0050】
仮想コード生成部102は、1つ以上の細部コードを組み合わせて仮想コードとして生成する役割を果たす。一実施例として、前記仮想コードは、複数の細部コードを特定の規則に従って結合して生成される。
【0051】
即ち、一実施例として、仮想コード生成関数は、細部コード生成関数及び細部コード結合関数の全部又は一部を含む。前記細部コード結合関数は、複数の細部コードを組み合わせる規則である。複数の細部コードを結合して1つの仮想コードを生成する方式としては、多様な方式を適用できる。前記細部コード結合関数の一例として、仮想コード生成部102は、N桁の第1コードとN桁の第2コードを交互に配置する方式で仮想コードを生成できる。また、他の例として、細部コード結合関数は、第1コードの後ろに第2コードを結合する関数とできる。仮想関数に含まれる細部コードが増加するにつれ、細部コード結合関数を多様に生成できる。
【0052】
前記細部コード生成部103は、1つ以上の細部コードを生成する役割を果たす。仮想コード生成関数は、それぞれの細部コード生成関数を含む。例えば、仮想コード生成関数は、複数の細部コード生成関数を用いて複数の細部コードを生成し、複数の細部コードを結合する細部コード結合関数を用いて仮想コードを生成する。
【0053】
一実施例として、細部コード生成部103は、細部コード生成関数として第1関数と第2関数を含み、第1コード及び第2コードを生成する。第1コードと第2コードは、制御デバイス内で命令語の格納位置を探索するための相関関係を持つが、制御信号生成手段は、セキュリティを向上させるために、第1コードを生成する第1関数と第2コードを生成する第2関数とを細部コード生成関数として含むだけで、第1コードと第2コードの相関関係に対するデータは含まないようにできる。
【0054】
また、一実施例として、仮想コードが第1コード及び第2コードの特定の規則による組み合わせで生成される場合、第1コードと第2コードは、それぞれ、命令語が格納された格納位置を探索するための役割を果たすことができる。例えば、第1コードは格納位置探索の開始地点を設定し、第2コードは特定の探索方式によって前記開始地点から前記格納位置への探索経路を設定する。即ち、制御信号生成手段から単位カウント毎に正常に生成された仮想コードが提供されると、制御デバイスは第1コードに対応する探索開始地点から第2コードに相応する探索経路に沿って移動した地点を命令語の格納位置として判断する。仮想コードを構成する第1コードと第2コードに基づいて格納位置を探索する具体的な方式は後述する。
【0055】
細部コード生成部103が細部コードを生成する方式の一実施例として、細部コード生成部103は、単位カウント毎に新たな細部コードを生成し、これにより制御信号生成手段は単位カウント毎に新たな仮想コードを生成する。単位カウント毎に新規に生成される仮想コードは重複して生成されない。具体的には、細部コード生成部103は、単位カウント毎に新規に生成される仮想コードが特定の使用者又は特定の制御信号生成手段で定められた期間に重複して生成されないだけでなく、特定のグループに属する使用者間でも重複して生成されないように設定される。
【0056】
仮想コードの重複生成を防止する具体的な一実施例として、M個の文字でN桁の前記第1コード又は前記第2コードを生成する場合、仮想コード生成関数に含まれる細部コード生成関数は、MN個のコードを第1コード又は第2コードとして生成でき、それぞれのコードを細部コード生成関数が駆動される初期時点から各カウント毎にマッチさせる。例えば、単位カウントを1秒に設定する場合、細部コード生成関数が最初に駆動された時点から毎秒異なるMN個のコードをマッチさせる。そして、特定の細部コード生成関数を用いる周期をMNカウントに該当する時間長(例えば、1カウントが1秒である場合、MN秒)よりも短い時間長に設定すると、第1コード又は第2コードは使用周期中に同一のコードが重複して生成されない。即ち、時間が経過するにつれてカウントが増加するとき、使用者が特定時点に制御信号生成手段に仮想コードの生成を要請する場合、制御信号生成手段は、特定時点に対応するカウントにマッチしたコード値を第1コード又は第2コードとして生成できる。
【0057】
仮想コードの重複生成を防止する具体的な他の実施例として、仮想コード生成関数の使用周期が経過すると、第1コード又は第2コードを生成する関数(即ち、第1関数又は第2関数)を変更するか、第1コードと第2コードのマッチング関係を変更して以前の使用周期と異なる仮想コードが生成されるようにする。仮想コードが第1関数により生成される第1コードと第2関数により生成される第2コードが結合される場合、第1コード生成関数又は第2コード生成関数が変更されると、制御信号生成手段は第1コード又は第2コードが登場する順序が以前の使用周期とは変わることによって、以前の周期と異なる仮想コードを生成する仮想コード生成関数を新規な使用周期に適用できる。また、制御信号生成手段は、以前の使用周期で用いられた仮想コードと同一のコードが新規な使用周期内の各カウントの仮想コードとして登場しないように(即ち、第1関数により生成される第1コードと第2関数により生成される第2コードのマッチング関係が新規な使用周期の全てのカウントで以前の使用周期内に含まれているマッチング関係に含まれないように)、第1関数と第2関数を選択できる。即ち、MN個のコードを1回ずつ適用できる使用周期を経過した後、仮想コード生成関数の調節又は更新によって以前の使用周期と重なる仮想コードが生成されない新規な使用周期の仮想コード生成関数を適用できる。
【0058】
このとき、制御信号生成モジュール100及び制御デバイスは、仮想コード生成関数を更新する規則を格納することができる。即ち、制御信号生成モジュール100及び制御モジュール200は、複数の第1関数と第2関数を各使用周期に適用する順序又は規則を格納することができる。
【0059】
また、仮想コードの重複生成を防止する具体的な他の実施例として、他の命令語に対して同一の仮想コードが同一時点で生成されないように、仮想コードに含まれる第1コード又は第2コードのうちの何れか1つは少なくとも命令語毎に同一時点で常に異なるように存在する値(即ち、命令語の固有値)を反映して生成されることができる。一実施例として、命令語の固有値は、特定の制御デバイスと制御信号生成手段間の初期設定時にそれぞれの命令語を格納した格納位置に対応する単位カウント又は時点(例えば、制御デバイス内に特定の格納位置探索アルゴリズムが駆動された最初の時点から特定時間が経過した後、特定の命令語を格納して特定の命令語に対する細部コード生成関数が適用され始めた時点)から現在まで経過した時間(又はカウント数)であり得る。1つの制御デバイスに対して複数の命令語を含む場合、それぞれの命令語をマッチさせたカウントを同一でなくすると(即ち、格納位置探索アルゴリズム上の同一の位置又は時点に複数の命令語を格納しないと)、命令語がマッチした時点(又はカウント)から使用者より命令が入力された時点までに経過した時間は、各命令語毎に異なるようになる。従って、細部コード生成関数のうちの少なくとも何れか1つは、命令語を格納位置探索アルゴリズムに格納した時点(又はカウント)から特定時点までに経過した時間を命令語の固有値として用いて、各時点毎に、それぞれの制御信号生成手段で生成された仮想コードを異ならせることができる。これにより、制御デバイスが使用者を区別するためのデータを別途に受信せず、仮想コードを受信するだけで制御信号生成手段の区別が可能なようにすることができる。
【0060】
例えば、制御デバイスがドローン(Drone:無人飛行体)である場合、制御信号生成手段で使用者の操作により選択され得る命令語は、上昇、下降、前進、後進などを含むことができる。特定の制御デバイスに対する命令語は1つのグループに設定され、制御デバイス内に含まれている1つの格納位置探索アルゴリズムにより仮想コード内の命令語が探索される。格納位置探索アルゴリズム内で制御デバイスの初期設定時からA時間だけ経過した時点に第1命令語(例えば、上昇命令語)がマッチされ、B(BはAよりも大きな値)時間だけ経過した時点に第2命令語(例えば、前進命令語)がマッチされると、第1命令語及び第2命令語は、第1使用者と第2使用者から仮想コードの生成が要請されたC(CはBよりも大きな値)時間に命令語の格納時点から経過した時間長が常に異なるようになる。従って、細部コード生成関数は、それぞれの命令語が格納位置探索アルゴリズム内に格納された時点から経過した時間長を変数として適用することによって、同一時点で同一の仮想コードが生成されないようにすることができる。また、制御デバイスは、2つの命令語が同時に受信されてもそれぞれの命令語を正確に認識できる。前記格納位置探索アルゴリズムは、カウントの経過によって現在のカウントとマッチされる格納位置が変更されるアルゴリズムであり得る。前記格納位置探索アルゴリズムについての詳細な説明は後述する。
【0061】
また、特定の命令語が格納位置探索アルゴリズム内の特定の格納位置にマッチした時点から経過した時間長は、時間が経過するにつれて継続して増加するので、特定の命令語に対する細部コード(例えば、第2コード)は同一の値が生成されず、継続して異なる値が生成される。
【0062】
更に、仮想コードの重複生成を防止する具体的な他の実施例として、全周期において使用者と関係なく重複した仮想コードが発生しないように、第1コードは、制御デバイス内で特定の命令語に対する第1関数が駆動される初期時点(例えば、制御デバイスと制御信号発生手段を最初に連動した時点、制御デバイスの生産後から最初の駆動時点、又は初期化時点)から各カウント毎にマッチしたコードのうち仮想コードの生成が要請された時点(又はカウント)までに対応するコード値に設定され、第2コードは、命令語が格納位置探索アルゴリズム内にマッチした時点から経過した時間(即ち、命令語の固有値)を反映して生成されるコード値に設定され、仮想コードを前記第1コードと第2コードが結合されたコード値として用いることができる。第1コードは各カウント毎に異なるコード値になり、第2コードは同一時点で命令語毎に異なるコード値を有するようになり、第1コードと第2コードが結合された仮想コードは、全ての制御信号生成手段と全ての時点で異なるコード値が出力されるようになる。
【0063】
他の実施例として、仮想コードは、命令語の類型を区別するための命令語識別コードを含む。即ち、仮想コード生成部102は、特定の命令語が使用者から入力されると、これに対応する命令語識別コードを抽出して仮想コードに含める。命令語識別コードは、制御モジュール200が仮想コードを受信するとすぐに、対応する命令語を把握できるようにする。制御モジュール200は、命令語識別コードを通じて命令語を把握した後、仮想コード内の細部コードに基づいて仮想コードを検証して命令語を制御命令として入力するか否かを判断する。
【0064】
また、命令語識別コードは、前記仮想コード内に予め定められた位置に結合できる。各命令語別に仮想コード生成関数が付与される場合、制御モジュール200は、仮想コードから命令語識別コードをまず抽出しなければ、命令語の類型を判断できない。従って、命令語識別コードは、別途の関数を必要とすることなく分離可能なように、仮想コード内の予め定められた位置(例えば、仮想コードの最も前のN桁数)に結合できる。
【0065】
仮想コードが命令語識別コードを含む場合、一実施例として、制御モジュール200は、特定の制御デバイスに対するそれぞれの命令語を別途のグループに区分して、それぞれの命令語を別途の格納位置探索アルゴリズム又は仮想コード生成関数を用い、制御信号生成モジュール100は、それぞれの命令語に対応する命令語識別コードを含む仮想コードを伝送する。
【0066】
具体的には、仮想コード生成部102は、命令語識別コードに特定の命令語に対応するOTP関数に基づいて生成された仮想セキュリティコードを追加して仮想コードを生成できる。制御モジュール200は、仮想コードを受信した後に命令語識別コードを用いて命令語の類型を判断し、仮想セキュリティコードを用いて仮想コードが正常に生成されたかを検証する。制御モジュール200が仮想セキュリティコードを用いて仮想コードを検証する方式については後述する。
【0067】
また、仮想コード生成部102は、特定の命令語識別コードにマッチした格納位置探索アルゴリズムに符合する複数の細部コード(例えば、第1コード及び第2コード)を生成し、命令語識別コードと結合して仮想コードを生成できる。即ち、制御モジュール200は、それぞれの命令語に対する格納位置探索アルゴリズムを個別に駆動できる。これにより、仮想コード生成部102は、制御モジュール200内の個別の格納位置探索アルゴリズムに対応するように、それぞれの命令語に対する仮想コード生成関数を別途に含むことができる。命令語別の格納位置探索アルゴリズム及び細部コードを用いて仮想コードを検証する方式については後述する。
【0068】
更に、他の実施例として、前記仮想コード生成関数(具体的に、それぞれの細部コード生成関数)は、M個の文字を昇順に並べる多数の羅列規則のうちの何れか1つを適用する。即ち、制御信号生成手段(即ち、制御信号生成モジュール100)は、それぞれの制御デバイス又はそれぞれの命令語に対する細部コード生成関数にM個の文字を昇順に並べる規則を異ならせるように適用できる。具体的には、それぞれの制御デバイス毎に(即ち、異なる識別値を有するデバイス毎に)、各デバイスの独立的な制御のために異なる羅列規則が適用された仮想コード生成関数を適用することができ、仮想コードが命令語識別コードを含む場合、それぞれの格納位置探索アルゴリズムによって異なる羅列規則が適用された仮想コード生成関数を適用することができる。
【0069】
例えば、アルファベットの大文字を昇順に並べる羅列規則は、一般的な順序であるA、B、C、…、Zの順にでき、A、C、B、…、Zの順にもできる。仮想コード生成関数で羅列規則が変わることによって、仮想コード生成関数が駆動される初期時点から各カウントに順にコードがマッチされる順序が変わるようになる。制御モジュール200は、同一の羅列規則に従って生成されたコードが各カウントにマッチされているか、同一の羅列規則自体を仮想コード生成関数に含めて格納することができる。従って、各デバイス別又は各命令語別(仮想コードが命令語識別コードを含む場合)の仮想コード生成関数が異なる細部コード結合関数を含むか、異なる文字羅列規則を含み、各グループ別に異なる仮想コード生成関数を有するようにできる。
【0070】
また、一実施例として、仮想コードは仮想セキュリティコードを含む。例えば、仮想コードは1つ以上の細部コードと仮想セキュリティコードを含むか、仮想セキュリティコードを細部コードとして含む。前記セキュリティコードは、特定のセキュリティコード生成関数に基づいて生成されるコードであって、正常な仮想コードか否かを検証するために用いられる。前記セキュリティコード生成関数は、時間データと制御信号生成手段又は制御デバイスの固有値を関数値として用いて特定の桁数のセキュリティコードを生成する。
【0071】
仮想セキュリティコードを活用して仮想コードの正否を判断する過程の一例は、以下の通りである。制御モジュール200は、初期設定時に制御信号生成手段の固有値(例えば、制御用アプリケーションがインストールされたスマートフォンの固有値など)を受信して命令語の格納位置に共に格納するか、命令語の格納位置に連結されている別途の格納空間に格納することができる。制御信号生成手段が仮想セキュリティコードを含む仮想コードを生成して制御デバイスに提供すると、制御デバイスは細部コードに基づいて仮想コードが生成された時間データを獲得し、内部に格納された特定の制御信号生成手段の固有値を抽出して時間データと共に仮想セキュリティコード生成関数(例えば、OTP(One-Time Password)関数)に適用して仮想セキュリティコードを算出する。制御デバイスは、制御信号生成手段から受信した仮想セキュリティコード(即ち、受信仮想セキュリティコード)と内部に格納された仮想セキュリティコード生成関数で算出した仮想セキュリティコード(即ち、生成仮想セキュリティコード)が一致するかを判断する。制御信号生成手段で仮想コードを生成する時点と制御デバイス200で仮想コードを受信した時点との間に差が存在し得るので、制御デバイス200は、時間遅延を考慮して特定の時間範囲内(例えば、仮想コードを受信した時点から特定カウント以前まで)の仮想セキュリティコード(即ち、OTP番号)を計算して、制御信号生成手段から受信した受信仮想セキュリティコードと一致する値が存在するかを確認する。制御モジュール200は、受信仮想セキュリティコードと生成仮想セキュリティコードとが一致すると、正常な仮想コードと判断して命令語を制御命令として決定する。
【0072】
また、他の例として、仮想セキュリティコード生成関数は、各カウント毎に異なるl桁(lは自然数)のコードを生成して関数値として共に適用できる。即ち、仮想セキュリティコード生成関数は、l桁のランダムコード生成関数(例えば、l桁のコードを生成するOTP関数)を含むことができる。
【0073】
前記第1無線通信モジュール120は、前記仮想コードを制御デバイスに伝送するために無線通信信号として出力する役割を果たす。第1無線通信モジュール120は、仮想コードを外部に提供できる多様な構成を含むことができる。第1無線通信モジュール120は、無線インターネットモジュール、近距離通信モジュール、RF信号モジュールなどの全部又は一部を含む。
【0074】
図3及び図4を参照すれば、本発明の更に他の実施例による制御デバイスは、制御モジュール200と、第2無線通信モジュール220とを含む。
【0075】
前記第2無線通信モジュール220は、制御信号生成手段から制御信号を受信する役割を果たす。第1無線通信モジュール120に対応する多様な無線通信方式を適用できる。具体的には、第2無線通信モジュール220は、制御信号生成手段から特定時点に伝送された制御信号を受信する制御信号受信部を含むことができる。前記制御信号は、特定の仮想コードを含む。
【0076】
制御モジュール200は、制御信号から仮想コードを抽出し、仮想コードから抽出された細部コード又は命令語識別コードに基づいて命令語の判断又は仮想コードが正常に生成されたかを検証する役割を果たす。
【0077】
一実施例として、図3に示すように、前記制御モジュール200は、細部コード抽出部201と、命令語探索部202とを含む。前記細部コード抽出部201は、前記仮想コードに含まれている複数の細部コードを抽出する役割を果たす。前記仮想コードは、複数の細部コードを特定の規則に従って結合して生成され、前記複数の細部コードは、同一時点に前記命令語に応じて異なるように生成され、単位カウント毎に異なるように生成される。
【0078】
制御モジュール200の細部コード抽出部201は、制御信号生成手段と同一の細部コード結合関数を含み、細部コード抽出部201は、細部コード結合関数を適用して仮想コードから複数の細部コードを抽出できる。例えば、制御信号生成手段で2つの細部コード(即ち、第1コード及び第2コード)が結合された仮想コードを生成する場合、細部コード抽出部201は仮想コードの文字配列で細部コード結合関数を適用して第1コード及び第2コードを分離することができる。
【0079】
前記命令語探索部202は、複数の細部コードに基づいて特定の命令語が含まれている格納位置を探索する役割を果たす。前記命令語探索部202は、単位カウント毎に正常に生成された仮想コードが受信されると、前記第1コードに対応する前記開始地点から前記第2コードに相応する探索経路に沿って移動した地点を前記格納位置として判断する。制御モジュール200が格納位置を判断する具体的な方式は詳細に後述する。
【0080】
他の実施例として、図4に示すように、前記制御モジュール200は、細部コード抽出部201と、仮想コード検証部203と、制御決定部204とを含む。前記細部コード抽出部201は、前記仮想コードに含まれている命令語識別コード及び1つ以上の細部コードを抽出する。前記仮想コードは、命令語識別コード及び1つ以上の細部コードを特定の規則に従って結合して生成され、前記細部コードは、同一時点に前記命令語に応じて異なるように生成され、単位カウント毎に異なるように生成される。
【0081】
一例として、細部コード抽出部201は、予め定められた位置で命令語識別コードを抽出する。具体的には、特定の細部コード結合関数が判断される前にまず命令語識別コードを抽出しなければならないので、制御モジュール200と制御信号生成モジュール100は、特定の位置(例えば、仮想コードの最初のN個の桁数)に命令語識別コードを付するものと予め定め、制御モジュール200は仮想コードを受信すると、予め定められた位置から命令語識別コードを抽出する。制御モジュール200は、仮想コードが正常に生成されたものと判断されると、命令語識別コードに対応する命令語を制御命令として決定する。
【0082】
また、細部コード抽出部201は、仮想コードが1つの細部コード(例えば、仮想セキュリティコードのみ含む場合、命令語識別コードを除いた残りのコード)を細部コードと判断する。
【0083】
更に、細部コード抽出部201は、仮想コードが複数の細部コード(例えば、第1コード及び第2コード)を含む場合、特定の命令語に対応する仮想コード生成関数内の細部コード結合関数を用いて、複数の細部コードを分離する。また、複数の細部コードが仮想セキュリティコードを含む場合、細部コード抽出部201は仮想セキュリティコードを別途に抽出する。
【0084】
前記仮想コード検証部203は、前記1つ以上の細部コードに基づいて仮想コードが正常に生成されたかを検証する。一実施例として、細部コードとして1つの仮想セキュリティコードのみを含む場合、前述したように、制御モジュール200は、制御信号生成モジュール100で生成されて提供された仮想セキュリティコード(即ち、受信仮想セキュリティコード)と制御モジュール200内で命令語の受信時点で生成された仮想セキュリティコード(即ち、生成仮想セキュリティコード)を比較して、仮想コードが正常に生成されたかを検証する(以下、第1検証方式)。
【0085】
また、他の実施例として、複数の細部コードとして第1コードと第2コードを含む場合、特定の命令語識別コードに対応する格納位置探索アルゴリズムに第1コードと第2コードを適用して探索された格納位置内で命令語が含まれているか否か、又は、格納位置内の命令語と命令語識別コードに対応する命令語が一致するか否かを比較して、仮想コードが正常に生成されたかを検証する(以下、第2検証方式)。制御モジュール200が第1コード及び第2コードを用いて格納位置探索アルゴリズムで格納位置を探索する方式は後述する。
【0086】
更に、別の実施例として、複数の細部コードとして第1コード、第2コード及び仮想セキュリティコードを含む場合、制御モジュール200は、前記第1検証方式及び前記第2検証方式のうちの少なくとも1つを適用して仮想コードが正常に生成されたか否かを検証する。
【0087】
前記制御決定部204は、前記仮想コードが正常に生成されたものであれば、前記命令語識別コードに対応する命令語を入力する。即ち、制御決定部204は、正常に生成された仮想コード内の命令語識別コードに対応する命令語を制御命令として決定して制御デバイスを駆動する。
【0088】
図5は、本発明の一実施例による仮想コードを含む制御信号基盤の制御方法の順序図である。
【0089】
図5を参照すれば、本発明の一実施例による仮想コードを含む制御信号基盤の制御方法は、制御モジュール200が制御信号生成手段から特定時点に生成された制御信号を受信する段階(S120;制御信号受信段階)と、前記制御モジュール200が前記仮想コードに含まれている複数の細部コードを抽出する段階(S140;細部コード抽出段階)と、前記制御モジュール200が複数の細部コードに基づいて特定の命令語が含まれている格納位置を探索する段階(S160;命令語探索段階)と、を含む。
【0090】
制御モジュール200は、制御信号生成手段から特定時点に生成された制御信号を受信する(S120;制御信号受信段階)。例えば、制御モジュール200は、制御デバイスの第2無線通信モジュール220が受信した制御信号内に含まれている仮想コードを獲得する。前記制御信号は、特定の命令語に対応する特定の仮想コードを含む。
【0091】
制御モジュール200は、前記仮想コードに含まれている複数の細部コードを抽出する(S140)。制御モジュール200は、仮想コードの生成時に用いられた細部コード結合関数を逆に適用してそれぞれの細部コードを抽出する。
【0092】
仮想コードは、前述したように、制御信号生成モジュール100内の特定の制御デバイスと特定の命令語に対応する仮想コード生成関数により生成される。前記仮想コードは、仮想コード生成関数内に含まれている複数の細部コード生成関数により複数の細部コードを生成し、複数の細部コードを特定の規則(即ち、細部コード結合関数)に従って結合して生成される。即ち、前記仮想コード生成関数は、それぞれの細部コードを生成する複数の細部コード生成関数と、それぞれの細部コードを特定の結合規則に従って結合する細部コード欠陥関数とを含むことができる。前記細部コード生成関数は、制御デバイスの固有値又は制御信号生成手段の固有値を反映して制御デバイス毎に異なる結合規則を適用する。
【0093】
前記仮想コードは、命令語が入力された時点(又はカウント)又は命令語の類型と関係なく重複するように生成されない。前述した仮想コード生成方式についての詳細な説明は省略する。
【0094】
制御モジュール200は、複数の細部コードに基づいて特定の命令語が含まれている格納位置を探索する(S160;命令語探索段階)。複数の細部コードは互いに相関関係を持っており、制御モジュール200は、細部コード間の相関関係に基づいて命令語の格納位置を探索する。
【0095】
前記制御モジュール200は、特定の制御デバイスに対する複数の命令語を異なる初期単位カウントに対応する格納位置に格納する。制御モジュール200は、それぞれの命令語に対応する仮想コード内の第1コード及び第2コードによって該当命令語がマッチした初期単位カウントを探索する。一実施例として、それぞれの命令語に対する初期単位カウントは、制御モジュール200と制御信号生成モジュール100間の初期設定時点(例えば、後述する格納位置探索アルゴリズムが駆動される最初の時点)から経過する特定のカウント数である。制御モジュール200は、命令語によって初期設定時点から異なるカウント数を設定する。
【0096】
そして、制御モジュール200と制御信号生成モジュール100は、各命令語に対する初期単位カウント(即ち、初期設定時点から経過した単位カウント数)に基づいて仮想コード生成関数を設定する。例えば、仮想コードは細部コードである第1コードと第2コードからなり、第1コードが初期設定時点から現時点まで経過した単位カウント数に基づいて生成され、第2コードが各命令語に対応する時点から経過した単位カウント数に基づいて生成される場合、制御モジュール200と制御信号は、各命令語に対する第2コードを生成する第2関数をそれぞれ生成する。これにより、制御モジュール200と制御信号生成モジュール100は、命令語を仮想コードの形態で送受信できる。
【0097】
仮想コード内の複数の細部コードは、単位カウント毎に生成されるコードを変更(例えば、仮想コードが2つの細部コードからなる場合、第1コード及び第2コードを単位カウント毎に変更)でき、制御モジュール200は、単位カウント毎に仮想コードが変更されても命令語の格納位置を探索できるように、命令語の格納位置にマッチした地点を変更された第1コード及び第2コードに符合する位置に単位カウント毎に調節する。
【0098】
仮想コードを構成する細部コード間の相関関係に関する一実施例として、制御モジュール200は、単位カウント毎に正常に生成された仮想コードを受信すると、複数の細部コードに基づいて探索開始地点と探索経路を決定して格納位置を探索する。具体的には、仮想コードが第1コードと第2コードの結合からなる場合、制御モジュール200は、第1コードを探索開始地点(即ち、命令語の格納位置の探索を開始する地点)に設定し、第2コードを前記探索開始地点から格納位置に移動する経路として適用して格納位置を探索できる。即ち、単位カウント毎に正常に生成された仮想コードが受信されると、制御モジュール200は、第1コードに対応する開始地点から前記第2コードに相応する探索経路に沿って移動した探索地点を、命令語の格納位置又は格納位置にマッチした地点(例えば、別途のサーバに探索地点にマッチしている格納空間)として判断する。
【0099】
一実施例として、第2コードが第1コードに相応する探索開始地点からの格納位置までの経路に関する情報を何れも含む場合、制御モジュール200は、第1コードに相応する探索開始地点から第2コードに相応する探索経路に沿って命令語の格納位置又は格納位置にマッチした地点を探すことができる。
【0100】
他の実施例として、制御モジュール200は、単位カウント毎に命令語の格納位置を仮想コードに符合するように調節する格納位置探索アルゴリズムを含むことができる。即ち、前記制御モジュール200は、単位カウント毎に命令語の格納位置にマッチした地点への探索経路を調節する格納位置探索アルゴリズムを含む。前記第1コード及び前記第2コードが単位カウント毎に変更される場合、制御モジュール200は、変更された第1コード及び第2コードに符合するように格納位置探索アルゴリズムを調節できる。前記格納位置探索アルゴリズムは、多様な形態で実現することができる。
【0101】
一実施例として、図6に示すように、格納位置探索アルゴリズムが、k(kはMN)個のコードが並んでいる経路上を、k角形が各コードの配置された地点に頂点を一致させながら転がり移動することができる。このとき、前記命令語探索段階(S160)は、制御モジュール200が前記制御信号生成手段から受信した前記仮想コード内の第1コードに対応するトラック上の地点にk角形を転がり移動させる段階(S161)と、前記第1コードに対応する位置を開始地点として設定し、前記第2コードに適用された探索方式によって第2コードに基づいて、k角形の配置状態での格納位置又は前記格納位置がマッチした地点を探索する段階(S162;格納位置探索段階)と、前記格納位置に含まれている命令語を抽出する段階(S163)とを含む。
【0102】
制御モジュール200は、図7に示すように、制御信号生成手段から受信した前記仮想コード内の第1コードに対応するトラック上の地点にk角形を転がり移動させる(S161)。格納位置探索アルゴリズムは、第1コードに該当するMN個のコードが並んでいるトラックに沿って転がり移動するk角形(kはMN)であり、k角形の頂点が第1コードトラック上のコードが配置される地点と一致しながら移動する。このとき、制御モジュール200は、第1コードに対応する地点にk角形の頂点が接するようにk角形を転がり移動を適用できる。
【0103】
制御モジュール200は、図7に示すように、前記第1コードに対応する位置を開始地点として設定し、前記第2コードに適用された探索方式によって第2コードに基づいてk角形の配置状態での格納位置又は格納位置にマッチした地点(即ち、k角形の特定の頂点)を探索する(S162;格納位置探索段階)。前記格納位置は、前記k角形のそれぞれの頂点にマッチする。第1コードトラック(即ち、第1トラック)とk角形が対応する地点が第1コードに対応する格納位置の探索開始地点になる。制御モジュール200は、探索開始地点で第2コードを基に格納位置のマッチング地点を探索する。
【0104】
第2コードに基づいてk角形で格納位置を探索する方式としては、多様な方式を適用できる。一例として、制御モジュール200は、k角形が接している第1トラック上の位置で第2コードに相応する角度(例えば、k角形の頂点に向かうように180°をMN個に分割した特定の角度)で指示することによって、仮想コードに対応する命令語が格納された格納位置であるk角形の頂点を探索できる。
【0105】
また、他の例として、k角形が第1トラック上の第1コードに対応する地点に接している状態で、制御モジュール200は、k角形の中心と第1トラック上の接点を基準に、全体中心角(即ち、360°)をMN個に分割し、それぞれの角度をMN個の第2コードにマッチする。このとき、k角形の中心と第1トラック上の接点をつなぐ線から特定数の単位角度(即ち、360°/MN)を移動した線の方向はk角形の特定の頂点になる。従って、特定の角度に対応する第2コードが受信されると、制御モジュール200は該当角度方向に位置する頂点を探索できる。
【0106】
更に、他の例として、第2コードの特定の桁を、角度算出方向を決定するものとして用いることができる。即ち、N個(Nは自然数)の文字を用いて第2コードを生成する場合、1つの桁(Digit)で角度測定方向を決定できる。例えば、制御モジュール200は、k角形の中心と第1トラック上の接点を基準に、全体中心角(即ち、360°)を分割してそれぞれの角度に第2コードをマッチする場合、k角形の中心と第1トラック上の接点をつなぐ線から左側方向に測定される角度か、右側方向に測定される角度かを1つの桁(Digit)の値により決定できる。
【0107】
一例として、格納位置探索アルゴリズムは、k角形上の各頂点に角度測定方向によって異なる2つの第2コードを1つの頂点に割り当てることができる。即ち、1つの頂点に内角にて到達する時と外角にて到達する時に異なる第2コードとマッチし、他の命令語を連結できる。他の例として、格納位置探索アルゴリズムは、N個(Nは自然数)の文字を用いて第2コードを生成する場合、N-1個で全体角度(例えば、中心角を基準に分割する場合360°)の半分に対してマッチし、1つの桁を用いて各頂点に到達するための角度の適用方向を決定できる。
【0108】
第2コードに基づいてk角形で格納位置を探索する方式は、これに限定されず、第2コードに相応するk角形上の地点と第1トラック上の接点間を特定の割合で分ける地点を格納位置として探索する方式などの多様な方式を適用できる。
【0109】
その後、制御モジュール200は、前記格納位置に含まれている命令語を抽出する(S163)。即ち、制御モジュール200は、k角形の頂点に対応する格納位置を探し、格納位置内の命令語を抽出する。
【0110】
また、他の実施例として、前記格納位置探索アルゴリズムは、仮想コードを構成する複数の細部コードに基づいてトラック上を移動して命令語の格納位置にマッチした地点へ移動する。一例として、前記命令語の格納位置にマッチした地点は、制御信号生成モジュール100に命令語が格納されたカウント(即ち、時点)に対応するトラック上の地点であり得る。このために、前記格納位置探索アルゴリズムが1つのトラック上で第1コード及び第2コードに基づいてポインタを移動させる場合、前記命令語探索段階(S160)は、図8に示すように、前記制御信号生成手段から受信した前記仮想コード内の第1コードに対応するトラック上の地点にポインタを移動する段階(S164)と、前記第1コードに対応する位置を探索開始地点として設定し、前記第2コードに対応するカウント数だけトラックを回帰して命令語の格納位置にマッチした地点を探索する段階(S165)と、命令語の格納位置に含まれている前記命令語を抽出する段階(S166)と、を含む。
【0111】
具体的には、図9を参照すれば、1つのトラック上で第1コードと第2コードを基に移動する格納位置探索アルゴリズムを用いる場合、制御モジュール200は、仮想コード生成関数が駆動された時点よりトラックの開始地点から出発したポインタ(Pointer)が、単位カウントが経過する毎にトラック上の分割単位を移動して命令語の格納時点(A時点)に位置するトラック上の地点を、命令語の格納位置にマッチした地点として決定できる。具体的には、仮想コードが、仮想コード生成関数が駆動された時点から経過した時間に基づいて生成された第1コードと、特定の制御信号生成モジュール100に命令語が格納された時点から経過した時間に基づいて生成された第2コードと、を含む場合、制御モジュール200は、第1コードに対応するコード値がマッチしたトラック上のカウントを探索開始地点として設定し、第2コードに第2関数の逆関数を適用することによって算出されたカウント値だけ前記探索開始地点からトラックに沿って回帰して格納位置探索アルゴリズムに命令語が格納された時点のトラック上の地点(即ち、命令語の格納位置にマッチした地点)を探索する。制御モジュール200は、前記格納位置から抽出された前記命令語で制御デバイスを制御する。
【0112】
また、他の実施例として、前記制御モジュール200が前記第1コード又は前記第2コードを前記第1関数又は第2関数の逆関数を適用して正常に生成された仮想コードに該当するかを検証する段階を更に含む。例えば、第1コードが制御モジュール200内で特定の仮想コード生成関数及び格納位置探索アルゴリズムが駆動された最初の時点(即ち、制御デバイスが初期駆動又は初期設定された時点)から経過したカウント数に対応するコード値であり、第2コードが特定の命令語がマッチした時点(即ち、前記最初の時点から特定の命令語にマッチした特定カウント数が経過した時点)から経過したカウント数に対応するコード値である場合、制御モジュール200は、命令語を格納位置に格納するとき、特定カウント数(即ち、特定の命令語がマッチしたカウントと最初時点間のカウント数)に対応する時間長Tsを共に格納する。制御モジュール200は、仮想コード内の第1コードに第1関数の逆関数を適用して仮想コード生成関数の駆動時から仮想コードの生成時点までの経過時間T1を算出し、仮想コード内の第2コードに第2関数の逆関数を適用して命令語の発給時から仮想コードの生成時点までの経過時間T2を算出する。その後、制御モジュール200は、T1とT2の差がTsに該当するか否かを判断して仮想コードを検証する。
【0113】
また、他の実施例として、仮想コードは仮想セキュリティコードを更に含む。このとき、制御モジュール200は、仮想コードから仮想セキュリティコードを抽出して仮想コードが正常に生成されたかを検証する過程を行える。
【0114】
一実施例として、仮想セキュリティコードは、制御デバイス又は制御信号生成手段の固有値に基づいて生成できる。前記固有値は、それぞれの制御デバイス又は制御信号生成モジュール100毎に個別に付与された装置固有値である。例えば、特定のスマートフォンを制御信号生成手段として用いて制御信号生成モジュール100に該当するアプリケーションがインストールされる場合、前記固有値は、それぞれのスマートフォン毎に付与されるので、悪質な目的でスマートフォンをハッキングするか、使用者のスマートフォンをこっそりと確認して固有値を獲得しなければ確認できない。従って、制御モジュール200が制御信号生成手段により固有値に基づいて生成された仮想セキュリティコードを受信して制御信号生成手段を検証できる。
【0115】
また、他の実施例として、制御信号生成手段は、時間値を反映して仮想セキュリティコードを生成できる。即ち、制御信号生成手段は、OTP(One time Password:固定されたパスワードの代わりに無作為に生成される一度限りの有効なパスワードを利用する使用者認証)方式を用いて仮想セキュリティコードを生成できる。制御モジュール200は、仮想セキュリティコードに該当するOTP番号を制御信号生成手段から受信し、制御信号生成手段よりOTP番号を受信したカウントから特定範囲内のカウントで算出されたOTP番号を比較して、制御信号生成手段を検証する。即ち、制御モジュール200は、命令語の格納位置内に制御デバイス又は制御信号生成モジュール100の固有値を共に格納するので、仮想コードが受信された時点に命令語の格納空間から抽出された固有値を用いて生成されたOTP番号と制御信号生成手段から受信したOTP番号が一致するかを判断して、制御信号生成手段を検証(即ち、仮想コードが制御デバイスとマッチした制御信号生成手段で生成されたかを検証)する。
【0116】
更に、他の実施例として、仮想セキュリティコードは、制御信号生成モジュール100が外部に出力せず、第1コード及び第2コードの生成に反映させることができる。例えば、前記仮想コードは、前記初期単位カウントに対応する時点又は命令語の入力時点で仮想セキュリティコードを足したカウントに基づいて生成された第1コード及び第2コードで構成される。このとき、前記仮想セキュリティコードは、制御信号生成手段の固有値又は制御デバイスの固有値に基づいてOTP関数によって生成される特定桁数のコード値とでき、第1コードと第2コードの生成に反映させることによって制御信号生成手段から制御モジュール200に別途に提供されないようにできる。
【0117】
一実施例として、図10に示すように、制御信号生成手段は、制御信号生成手段又は制御デバイスの固有値に基づいて生成された仮想セキュリティコード値を命令語の格納時点に足したカウントの第1コードを生成し、仮想セキュリティコード値に対応するカウントの第2コードを生成する。即ち、第1コード及び第2コードは、制御信号生成手段Aに命令語が格納されたA時点から仮想セキュリティコード値だけ移動(Shifting)したカウントに基づいて生成される。A時点から移動(Shifting)したカウントは、生成される仮想セキュリティコード値によって現時点に対応するカウントよりも以前のカウントとすることもでき、以後のカウントとすることもできる。制御モジュール200は、受信した第1コードと第2コードを格納位置探索アルゴリズムに適用して、命令語の格納位置がマッチした地点を探索できる。これにより、他人が仮想コードを構成する第1コード及び第2コードが提供される順序を確認できなくなり、セキュリティが向上し得る。
【0118】
また、他の実施例として、制御モジュール200は、仮想セキュリティコードに基づいて生成された第2コードから仮想セキュリティコードを抽出した後、仮想セキュリティコード生成関数(即ち、OTP関数)を仮想コードを受信したカウントから特定範囲内のカウントを入力して算出されたOTP番号中に仮想セキュリティコードと一致する値があるか否かを確認する。制御モジュール200は、第2コードに第2関数の逆関数を適用して第2コードの生成に用いられた仮想セキュリティコード値(即ち、OTP関数値)を獲得し、仮想セキュリティコード値と同一の値を算出するカウントを探す。仮想コードの伝送時間により制御信号生成モジュール100で仮想セキュリティコードが生成された時点と制御モジュール200が仮想セキュリティコードを受信した時点の差が存在することによって、制御モジュール200が仮想コードを受信したカウントと仮想セキュリティコードに該当するOTP番号を生成したカウントが一致しないこともありうるので、制御モジュール200は、仮想コードを受信したカウントから誤差範囲を許容する。これにより、制御モジュール200は、仮想コードを伝送した制御信号生成モジュール100が正常に命令語とマッチしたかを検証できるため、セキュリティが向上し得る。また、使用者は、仮想コードの入力時に特定の桁数の仮想セキュリティコードを入力しなくても、制御モジュール200が自ら仮想セキュリティコードを探索して制御信号生成手段を検証(即ち、仮想コードが制御デバイスとマッチした制御信号生成手段で生成されたかを検証)するので、制御信号生成手段を簡便に用いることができる。
【0119】
更に、他の実施例として、制御信号生成手段は、命令語の入力時点(即ち、使用者から制御信号生成手段に特定の命令語に対応する制御命令が入力された時点)に制御信号生成手段又は制御デバイスの固有値に基づいて生成された仮想セキュリティコード値を足したカウントに対応する第1コードを生成し、命令語の格納時点(A時点)と命令語の入力時点(C時点)間のカウント差と仮想セキュリティコード値を足したカウントに対応する第2コードを生成する。即ち、制御信号生成手段が第1コードと第2コードを生成する式は、以下の通りである。
【0120】
第1コード=f1(C時点カウント+仮想セキュリティコード)
第2コード=f2(C時点カウント−A時点カウント+仮想セキュリティコード)
(f1:第1関数、f2:第2関数、A時点:命令語の格納時点、C時点:命令語の入力時点のカウント、仮想セキュリティコード:OTP番号)
【0121】
制御モジュール200は、受信した仮想コード内の第1コード及び第2コードに基づいて命令語の格納位置を探索し、命令語の格納位置内に共に含まれている制御信号生成手段又は制御デバイスの固有値を抽出する。制御モジュール200は、制御信号生成手段又は制御デバイスの固有値に基づいて制御信号の受信時点から特定カウント範囲内の仮想セキュリティコード(即ち、OTP番号)を生成する。その後、制御モジュール200は、命令語の初期格納時点(A時点)から制御信号の受信時点を基準に、特定のカウント範囲内の各カウントまでのカウント数と仮想セキュリティコード(即ち、OTP番号)の和が第2コードに対応するカウント数(即ち、第2コードに第2関数の逆関数を適用した値)のようなカウントが存在するかを確認する。制御モジュール200は、第1コード及び第2コードに基づいて命令語の格納位置がマッチした地点を探索することによって命令語の初期格納時点を把握できる。これにより、制御モジュール200は、仮想コードを提供した制御信号生成手段が正常か(即ち、該当仮想コードを送信した制御信号生成手段が制御デバイスと1:1でマッチしているか)又は仮想コードが正常に生成されたか否かを確認できる。
【0122】
また、他の実施例として、図11に示すように、前記制御モジュール200が、前記制御デバイス内の位置情報獲得モジュールにより獲得される時間データに基づいて、前記制御信号生成手段と時間同期して単位カウントを一致させる段階(S110)を更に含む。制御デバイスと制御信号生成モジュール100は、位置情報獲得モジュール(例えば、GPSモジュール)を含むことができる。制御モジュール200と制御信号生成モジュール100は、時間の経過に伴い、単位カウントを増加させるので、内部のタイマの誤差を最小化するために時間同期する過程が必要である。制御モジュール200と制御信号生成モジュール100は、位置情報獲得モジュールにより獲得された時間データで同期化を行ってタイマの誤差をなくすことができる。
【0123】
図12は、本発明の一実施例による仮想コードを含む制御信号基盤の制御方法の順序図である。
【0124】
図12を参照すれば、本発明の他の実施例による仮想コードを含む制御信号基盤の制御方法は、制御モジュール200が制御信号生成手段から特定時点に生成された制御信号を受信する段階(S220;制御信号受信段階)と、制御モジュール200が前記仮想コードに含まれている1つ以上の細部コード及び前記命令語識別コードを抽出する段階(S240)と、前記制御モジュール200が前記1つ以上の細部コードに基づいて仮想コードが正常に生成されたかを検証する段階(S260)と、前記仮想コードが正常に生成されたものであれば、前記制御モジュール200が前記命令語識別コードに対応する命令語を入力する段階(S280)と、を含む。既に説明された内容についての詳細な説明は省略する。
【0125】
制御モジュール200が制御信号生成手段から特定時点に生成された制御信号を受信する(S220)。前記制御信号は特定の仮想コードを含み、前記仮想コードは、命令語識別コード及び1つ以上の細部コードを特定の規則に従って結合して生成される。前述した仮想コードについての詳細な説明は省略する。
【0126】
制御モジュール200が前記仮想コードに含まれている1つ以上の細部コード及び前記命令語識別コードを抽出する(S240)。前記仮想コードは、同一時点に前記命令語に応じて異なるように生成され、単位カウント毎に異なるように生成される。
【0127】
仮想コードが制御信号生成手段が命令語を案内するコードである命令語識別コードを含む場合、前記細部コード抽出段階(S240)は、前記仮想コード内から命令語識別コードを抽出し、前記命令語識別コードに基づいて前記制御信号生成モジュール100の命令語の種類を判断する。
【0128】
また、前述したように、命令語識別コードは、制御モジュール200が別途の関数を利用することなく識別できるように予め定められた位置に結合できる。例えば、仮想コードが複数の識別コードを含む場合、命令語識別コードを用いて仮想コード生成関数を決定する過程は、複数の細部コードを抽出する過程の以前に実行され得る。命令語識別コードにより仮想コード生成関数が決定されなければ、仮想コード生成関数内に含まれている細部コード結合関数が決定されず、複数の細部コードを抽出できない。このために、制御モジュール200が別途の関数を必要とすることなく容易に分離できるように、命令語識別コードは、仮想コード内の固定された位置(例えば、仮想コードの最も前の特定数の桁)に結合できる。
【0129】
前記命令語識別コードは、特定の命令語に対する仮想コード生成関数又は前記格納位置探索アルゴリズムを決定する。具体的には、制御モジュール200は、各命令語別に異なる格納位置探索アルゴリズムをそれぞれ用いる場合に、命令語識別コードを通じて命令語に対応する格納位置探索アルゴリズムを判断し、命令語識別コードに細部コードとして仮想セキュリティコードのみ結合して伝送する場合に、命令語識別コードを通じて命令語に対応する仮想セキュリティコードを生成する仮想セキュリティコード生成関数を判断する。
【0130】
前記制御モジュール200が、前記1つ以上の細部コードに基づいて、仮想コードが正常に生成されたかを検証する(S260)。制御モジュール200は、仮想コードが正常に生成されたかを判断することによって、仮想コードを伝送した制御信号生成手段が制御デバイスと正常にマッチしているか否かを判断する。仮想コードが正常に生成されたかを判断する方式としては、多様な方式を適用できる。
【0131】
また、他の実施例として、図13に示すように、前記仮想コード検証段階(S260)は、前記制御モジュール200が特定の命令語に対応する格納位置探索アルゴリズムに基づいて複数の細部コードを用いて格納位置を探索する段階(S261)と、前記格納位置内に命令語が格納されているか否か又は前記格納位置内の命令語と前記命令語識別コードに対応する命令語が一致するか否かを判断して仮想コードを検証する段階(S262)と、を含む。既に説明された細部コードの生成方式についての詳細な説明、及び、格納位置探索アルゴリズムにより格納位置を探索する方式についての詳細な説明は省略する。
【0132】
一実施例として、前記仮想コードは第1コード及び第2コードを含み、前記制御モジュール200は、前記命令語によって異なる前記格納位置探索アルゴリズムを含み、それぞれの命令語を各命令語の格納位置探索アルゴリズム内の特定の命令語の格納時点(即ち、初期単位カウント)に対応する格納位置に格納し、単位カウント毎に正常に生成された仮想コードが受信されると、前記第1コードに対応する前記開始地点から前記第2コードに相応する探索経路に沿って移動した地点を前記格納位置として判断する。
【0133】
また、他の実施例として、前記仮想コード検証段階(S260)は、前記制御モジュール200が仮想コードを受信した時点から特定範囲内の時間値に基づいて算出された生成仮想セキュリティ番号を前記仮想コードから抽出された受信仮想セキュリティコードと比較して、前記仮想コードが正常に生成されたかを検証する。即ち、前記細部コードは、仮想セキュリティコードを含む。前記仮想セキュリティコードは、制御信号生成手段の固有値又は制御デバイスの固有値に基づいてOTP関数によって生成される特定桁数のコード値であり得る。既に説明された仮想セキュリティコードを用いて仮想コードを検証する方式についての詳細な説明は省略する。
【0134】
仮想コードは細部コードとして仮想セキュリティコードのみを含むこともでき、第1コード及び第2コードと共に仮想セキュリティコードを含むこともできる。細部コードが仮想セキュリティコードのみで形成される場合、制御モジュール200は、仮想コードで命令語識別コードを除いた残りのコードを仮想セキュリティコードとして判断する。また、仮想セキュリティコードは、第1コードと第2コードの生成時に用いられ、直接仮想コードに含めて伝送しないようにもできる。既に説明された第1コードと第2コードの生成時に仮想セキュリティコードを用いる方式、及び、第1コードと第2コードから仮想セキュリティコードを抽出する方式についての詳細な説明は省略する。
【0135】
前記仮想コードが正常に生成されたものであれば、制御モジュール200が、前記命令語識別コードに対応する命令語を入力する(S280)。
【0136】
図14は、本発明の一実施例による仮想コードを含む制御信号基盤の制御方法の順序図である。
【0137】
図14を参照すれば、本発明の他の実施例による仮想コードを含む制御信号基盤の制御方法は、制御信号生成手段が使用者から特定の命令語の入力要請を受信する段階(S320)と、前記制御信号生成手段が前記命令語の入力要請に従って特定の命令語に対応する仮想コード生成関数に基づいて仮想コードを生成する段階(S340)と、前記制御信号生成手段が仮想コードを制御信号として制御デバイスに伝送する段階(S360)と、を含む。制御信号生成手段に関する説明で既に説明された内容についての詳細な記載は省略する。
【0138】
制御信号生成手段は、使用者から特定の命令語の入力要請を受信する(S320)。例えば、制御信号生成手段は、使用者のコントローラ操作又はユーザインターフェース操作によって命令語の入力要請を受信する。命令語の入力要請を受信する方式は、記載された方式に限定されず、音声命令を受信する方式などの多様な方式を適用できる。
【0139】
制御信号生成手段は、命令語の入力要請に従って特定の命令語に対応する仮想コード生成関数に基づいて仮想コードを生成する(S340)。前記仮想コードは、同一時点に前記命令語に応じて異なるように生成され、単位カウント毎に異なるように生成される。
【0140】
一実施例として、制御信号生成手段は、細部コード生成関数を用いて第1コード及び第2コードを生成し、特定の規則(即ち、細部コード結合関数)によって結合して仮想コードを生成する。このとき、仮想コード内の第1コード及び第2コードは、前記制御デバイス内の制御モジュール200により特定の命令語が含まれている格納位置の探索に用いられる。
【0141】
また、一実施例として、図15に示すように、制御信号生成モジュール100は、命令語識別コードを含む形態で仮想コードを生成する。このために、前記仮想コード生成段階(S340)は、特定の命令語に対応する命令語識別コードを抽出する段階(S342)と、前記命令語に対応する細部コード生成関数を用いて1つ以上の細部コードを生成する段階(S344)と、前記命令語識別コードと前記1つ以上の細部コードとを結合して、前記仮想コードを生成する段階(S346)とを含む。
【0142】
制御信号生成手段は、仮想コードを制御信号として制御デバイスに伝送する(S360)。制御信号生成モジュール100は、第1無線通信モジュール120に制御デバイスの第2無線通信モジュール220が受信できる無線通信方式で伝送を要請する。
【0143】
その後、制御モジュール200は、制御信号内の仮想コードを抽出した後、命令語の判断及び仮想コードの検証過程を実行する。一実施例として、前記制御モジュール200は、特定の制御デバイスに対して1つの格納位置探索アルゴリズムを用いる場合、単位カウント毎に正常に生成された仮想コードが受信されると、細部コードのうち第1コードに対応する前記開始地点から細部コードのうち第2コードに相応する探索経路に沿って移動した地点を前記格納位置として判断する。制御モジュール200は、格納位置内の命令語を制御命令として決定する。また、他の実施例として、複数の命令語識別コードを仮想コードに含む場合、前記制御モジュール200は、前記仮想コードに含まれている1つ以上の細部コード及び前記命令語識別コードを抽出し、前記1つ以上の細部コードに基づいて仮想コードが正常に生成されたかを検証し、前記仮想コードが正常に生成されたものであれば、前記命令語識別コードに対応する命令語を入力する。
【0144】
以上で前述した本発明の一実施例による制御信号基盤の制御方法は、ハードウェアであるコンピュータにて実行されるプログラム(又はアプリケーション)として実現され、媒体に格納できる。
【0145】
上述したプログラムは、前記コンピュータがプログラムを読み込んでプログラムで実現された前記方法を実行させるために、前記コンピュータのプロセッサ(CPU)が前記コンピュータの装置インターフェースを介して読み取られるC、C++、JAVA(登録商標)、機械語などのコンピュータ言語でコード化されたコード(Code)を含むことができる。このようなコードは、前記方法を実行するために必要な機能を定義した関数などと関連する機能的なコード(Functional Code)を含むことができ、前記機能を前記コンピュータのプロセッサが所定の手順通りに実行させるのに必要な実行手順関連の制御コードを含むことができる。また、このようなコードは、前記機能を前記コンピュータのプロセッサに実行させるのに必要な追加の情報や、メディアが前記コンピュータの内部又は外部メモリのどの位置(アドレスナンバー)を参照しなければならないかについてのメモリ参照関連のコードを更に含むことができる。また、前記コンピュータのプロセッサが前記機能を実行させるために遠隔(Remote)にある任意の他のコンピュータやサーバなどと通信が必要な場合、コードは前記コンピュータの通信モジュールを用いて遠隔にある任意の他のコンピュータやサーバなどとどのように通信すべきか、通信時にどんな情報やメディアを送受信すべきかなどに対する通信関連のコードを更に含むことができる。
【0146】
前記格納される媒体は、レジスタ、キャッシュ、メモリなどのように短期間だけデータを格納する媒体ではなく、半永久的にデータを格納し機器により読み取り(reading)が可能な媒体を意味する。具体的には、前記格納される媒体の例としては、ROM、RAM、CD-ROM、磁気テープ、フロッピーディスク、光データ格納装置などが挙げられるが、これに制限されない。即ち、前記プログラムは、前記コンピュータが接続できる多様なサーバ上の多様な記録媒体又はユーザの前記コンピュータ上の多様な記録媒体に格納できる。また、前記媒体は、ネットワークに接続されているコンピュータシステムに分散され、分散方式でコンピュータが読み取れるコードが格納され得る。
【0147】
以上、添付の図面を参照して本発明の実施例を説明したが、本発明が属する技術分野における通常の技術者は、本発明がその技術的思想や必須な特徴を変更することなく、他の具体的な形態で実施できるものとして理解できるであろう。従って、以上で記述した実施例はあらゆる面で例示的なものであり、制限的ではないものとして理解すべきである。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15