(57)【要約】【課題】携帯電話回線等を介したテザリング接続を、シェアリングにより提供する。【解決手段】通信システム101において、無線LAN 151を提供する親機121がビーコン123にて発したSSIDを、子機141が検知する。親機121はSSIDにハッシュ関数を適用し、無線LAN 151のパスワードをSSIDで暗号情報へ暗号化し、サーバ171へ伝達する。子機141はSSIDにハッシュ関数を適用し、第2無線回線142を介してサーバ171へ伝達する。サーバ171は子機と親機でハッシュ値が一致する暗号情報を特定し、暗号情報を第2無線回線142を介して子機141へ伝達する。子機141は伝達されたハッシュ値に対応するSSIDを取得し、伝達された暗号情報を当該SSIDでパスワードへ復号し、親機121による無線LAN 151に当該パスワードでアクセスして、第2無線回線142を介さずに、インターネット161へテザリング接続する。【選択図】 図1
2019145897.tif 000002
【特許請求の範囲】
【請求項１】
無線LANのアクセスポイントとして動作するためのSSIDとパスワードが設定され、前記設定されたSSIDをビーコンによりブロードキャストし、第1無線回線を介してインターネットへの接続を提供する親機と、
第2無線回線を介して前記インターネットへ接続可能であり、無線LANのアクセスポイントからビーコンによりブロードキャストされているSSIDを検知する子機と、
前記インターネット内のサーバと、
を備える通信システムであって、
(a) 前記親機は、
前記設定されたSSIDに、ハッシュ関数を適用することにより、親機側ハッシュ値を計算し、
前記設定されたパスワードを、前記設定されたSSIDで暗号化することにより、暗号情報を計算し、
前記計算された親機側ハッシュ値と、前記計算された暗号情報と、を対応付けて、前記第1無線回線を介して、前記サーバへ伝達し、
(b) 前記子機は、
前記検知されたSSIDに、前記ハッシュ関数を適用することにより、子機側ハッシュ値を計算し、
前記計算された子機側ハッシュ値を、前記第2無線回線を介して、前記サーバへ伝達し、
(c) 前記サーバは、
前記親機から暗号情報に対応付けられて伝達された親機側ハッシュ値であって、前記子機から伝達された子機側ハッシュ値と一致する親機側ハッシュ値に対応付けられた暗号情報を特定し、
前記特定された暗号情報と、前記親機側ハッシュ値と、を対応付けて、前記第2無線回線を介して、前記子機へ伝達し、
(d) 前記子機は、
前記検知されたSSIDから、前記ハッシュ関数を適用することにより前記サーバから伝達された親機側ハッシュ値と一致する子機側ハッシュ値が計算されるSSIDを取得し、
前記サーバから伝達された暗号情報を、前記取得されたSSIDで復号することにより、パスワードを計算し、
前記取得されたSSIDを有する無線LANのアクセスポイントに前記計算されたパスワードでアクセスすることにより、前記第2無線回線を介するのにかえて、前記アクセスポイントを介して前記インターネットへ接続する
ことを特徴とする通信システム。
【請求項２】
前記第1無線回線と、前記第2無線回線と、は、同一もしくは異なる携帯電話事業者により運営される携帯電話回線である
ことを特徴とする請求項1に記載の通信システム。
【請求項３】
前記親機は、前記インターネットへの接続に係る接続量に対する売値を、さらに前記サーバへ伝達し、
前記子機は、前記接続量に対する買値を、さらに前記サーバへ伝達し、
前記サーバは、前記親機から伝達された売値が前記子機から伝達された買値以下であることを、前記親機が特定される必要条件とする
ことを特徴とする請求項1に記載の通信システム。
【請求項４】
前記子機は、前記検知されたSSIDを有する無線LANのアクセスポイントを介して、前記サーバへ間欠的に報告を送り、
前記サーバは、
前記報告に基づいて、前記インターネットへの接続に係る前記接続量が、前記親機から前記子機へ提供されたか否かを判定し、
前記接続量が提供されたと判定すると、前記子機のユーザから前記伝達された買値に基づく額を徴収し、前記親機のユーザへ前記伝達された売値に基づく額を支払う旨を決定する
ことを特徴とする請求項3に記載の通信システム。
【請求項５】
前記ハッシュ関数は、前記ハッシュ関数に適用されるSSIDの所定箇所を除去してから一方向関数を適用してハッシュ値を計算する
ことを特徴とする請求項1に記載の通信システム
【請求項６】
請求項1に記載の通信システムにおける親機。
【請求項７】
請求項1に記載の通信システムにおけるサーバ。
【請求項８】
請求項1に記載の通信システムにおける子機。
【請求項９】
無線LANのアクセスポイントとして動作するためのSSIDとパスワードが設定され、前記設定されたSSIDをビーコンによりブロードキャストし、第1無線回線を介してインターネットへの接続を提供する親機と、
第2無線回線を介して前記インターネットへ接続可能であり、無線LANのアクセスポイントからビーコンによりブロードキャストされているSSIDを検知する子機と、
前記インターネット内のサーバと、
が実行する通信方法であって、
(a) 前記親機は、
前記設定されたSSIDに、ハッシュ関数を適用することにより、親機側ハッシュ値を計算し、
前記設定されたパスワードを、前記設定されたSSIDで暗号化することにより、暗号情報を計算し、
前記計算された親機側ハッシュ値と、前記計算された暗号情報と、を対応付けて、前記第1無線回線を介して、前記サーバへ伝達し、
(b) 前記子機は、
前記検知されたSSIDに、前記ハッシュ関数を適用することにより、子機側ハッシュ値を計算し、
前記計算された子機側ハッシュ値を、前記第2無線回線を介して、前記サーバへ伝達し、
(c) 前記サーバは、
前記親機から暗号情報に対応付けられて伝達された親機側ハッシュ値であって、前記子機から伝達された子機側ハッシュ値と一致する親機側ハッシュ値に対応付けられた暗号情報を特定し、
前記特定された暗号情報と、前記親機側ハッシュ値と、を対応付けて、前記第2無線回線を介して、前記子機へ伝達し、
(d) 前記子機は、
前記検知されたSSIDであって、前記ハッシュ関数を適用することにより前記サーバから伝達された親機側ハッシュ値と一致する子機側ハッシュ値が計算されるSSIDを取得し、
前記サーバから伝達された暗号情報を、前記取得されたSSIDで復号することにより、パスワードを計算し、
前記取得されたSSIDを有する無線LANのアクセスポイントに前記計算されたパスワードでアクセスすることにより、前記第2無線回線を介するのにかえて、前記アクセスポイントを介して前記インターネットへ接続する
ことを特徴とする通信方法。
【請求項１０】
コンピュータを、請求項6に記載の親機として機能させることを特徴とするプログラム。
【請求項１１】
コンピュータを、請求項7に記載のサーバとして機能させることを特徴とするプログラム。
【請求項１２】
コンピュータを、請求項8に記載の子機として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、携帯電話回線等を介したインターネットへのテザリング接続を、シェアリングにより提供するのに好適な通信システム、親機、サーバ、子機、通信方法、ならびに、プログラムに関する。
【背景技術】
【０００２】
従来から、携帯電話回線等の無線回線を介して、インターネットへ接続する携帯端末が利用されている。無線回線を介したインターネット接続によるデータ通信では、無線回線の提供者によって通信量の制限や課金がなされることがほとんどである。
【０００３】
たとえば、携帯電話会社と使用者との契約によっては、1箇月あたりのデータ通信量に閾値が定められ、当該閾値までは定額で利用できるが、閾値を超えて利用しようとすると、通信速度が低下するものがある。この場合には、使用者が追加料金を支払うことによって、通信速度が回復する。
【０００４】
このような条件下では、月末に通信量の閾値に達してしまうユーザと、まだ余裕があるユーザと、が、存在することになる。このため、たとえば同居家族など限られた使用者の間で、通信量の余裕がある使用者から通信量が閾値に達した使用者へ、通信量を融通できるようなサービスも提供されている。
【０００５】
一方で、スマートフォンなどの携帯端末では、携帯電話回線等の無線回線を介して、インターネットへのテザリング接続を提供できることが多い。テザリング接続においては、スマートフォンがWifi(Wireless Fidelity)/無線LAN(Local Area Network)のアクセスポイントとして動作し、他の機器において当該アクセスポイントのSSID(Service Set IDentifier)とパスワードを設定することによって、当該スマートフォン経由で他の機器がインターネットへ接続できる。
【０００６】
そこで、通信量の上限に達してしまったユーザの携帯電話に対して、通信量にまだ余裕があるユーザの携帯電話が、テザリングによるインターネット接続を有償もしくは無償で提供できるようにする通信プロトコルの提案が、ICO(Initial Coin Offering)によりなされている(非特許文献1参照)。この通信プロトコルでは、通信量の融通を、家族間に限らず、広く一般に行うことを目的としている。
【先行技術文献】
【非特許文献】
【０００７】
【非特許文献１】MOOVER, Mobile data communication sharing protocol, White Paper Version 1.01, 2017年11月(https://drive.google.com/file/d/19pKcAgFWE3YTmd9EM9sOvJ4jzrTIdgql/viewより2018年1月29日にダウンロード)
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、このような新たな通信プロトコルを採用することなく、既存のスマートフォン等を利用して、インターネット接続をユーザ同士で簡易にシェアリングできるようにしたい、という要望は強い。
【０００９】
本発明は、上記のような課題を解決するもので、携帯電話回線等を介したインターネットへのテザリング接続を、シェアリングにより提供するのに好適な通信システム、親機、サーバ、子機、通信方法、ならびに、プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
以上の課題を解決するため、本願発明においては、通信システムは、
無線LANのアクセスポイントとして動作するためのSSIDとパスワードが設定され、前記設定されたSSIDをビーコンによりブロードキャストし、第1無線回線を介してインターネットへの接続を提供する親機と、
第2無線回線を介して前記インターネットへ接続可能であり、無線LANのアクセスポイントからビーコンによりブロードキャストされているSSIDを検知する子機と、
前記インターネット内のサーバと、
を備え、
(a) 前記親機は、
前記設定されたSSIDに、ハッシュ関数を適用することにより、親機側ハッシュ値を計算し、
前記設定されたパスワードを、前記設定されたSSIDで暗号化することにより、暗号情報を計算し、
前記計算された親機側ハッシュ値と、前記計算された暗号情報と、を対応付けて、前記第1無線回線を介して、前記サーバへ伝達し、
(b) 前記子機は、
前記検知されたSSIDに、前記ハッシュ関数を適用することにより、子機側ハッシュ値を計算し、
前記計算された子機側ハッシュ値を、前記第2無線回線を介して、前記サーバへ伝達し、
(c) 前記サーバは、
前記親機から暗号情報に対応付けられて伝達された親機側ハッシュ値であって、前記子機から伝達された子機側ハッシュ値と一致する親機側ハッシュ値に対応付けられた暗号情報を特定し、
前記特定された暗号情報と、前記親機側ハッシュ値と、を対応付けて、前記第2無線回線を介して、前記子機へ伝達し、
(d) 前記子機は、
前記検知されたSSIDから、前記ハッシュ関数を適用することにより前記サーバから伝達された親機側ハッシュ値と一致する子機側ハッシュ値が計算されるSSIDを取得し、
前記サーバから伝達された暗号情報を、前記取得されたSSIDで復号することにより、パスワードを計算し、
前記取得されたSSIDを有する無線LANのアクセスポイントに前記計算されたパスワードでアクセスすることにより、前記第2無線回線を介するのにかえて、前記アクセスポイントを介して前記インターネットへ接続する。
【発明の効果】
【００１１】
本発明によれば、携帯電話回線等を介したインターネットへのテザリング接続を、シェアリングにより提供するのに好適な通信システム、親機、サーバ、子機、通信方法、ならびに、プログラムを提供することができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施形態に係る通信システムの構成を示す説明図である。
【図２】本発明の実施形態に係る通信システムにおける通信の手順を示すセッション図である。
【図３】本発明の実施形態に係る親機が実行する親機処理の制御の流れを示すフローチャートである。
【図４】本発明の実施形態に係るサーバが実行するサーバ処理の制御の流れを示すフローチャートである。
【図５】本発明の実施形態に係る子機が実行する子機処理の制御の流れを示すフローチャートである。
【発明を実施するための形態】
【００１３】
以下に、本発明の実施形態に係る通信システムについて説明する。なお、以下に説明する通信システムは、本発明の要旨を説明するためのものであり、本発明の技術的な範囲は、以下に説明する実施形態には限られない。また、各実施例にて説明する要素は、用途に応じて適宜省略することも可能である。このように、本発明の原理にしたがって構成された通信システム、当該通信システムにて実行される通信方法、当該通信システムを実現するために各コンピュータにて実行されるプログラム、ならびに、これらと均等な発明は、いずれも、本発明の範囲に含まれる。
【００１４】
(通信システムの各部が実現されるハードウェア)
本実施形態に係る通信システムは、親機と、子機と、サーバと、を備え、これらは、典型的には、プログラムをコンピュータが実行することによって実現される。
【００１５】
ここで、コンピュータとしては、サーバコンピュータ、デスクトップ型コンピュータ、ノート型コンピュータ、タブレット型コンピュータ等のように、コンピュータとして製造、販売等されているもののほか、携帯電話、スマートフォン、タブレット型電話等のように、電話機として製造、販売等されているもの、携帯ゲーム機、家庭用エンターテインメント装置等のように、ゲーム機やマルチメディア端末として製造、販売等されているものも含まれる。
【００１６】
典型的には、本実施形態に係るサーバは、高性能な据置型コンピュータ、クラウド型コンピュータ等により実現され、親機や子機は、スマートフォン、タブレット、携帯ゲーム機等のコンピュータにより実現される。
【００１７】
コンピュータにて実行されるプログラムや、当該プログラムにより参照される各種のデータは、当該コンピュータが通信可能に接続されたサーバにより配布、販売することができるほか、CD-ROM(Compact Disk Read Only Memory)、DVD-ROM(Digital Versatile Disk ROM)、フラッシュメモリ、EEPROM(Electrically Erasable Programmable ROM)などの非一時的(non-transitory)な情報記録媒体に記録した上で、当該情報記録媒体を配布、販売等することも可能である。
【００１８】
プログラムは、コンピュータが有するハードディスク、ソリッドステートドライブ、フラッシュメモリ、EEPROMなどの非一時的な情報記録媒体にインストールされる。すると、当該コンピュータにより、本実施形態における通信システムが実現されることになる。一般的には、コンピュータのCPU(Central Processing Unit)は、コンピュータのOS(Operating System)による管理の下、情報記録媒体からRAM(Random Access Memory)へプログラムを読み出してから、当該プログラムに含まれるコードを解釈、実行する。ただし、携帯ゲーム機などでは、CPUがアクセス可能なメモリ空間内に情報記録媒体をマッピングできるようなアーキテクチャが採用されることがある。この場合には、プログラムのインストールや、RAMへの明示的なプログラムのロードは不要である。
【００１９】
なお、プログラムの実行の過程で必要とされる各種情報は、CPUのレジスタやRAM、キャッシュ内に一時的(temporary)に記録しておくことができる。
【００２０】
ユーザは、タッチスクリーン、キーボード、マウス、トラックボール、タッチパッド、ジョイスティック等のゲーム装置用コントローラ、タッチスクリーン等の入力装置を介して、コンピュータに対する各種の指示を与えることができる。
【００２１】
コンピュータにおける処理の結果は、ディスプレイやタッチスクリーン等の表示装置に表示することができる。また、情報記録媒体に記録して、後日自身が利用したり、他の機器で参照することが可能である。
【００２２】
また、親機や子機に利用されるコンピュータは、携帯電話回線などの無線回線、ならびに、無線LANのアクセスポイントを介して、インターネットに接続される。サーバに利用されるコンピュータは、主として有線接続により、インターネットに接続される。さらに、各コンピュータは、インターネットを介して、処理の結果を配布、販売することができる。
【００２３】
また、携帯電話回線等の無線回線を介してインターネットに接続されているコンピュータは、無線LANのアクセスポイントとして機能することにより、他のコンピュータに対して、インターネット接続を可能にするテザリングサービスを提供することができる。この際に、無線LANのアクセスポイントの名前であるSSIDと、当該アクセスポイントを利用するためのパスワードが、サービスを提供するコンピュータに設定される。無線LANのアクセスポイントを利用したインターネット接続では、WEP、WPA、WPA2など、種々のプロトコルが利用される。
【００２４】
設定されたSSIDは、無線ビーコンにより周囲のコンピュータにブロードキャストされる。周囲のコンピュータのうち、当該SSIDに対するパスワードを知っているコンピュータのみが、当該SSIDが設定されたコンピュータを、無線LANのアクセスポイントとして利用できることになる。
【００２５】
なお、汎用のコンピュータでプログラムを実行することにより本実施形態の通信システムを実現するのではなく、専用の電子回路を構築して本実施形態の通信システムを構成することも可能である。
【００２６】
この態様においても、コンピュータに実行させる実行用プログラムと同様に記述をしたり、実行用プログラムを比較的簡単な手直しをして移行することによって得られる定義プログラムを利用することができる。定義プログラムは、一見実行用プログラムのように見えるが、実際には、定義プログラムに記載された処理を順次実行するのではなく、定義プログラムに記載された処理を実現する電子的な素子を配線したり、各素子における演算のタイミングチャート等を決定したりするための仕様定義として機能する。
【００２７】
このような態様では、プログラムに定められる仕様を満たすような電子回路が、FPGA(Field Programmable Gate Array)やASIC(Application Specific Integrated Circuit)により構成され、当該電子回路は、当該プログラムに定められた機能を果たす専用機器として機能して、本実施形態の通信システムを実現することができる。
【００２８】
以下では、理解を容易にするため、コンピュータがプログラムを実行することによって、本実施形態に係る通信システムが実現される態様について説明する。
【００２９】
図1は、本発明の実施形態に係る通信システムの構成を示す説明図である。以下、本図を参照して説明する。
【００３０】
本実施形態に係る通信システム101は、親機121と、子機141と、サーバ171と、が、インターネット161を介して通信することによって実現される。
【００３１】
ここで、親機121は、親機用プログラムが動作するスマートフォンであり、インターネット161とは、携帯電話回線等の第1無線回線122を介して接続されている。
【００３２】
一方、子機141は、子機用プログラムが動作するスマートフォンであり、インターネット161とは、携帯電話回線等の第2無線回線142を介して接続されている。
【００３３】
第1無線回線122と、第2無線回線142と、は、同じ携帯電話事業者が提供するものでも良いし、異なる携帯電話事業者が提供するものでも良い。
【００３４】
ここで、親機121は、無線LAN 151のアクセスポイントとして機能して、テザリングによるインターネット接続サービスを他の通信機器に提供する用意があるスマートフォンである。他の機器が無線LAN 151に参加できるか否かを判別するため、親機121は、SSIDをビーコン123でブロードキャストする。そして、当該SSIDに対して、正しいパスワードを指定してアクセスしてきた他の機器を、無線LAN 151に参加させる。典型的には、第1無線回線122の使用量にいまだ余裕があり、他人に融通しても良い、と考えるユーザが、スマートフォンにて親機用プログラムを動作させることによって、親機121が実現される。
【００３５】
一方、子機141は、第2無線回線142を介してインターネットに接続は可能であるものの、第2無線回線142の使用量がたとえば固定料金で高速に使える閾値に達してしまっていて、通信が低速になってしまっており、できれば第2無線回線142を使わずに、Wifiを介してインターネットに接続したい、と考えるユーザが、スマートフォンにて子機用プログラムを動作させることによって実現される。
【００３６】
親機121の提供する無線LAN 151に子機141が参加している間は、子機141のインターネット接続は、第2無線回線142経由ではなく、無線LAN 151、親機121、および、第1無線回線122を経由して行われる。このため、子機141が使用した第1無線回線122の使用量は、親機121のユーザが融通したことになる。これは、親機121のユーザが、子機141のユーザへ、第1無線回線122の使用量を譲渡したことに相当する。
【００３７】
後述するように、この譲渡については、無償とすることもできるし、有償とすることもできるし、たとえば各種のサービスポイント等を対価とすることもできる。以下では、まず、無償とする場合を例にあげて説明する。
【００３８】
ここで、親機121が提供する無線LAN 151に子機141が参加するためには、親機121がブロードキャストするビーコン123にて無線LAN 151のSSIDを検知するとともに、当該無線LAN 151用のパスワードを知得する必要がある。サーバ171は、このパスワードを子機141に知得させるための仲介を行う。
【００３９】
本通信システム101では、不特定の親機121が提供する無線LAN 151を不特定の子機141が利用できるようにしたいため、SSIDやパスワードを固定のものとすることは、セキュリティ確保等の観点から問題がある。また、親機121が提供する無線LAN 151のSSIDおよびパスワードそのものをサーバ171で一元管理することは、プライバシー保護等の観点から困難である。また、親機121が提供する無線LAN 151のSSIDおよびパスワードは、ユーザが自由に変更できるようにしたいことも多い。
【００４０】
本通信システム101では、親機121が提供する無線LAN 151のパスワードを子機141に知得させる際に、SSIDやパスワードそのものを、親機121と子機141以外の機器には渡さないこととしている。図2は、本発明の実施形態に係る通信システムにおける通信の手順を示すセッション図である。以下、本図を参照して説明する。
【００４１】
本図に示すように、テザリングによるインターネット接続を他の機器に提供しても良いと考える親機121は、自身が提供する無線LAN 151に設定されたSSIDをビーコン123によってブロードキャストする(201)。なお、親機121では、無線LAN 151に参加するために必要なパスワードPWDも設定される。
【００４２】
さらに、親機121は、
SSIDにハッシュ関数hを適用することにより得られるハッシュ値H = h(SSID)と、
パスワードPWDをSSIDで暗号化関数eにより暗号化した暗号情報E = e(SSID,PWD)と、
を計算して、これらを指定した通知をサーバ171へ伝達する(202)。
【００４３】
なお、親機121がインターネット161への接続を提供している間は、親機121は、この通知を間欠的にサーバ171へ伝達することが望ましい(図示せず)。サーバ171は、通知が伝達されると、親機121が、インターネット161への接続を提供し続けていることを知得することができる。
【００４４】
ここで、ハッシュ関数hは、ハッシュ関数hを値xに適用することによって得られるハッシュ値h(x)から、元の値xを求めることが困難な一方向関数である。
【００４５】
一方、暗号化関数eは、復号関数fと組み合わせて利用される。これらの関数は、暗号化関数eを2つの値x, yに適用することによって得られる暗号情報e(x,y)から元の値x, yを求めることは困難であるが、一方の値xがわかっていれば、復号関数fにより
y = f(x,e(x,y))
のように、元の値yを計算して復号できるような関数である。
【００４６】
本実施形態におけるハッシュ関数および暗号化/復号関数については、暗号技術において利用される種々の関数を任意に適用することができる。
【００４７】
このため、親機側ハッシュ値Hや暗号情報Eを親機121からサーバ171へ渡したとしても、親機121のセキュリティやプライバシーは維持される。
【００４８】
なお、ハッシュ関数hとして、ハッシュ関数が適用されるSSIDの一部を除去してから、一方向関数を適用することも可能である。たとえば、SSIDの先頭バイトや末尾バイト、中央バイト等、SSIDの長さに応じてあらかじめ定められた1箇所以上の位置のバイトを除去してから、残りに対して一方向関数を適用することとすれば、h(SSID)から元のSSIDを完全に復元することは不可能である。
【００４９】
したがって、かりにサーバ171にてh(SSID)が収集されたとしても、元のSSIDをサーバ171にて得ることは不可能であり、プライバシー保護やセキュリティ向上を図ることができる。
【００５０】
一方、無線LANアクセスポイントからビーコンによってブロードキャストされたSSID(201)は、無線LANを形成することが可能な程度に近傍に位置する子機141によって検知される。子機141が検知するSSIDには、一般には、親機121以外が発したものも含まれる(本図201以外の矢印)。そこで、検知されたSSIDを、SSID[1], SSID[2], …, SSID[N]とする。
【００５１】
子機141は、検知したSSID[1], SSID[2], …, SSID[N]に、ハッシュ関数hを適用して、ハッシュ値h(SSID[1]), h(SSID[2]), …, h(SSID[N])を計算し、これらを要求に指定して、サーバ171へ伝達する(204)。なお、典型的には、SSID[1], SSID[2], …, SSID[N]と、子機側ハッシュ値h(SSID[1]), h(SSID[2]), …, h(SSID[N])と、は、互いに対応付けて記録しておく。
【００５２】
サーバ171は、子機141から伝達された要求に指定された子機側ハッシュ値h(SSID[1]), h(SSID[2]), …, h(SSID[N])のうち、親機121から伝達された通知に指定された親機側ハッシュ値Hと一致するものを特定する。H = h(SSID[i])が成立するものが特定できたら、サーバ171は、親機121から伝達された通知に指定されたハッシュ値H及び暗号情報Eを指定した応答を、子機141へ伝達する(205)。
【００５３】
子機141は、子機側ハッシュ値h(SSID[1]), h(SSID[2]), …, h(SSID[N])のうち、サーバ171から伝達された応答に指定された親機側ハッシュ値Hと一致する子機側ハッシュ値h(SSID[i])を取得する。そして、取得された子機側ハッシュ値h(SSID[i])を計算する際に参照したSSID[i]を取得する。
【００５４】
ここで、hは一方向関数であるから、h(SSID[i]) = H = h(SSID)であればSSID[i] = SSIDである、と考えることができる。
【００５５】
SSID[1], SSID[2], …, SSID[N]と、子機側ハッシュ値h(SSID[1]), h(SSID[2]), …, h(SSID[N])と、が、互いに対応付けて記録されている場合には、当該記録をスキャンして親機側ハッシュ値Hと各子機側ハッシュ値を対比することによって、H = h(SSID[i])を満たすSSID[i]を特定することができる。
【００５６】
このほか、子機141が現在検知されているビーコンのそれぞれについてあらためて子機側ハッシュ値を計算して、親機側ハッシュ値Hと比較することにより、H = h(SSID[i])を満たすSSID[i]を取得することとしても良い。
【００５７】
テザリングによるインターネット接続を提供する親機121により実現された無線LAN 151に割り当てられたSSID[i]が取得されたら、子機141は、サーバ171から送られた暗号情報Eに対して、SSID[i]を用いて復号関数fを適用することにより、無線LAN 151用のパスワードPWD[i]を復号する。ここで、
PWD[i] = f(SSID[i],E) = f(SSID,e(SSID,PWD)) = PWD
であるから、復号によって得られたパスワードPWD[i]は、親機121に設定されたパスワードPWDと一致するはずである。
【００５８】
これによって、サーバ171やインターネット161に、無線LAN 151のSSIDやパスワードPWDそのものを流出させずに、親機121から子機141へ、無線LAN 151のSSIDに対するパスワードPWDを知らせることができた。
【００５９】
この後は、子機141が、SSID = SSID[i]を有する親機121の無線LANに対して、パスワードPWD = PWD[i]を指定して接続を試みる(206)ことにより、子機141は、無線LAN 151、親機121、および、第1無線回線122を介してインターネット161に接続できるようになり、サーバ171との通信(207)や、他の機器との通信(208)が可能となる。この後は、無線LAN 151に参加している間は、子機141は、第2無線回線142を使用せずに、インターネット161と接続されることになる。
【００６０】
なお、子機141は、無線LAN 151に参加している間は、親機121が提供する無線LAN 151を自身が利用している旨を表す報告を、間欠的にサーバ171へ送ることが望ましい(図示せず)。報告が、無線LAN 151、親機121、第1無線回線122を介して、サーバ171へ到達すると、サーバ171は、
親機121が、インターネット161への接続を提供し続けていること、および、
子機141が、親機121が提供するインターネット161への接続を利用し続けていること、
を知得することができる。
【００６１】
したがって、親機121と子機141の利用関係が正常であれば、「親機121からの通知が間欠的に連続してサーバ171へ伝達されている時間帯」は、「子機141からの報告が簡潔的に連続してサーバ171へ伝達されている時間帯」を包含することになる。また、これが成立していなければ、子機141は親機121が提供する無線LAN 151以外を介して、典型的には、第2無線回線142を利用して、インターネット161へ接続していることになる。
【００６２】
通知や報告を間欠的に送る間隔は、たとえば、数十秒程度を採用することができるが、当該間隔は、本実施形態の用途や第1無線回線122の混雑状況等によって、適宜変更が可能である。
【００６３】
(親機処理)
図3は、本発明の実施形態に係る親機が実行する親機処理の制御の流れを示すフローチャートである。以下、本図を参照して説明する。本処理は、典型的には、第1無線回線122を介してインターネット161に接続されたスマートフォンにて、親機用プログラムを実行することによって実現される。
【００６４】
なお、以下では、特に言及がない限り、親機121のユーザがあらかじめ無線LAN 151用のSSIDおよびパスワードを親機121に手動で設定しており、無線LAN 151の提供を開始済みであり、親機121は、無線LAN 151のSSIDをビーコン123によりブロードキャストしていることを前提として説明する。
【００６５】
本処理が開始されると、まず、親機121は、親機121が提供している無線LAN 151のSSIDおよびパスワードPWDを取得する(ステップS301)。親機121として機能するスマートフォンが提供するOSやプラットフォームにおいて、設定済みのSSIDおよびパスワードを取得するシステムコールやライブラリが利用可能である場合には、当該機能を利用して、親機121は、SSIDおよびパスワードを取得する。
【００６６】
利用可能でない場合は、親機121は、ユーザに対して、当該親機121において設定されているSSIDおよびパスワードを手動で入力するよう求めることによって、SSIDおよびパスワードを取得することができる。
【００６７】
なお、ここで取得されたSSIDやパスワードが十分な長さを有しない場合には、設定を変更するよう、ユーザに対して警告することが望ましい。
【００６８】
なお、親機121として機能するスマートフォンが提供するOSやプラットフォームにおいて、親機用プログラムから、無線LAN 151のSSIDやパスワードを設定したり、無線LAN 151の提供の開始/終了を制御できる場合には、以下のような処理を実行することも可能である。
【００６９】
まず、親機121は、既に無線LAN 151が提供されているようであれば、これを終了する。
【００７０】
次に、親機121は、ランダムにSSIDおよびパスワードを生成し、これらを無線LAN 151用に設定してから、無線LAN 151の提供を開始する。
【００７１】
なお、本実施形態では、SSIDやパスワードは、子機141のユーザが手作業で入力する場合であっても、クリップボード等を介して入力が可能であるため、1文字ずつ入力する必要はない。現在の規格では、SSIDは、最大32バイト長、WPA-PSK(TKIP)/WPA-PSK(AES)のパスワード(パスフレーズ)は、英数記号で最大63文字となっているので、これらの最大長さを採用することが望ましい。
【００７２】
この態様では、親機121がランダムに生成したSSIDおよびパスワードが、ステップS301において取得されることになる。
【００７３】
次に、親機121は、取得されたSSIDに対して、子機141と共有されるハッシュ関数hを適用して、
H = h(SSID)
のように、親機側ハッシュ値Hを計算する(ステップS302)。
【００７４】
さらに、親機121は、取得されたSSIDと、取得されたパスワードPWDに対して、暗号化関数eを適用して、
E = e(SSID,PWD)
のように、暗号情報Eを計算する(ステップS303)。なお、子機141では、暗号化関数eによる暗号化を解読する復号関数fが利用可能となっている。
【００７５】
さらに、親機121として機能するスマートフォンが提供するOSやプラットフォームのシステムコールやライブラリを利用して、第1無線回線122の利用状況(たとえば、現在の通信速度や通信遅延、直近一定期間の通信量等)や、無線LAN 151の利用状況(たとえば、接続済のユーザ数、接続済の子機141の識別名、現在の通信速度や通信遅延、直近一定期間の通信量等)などの、利用情報Uを取得する(ステップS304)。
【００７６】
そして、親機121は、親機側ハッシュ値Hと、暗号情報Eと、利用情報Uと、が指定された通知を生成する(ステップS305)。
【００７７】
そして、親機121は、生成された通知を、サーバ171へ送信し(ステップS306)、ある程度の時間待機してから(ステップS307)、処理をステップS301に戻す。この繰り返し処理によって、親機121からサーバ171へ、間欠的に通知が伝達されることになる。待機時間は、固定値(たとえば、十数秒乃至数分。)としても良いし、利用情報Uに応じて自動調整(たとえば、直近の通信量が多く、通信が頻繁に行われている間は、待機時間を長くする、等。)をすることとしても良い。
【００７８】
なお、ステップS301において、ユーザが手動でSSIDやパスワードを入力する態様では、スマートフォンが親機121として機能している間は、無線LAN 151の設定が変更されないことを前提としているため、単純に処理をステップS305に戻し、利用情報Uのみを更新して通知を送ることとしても良い。
【００７９】
一方、システムコールやライブラリ等によって、現在設定されている無線LAN 151のSSIDやパスワードが取得できる場合には、ステップS307の後に、処理をステップS301に戻すこととしても良い。
【００８０】
さらに、システムコールやライブラリ等によって、無線LAN 151の開始/終了、ならびに、無線LAN 151のSSIDやパスワードの設定ができる態様では、ステップS307からステップS301へ戻った際には、無線LAN 151の終了、SSIDおよびパスワードのランダムな生成および設定、無線LAN 151の開始という一連の処理にかえて、現在設定されている無線LAN 151のSSIDやパスワードを取得することとしても良い。
【００８１】
さて、親機121は、広く利用されているテザリング機能により、無線LAN 151のアクセスポイントとして動作している。したがって、親機121がビーコン123によりブロードキャストしているSSIDを他の機器が検知し、当該機器が親機121にて設定されたパスワードPWDを指定してアクセスしてくると、当該機器を無線LAN 151に参加させ、当該機器が親機121および第1無線回線122経由でインターネットに接続できるようにする。この処理は、上記の親機処理とは並行して実行される。
【００８２】
本通信システム101では、多数の親機121が、国内や世界の各地から、サーバ171に対して間欠的に通知を伝達する。一方、国内や世界の各地に存在する子機141は、近傍に、本通信システム101の親機121があれば、当該親機121を利用してインターネット161に接続し、自宅の無線LANや訪問先のWifiサービス等、他のサービスに係る無線LANのアクセスポイントがあれば、それを利用する。
【００８３】
(サーバ処理1)
図4は、本発明の実施形態に係るサーバが実行するサーバ処理の制御の流れを示すフローチャートである。本処理は、典型的には、インターネット161に接続されたコンピュータにてサーバ用プログラムを実行することにより実現される。
【００８４】
処理が開始されると、サーバ171は、他の機器から送信されたパケットを受信する(ステップS401)。受信されたパケットが、いずれかの親機121から伝達された通知であれば(ステップS402;親機からの通知)、当該通知に指定された親機側ハッシュ値Eに対応付けて、暗号情報Hと利用情報Uを、ハードディスクやRAM等の記憶装置に記憶して(ステップS403)、ステップS401に戻る。
【００８５】
なお、最新に受信した通知に指定された親機側ハッシュ値Eに対応付けられた暗号情報や利用情報が、すでに記憶装置に記憶されている場合は、これを上書きすれば良い。
【００８６】
また、ここで記憶される情報は、一定時間(たとえば、数分乃至十数分)が経過したら記憶装置から消去される(図示を省略)ようにすることが望ましい。
【００８７】
サーバ171により受信されたパケットが、いずれかの子機141から伝達された要求である場合(ステップS402;子機からの要求)について説明する前に、子機141においてどのような処理を経て、当該要求が送信されるかについて説明する。
【００８８】
(子機処理1)
図5は、本発明の実施形態に係る子機が実行する子機処理の制御の流れを示すフローチャートである。以下、本図を参照して説明する。本処理は、典型的には、第2無線回線142を介してインターネット161に接続されたスマートフォンにて、子機用プログラムを実行することによって実現される。
【００８９】
本処理が開始されると、子機141は、ブロードキャストされている無線LAN 151のビーコン123を検知する(ステップS501)。ここで、検知されたビーコンに指定されたSSIDが過去に参加した無線LANに係るものであり、パスワードが子機141に保存されている場合には、各無線LANへの接続を試み、いずれについても接続ができなかった場合に、以降の処理を進めることとしても良い(図示せず)。すなわち、従来から利用されている無線LANへの接続技術を利用し、いずれの無線LANにも接続ができなかった場合に、以降の処理を進めれば良い。
【００９０】
以下では、子機141において、パスワードが不明な複数(N個)のビーコンが検知されたものとし、各ビーコンを発した無線LAN 151のSSIDを、SSID[1], SSID[2], …, SSID[N]とする。
【００９１】
ついで、子機141は、検知されたSSID[1], SSID[2], …, SSID[N]のそれぞれに親機121と共通するハッシュ関数hを適用して、子機側ハッシュ値
h(SSID[1]), h(SSID[2]), …, h(SSID[N])
を計算する(ステップS502)。子機側ハッシュ値は、検知されたビーコンの個数だけ計算されることになる。
【００９２】
そして、
SSID[1]とh(SSID[1])を対応付け、
SSID[2]とh(SSID[2])を対応付け、
… 
SSID[N]とh(SSID[N])を対応付けて、
RAM、SRAM、EEPROM等の記憶媒体に記憶する(ステップS503)。
【００９３】
ついで、子機141は、計算された子機側ハッシュ値
h(SSID[1]), h(SSID[2]), …, h(SSID[N])
が指定された要求を、第2無線回線142を介して、サーバ171へ送信する(ステップS504)。
【００９４】
なお、要求においては、子機141から送信された要求において、各子機側ハッシュ値とともに、検知されたビーコンの強さやビーコンが検知され続けた時間等などの無線LANパラメータを指定することとしても良い。
【００９５】
(サーバ処理2)
図4に戻り、サーバ171により受信されたパケット(ステップS401)が、子機141から伝達された要求であれば(ステップS402;子機からの要求)、サーバ171は、要求に指定された子機側ハッシュ値
h(SSID[1]), h(SSID[2]), …, h(SSID[N])
に一致する親機側ハッシュ値を記憶装置から特定する(ステップS405)。
【００９６】
記憶されていない場合(ステップS405;なし)、サーバ171は、子機141に対して、利用可能な親機121が存在しない旨を表す応答を子機141に送信し(ステップS406)、ステップS401に戻る。
【００９７】
1個だけ見つかった場合(ステップS405;1個)、当該1個の親機側ハッシュ値Hが特定されたものとして、これに対応付けて記憶されている暗号情報Eを取得し(ステップS408)、当該見つかった親機側ハッシュ値Hと、取得された暗号情報Eと、を指定する応答を子機に送信して(ステップS409)、ステップS401に戻る。上記のように、見つかった親機側ハッシュ値Hは、サーバ171に伝達されたi番目の子機側ハッシュ値h(SSID[i])に一致、すなわち、
H = h(SSID[i])
であるものとして、説明する。
【００９８】
複数の親機側ハッシュ値が見つかった場合(ステップS405;複数)、見つかった複数の親機側ハッシュ値に対応付けられて記憶されている利用情報に基づいて、見つかった複数の親機側ハッシュ値から、いずれか1個を、親機側ハッシュ値Hとして特定し(ステップS410)、ステップS408に進む。
【００９９】
複数の親機側ハッシュ値から、1個の親機側ハッシュ値Hを特定するには、最も単純には、複数の親機側ハッシュ値から、ランダムにいずれかを選択すれば良い。
【０１００】
また、通信システム101において、親機121が無償でテザリング機能を提供する場合には、利用情報に基づいて、最も通信負荷が小さい親機121を選択することができる。
【０１０１】
このほか、子機141から伝達された要求に無線LANパラメータが指定されている場合には、最も無線LAN通信が良好であると思われるものを選択することができる。
【０１０２】
なお、テザリング機能の利用につき、対価の支払を前提にする場合には、複数の親機側ハッシュ値の候補からいずれかを選択する種々の手法については、後述する。
【０１０３】
なお、受信されたパケットが親機121からの通知でも子機141からの要求でもない場合(ステップS402;その他)、当該パケットに対応付けられた処理を実行して(ステップS411)、ステップS401に戻る。ここで行われる処理としては、たとえば、子機141からの報告であった場合に、当該子機141に対して紹介した親機121からの報告と矛盾がないか確認したり等の処理等がある。
【０１０４】
(子機処理2)
図5に戻り、子機141は、サーバ171へ送信した要求に応じてサーバ171から送信された応答を受信する(ステップS506)。
【０１０５】
サーバ171から伝達された応答に、親機側ハッシュ値Hと暗号情報Eが指定されていなければ(ステップS507;なし)、近くに利用できる親機121が存在しない旨をユーザに知らせて(ステップS508)、本処理を終了する。
【０１０６】
サーバ171から伝達された応答に、親機側ハッシュ値Hと暗号情報Eが指定されていれば(ステップS507;あり)、記憶媒体に記憶された子機側ハッシュ値
h(SSID[1]), h(SSID[2]), …, h(SSID[N])
から、親機側ハッシュ値Hに一致、すなわち、
H = h(SSID[i])
を満たすものを探し(ステップS509)、見つかった子機側ハッシュ値h(SSID[i])に対応付けて記憶されているSSID[i]を取得する(ステップS510)。
【０１０７】
そして、取得されたSSID[i]と、サーバ171から伝達された暗号情報Eから、
PWD[i] = f(SSID[i],E)
のように、復号関数fにより、SSID[i]用のパスワードPWD[i]を復号する(ステップS511)。
【０１０８】
そして、SSID[i]が付与された無線LAN 151に対して、パスワードPWD[i]にて接続する(ステップS512)。
【０１０９】
なお、無線LANに対するSSIDおよびパスワードを設定する機能が、OSやプラットフォームのシステムコールやライブラリが子機用プログラムで利用できる場合には、子機141においてユーザが手動でこれらを設定することなく、子機141が上記の処理を実行することで、親機121が提供する無線LAN 151へ自動的に接続を試行することができる。
【０１１０】
OSのシステムコール等が利用できない場合には、SSID[i]とPWD[i]をユーザに提示して、ユーザが手動で無線LAN 151に接続するよう促すこととしても良い。この態様では、SSID[i]やPWD[i]を簡単にクリップボードにコピーできるようなユーザインターフェースを用意することで、子機141における無線LAN設定を容易にすることができる。
【０１１１】
また、無線LAN 151への接続に失敗した場合(ステップS513;失敗)、図示の通り、ステップS501へ戻って同じ処理を繰り返しても良いし(本処理を終了しても良い(図示せず。)。ここで、ステップS501において検知された複数のSSIDに接続に失敗したSSID[i]が含まれていた場合は、これを除去してからサーバ171へ要求を送ることとすれば、他の無線LAN 151への接続を試行することが可能となる。
【０１１２】
無線LAN 151への接続に成功した場合(ステップS513;成功)、子機141では、インターネット161への接続において、第2無線回線142ではなく、無線LAN 151を利用するようになる。
【０１１３】
そこで、無線LAN 151への接続がされている間(ステップS514;Yes)、当該子機141における無線LAN 151の利用状況(たとえば、親機121との無線LAN 151の電波強度、現在の通信速度や通信遅延、直近一定期間の通信量等)を、OSやプラットフォームが用意するシステムコールやライブラリにより取得し(ステップS515)、取得された利用状況を指定する報告をサーバ171へ送信し(ステップS516)、ある程度の時間待機してから(ステップS517)、ステップS514に戻る。
【０１１４】
ユーザは、一旦無線LAN 151との接続が確立した後は、子機141において、ブラウザ、チャット、音声や動画のストリーミングなど、各種のインターネットサービスに係るプログラムを、フォアグラウンドで実行する。したがって、典型的には、ステップS513-S517の処理は、バックグラウンドで実行されることになる。
【０１１５】
無線LAN 151への接続が切れた後(ステップS514;No)は、本処理を終了しても良いし(本図に示す)、ステップS501に戻って同じ処理を繰り返しても良い。無線LAN 151への接続が切れた後は、子機141は第2無線回線142を介してインターネット161に接続されるため、親機121の紹介をサーバ171に求めることが可能となる。
【０１１６】
以上説明した通り、本通信システム101では、親機121が提供する無線LAN 151のSSIDやパスワードは、そのままの姿でインターネット161を通過したりサーバ171に伝達されたりすることがないため、プライバシー保護やセキュリティ向上を図ることができる。
【０１１７】
また、子機141が検知可能な無線LANを子機141からサーバ171へ要求させるため、子機141の現在の実態に応じて、親機121を紹介することが可能となる。
【０１１８】
(対価をともなう提供)
上記実施形態は、テザリング機能の提供に際して特段の対価を求めない態様に適しているが、以下では、対価を伴うインターネット接続の提供を実現する実施形態について説明する。
【０１１９】
上記のように、親機121は、第1無線回線122を介して、間欠的にサーバ171へ通知を伝達する。また、子機141は、親機121が提供するテザリング機能を利用している間、無線LAN 151、親機121、および、第1無線回線122を介して、間欠的にサーバ171へ報告を伝達する。
【０１２０】
したがって、親機121からの通知と、子機141からの報告と、の両方が、間欠的に連続してサーバ171に伝達されている間は、子機141は親機121が提供するインターネット161への接続を利用している、と判断することができる。そこで、サーバ171は、インターネット161への接続について、接続量に応じた売買を仲介することができるようになる。
【０１２１】
この態様では、親機121は、たとえば上記の親機処理のステップS301の前後で、ユーザにインターネット161への接続をいくらで販売したいか、を入力させ、単位接続量あたりの売値を通知に含めてサーバ171へ伝達する。
【０１２２】
一方、子機121は、たとえば上記の子機処理のステップS501の前後で、ユーザにインターネット161への接続をいくらで購入したいか、を入力させ、単位接続量あたりの買値を通知に含めてサーバ171へ伝達することとする。
【０１２３】
この売買における売値、買値は、法定通貨によるものでもよいし、特定の業者が発行した特定のサービスで利用できるポイント等でも良い。
【０１２４】
また、接続量としては、接続時間単位とするのが最も単純である。このほか、親機121において、インターネット接続サービスを提供する日時をあらかじめ定め、その中での利用は固定料金とするのでも良い。
【０１２５】
さらに、親機121から伝達される通知や、子機141から伝達される報告に指定された利用情報に基いて、子機141が親機121を介してインターネット161にアクセスした際の通信量を、たとえば、バイト単位あるいはパケット単位で推測して、これに基づいて対価の支払を行うことも可能である。
【０１２６】
なお、バイト単位あるいはパケット単位で対価を定める場合には、親機121から伝達される通知と、子機141から伝達される報告と、が矛盾しないことが必要である。たとえば、親機121がインターネット161と通信したバイト数は、無線LAN 151を介して親機141がインターネット161と通信したバイト数よりも、必ず大きいはずである。
【０１２７】
両者に矛盾が生じた場合には、何らかの問題が生じたものとして、決済を中止したり、サーバ171から親機側プログラムや子機側プログラムに警告を送って、その旨をスマートフォン等に表示させることとしても良い。警告を受けたユーザは、無線LAN 151の提供、あるいは、無線LAN 151への参加をやめることで、トラブルに巻き込まれることを防止できる。
【０１２８】
なお、子機141から検知された親機121が複数ある場合には、サーバ171は、
その親機121をすでに利用している子機141ユーザの数が少なければ少ないほど、その親機121が紹介される可能性を高くし、
子機141が提示した買値以下の売値を提示した親機121において、売値が高ければ高いほど、その親機121が紹介される可能性を高くする
ように、マッチングの優先順位を定めることとすれば、特定の親機121へのアクセス集中を防止することができるとともに、売値と買値の価格帯が近似する親機121と子機141同士を紹介することができる。
【０１２９】
また、通知と報告が整合している場合には、サーバ171は、子機141のユーザから買値に基づく金額を徴収し、親機121のユーザへ売値に基づく金額を支払う旨を決定して、たとえば1箇月に一回、課金もしくは送金を行うこととすれば良い。
【０１３０】
ここで、買値に基づく金額、ならびに、売値に基づく金額は、子機141のユーザが指定した買値、および、親機121のユーザが指定した売値、として、その差額を、インターネット161への接続量の売買において、親機121と子機141を仲介する手数料として、サーバ171が徴収することも可能である。
【０１３１】
このほか、売値と買値の差額の所定割合を手数料とするように、ユーザ指定の売値と買値とを調整して、徴収する額および支払う額を定めても良い。たとえば、売値100円、買値120円で、所定割合を5割とした場合、徴収額は115円、支払額は105円、手数料はその差額の10円とする、等である。この態様では、子機141のユーザに対する徴収額は、必ず指定した買値以下となり、親機121のユーザに対する支払額は、ユーザが指定した売値以上となるので、両者の満足度を向上させることができる。
【０１３２】
このほか、売値と買値そのものの一方もしくは双方の所定パーセントを、仲介の手数料としても良い。
【０１３３】
本実施形態によれば、ユーザ同士が自身のインターネット接続をシェアリングする際に、自身で納得のゆく価格で売買をすることが可能となる。
【０１３４】
(まとめ)
以上説明したように、本実施形態に係る通信システムは、
無線LANのアクセスポイントとして動作するためのSSIDとパスワードが設定され、前記設定されたSSIDをビーコンによりブロードキャストし、第1無線回線を介してインターネットへの接続を提供する親機と、
第2無線回線を介して前記インターネットへ接続可能であり、無線LANのアクセスポイントからビーコンによりブロードキャストされているSSIDを検知する子機と、
前記インターネット内のサーバと、
を備え、
(a) 前記親機は、
前記設定されたSSIDに、ハッシュ関数を適用することにより、親機側ハッシュ値を計算し、
前記設定されたパスワードを、前記設定されたSSIDで暗号化することにより、暗号情報を計算し、
前記計算された親機側ハッシュ値と、前記計算された暗号情報と、を対応付けて、前記第1無線回線を介して、前記サーバへ伝達し、
(b) 前記子機は、
前記検知されたSSIDに、前記ハッシュ関数を適用することにより、子機側ハッシュ値を計算し、
前記計算された子機側ハッシュ値を、前記第2無線回線を介して、前記サーバへ伝達し、
(c) 前記サーバは、
前記親機から暗号情報に対応付けられて伝達された親機側ハッシュ値であって、前記子機から伝達された子機側ハッシュ値と一致する親機側ハッシュ値に対応付けられた暗号情報を特定し、
前記特定された暗号情報と、前記親機側ハッシュ値と、を対応付けて、前記第2無線回線を介して、前記子機へ伝達し、
(d) 前記子機は、
前記検知されたSSIDから、前記ハッシュ関数を適用することにより前記サーバから伝達された親機側ハッシュ値と一致する子機側ハッシュ値が計算されるSSIDを取得し、
前記サーバから伝達された暗号情報を、前記取得されたSSIDで復号することにより、パスワードを計算し、
前記取得されたSSIDを有する無線LANのアクセスポイントに前記計算されたパスワードでアクセスすることにより、前記第2無線回線を介するのにかえて、前記アクセスポイントを介して前記インターネットへ接続する。
【０１３５】
本通信システムにより、携帯電話回線等を介してインターネットへ接続する親機が、インターネット通信の接続量を、他の子機に融通することができ、その際に使用するSSIDやパスワードの流出を抑制することができる。
【０１３６】
また、本実施形態に係る通信システムにおいて、
前記第1無線回線と、前記第2無線回線と、は、同一もしくは異なる携帯電話事業者により運営される携帯電話回線である
ように構成することができる。
【０１３７】
本通信システムにより、既存の携帯電話事業者には何らのシステム変更も通信プロトコルの変更もなく、インターネットへの接続量をシェアリングすることができるようになる。
【０１３８】
また、本実施形態に係る通信システムにおいて、
前記親機は、前記インターネットへの接続に係る接続量に対する売値を、さらに前記サーバへ伝達し、
前記子機は、前記接続量に対する買値を、さらに前記サーバへ伝達し、
前記サーバは、前記親機から伝達された売値が前記子機から伝達された買値以下であることを、前記親機が特定される必要条件とする
ように構成することができる。
【０１３９】
本通信システムにより、インターネットへの接続量を有償でシェアリングすることができるようになる。
【０１４０】
また、本実施形態に係る通信システムにおいて、
前記子機は、前記検知されたSSIDを有する無線LANのアクセスポイントを介して、前記サーバへ間欠的に報告を送り、
前記サーバは、
前記報告に基づいて、前記インターネットへの接続に係る前記接続量が、前記親機から前記子機へ提供されたか否かを判定し、
前記接続量が提供されたと判定すると、前記子機のユーザから前記伝達された買値に基づく額を徴収し、前記親機のユーザへ前記伝達された売値に基づく額を支払う旨を決定する
ように構成することができる。
【０１４１】
本通信システムにより、インターネットの接続量を有償でシェアリングする際に、当該シェアリングが正しく行われた場合に対価の徴収および支払が行われるようにすることができる。
【０１４２】
また、本実施形態に係る通信システムにおいて、
前記ハッシュ関数は、前記ハッシュ関数に適用されるSSIDの所定箇所を除去してから一方向関数を適用してハッシュ値を計算する
ように構成することができる。
【０１４３】
本通信システムによれば、SSIDの流出を、より一層抑制することができるようになる。
【０１４４】
また、本通信システムにおける親機、サーバ、子機は、それぞれ、単独の装置として構成することができる。
【０１４５】
本実施形態に係る通信方法は、
無線LANのアクセスポイントとして動作するためのSSIDとパスワードが設定され、前記設定されたSSIDをビーコンによりブロードキャストし、第1無線回線を介してインターネットへの接続を提供する親機と、
第2無線回線を介して前記インターネットへ接続可能であり、無線LANのアクセスポイントからビーコンによりブロードキャストされているSSIDを検知する子機と、
前記インターネット内のサーバと、
が実行し、
(a) 前記親機は、
前記設定されたSSIDに、ハッシュ関数を適用することにより、親機側ハッシュ値を計算し、
前記設定されたパスワードを、前記設定されたSSIDで暗号化することにより、暗号情報を計算し、
前記計算された親機側ハッシュ値と、前記計算された暗号情報と、を対応付けて、前記第1無線回線を介して、前記サーバへ伝達し、
(b) 前記子機は、
前記検知されたSSIDに、前記ハッシュ関数を適用することにより、子機側ハッシュ値を計算し、
前記計算された子機側ハッシュ値を、前記第2無線回線を介して、前記サーバへ伝達し、
(c) 前記サーバは、
前記親機から暗号情報に対応付けられて伝達された親機側ハッシュ値であって、前記子機から伝達された子機側ハッシュ値と一致する親機側ハッシュ値に対応付けられた暗号情報を特定し、
前記特定された暗号情報と、前記親機側ハッシュ値と、を対応付けて、前記第2無線回線を介して、前記子機へ伝達し、
(d) 前記子機は、
前記検知されたSSIDであって、前記ハッシュ関数を適用することにより前記サーバから伝達された親機側ハッシュ値と一致する子機側ハッシュ値が計算されるSSIDを取得し、
前記サーバから伝達された暗号情報を、前記取得されたSSIDで復号することにより、パスワードを計算し、
前記取得されたSSIDを有する無線LANのアクセスポイントに前記計算されたパスワードでアクセスすることにより、前記第2無線回線を介するのにかえて、前記アクセスポイントを介して前記インターネットへ接続する。
【０１４６】
本実施形態に係る親機用プログラムは、スマートフォン等のコンピュータを、上記の通信システムにおける親機として機能させる。
【０１４７】
本実施形態に係るサーバ用プログラムは、ウェブサーバ等のコンピュータを、上記の通信システムにおけるサーバとして機能させる。
【０１４８】
本実施形態に係る子機用プログラムは、スマートフォン等のコンピュータを、上記の通信システムにおける子機として機能させる。
【０１４９】
本発明は、本発明の広義の精神と範囲を逸脱することなく、様々な実施の形態及び変形が可能とされるものである。また、上述した実施の形態は、この発明を説明するためのものであり、本発明の範囲を限定するものではない。すなわち、本発明の範囲は、実施の形態ではなく、特許請求の範囲によって示される。そして、特許請求の範囲内及びそれと同等の発明の意義の範囲内で施される様々な変形が、この発明の範囲内とみなされる。
【産業上の利用可能性】
【０１５０】
本発明によれば、携帯電話回線等を介したインターネットへのテザリング接続を、シェアリングにより提供するのに好適な通信システム、親機、サーバ、子機、通信方法、ならびに、プログラムを提供することができる。
【符号の説明】
【０１５１】
101 通信システム
121 親機
122 第1無線回線
123 ビーコン
141 子機
142 第2無線回線
151 無線LAN
161 インターネット
171 サーバ
【図１】
2019145897.tif 000003
【図２】
2019145897.tif 000004
【図３】
2019145897.tif 000005
【図４】
2019145897.tif 000006
【図５】
2019145897.tif 000007
【手続補正書】
【提出日】平成30年4月5日(2018.4.5)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
無線LANのアクセスポイントとして動作するためのSSIDとパスワードが設定され、前記設定されたSSIDをビーコンによりブロードキャストし、第1無線回線を介してインターネットへの接続を提供する親機と、
第2無線回線を介して前記インターネットへ接続可能であり、無線LANのアクセスポイントからビーコンによりブロードキャストされているSSIDを検知する子機と、
前記インターネット内のサーバと、
を備える通信システムであって、
(a) 前記親機は、
前記設定されたSSIDに、ハッシュ関数を適用することにより、親機側ハッシュ値を計算し、
前記設定されたパスワードを、前記設定されたSSIDで暗号化することにより、暗号情報を計算し、
前記計算された親機側ハッシュ値と、前記計算された暗号情報と、を対応付けて、前記第1無線回線を介して、前記サーバへ伝達し、
(b) 前記子機は、
前記検知されたSSIDに、前記ハッシュ関数を適用することにより、子機側ハッシュ値を計算し、
前記計算された子機側ハッシュ値を、前記第2無線回線を介して、前記サーバへ伝達し、
(c) 前記サーバは、
前記親機から暗号情報に対応付けられて伝達された親機側ハッシュ値であって、前記子機から伝達された子機側ハッシュ値と一致する親機側ハッシュ値に対応付けられた暗号情報を特定し、
前記特定された暗号情報と、前記親機側ハッシュ値と、を対応付けて、前記第2無線回線を介して、前記子機へ伝達し、
(d) 前記子機は、
前記検知されたSSIDから、前記ハッシュ関数を適用することにより前記サーバから伝達された親機側ハッシュ値と一致する子機側ハッシュ値が計算されるSSIDを取得し、
前記サーバから伝達された暗号情報を、前記取得されたSSIDで復号することにより、パスワードを計算し、
前記取得されたSSIDを有する無線LANのアクセスポイントに前記計算されたパスワードでアクセスすることにより、前記第2無線回線を介するのにかえて、前記アクセスポイントを介して前記インターネットへ接続する
通信システムにおいて、
前記親機は、前記インターネットへの接続に係る接続量に対する売値を、さらに前記サーバへ伝達し、
前記子機は、前記接続量に対する買値を、さらに前記サーバへ伝達し、
前記サーバは、前記親機から伝達された売値が前記子機から伝達された買値以下であることを、前記親機が特定される必要条件とする
ことを特徴とする通信システム。
【請求項２】
前記第1無線回線と、前記第2無線回線と、は、同一もしくは異なる携帯電話事業者により運営される携帯電話回線である
ことを特徴とする請求項1に記載の通信システム。
【請求項３】
前記子機は、前記検知されたSSIDを有する無線LANのアクセスポイントを介して、前記サーバへ間欠的に報告を送り、
前記サーバは、
前記報告に基づいて、前記インターネットへの接続に係る前記接続量が、前記親機から前記子機へ提供されたか否かを判定し、
前記接続量が提供されたと判定すると、前記子機のユーザから前記伝達された買値に基づく額を徴収し、前記親機のユーザへ前記伝達された売値に基づく額を支払う旨を決定する
ことを特徴とする請求項1に記載の通信システム。
【請求項４】
前記ハッシュ関数は、前記ハッシュ関数に適用されるSSIDの所定箇所を除去してから一方向関数を適用してハッシュ値を計算する
ことを特徴とする請求項1に記載の通信システム。
【請求項５】
請求項1に記載の通信システムにおける親機。
【請求項６】
請求項1に記載の通信システムにおけるサーバ。
【請求項７】
請求項1に記載の通信システムにおける子機。
【請求項８】
無線LANのアクセスポイントとして動作するためのSSIDとパスワードが設定され、前記設定されたSSIDをビーコンによりブロードキャストし、第1無線回線を介してインターネットへの接続を提供する親機と、
第2無線回線を介して前記インターネットへ接続可能であり、無線LANのアクセスポイントからビーコンによりブロードキャストされているSSIDを検知する子機と、
前記インターネット内のサーバと、
が実行する通信方法であって、
(a) 前記親機は、
前記設定されたSSIDに、ハッシュ関数を適用することにより、親機側ハッシュ値を計算し、
前記設定されたパスワードを、前記設定されたSSIDで暗号化することにより、暗号情報を計算し、
前記計算された親機側ハッシュ値と、前記計算された暗号情報と、を対応付けて、前記第1無線回線を介して、前記サーバへ伝達し、
(b) 前記子機は、
前記検知されたSSIDに、前記ハッシュ関数を適用することにより、子機側ハッシュ値を計算し、
前記計算された子機側ハッシュ値を、前記第2無線回線を介して、前記サーバへ伝達し、
(c) 前記サーバは、
前記親機から暗号情報に対応付けられて伝達された親機側ハッシュ値であって、前記子機から伝達された子機側ハッシュ値と一致する親機側ハッシュ値に対応付けられた暗号情報を特定し、
前記特定された暗号情報と、前記親機側ハッシュ値と、を対応付けて、前記第2無線回線を介して、前記子機へ伝達し、
(d) 前記子機は、
前記検知されたSSIDであって、前記ハッシュ関数を適用することにより前記サーバから伝達された親機側ハッシュ値と一致する子機側ハッシュ値が計算されるSSIDを取得し、
前記サーバから伝達された暗号情報を、前記取得されたSSIDで復号することにより、パスワードを計算し、
前記取得されたSSIDを有する無線LANのアクセスポイントに前記計算されたパスワードでアクセスすることにより、前記第2無線回線を介するのにかえて、前記アクセスポイントを介して前記インターネットへ接続する
通信方法において、
前記親機は、前記インターネットへの接続に係る接続量に対する売値を、さらに前記サーバへ伝達し、
前記子機は、前記接続量に対する買値を、さらに前記サーバへ伝達し、
前記サーバは、前記親機から伝達された売値が前記子機から伝達された買値以下であることを、前記親機が特定される必要条件とする
ことを特徴とする通信方法。
【請求項９】
コンピュータを、請求項5に記載の親機として機能させることを特徴とするプログラム。
【請求項１０】
コンピュータを、請求項6に記載のサーバとして機能させることを特徴とするプログラム。
【請求項１１】
コンピュータを、請求項7に記載の子機として機能させることを特徴とするプログラム。