JP7036445B2 - サーバ、スレーブ装置、マスター装置、システム、システムの方法、及びプログラム - Google Patents

サーバ、スレーブ装置、マスター装置、システム、システムの方法、及びプログラム Download PDF

Info

Publication number
JP7036445B2
JP7036445B2 JP2019191809A JP2019191809A JP7036445B2 JP 7036445 B2 JP7036445 B2 JP 7036445B2 JP 2019191809 A JP2019191809 A JP 2019191809A JP 2019191809 A JP2019191809 A JP 2019191809A JP 7036445 B2 JP7036445 B2 JP 7036445B2
Authority
JP
Japan
Prior art keywords
predetermined
slave
master
server
slave device
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
JP2019191809A
Other languages
English (en)
Other versions
JP2021068967A (ja
Inventor
章 菅原
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Platforms Ltd
Original Assignee
NEC Platforms Ltd
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 NEC Platforms Ltd filed Critical NEC Platforms Ltd
Priority to JP2019191809A priority Critical patent/JP7036445B2/ja
Publication of JP2021068967A publication Critical patent/JP2021068967A/ja
Application granted granted Critical
Publication of JP7036445B2 publication Critical patent/JP7036445B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Mobile Radio Communication Systems (AREA)

Description

本開示は、サーバ、スレーブ装置、マスター装置、システム、システムの方法、及びプログラムに関し、特に、マスター装置とスレーブ装置とが通信を行う際、容易に鍵交換することが可能なサーバ、スレーブ装置、マスター装置、システム、システムの方法、及びプログラムに関する。
近年、スマートフォンやタブレットが普及してきている。スマートフォンには何処からでもインターネットに接続する機能の他にも、NFC(Near Field Communication)やブルートゥース(Bluetooth、登録商標)等の様々な機能があり、スマートフォン自身の機能を拡張し、様々なサービスを受信することができる。また、単独でインターネットに接続して周辺のセンシングやクラウドサービスの提供等を行うIoT(Internet of Things)機器と称される無線機器が普及してきている。これらの機器は、インターネット接続のための広域無線通信機能とは別に、近距離無線通信機器と接続するためのブルートゥース等の小電力無線機能を有する。ブルートゥースは、IEEEが国際的にIEEE802.15として標準化している近距離無線通信技術である。Bluetooth4.0以降の規格では、BR/EDR(Basic Rate/Enhanced Data Rate)という通信方式に加えてLE(Low Energy)という省電力に特化した規格が追加された。Bluetooth LEは省略してBLEとも称される。Bluetoothは、1対1の通信規格であり、主体的に無線通信を管理する側の装置をマスター装置と称し、管理される側の装置をスレーブ装置と称する。一般的に、サービスを要求する側がマスター装置となり、サービスを提供する側がスレーブ装置となることが多い。
ブルートゥース通信を行う際、無線通信区間のセキュリティ向上のため、通信内容を暗号化する鍵交換が必要であり、初回の接続時に通信相手との鍵交換を強いられる。鍵を交換する行為をペアリング(Pairing)、交換した鍵をお互いに保存し合う行為をボンディング(Bonding)と称し、ボンディングすることで初回以降の接続時にペアリングが省略できる。ブルートゥースのペアリングは、一方の装置をペアリングモードという「未ペアリング装置から自装置を検索できるモード」に設定し、他方の装置から接続できるようにしてから行う。この方法は、ユーザが操作して装置をペアリングモードに移行させるためのボタン等のインタフェースが必要になる。また、この方法は、装置がペアリング中には指定の鍵の入力や確認のためのLCD(Liquid Crystal Display)やキーパッド等のヒューマンインターフェースが必要になる。また、この方法は、装置の存在を周辺装置の全てに公開するので、ペアリングする相手装置を限定することが困難である。
尚、一般的に、ボンディングまでの動作がペアリングとして知られる。また、マスター装置は複数のスレーブ装置と接続して時分割に通信が可能であるが、スレーブ装置ごとにペアリングが必要となる。また、鍵の管理は、機器が持つデバイスアドレスという世界的に固有な値に紐づいた形で管理される。
特許文献1の0088段落には、「ペアリング情報管理部は、ペアリング情報から、取得要求に含まれる機器アドレス(あるいは、機器アドレスと機器名のペア)に対応するペアリング情報を抽出する。」と記載されている。特許文献1には、「待受け状態においてマスター装置からスレーブ装置に第2通信インタフェースを使用して接続要求が有り、サーバから取得したペアリング鍵と、マスター装置からの接続要求に含まれる所定ペアリング鍵と、が一致する場合、第2通信インタフェースを使用してマスター装置とスレーブ装置とが通信する」ことは開示されていない。
国際公開第2016/088185号
上記のとおり、装置をペアリングモードに移行させるために、ユーザがボタン等のインタフェースを操作する必要があった。また、装置のペアリング中に、ユーザが指定の鍵をキーパッド等から入力し、LCD等で確認を行う必要があった。このように、マスター装置とスレーブ装置とが通信を行う際、容易に鍵交換(ペアリング)することが難しいという課題があった。
本開示の目的は、上述した課題を解決するサーバ、スレーブ装置、マスター装置、システム、システムの方法、及びプログラムを提供することにある。
本開示に係るサーバは、
スレーブ装置の識別情報と前記スレーブ装置が生成した乱数値とを含むペアリング鍵生成要求を、第1通信インタフェースを使用して前記スレーブ装置から取得するサーバ取得部と、
前記ペアリング鍵生成要求に基づいてマスター装置のマスターアドレスと前記スレーブ装置のスレーブアドレスとを生成するペアリング管理部と、
前記マスターアドレスと前記スレーブアドレスとに基づいて前記スレーブ装置と前記マスター装置とが接続するためのペアリング鍵を生成するペアリング鍵生成部と、
前記識別情報と前記乱数値とに基づいて識別用ハッシュ値を生成するハッシュ生成部と、
前記識別情報と前記識別用ハッシュ値と前記マスターアドレスと前記スレーブアドレスと前記ペアリング鍵とを紐づけるサーバデータベース部と、
前記マスターアドレスと前記スレーブアドレスと前記ペアリング鍵とを前記第1通信インタフェースを使用して前記スレーブ装置に通知するサーバ通知部と、
を備え、
前記サーバ取得部は、前記マスター装置が接続を希望する所定スレーブ装置の所定識別情報を、前記第1通信インタフェースを使用して前記マスター装置から取得し、
前記サーバ通知部は、前記所定識別情報が前記識別情報の中に存在する場合、前記所定識別情報に紐づいた所定スレーブアドレスを、前記第1通信インタフェースを使用して前記マスター装置に通知し、
前記サーバ取得部は、前記マスター装置が前記所定識別情報と前記乱数値とに基づいて生成した識別用所定ハッシュ値を、前記第1通信インタフェースを使用して取得し、
前記サーバ通知部は、前記識別用所定ハッシュ値が前記識別用ハッシュ値の中に存在する場合、前記識別用所定ハッシュ値に紐づいた所定ペアリング鍵と所定マスターアドレスとを、前記第1通信インタフェースを使用して前記マスター装置に通知し、
前記サーバ取得部は、前記ペアリング鍵と前記所定ペアリング鍵とが一致する場合、前記マスター装置と前記スレーブ装置とが第2通信インタフェースを使用して通信する旨を、前記第1通信インタフェースを使用して前記スレーブ装置から取得する。
本開示に係るスレーブ装置は、
第1通信インタフェースを使用して自装置の識別情報と自装置が生成した乱数値とを含むペアリング鍵生成要求をサーバに通知するスレーブ通知部と、
前記サーバが前記ペアリング鍵生成要求に基づいて生成した、マスター装置のマスターアドレスと、自装置のスレーブアドレスと、自装置と前記マスター装置とが接続するためのペアリング鍵と、を前記サーバから取得するスレーブ取得部と、
第2通信インタフェースを使用して前記乱数値を送信するスレーブ送受信部と、
前記乱数値を送信した後、前記マスター装置からの接続要求を待受けることのできる待受け状態に自装置を移行させるスレーブ制御部と、
を備え、
前記スレーブ送受信部は、前記待受け状態において前記マスター装置から前記第2通信インタフェースを使用して前記接続要求が有り、前記ペアリング鍵と、前記接続要求に含まれる所定ペアリング鍵と、が一致する場合、前記第2通信インタフェースを使用して前記マスター装置と通信し、
前記識別情報と、前記識別情報と前記乱数値とに基づいて生成した識別用ハッシュ値と、前記マスターアドレスと、前記スレーブアドレスと、前記ペアリング鍵とは紐づけられており、
前記所定ペアリング鍵は、前記マスター装置が接続を希望する所定スレーブ装置の所定識別情報と、前記乱数値と、に基づいて生成された識別用所定ハッシュ値に紐づいており、
前記所定ペアリング鍵は、前記識別用所定ハッシュ値が前記識別用ハッシュ値の中に存在する場合、前記第1通信インタフェースを使用して前記サーバから前記マスター装置に通知される。
本開示に係るマスター装置は、
第1通信インタフェースを使用して自装置が接続を希望する所定スレーブ装置の所定識別情報をサーバに通知するマスター通知部と、
スレーブ装置の識別情報と、前記識別情報と前記スレーブ装置が生成した乱数値とに基づいて生成された識別用ハッシュ値と、前記識別情報と前記乱数値とを含むペアリング鍵生成要求に基づいて生成された自装置のマスターアドレスと、前記スレーブ装置のスレーブアドレスと、前記マスターアドレスと前記スレーブアドレスとに基づいて生成されたペアリング鍵とが紐づけられた前記サーバのサーバデータベース部を参照し、前記所定識別情報が前記スレーブ装置の前記識別情報の中に存在する場合、前記所定識別情報に紐づいた所定スレーブアドレスを、前記第1通信インタフェースを使用して前記サーバから取得するマスター取得部と、
第2通信インタフェースを使用して前記乱数値を前記スレーブ装置から受信するマスター送受信部と、
前記所定識別情報と前記乱数値とに基づいて識別用所定ハッシュ値を生成する所定ハッシュ生成部と、
を備え、
前記マスター取得部は、前記識別用所定ハッシュ値が、前記識別用ハッシュ値の中に存在する場合、前記識別用所定ハッシュ値に紐づいた所定ペアリング鍵と所定マスターアドレスとを前記第1通信インタフェースを使用して前記サーバから取得し、
前記マスター送受信部は、待受け状態の前記スレーブ装置に前記所定ペアリング鍵を含む接続要求を行い、
前記スレーブ装置が前記サーバから取得した前記ペアリング鍵と、自装置が前記サーバから取得した前記所定ペアリング鍵と、が一致した場合、前記第2通信インタフェースを使用して前記スレーブ装置と通信する。
本開示に係るシステムは、
スレーブ通知部とスレーブ取得部とスレーブ送受信部とスレーブ制御部とを有するスレーブ装置と、
前記スレーブ装置と第1通信インタフェースで接続し、マスター装置と前記第1通信インタフェースで接続し、ペアリング管理部とペアリング鍵生成部とハッシュ生成部とサーバ通知部とを有するサーバと、
前記スレーブ装置と第2通信インタフェースで接続し、マスター通知部とマスター送受信部と所定ハッシュ生成部とを有する前記マスター装置と、
を備え、
前記スレーブ通知部は、前記第1通信インタフェースを使用して前記スレーブ装置の識別情報と前記スレーブ装置が生成した乱数値とを含むペアリング鍵生成要求を前記サーバに通知し、
前記ペアリング管理部は、前記ペアリング鍵生成要求に基づいて前記マスター装置のマスターアドレスと前記スレーブ装置のスレーブアドレスとを生成し、
前記ペアリング鍵生成部は、前記マスターアドレスと前記スレーブアドレスとに基づいて前記スレーブ装置と前記マスター装置とが接続するためのペアリング鍵を生成し、
前記ハッシュ生成部は、前記識別情報と前記乱数値とに基づいて識別用ハッシュ値を生成し、
サーバデータベース部は、前記識別情報と前記識別用ハッシュ値と前記マスターアドレスと前記スレーブアドレスと前記ペアリング鍵とを紐づけ、
前記スレーブ取得部は、前記第1通信インタフェースを使用して前記マスターアドレスと前記スレーブアドレスと前記ペアリング鍵とを前記サーバから取得し、
前記スレーブ送受信部は、前記第2通信インタフェースを使用して前記乱数値を送信し、
前記スレーブ制御部は、前記乱数値を送信した後、前記マスター装置からの接続要求を待受けることのできる待受け状態に前記スレーブ装置を移行させ、
前記マスター通知部は、前記第1通信インタフェースを使用して前記マスター装置が接続を希望する所定スレーブ装置の所定識別情報を前記サーバに通知し、
前記サーバ通知部は、前記所定識別情報が前記識別情報の中に存在する場合、前記所定識別情報に紐づいた所定スレーブアドレスを前記マスター装置に通知し、
前記マスター送受信部は、前記第2通信インタフェースを使用して前記乱数値を前記スレーブ装置から受信し、
前記所定ハッシュ生成部は、前記所定識別情報と前記乱数値とに基づいて識別用所定ハッシュ値を生成し、
前記サーバ通知部は、前記識別用所定ハッシュ値が前記識別用ハッシュ値の中に存在する場合、前記識別用所定ハッシュ値に紐づいた所定ペアリング鍵と所定マスターアドレスとを前記マスター装置に通知し、
前記スレーブ送受信部は、前記待受け状態において前記マスター装置から前記接続要求が有り、前記サーバから取得した前記ペアリング鍵と、前記接続要求に含まれる前記所定ペアリング鍵と、が一致した場合、前記第2通信インタフェースを使用して前記マスター装置と通信する。
本開示に係るシステムの方法は、
第1通信インタフェースを使用してスレーブ装置の識別情報と前記スレーブ装置が生成した乱数値とを含むペアリング鍵生成要求を前記スレーブ装置がサーバに通知し、
前記ペアリング鍵生成要求に基づいてマスター装置のマスターアドレスと前記スレーブ装置のスレーブアドレスとを前記サーバが生成し、
前記マスターアドレスと前記スレーブアドレスとに基づいて前記スレーブ装置と前記マスター装置とが接続するためのペアリング鍵を前記サーバが生成し、
前記識別情報と前記乱数値とに基づいて識別用ハッシュ値を前記サーバが生成し、
前記識別情報と前記識別用ハッシュ値と前記マスターアドレスと前記スレーブアドレスと前記ペアリング鍵とを前記サーバが紐づけ、
前記第1通信インタフェースを使用して前記マスターアドレスと前記スレーブアドレスと前記ペアリング鍵とを前記スレーブ装置が前記サーバから取得し、
第2通信インタフェースを使用して前記乱数値を前記スレーブ装置が送信し、
前記乱数値を送信した後、前記マスター装置からの接続要求を待受けることのできる待受け状態に前記スレーブ装置を移行させ、
前記第1通信インタフェースを使用して接続を希望する所定スレーブ装置の所定識別情報を前記マスター装置が前記サーバに通知し、
前記所定識別情報が前記識別情報の中に存在する場合、前記所定識別情報に紐づいた所定スレーブアドレスを前記サーバが前記マスター装置に通知し、
前記第2通信インタフェースを使用して前記乱数値を前記マスター装置が前記スレーブ装置から受信し、
前記所定識別情報と前記乱数値とに基づいて識別用所定ハッシュ値を前記マスター装置が生成し、
前記識別用所定ハッシュ値が前記識別用ハッシュ値の中に存在する場合、前記識別用所定ハッシュ値に紐づいた所定ペアリング鍵と所定マスターアドレスとを前記サーバが前記マスター装置に通知し、
前記接続要求が有り、前記サーバから取得した前記ペアリング鍵と、前記接続要求に含まれる前記所定ペアリング鍵と、が一致した場合、前記第2通信インタフェースを使用して前記スレーブ装置が前記マスター装置と通信する。
本開示に係るプログラムは、
第1通信インタフェースを使用してスレーブ装置の識別情報と前記スレーブ装置が生成した乱数値とを含むペアリング鍵生成要求を前記スレーブ装置がサーバに通知し、
前記ペアリング鍵生成要求に基づいてマスター装置のマスターアドレスと前記スレーブ装置のスレーブアドレスとを前記サーバが生成し、
前記マスターアドレスと前記スレーブアドレスとに基づいて前記スレーブ装置と前記マスター装置とが接続するためのペアリング鍵を前記サーバが生成し、
前記識別情報と前記乱数値とに基づいて識別用ハッシュ値を前記サーバが生成し、
前記識別情報と前記識別用ハッシュ値と前記マスターアドレスと前記スレーブアドレスと前記ペアリング鍵とを前記サーバが紐づけ、
前記第1通信インタフェースを使用して前記マスターアドレスと前記スレーブアドレスと前記ペアリング鍵とを前記スレーブ装置が前記サーバから取得し、
第2通信インタフェースを使用して前記乱数値を前記スレーブ装置が送信し、
前記乱数値を送信した後、前記マスター装置からの接続要求を待受けることのできる待受け状態に前記スレーブ装置を移行させ、
前記第1通信インタフェースを使用して接続を希望する所定スレーブ装置の所定識別情報を前記マスター装置が前記サーバに通知し、
前記所定識別情報が前記識別情報の中に存在する場合、前記所定識別情報に紐づいた所定スレーブアドレスを前記サーバが前記マスター装置に通知し、
前記第2通信インタフェースを使用して前記乱数値を前記マスター装置が前記スレーブ装置から受信し、
前記所定識別情報と前記乱数値とに基づいて識別用所定ハッシュ値を前記マスター装置が生成し、
前記識別用所定ハッシュ値が前記識別用ハッシュ値の中に存在する場合、前記識別用所定ハッシュ値に紐づいた所定ペアリング鍵と所定マスターアドレスとを前記サーバが前記マスター装置に通知し、
前記接続要求が有り、前記サーバから取得した前記ペアリング鍵と、前記接続要求に含まれる前記所定ペアリング鍵と、が一致した場合、前記第2通信インタフェースを使用して前記スレーブ装置が前記マスター装置と通信する、
ことをコンピュータに実行させる。
本開示によれば、マスター装置とスレーブ装置とが通信を行う際、容易に鍵交換することが可能なサーバ、スレーブ装置、マスター装置、システム、システムの方法、及びプログラムを提供することができる。
実施の形態に係るサーバを例示するブロック図である。 実施の形態に係るデータテーブルを例示するブロック図である。 実施の形態に係るシステムを例示するブロック図である。 実施の形態に係るスレーブ装置を例示するブロック図である。 実施の形態に係るマスター装置を例示するブロック図である。 実施の形態に係るシステムの動作を例示するシーケンス図である。 実施の形態に係るシステムの動作を例示するシーケンス図である。
以下、図面を参照して本発明の実施の形態について説明する。各図面において、同一又は対応する要素には同一の符号が付されており、説明の明確化のため、必要に応じて重複説明を省略する。
[実施の形態]
実施の形態に係るサーバを説明する。
実施の形態においては、後述する第2通信インタフェースとしてブルートゥースを例に挙げて説明する。
図1は、実施の形態に係るサーバを例示するブロック図である。
図2は、実施の形態に係るデータテーブルを例示するブロック図である。
図3は、実施の形態に係るシステムを例示するブロック図である。
図1及び図3に示すように、実施の形態に係るサーバ11は、第1通信インタフェース部とペアリング管理部112とペアリング鍵生成部113とハッシュ生成部114とサーバデータベース部115とを備える。第1通信インタフェース部は、サーバ取得部111とサーバ通知部116とを含む。
サーバ11は、上位通信網と第1通信インタフェースを通じて接続しており、上位通信網を通じて相手装置、すなわち、スレーブ装置12及びマスター装置13と通信する。
上位通信網は、例えば、インターネットや組織内ネットワーク等の通信ネットワークであるが、これには限定されない。スレーブ装置12とマスター装置13とが上位通信網を通じて通信するための情報はお互い持ち合わせていないものとする。
スレーブ装置12は、IoT機器等の、固定的に設置して周囲にサービスを提供する装置であり、例えば、ブルートゥース装置として、接続を待つ側の装置である。
マスター装置13は、いわゆるスマートフォンやハンドヘルド型の通信端末であり、主体的にスレーブ装置12を探し、接続を行う側の装置である。
スレーブ装置12とマスター装置13はサーバ11の宛先を事前に知っており、サーバ11と通信することができる。スレーブ装置12又はマスター装置13がサーバ11と通信する際には、SSL(Secure Sockets Layer)等によりサーバ11を認証することができサーバ11を充分に信頼できるものとするとともに、サーバ11との通信は秘匿性を担保できるものとする。
サーバ取得部111は、ペアリング鍵生成要求を、第1通信インタフェースを使用してスレーブ装置12から取得する。ペアリング鍵生成要求は、スレーブ装置12の識別情報とスレーブ装置12が生成した乱数値とを含む。
識別情報は、スレーブ装置12の製造番号、及びスレーブ装置12のMACアドレスのうちいずれかでよい。
ペアリング管理部112は、ペアリング鍵生成要求に基づいてマスター装置13のマスターアドレスとスレーブ装置12のスレーブアドレスとを生成する。
ペアリング管理部112は、第1通信インタフェースを使用して通信する相手装置(スレーブ装置12)の要求に対して、サーバ通知部116を介して応答する。ペアリング管理部112は、ペアリング鍵生成部113に対してペアリング鍵の生成を要求し、ペアリング鍵生成部113が生成したペアリング鍵を取得する。ペアリング管理部112は、サーバデータベース部115に対して情報(ペアリング鍵を含む情報)を登録、照会、削除する。
ペアリング鍵生成部113は、1対のブルートゥース機能を有する装置のデバイスアドレス(マスターアドレスとスレーブアドレス)に対して、ブルートゥースの規格で定められた方式に従ってペアリング(鍵交換)処理を仮想的に行い、通信に必要なペアリング鍵を生成する。すなわち、ペアリング鍵生成部113は、マスターアドレスとスレーブアドレスとに基づいてスレーブ装置12とマスター装置13とが接続するためのペアリング鍵を生成する。
尚、ペアリングを鍵交換と称することもある。また、マスターアドレスとスレーブアドレスとを総称して、デバイスアドレスと称することもある。また、ペアリング鍵を、ペアリング情報、ペアリング鍵情報、ペアリング鍵の情報と称することもある。また、ペアリング鍵生成部をペアリング情報生成部と称することもある。
ハッシュ生成部114は、スレーブ装置12の識別情報とスレーブ装置12が生成した乱数値とに基づいて識別用ハッシュ値を生成する。ハッシュ生成部114は、ペアリング管理部112に含まれる。
サーバデータベース部115は、識別情報と識別用ハッシュ値とマスターアドレスとスレーブアドレスとペアリング鍵とを紐づける。サーバデータベース部115は、図2に示すように、識別情報と識別用ハッシュ値とマスターアドレスとスレーブアドレスとペアリング鍵とを紐づけてデータテーブル115aに記憶してもよい。また、サーバデータベース部115は、外部からの要求に対して、有機的に整理された情報を登録し、特定のデータに紐づいた情報を検索し、必要であれば情報を編集し削除する。
サーバ通知部116は、マスターアドレスとスレーブアドレスとペアリング鍵とを、第1通信インタフェースを使用してスレーブ装置12に通知する。サーバ通知部116は、ペアリング鍵生成要求に対する応答として、マスターアドレスとスレーブアドレスとペアリング鍵とを含むペアリング鍵生成応答をスレーブ装置12に通知してもよい。
サーバ取得部111は、マスター装置13が接続を希望する所定スレーブ装置12pの所定識別情報を、第1通信インタフェースを使用してマスター装置13から取得する。
サーバ通知部116は、所定識別情報が識別情報の中に存在する場合、所定識別情報に紐づいた所定スレーブアドレスを、第1通信インタフェースを使用してマスター装置13に通知する。
具体的には、所定識別情報が「装置B」の場合、サーバ通知部116は図2に示すデータテーブル115aの識別情報の欄に「装置B」が存在するか否かを検索する。この例では、「装置B」が存在するので、サーバ通知部116は、「装置B」に紐づいた所定スレーブアドレスとして「DD:DD:DD:DD:DD:DD」を、第1通信インタフェースを使用してマスター装置13に通知する。
サーバ取得部111は、マスター装置13が所定識別情報と乱数値とに基づいて生成した識別用所定ハッシュ値を、第1通信インタフェースを使用して取得する。
サーバ通知部116は、識別用所定ハッシュ値が識別用ハッシュ値の中に存在する場合、識別用所定ハッシュ値に紐づいた所定ペアリング鍵と所定マスターアドレスとを、第1通信インタフェースを使用してマスター装置13に通知する。
具体的には、識別用所定ハッシュ値が「BCDEF」の場合、サーバ通知部116は図2に示すデータテーブル115aの識別用ハッシュ値の欄に「BCDEF」が存在するか否かを検索する。この例では、「BCDEF」が存在するので、サーバ通知部116は、「BCDEF」に紐づいた所定ペアリング情報として「YYYYYYYYYYYYYYYY」を、所定マスターアドレスとして「CC:CC:CC:CC:CC:CC」を、第1通信インタフェースを使用してマスター装置13に通知する。
サーバ取得部111は、ペアリング鍵と所定ペアリング鍵とが一致する場合、マスター装置13とスレーブ装置12とが第2通信インタフェースを使用して通信する旨を、第1通信インタフェースを使用してスレーブ装置12から取得する。
尚、ペアリング鍵は、スレーブ装置12からのペアリング鍵生成要求に基づいて、サーバ11が生成したものである。また、所定ペアリング鍵は、マスター装置13が接続を希望する所定スレーブ装置12pの所定識別情報に基づいて、サーバ11がデータテーブル115a内を検索して見つけたものである。
また、第1通信インタフェースと第2通信インタフェースとは異なる。第2通信インタフェースは、例えば、ブルートゥースである。
実施の形態に係るスレーブ装置を説明する。
図4は、実施の形態に係るスレーブ装置を例示するブロック図である。
図3及び図4に示すように、実施の形態に係るスレーブ装置12は、第1通信インタフェース部と第2通信インタフェース部とペアリング制御部とを備える。第1通信インタフェース部は、スレーブ通知部121とスレーブ取得部122とを含む。第2通信インタフェース部は、スレーブ送受信部123を含む。ペアリング制御部は、スレーブ制御部124を含む。
第1通信インタフェース部は、上位通信網と接続するための通信インタフェースである。スレーブ装置12は、上位通信網と第1通信インタフェースを使用して宛先を知る相手と通信する。第1通信インタフェースを上位通信インタフェースと称することもある。
スレーブ通知部121は、第1通信インタフェースを使用してペアリング鍵生成要求をサーバ11に通知する。ペアリング鍵生成要求は、スレーブ装置12の識別情報とスレーブ装置12が生成した乱数値とを含む。
スレーブ取得部122は、ペアリング鍵生成応答をサーバ11から取得する。ペアリング鍵生成応答は、サーバ11がペアリング鍵生成要求に基づいて生成したものである。ペアリング鍵生成応答は、マスター装置13のマスターアドレスと、スレーブ装置12のスレーブアドレスと、スレーブ装置12とマスター装置13とが接続するためのペアリング鍵と、を含む。
スレーブ装置12は、第2通信インタフェースを使用した通信における暗号化通信を行うために必要なペアリング鍵(ペアリング情報)を記憶するスレーブ記憶部(記憶装置)をさらに備えてもよい。第2通信インタフェースは、例えば、ブルートゥース通信インタフェースである。
尚、識別情報と、識別情報と乱数値とに基づいてサーバ11が生成した識別用ハッシュ値と、マスターアドレスと、スレーブアドレスと、ペアリング鍵とは、サーバデータベース部115によって紐づけられている。
スレーブ装置12は、ブルートゥース通信を行うための第2通信インタフェース部を備える。第2通信インタフェース部は、スレーブ送受信部123を含む。スレーブ送受信部123は、第2通信インタフェースを使用してアドバタイジングパケットを周囲に送信する。アドバタイジングパケットは、スレーブ装置12が生成した乱数値を含む。
スレーブ装置12は、ペアリング制御部とブルートゥース制御部とを備える。ペアリング制御部は、ブルートゥース制御部を通じてブルートゥース通信(第2通信)の内容を確認する。ペアリング制御部は、第1通信インタフェース(上位通信インタフェース)を使用した通信の制御を行う。
ブルートゥース制御部は、スレーブ記憶部(記憶装置)にアクセスでき、ペアリング鍵の情報の読み書きを行う。ブルートゥース制御部は、スレーブ記憶部に記憶された情報を使い、第2通信インタフェース(ブルートゥース通信インタフェース)を制御して通信を行う。
スレーブ制御部124は、乱数値を含むアドバタイジングパケットを送信した後、マスター装置13からの接続要求を待受けることのできる待受け状態にスレーブ装置12を移行させる。
スレーブ送受信部123は、待受け状態においてマスター装置13から第2通信インタフェースを使用して接続要求が有り、ペアリング鍵と、接続要求に含まれる所定ペアリング鍵と、が一致する場合、第2通信インタフェースを使用してマスター装置13と通信する。
尚、所定ペアリング鍵は、サーバデータベース部115によって、識別用所定ハッシュ値に紐づけられている。また、識別用所定ハッシュ値は、マスター装置13が接続を希望する所定スレーブ装置12pの所定識別情報と、スレーブ装置12が生成した乱数値と、に基づいて生成される。
また、識別用所定ハッシュ値が識別用ハッシュ値の中に存在する場合、所定ペアリング鍵が、第1通信インタフェースを使用してサーバ11からマスター装置13に通知される。
また、スレーブ送受信部123は、第2通信インタフェースを使用してマスター装置13から接続要求を受信した時から乱数値の送信を停止する。これにより、スレーブ装置12からサーバ11に、例えば、ペアリング鍵生成要求等を含む不要なペアリング情報の問い合わせを防止することができる。
スレーブ装置12は、第2通信インタフェースを使用して接続する通信の相手装置にサービスを提供するサービス提供プログラムを備える。
実施の形態に係るマスター装置を説明する。
図5は、実施の形態に係るマスター装置を例示するブロック図である。
図3及び図5に示すように、実施の形態に係るマスター装置13は、第1通信インタフェース部と第2通信インタフェース部とペアリング制御部とを備える。第1通信インタフェース部は、マスター通知部131とマスター取得部132とを含む。第2通信インタフェース部は、マスター送受信部133を含む。ペアリング制御部は、所定ハッシュ生成部134を含む。
第1通信インタフェース部は、上位通信網と接続するための通信インタフェースである。マスター装置13は、上位通信網と第1通信インタフェースを使用して宛先を知る相手と通信する。第1通信インタフェースを上位通信インタフェースと称することもある。
マスター通知部131は、第1通信インタフェースを使用してマスター装置13が接続を希望する所定スレーブ装置12pの所定識別情報をサーバ11に通知する。
マスター取得部132は、識別情報と識別用ハッシュ値とマスターアドレスとスレーブアドレスとペアリング鍵とが紐づけられたサーバ11のサーバデータベース部115のデータテーブル115aを参照する。
ここで、識別情報は、スレーブ装置12の識別情報のことである。識別用ハッシュ値は、識別情報と、スレーブ装置12が生成した乱数値と、に基づいて生成されたものである。マスターアドレスは、ペアリング鍵生成要求に基づいて生成されたものであり、マスター装置13用のマスターアドレスのことである。ペアリング鍵生成要求は、識別情報と乱数値とを含む。スレーブアドレスは、ペアリング鍵生成要求に基づいて生成されたものであり、スレーブ装置12用のスレーブアドレスである。ペアリング鍵は、マスターアドレスとスレーブアドレスとに基づいて生成されたものである。
マスター取得部132は、所定識別情報がスレーブ装置12の識別情報の中に存在する場合、所定識別情報に紐づいた所定スレーブアドレスを、第1通信インタフェースを使用してサーバ11から取得する。
マスター装置13は、第2通信インタフェースを使用した通信における暗号化通信を行うために必要なペアリング鍵(ペアリング情報)を記憶するマスター記憶部(記憶装置)をさらに備えてもよい。第2通信インタフェースは、例えば、ブルートゥース通信インタフェースである。
マスター装置13は、ブルートゥース通信を行うための第2通信インタフェース部を備える。第2通信インタフェース部は、マスター送受信部133を含む。マスター送受信部133は、第2通信インタフェースを使用してアドバタイジングパケットをスレーブ装置12から受信する。アドバタイジングパケットは、スレーブ装置12が生成した乱数値を含む。
マスター送受信部133は、マスター通知部131が所定識別情報をサーバ11に通知してからマスター送受信部133が乱数値を受信するまでの間、乱数値を受信するために所定周波数帯域で受信動作を行う。これにより、マスター装置13は、乱数値を受信した後は、所定周波数帯域で受信動作を行わなくてよいので、消費電力を削減することができる。
マスター装置13は、ペアリング制御部とブルートゥース制御部とを備える。ペアリング制御部は、ブルートゥース制御部を通じてブルートゥース通信(第2通信)の内容を確認する。ペアリング制御部は、第1通信インタフェース(上位通信インタフェース)を使用した通信の制御を行う。
ブルートゥース制御部は、マスター記憶部(記憶装置)にアクセスでき、ペアリング鍵の情報の読み書きを行う。ブルートゥース制御部は、マスター記憶部(記憶装置)に記憶された情報を使い、第2通信インタフェース(ブルートゥース通信インタフェース)を制御して通信を行う。
所定ハッシュ生成部134は、所定識別情報と乱数値とに基づいて識別用所定ハッシュ値を生成する。所定識別情報は、マスター装置13が接続を希望する所定スレーブ装置12pの識別情報のことである。乱数値は、スレーブ装置12が生成したものである。
マスター取得部132は、識別用所定ハッシュ値が、識別用ハッシュ値の中に存在する場合、識別用所定ハッシュ値に紐づいた所定ペアリング鍵と所定マスターアドレスとを第1通信インタフェースを使用してサーバ11から取得する。
マスター送受信部133は、待受け状態のスレーブ装置12に所定ペアリング鍵を含む接続要求を行う。
マスター装置13は、ペアリング鍵と、所定ペアリング鍵と、が一致した場合、第2通信インタフェースを使用してスレーブ装置と通信する。ペアリング鍵は、スレーブ装置12がサーバ11から取得したものである。所定ペアリング鍵は、マスター装置13がサーバ11から取得したものである。
マスター装置13は、第2通信インタフェースを使用して接続するスレーブ装置12が提供するサービスを利用し、必要な処理を行うサービス利用アプリケーションを備える。
実施の形態に係るシステムの動作を説明する。
図6Aは、実施の形態に係るシステムの動作を例示するシーケンス図である。
図6Bは、実施の形態に係るシステムの動作を例示するシーケンス図である。
図1、図3、図4及び図5に示すように、実施の形態に係るシステム10は、サーバ11とスレーブ装置12とマスター装置13とを備える。サーバ11は、ペアリング管理部112とペアリング鍵生成部113とハッシュ生成部114とサーバ通知部116とを有する。スレーブ装置12は、スレーブ通知部121とスレーブ取得部122とスレーブ送受信部123とスレーブ制御部124とを有する。マスター装置13は、マスター通知部131とマスター送受信部133と所定ハッシュ生成部134とを有する。
サーバ11は、スレーブ装置12と第1通信インタフェースで接続し、マスター装置13と第1通信インタフェースで接続する。マスター装置13は、スレーブ装置12と第2通信インタフェースで接続する。
図6A及び図6Bに示すように、スレーブ装置12のスレーブ通知部121は、サーバ11に接続後、第1通信インタフェースを使用してスレーブ装置12の識別情報とスレーブ装置12が生成した乱数値とを含むペアリング鍵生成要求をサーバ11に通知する(ステップS101)。識別情報は、例えば、スレーブ装置12の製造番号等の情報として固有となり得るものでよい。乱数値は、今回のペアリング鍵の生成に対して固有となるものでよい。尚、ペアリング鍵生成要求をペアリング情報生成要求と称することもある。
ペアリング管理部112は、ペアリング鍵生成要求に基づいてマスター装置13のマスターアドレスとスレーブ装置12のスレーブアドレスとを生成する(ステップS102)。
ペアリング鍵生成部113は、マスターアドレスとスレーブアドレスとに基づいてスレーブ装置12とマスター装置13とが第2通信インタフェースを使用して接続するためのペアリング鍵を生成する(ステップS103)。
ハッシュ生成部114は、識別情報と乱数値とに基づいて識別用ハッシュ値を生成する(ステップS104)。ハッシュ生成部114は、例えば、識別情報と乱数値とから、事前に取り決めた計算式を基に算出したハッシュ値を識別用ハッシュ値とする。
サーバデータベース部115は、識別情報と識別用ハッシュ値とマスターアドレスとスレーブアドレスとペアリング鍵とを紐づける。また、サーバデータベース部115は、識別情報と識別用ハッシュ値とマスターアドレスとスレーブアドレスとペアリング鍵とを紐づけて、図2に示すようなデータテーブル115aに記憶する(ステップS105)。尚、記憶することを、登録すると称することもある。
スレーブ取得部122は、第1通信インタフェースを使用してマスターアドレスとスレーブアドレスとペアリング鍵とを含むペアリング鍵生成応答をサーバ11から取得する(ステップS106)。スレーブアドレスは、スレーブ装置12が使用するものである。マスターブアドレスは、通信の相手装置として想定するマスター装置13が使用するものである。ペアリング鍵は、第2通信インタフェースを使用して通信するスレーブ装置12とマスター装置13間で共有するものである。
スレーブ装置12は、サーバ11との通信を終了後、ペアリング鍵をマスターアドレスに紐づいた形でスレーブ記憶部に記憶する(ステップS107)。
スレーブ送受信部123は、第2通信インタフェースを使用して乱数値を含むアドバタイジングパケットを周囲に送信する(ステップS108)。
スレーブ制御部124は、乱数値を送信した後、第2通信インタフェースでマスター装置13と接続するため、マスター装置13からの接続要求を待受けることのできる待受け状態にスレーブ装置12を移行させて待受けを開始する(ステップS109)。すなわち、スレーブ制御部124は、サーバ11から取得したスレーブアドレスを利用した形で第2通信の待受け動作を開始する。
スレーブ装置12は、待受け状態のまま、同一のペアリング鍵を有するマスター装置13が接続要求してくるのを待つだけである。
スレーブ装置12のスレーブアドレスは、動作毎に変化するため、デバイスアドレスだけで装置を識別することは難しい。このため、マスター装置13は、接続を希望する所定スレーブ装置12pが現在どのデバイスアドレスで動作しているかを知る必要があるため、それをサーバ11に問い合わせる。
具体的には、マスター装置13は、サーバ11に接続後、サーバ11に対して接続先装置の照会(照合)を行う。装置の製造番号等の識別情報によりサーバ11に照会を行う。すなわち、マスター通知部131は、第1通信インタフェースを使用してマスター装置13が接続を希望する所定スレーブ装置12pの所定識別情報をサーバ11に通知する(ステップS110)。ステップS110は、接続先装置(所定スレーブ装置12p)に関する情報を照合することが目的である。
サーバ11は、マスター装置13からの照会に対して、サーバデータベース部115へ照会する(ステップS111)。サーバ通知部116は、データテーブル115aの中に所定識別情報が有るかを確認し、所定識別情報が識別情報の中に存在する場合、所定識別情報に紐づいた所定スレーブアドレスをマスター装置13に通知する(ステップS112)。
マスター送受信部133は、所定スレーブアドレスをサーバ11から取得後、スキャニングを開始し、第2通信インタフェースを使用して乱数値を含むアドバタイジングパケットをスレーブ装置12から受信する(ステップS113)。アドバタイジングパケットは、送信元装置(スレーブ装置12)のデバイスアドレス(スレーブアドレス)を含み、周囲に所定スレーブアドレスを持った所定スレーブ装置12pが存在するかを確認できる。
マスター装置13は、スレーブ装置12からアドバタイジングパケットを受信したら、スキャニングを停止する(ステップS114)。
所定の装置(所望の装置)が送信するアドバタイジングパケットは、スレーブ装置12がペアリング鍵の生成に使用した乱数値を含む。所定ハッシュ生成部134は、所定スレーブ装置12pの所定識別情報と乱数値とに基づいて、事前に取り決めた計算式を用いて識別用所定ハッシュ値を生成する(ステップS115)。マスター装置13は、識別用所定ハッシュ値を基に、サーバ11に所定ペアリング鍵を問い合わせる。
サーバ11は、取得した識別用所定ハッシュを基にサーバデータベース部115へ照会する(ステップS116)。サーバ通知部116は、識別用所定ハッシュ値が識別用ハッシュ値の中に存在する場合、識別用所定ハッシュ値に紐づいた所定ペアリング鍵と所定マスターアドレスとをマスター装置13に通知する(ステップS117)。
紹介の際に、乱数値を直接使用せずに識別用所定ハッシュ値を使うのは、マスター装置13とサーバ11との間の通信量を圧縮するのが1つの目的である。また、この目的の他に、スレーブ装置12がペアリング鍵の生成を要求する以外に通信網上に乱数値に関する情報が流れないようにするためである。これにより、所定スレーブ装置12pが設置された周辺に存在するマスター装置13以外が乱数値を入手することが困難となる。
マスター装置13は、サーバ11との通信の終了後、取得した所定ペアリング鍵を、所定マスターブアドレスと紐づいた形でマスター記憶部に記憶する(ステップS118)。
スレーブ送受信部123は、待受け状態においてマスター装置13から接続要求が有り(ステップS119)、サーバ11から取得したペアリング鍵と、接続要求に含まれる所定ペアリング鍵と、が一致した場合、第2通信インタフェースを使用してマスター装置13と通信する(ステップS120)。
スレーブ装置12は、アドバタイジングパケットの送信を停止する(ステップS121)。
実施の形態に係るシステム10は、ステップS101からステップS121までの動作により、スレーブ装置12とマスター装置13とが、お互いを相手としたペアリング鍵とお互いのデバイスアドレス(マスター装置13はスレーブアドレス、スレーブ装置12はマスターアアドレス)を知ることができ、暗号化した通信を行うことができる。
実施の形態に係るスレーブ装置12において、サーバ11から取得したペアリング鍵と、マスター装置13からの接続要求に含まれる所定ペアリング鍵と、が一致した場合、第2通信インタフェースを使用してマスター装置13と通信することができる。すなわち、実施の形態においては、スレーブ装置12及びマスター装置13は、信頼できる第三者(サーバ11)からペアリング鍵を取得するので、インバンドでのペアリング処理を行わずに鍵交換を行うことができる。
その結果、実施の形態によれば、マスター装置とスレーブ装置とが通信を行う際、容易に鍵交換することが可能なサーバ、スレーブ装置、マスター装置、システム、システムの方法、及びプログラムを提供することができる。
また、第2通信(ブルートゥース)として定義されたペアリング処理を省略することができるので、ペアリングモード等の専用動作の実装や必要となるボタン等のインタフェースを削減できる。
また、ペアリング鍵(ペアリング情報)の受け渡しを、サーバ11経由で行うことので、ペアリング相手の認証及び管理が可能となる。
相手装置を特定せず、事前にスレーブ装置12をペアリング完了状態にできるので、相手の存在有無に関係なく待受け状態に移行できる。すなわち、スレーブ装置12は、第三者(サーバ11)との通信を最小限に抑えることができので、消費電力を削減することができる。
尚、実施の形態に係るシステム10は、事前に生成するペアリング情報(ペアリング鍵)をサーバ11が生成する機能を有するが、これには限定されない。システム10は、例えば、サーバ11の代わりに、スレーブ装置12が主体的にペアリング情報を生成し、サーバ11にはマスター装置13に渡すべき情報だけを記憶(登録)する機能を有してもよい。
また、実施の形態に係るシステム10では、スレーブ装置12とマスター装置13の両方がデバイスアドレスにプライベートアドレスを使用することにしたが、これには限定されない。システム10は、スレーブ装置12については、デバイスアドレスに、元々ブルートゥースデバイスとして有しているパブリックアドレスを使用してもよい。その場合、スレーブ装置12の識別情報がスレーブ装置12のデバイスアドレスそのものに置き換えられるので、識別情報からスレーブ装置12のプライベートアドレスを照会する動作が不要となる。
また、実施の形態に係るシステム10の動作フロー(図6A及び図6B参照)は、ペアリング鍵の受渡しが完了して通信可能になるまでを記載し、その後のサーバ11内のデータの管理については省略した。通信可能になった後、追加して、サーバ11でのペアリング情報の有効期限の管理や、スレーブ装置12とマスター装置13の双方で通信終了時にペアリング情報の削除処理を行う等の取り決めを行うことで、ペアリングのワンタイム制を付与することができる。この場合、ペアリング情報は一時的な利用に限定されるため、情報を不揮発的に保持する必要がなくなり、装置の簡略化をすることができる。
ここで、実施の形態に係るシステム10の特徴を記載する。
実施の形態に係るシステム10は、第2通信インタフェース(ブルートゥース通信インタフェース)にて通信の内容を暗号化するために必要となる鍵交換(ペアリング)について、通信を必要とする1対のブルートゥース装置(スレーブ装置12とマスター装置13)に対して、予め生成したペアリング鍵(ペアリング情報)を、1対のブルートゥース装置が有する別の通信インターフェース(第1通信インタフェース)を使用して、第1及び第2通信インタフェースのどちらも通信可能で信頼できる第三者(サーバ11)を通して取得(配布)することにより、インバンドでのペアリング処理を行わずに鍵交換を行うことができる。
尚、上記の実施の形態では、本発明をハードウェアの構成として説明したが、本発明はこれに限定されるものではない。本発明は、各構成要素の処理を、CPU(Central Processing Unit)にコンピュータプログラムを実行させることにより実現することも可能である。
上記の実施の形態において、プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実態のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(具体的にはフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(具体的には光磁気ディスク)、CD-ROM(Read Only Memory)、CD-R、CD-R/W、半導体メモリ(具体的には、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM))、フラッシュROM、RAM(Random Access Memory)を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
10…システム
11…サーバ
111…サーバ取得部
112…ペアリング管理部
113…ペアリング鍵生成部
114…ハッシュ生成部
115…サーバデータベース部
115a…データテーブル
116…サーバ通知部
12…スレーブ装置
12p…所定スレーブ装置
121…スレーブ通知部
122…スレーブ取得部
123…スレーブ送受信部
124…スレーブ制御部
13…マスター装置
131…マスター通知部
132…マスター取得部
133…マスター送受信部
134…所定ハッシュ生成部

Claims (10)

  1. 複数のスレーブ装置がそれぞれに、
    前記スレーブ装置の識別情報と前記スレーブ装置が生成した乱数値とを含むペアリング鍵生成要求を、第1通信インタフェースを使用して前記スレーブ装置から取得するサーバ取得部と、
    前記ペアリング鍵生成要求に基づいてマスター装置のマスターアドレスと前記スレーブ装置のスレーブアドレスとを生成するペアリング管理部と、
    前記マスターアドレスと前記スレーブアドレスとに基づいて前記スレーブ装置と前記マスター装置とが接続するためのペアリング鍵を生成するペアリング鍵生成部と、
    前記識別情報と前記スレーブ装置が生成した前記乱数値とに基づいて識別用ハッシュ値を生成するハッシュ生成部と、
    前記識別情報と前記識別用ハッシュ値と前記マスターアドレスと前記スレーブアドレスと前記ペアリング鍵とを紐づけて記憶したデータテーブルを生成するサーバデータベース部と、
    前記マスターアドレスと前記スレーブアドレスと前記ペアリング鍵とを前記第1通信インタフェースを使用して前記スレーブ装置に通知するサーバ通知部と、
    を備え、
    前記サーバ取得部は、任意のマスター装置が接続を希望する所定スレーブ装置の所定識別情報を、前記第1通信インタフェースを使用して前記任意のマスター装置から取得し、
    前記サーバ通知部は、前記所定識別情報が前記データテーブルの中に存在する場合、前記所定識別情報に紐づいた所定スレーブアドレスを、前記第1通信インタフェースを使用して前記任意のマスター装置に通知し、
    前記サーバ取得部は、前記任意のマスター装置が前記所定識別情報と前記所定スレーブ装置が生成した前記乱数値とに基づいて生成した識別用所定ハッシュ値を、前記第1通信インタフェースを使用して取得し、
    前記サーバ通知部は、前記識別用所定ハッシュ値が前記データテーブルの中に存在する場合、前記識別用所定ハッシュ値に紐づいた所定ペアリング鍵と所定マスターアドレスとを、前記第1通信インタフェースを使用して前記任意のマスター装置に通知し、
    前記サーバ取得部は、前記所定ペアリング鍵が前記データテーブルの中に存在する場合、前記任意のマスター装置と前記所定スレーブ装置とが第2通信インタフェースを使用して通信する旨を、前記第1通信インタフェースを使用して前記所定スレーブ装置から取得する、
    サーバ。
  2. 前記第1通信インタフェースと前記第2通信インタフェースとは異なり、
    前記第2通信インタフェースは、ブルートゥースである、
    請求項1に記載のサーバ。
  3. 前記識別情報は、前記スレーブ装置の製造番号、及び前記スレーブ装置のMACアドレスのうちいずれかである、
    請求項1又は2に記載のサーバ。
  4. 第1通信インタフェースを使用して自装置の識別情報と自装置が生成した乱数値とを含むペアリング鍵生成要求をサーバに通知するスレーブ通知部と、
    前記サーバが前記ペアリング鍵生成要求に基づいて生成した、マスター装置のマスターアドレスと、自装置のスレーブアドレスと、自装置と前記マスター装置とが接続するためのペアリング鍵と、を前記サーバから取得するスレーブ取得部と、
    第2通信インタフェースを使用して前記乱数値を送信するスレーブ送受信部と、
    前記乱数値を送信した後、前記マスター装置からの接続要求を待受けることのできる待受け状態に自装置を移行させるスレーブ制御部と、
    を備え、
    前記スレーブ送受信部は、前記待受け状態において前記マスター装置から前記第2通信インタフェースを使用して前記接続要求が有り、前記ペアリング鍵と、前記接続要求に含まれる所定ペアリング鍵と、が一致する場合、前記第2通信インタフェースを使用して前記マスター装置と通信し、
    前記識別情報と、前記識別情報と前記乱数値とに基づいて生成した識別用ハッシュ値と、前記マスターアドレスと、前記スレーブアドレスと、前記ペアリング鍵とは紐づけられており、
    前記所定ペアリング鍵は、前記マスター装置が接続を希望する所定スレーブ装置の所定識別情報と、前記乱数値と、に基づいて生成された識別用所定ハッシュ値に紐づいており、
    前記所定ペアリング鍵は、前記識別用所定ハッシュ値が前記識別用ハッシュ値の中に存在する場合、前記第1通信インタフェースを使用して前記サーバから前記マスター装置に通知される、
    スレーブ装置。
  5. 前記スレーブ送受信部は、前記第2通信インタフェースを使用して前記マスター装置から前記接続要求を受信した時から前記乱数値の送信を停止する、
    請求項4に記載のスレーブ装置。
  6. 第1通信インタフェースを使用して自装置が接続を希望する所定スレーブ装置の所定識別情報をサーバに通知するマスター通知部と、
    複数のスレーブ装置がそれぞれに、
    前記スレーブ装置の識別情報と、前記識別情報と前記スレーブ装置が生成した乱数値とに基づいて生成された識別用ハッシュ値と、前記識別情報と前記スレーブ装置が生成した前記乱数値とを含むペアリング鍵生成要求に基づいて生成された自装置のマスターアドレスと、前記スレーブ装置のスレーブアドレスと、前記マスターアドレスと前記スレーブアドレスとに基づいて生成されたペアリング鍵とが紐づけられて記憶され、生成されたデータテーブルが含まれる前記サーバのサーバデータベース部を参照し、前記所定識別情報が前記データテーブルの中に存在する場合、前記所定識別情報に紐づいた所定スレーブアドレスを、前記第1通信インタフェースを使用して前記サーバから取得するマスター取得部と、
    第2通信インタフェースを使用して前記所定スレーブ装置が生成した前記乱数値を前記所定スレーブ装置から受信するマスター送受信部と、
    前記所定識別情報と前記所定スレーブ装置が生成した前記乱数値とに基づいて識別用所定ハッシュ値を生成する所定ハッシュ生成部と、
    を備え、
    前記マスター取得部は、前記識別用所定ハッシュ値が、前記データテーブルの中に存在する場合、前記識別用所定ハッシュ値に紐づいた所定ペアリング鍵と所定マスターアドレスとを前記第1通信インタフェースを使用して前記サーバから取得し、
    前記マスター送受信部は、待受け状態の前記所定スレーブ装置に前記所定ペアリング鍵を含む接続要求を行い、
    装置が前記サーバから取得した前記所定ペアリング鍵が前記データテーブルの中に存在する場合、前記第2通信インタフェースを使用して前記所定スレーブ装置と通信する、
    マスター装置。
  7. 前記マスター送受信部は、前記マスター通知部が前記所定識別情報を前記サーバに通知してから前記マスター送受信部が前記所定スレーブ装置が生成した前記乱数値を受信するまでの間、前記所定スレーブ装置が生成した前記乱数値を受信するために所定周波数帯域で受信動作を行う、
    請求項6に記載のマスター装置。
  8. スレーブ通知部とスレーブ取得部とスレーブ送受信部とスレーブ制御部とを有するスレーブ装置と、
    前記スレーブ装置と第1通信インタフェースで接続し、マスター装置と前記第1通信インタフェースで接続し、ペアリング管理部とペアリング鍵生成部とハッシュ生成部とサーバ通知部とを有するサーバと、
    前記スレーブ装置と第2通信インタフェースで接続し、マスター通知部とマスター送受信部と所定ハッシュ生成部とを有する前記マスター装置と、
    を備え、
    複数の前記スレーブ装置のそれぞれの、
    前記スレーブ通知部は、前記第1通信インタフェースを使用して前記スレーブ装置の識別情報と前記スレーブ装置が生成した乱数値とを含むペアリング鍵生成要求を前記サーバに通知し、
    前記ペアリング管理部は、前記ペアリング鍵生成要求に基づいて前記マスター装置のマスターアドレスと前記スレーブ装置のスレーブアドレスとを生成し、
    前記ペアリング鍵生成部は、前記マスターアドレスと前記スレーブアドレスとに基づいて前記スレーブ装置と前記マスター装置とが接続するためのペアリング鍵を生成し、
    前記ハッシュ生成部は、前記識別情報と前記スレーブ装置が生成した前記乱数値とに基づいて識別用ハッシュ値を生成し、
    サーバデータベース部は、前記識別情報と前記識別用ハッシュ値と前記マスターアドレスと前記スレーブアドレスと前記ペアリング鍵とを紐づけて記憶したデータテーブルを生成し
    前記スレーブ取得部は、前記第1通信インタフェースを使用して前記マスターアドレスと前記スレーブアドレスと前記ペアリング鍵とを前記サーバから取得し、
    前記スレーブ送受信部は、前記第2通信インタフェースを使用して前記スレーブ装置が生成した前記乱数値を送信し、
    前記スレーブ制御部は、前記スレーブ装置が生成した前記乱数値を送信した後、前記マスター装置からの接続要求を待受けることのできる待受け状態に前記スレーブ装置を移行させ、
    前記マスター通知部は、前記第1通信インタフェースを使用して任意のマスター装置が接続を希望する所定スレーブ装置の所定識別情報を前記サーバに通知し、
    前記サーバ通知部は、前記所定識別情報が前記データテーブルの中に存在する場合、前記所定識別情報に紐づいた所定スレーブアドレスを前記任意のマスター装置に通知し、
    前記マスター送受信部は、前記第2通信インタフェースを使用して前記所定スレーブ装置が生成した前記乱数値を前記所定スレーブ装置から受信し、
    前記所定ハッシュ生成部は、前記所定識別情報と前記所定スレーブ装置が生成した前記乱数値とに基づいて識別用所定ハッシュ値を生成し、
    前記サーバ通知部は、前記識別用所定ハッシュ値が前記データテーブルの中に存在する場合、前記識別用所定ハッシュ値に紐づいた所定ペアリング鍵と所定マスターアドレスとを前記任意のマスター装置に通知し、

    前記スレーブ送受信部は、前記待受け状態において前記任意のマスター装置から前記接続要求が有り、前記接続要求に含まれる前記所定ペアリング鍵が前記データテーブルの中に存在する場合、前記第2通信インタフェースを使用して前記任意のマスター装置と通信する、
    システム。
  9. 複数のスレーブ装置がそれぞれに、
    第1通信インタフェースを使用して前記スレーブ装置の識別情報と前記スレーブ装置が生成した乱数値とを含むペアリング鍵生成要求を前記スレーブ装置がサーバに通知し、
    前記ペアリング鍵生成要求に基づいてマスター装置のマスターアドレスと前記スレーブ装置のスレーブアドレスとを前記サーバが生成し、
    前記マスターアドレスと前記スレーブアドレスとに基づいて前記スレーブ装置と前記マスター装置とが接続するためのペアリング鍵を前記サーバが生成し、
    前記識別情報と前記スレーブ装置が生成した前記乱数値とに基づいて識別用ハッシュ値を前記サーバが生成し、
    前記識別情報と前記識別用ハッシュ値と前記マスターアドレスと前記スレーブアドレスと前記ペアリング鍵とを紐づけて記憶したデータテーブルを前記サーバが生成し
    前記第1通信インタフェースを使用して前記マスターアドレスと前記スレーブアドレスと前記ペアリング鍵とを前記スレーブ装置が前記サーバから取得し、
    第2通信インタフェースを使用して前記スレーブ装置が生成した前記乱数値を前記スレーブ装置が送信し、
    前記スレーブ装置が生成した前記乱数値を送信した後、前記マスター装置からの接続要求を待受けることのできる待受け状態に前記スレーブ装置を移行させ、
    前記第1通信インタフェースを使用して接続を希望する所定スレーブ装置の所定識別情報を任意のマスター装置が前記サーバに通知し、
    前記所定識別情報が前記データテーブルの中に存在する場合、前記所定識別情報に紐づいた所定スレーブアドレスを前記サーバが前記任意のマスター装置に通知し、
    前記第2通信インタフェースを使用して前記所定スレーブ装置が生成した前記乱数値を前記任意のマスター装置が前記所定スレーブ装置から受信し、
    前記所定識別情報と前記所定スレーブ装置が生成した前記乱数値とに基づいて識別用所定ハッシュ値を前記任意のマスター装置が生成し、
    前記識別用所定ハッシュ値が前記データテーブルの中に存在する場合、前記識別用所定ハッシュ値に紐づいた所定ペアリング鍵と所定マスターアドレスとを前記サーバが前記任意のマスター装置に通知し、
    前記接続要求が有り、前記接続要求に含まれる前記所定ペアリング鍵が前記データテーブルの中に存在する場合、前記第2通信インタフェースを使用して前記所定スレーブ装置が前記任意のマスター装置と通信する、
    方法。
  10. 複数のスレーブ装置がそれぞれに、
    第1通信インタフェースを使用して前記スレーブ装置の識別情報と前記スレーブ装置が生成した乱数値とを含むペアリング鍵生成要求を前記スレーブ装置がサーバに通知し、
    前記ペアリング鍵生成要求に基づいてマスター装置のマスターアドレスと前記スレーブ装置のスレーブアドレスとを前記サーバが生成し、
    前記マスターアドレスと前記スレーブアドレスとに基づいて前記スレーブ装置と前記マスター装置とが接続するためのペアリング鍵を前記サーバが生成し、
    前記識別情報と前記スレーブ装置が生成した前記乱数値とに基づいて識別用ハッシュ値を前記サーバが生成し、
    前記識別情報と前記識別用ハッシュ値と前記マスターアドレスと前記スレーブアドレスと前記ペアリング鍵とを紐づけて記憶したデータテーブルを前記サーバが生成し
    前記第1通信インタフェースを使用して前記マスターアドレスと前記スレーブアドレスと前記ペアリング鍵とを前記スレーブ装置が前記サーバから取得し、
    第2通信インタフェースを使用して前記スレーブ装置が生成した前記乱数値を前記スレーブ装置が送信し、
    前記スレーブ装置が生成した前記乱数値を送信した後、前記マスター装置からの接続要求を待受けることのできる待受け状態に前記スレーブ装置を移行させ、
    前記第1通信インタフェースを使用して接続を希望する所定スレーブ装置の所定識別情報を任意のマスター装置が前記サーバに通知し、
    前記所定識別情報が前記データテーブルの中に存在する場合、前記所定識別情報に紐づいた所定スレーブアドレスを前記サーバが前記任意のマスター装置に通知し、
    前記第2通信インタフェースを使用して前記所定スレーブ装置が生成した前記乱数値を前記任意のマスター装置が前記所定スレーブ装置から受信し、
    前記所定識別情報と前記所定スレーブ装置が生成した前記乱数値とに基づいて識別用所定ハッシュ値を前記任意のマスター装置が生成し、
    前記識別用所定ハッシュ値が前記データテーブルの中に存在する場合、前記識別用所定ハッシュ値に紐づいた所定ペアリング鍵と所定マスターアドレスとを前記サーバが前記任意のマスター装置に通知し、
    前記接続要求が有り、前記接続要求に含まれる前記所定ペアリング鍵が前記データテーブルの中に存在する場合、前記第2通信インタフェースを使用して前記所定スレーブ装置が前記任意のマスター装置と通信する、
    ことをコンピュータに実行させるプログラム。
JP2019191809A 2019-10-21 2019-10-21 サーバ、スレーブ装置、マスター装置、システム、システムの方法、及びプログラム Active JP7036445B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019191809A JP7036445B2 (ja) 2019-10-21 2019-10-21 サーバ、スレーブ装置、マスター装置、システム、システムの方法、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019191809A JP7036445B2 (ja) 2019-10-21 2019-10-21 サーバ、スレーブ装置、マスター装置、システム、システムの方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2021068967A JP2021068967A (ja) 2021-04-30
JP7036445B2 true JP7036445B2 (ja) 2022-03-15

Family

ID=75638649

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019191809A Active JP7036445B2 (ja) 2019-10-21 2019-10-21 サーバ、スレーブ装置、マスター装置、システム、システムの方法、及びプログラム

Country Status (1)

Country Link
JP (1) JP7036445B2 (ja)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013541886A (ja) 2010-09-07 2013-11-14 ビーシー カード カンパニー リミテッド ブルートゥース通信方法及びシステム
US20140019304A1 (en) 2012-07-16 2014-01-16 Samsung Electronics Co., Ltd. Smart apparatus, pairing system and method using the same
JP2015177273A (ja) 2014-03-14 2015-10-05 ソニー株式会社 電子機器、通信システム、電子機器の制御方法およびプログラム
WO2016088185A1 (ja) 2014-12-01 2016-06-09 富士通株式会社 ペアリング管理方法、ペアリング管理プログラム、および端末装置
JP2017519412A (ja) 2014-05-02 2017-07-13 ノック ノック ラブズ, インコーポレイテッド 認証装置の登録のための強化されたセキュリティ
JP2018524858A (ja) 2015-06-05 2018-08-30 アップル インコーポレイテッド ピアツーピアデバイスに関するクラウドベースの近接ペアリング及び切り替え
JP2018530185A (ja) 2015-07-21 2018-10-11 ヴィタネット・ジャパン株式会社 共有されたキーを使用する無線デバイスの選択的ペアリング
JP2019515544A (ja) 2016-04-21 2019-06-06 シグニファイ ホールディング ビー ヴィ クレデンシャルを検証するためのシステム及び方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013541886A (ja) 2010-09-07 2013-11-14 ビーシー カード カンパニー リミテッド ブルートゥース通信方法及びシステム
US20140019304A1 (en) 2012-07-16 2014-01-16 Samsung Electronics Co., Ltd. Smart apparatus, pairing system and method using the same
JP2015177273A (ja) 2014-03-14 2015-10-05 ソニー株式会社 電子機器、通信システム、電子機器の制御方法およびプログラム
JP2017519412A (ja) 2014-05-02 2017-07-13 ノック ノック ラブズ, インコーポレイテッド 認証装置の登録のための強化されたセキュリティ
WO2016088185A1 (ja) 2014-12-01 2016-06-09 富士通株式会社 ペアリング管理方法、ペアリング管理プログラム、および端末装置
JP2018524858A (ja) 2015-06-05 2018-08-30 アップル インコーポレイテッド ピアツーピアデバイスに関するクラウドベースの近接ペアリング及び切り替え
JP2018530185A (ja) 2015-07-21 2018-10-11 ヴィタネット・ジャパン株式会社 共有されたキーを使用する無線デバイスの選択的ペアリング
JP2019515544A (ja) 2016-04-21 2019-06-06 シグニファイ ホールディング ビー ヴィ クレデンシャルを検証するためのシステム及び方法

Also Published As

Publication number Publication date
JP2021068967A (ja) 2021-04-30

Similar Documents

Publication Publication Date Title
JP6320501B2 (ja) デバイス・ツー・デバイス通信セッションの確立
US20190089684A1 (en) Method and system for encrypted communications
KR101743195B1 (ko) 정보 제공방법, 장치, 프로그램 및 기록매체
JP2018037979A (ja) 通信装置、通信方法、及びプログラム
US9344404B2 (en) System and method for synchronizing connection credentials
US10448230B2 (en) Data transmission
WO2014026438A1 (zh) 一种利用nfc传输wifi热点密钥或证书的移动终端
JPWO2014024351A1 (ja) 無線通信システム
US10616735B2 (en) Data update system, remote configuration device and data update method
WO2018113113A1 (zh) 一种双系统终端wifi共享的方法和装置
TW202112101A (zh) 密鑰產生以及終端配網方法、裝置、設備
JP2017028457A (ja) 通信装置、通信方法及びプログラム
US20160105407A1 (en) Information processing apparatus, terminal, information processing system, and information processing method
JP7036445B2 (ja) サーバ、スレーブ装置、マスター装置、システム、システムの方法、及びプログラム
WO2018205328A1 (zh) 一种设备接入无线网络的系统及方法
JP2014053787A (ja) 通信装置およびプログラム
JP6101197B2 (ja) ネットワーク接続管理システム及び方法並びに無線端末装置
JP6443918B2 (ja) アクセスポイント装置、接続情報設定プログラム及び接続情報設定方法
US12074848B2 (en) Efficient and secure universal/app links
KR20140071853A (ko) 무선 통신 시스템에서 인터넷 프로토콜 어드레스를 설정하는 방법 및 장치
JP2004128886A (ja) 接続情報供給装置、接続情報供給プログラム、認証情報供給装置、及び、認証情報供給プログラム
KR20120053369A (ko) 동기화 장치 및 방법
JP2017118243A (ja) 認証装置、アクセスポイント、通信装置及びプログラム
TWI656771B (zh) Bluetooth communication method, device and device thereof
WO2018201429A1 (zh) 蓝牙通信方法、装置及其应用系统和设备

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210204

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20211006

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211124

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220117

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220201

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220224

R150 Certificate of patent or registration of utility model

Ref document number: 7036445

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150