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

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

▶ オムロンヘルスケア株式会社の特許一覧 ▶ オムロン株式会社の特許一覧

特許6925907データ送信装置、データ受信装置、方法及びプログラム
<>
  • 特許6925907-データ送信装置、データ受信装置、方法及びプログラム 図000002
  • 特許6925907-データ送信装置、データ受信装置、方法及びプログラム 図000003
  • 特許6925907-データ送信装置、データ受信装置、方法及びプログラム 図000004
  • 特許6925907-データ送信装置、データ受信装置、方法及びプログラム 図000005
  • 特許6925907-データ送信装置、データ受信装置、方法及びプログラム 図000006
  • 特許6925907-データ送信装置、データ受信装置、方法及びプログラム 図000007
  • 特許6925907-データ送信装置、データ受信装置、方法及びプログラム 図000008
  • 特許6925907-データ送信装置、データ受信装置、方法及びプログラム 図000009
  • 特許6925907-データ送信装置、データ受信装置、方法及びプログラム 図000010
  • 特許6925907-データ送信装置、データ受信装置、方法及びプログラム 図000011
  • 特許6925907-データ送信装置、データ受信装置、方法及びプログラム 図000012
  • 特許6925907-データ送信装置、データ受信装置、方法及びプログラム 図000013
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6925907
(24)【登録日】2021年8月6日
(45)【発行日】2021年8月25日
(54)【発明の名称】データ送信装置、データ受信装置、方法及びプログラム
(51)【国際特許分類】
   H04L 9/08 20060101AFI20210812BHJP
   G06F 21/60 20130101ALI20210812BHJP
【FI】
   H04L9/00 601A
   H04L9/00 601E
   G06F21/60 320
【請求項の数】13
【全頁数】25
(21)【出願番号】特願2017-154765(P2017-154765)
(22)【出願日】2017年8月9日
(65)【公開番号】特開2019-33455(P2019-33455A)
(43)【公開日】2019年2月28日
【審査請求日】2020年7月17日
(73)【特許権者】
【識別番号】503246015
【氏名又は名称】オムロンヘルスケア株式会社
(73)【特許権者】
【識別番号】000002945
【氏名又は名称】オムロン株式会社
(74)【代理人】
【識別番号】100108855
【弁理士】
【氏名又は名称】蔵田 昌俊
(74)【代理人】
【識別番号】100103034
【弁理士】
【氏名又は名称】野河 信久
(74)【代理人】
【識別番号】100153051
【弁理士】
【氏名又は名称】河野 直樹
(74)【代理人】
【識別番号】100179062
【弁理士】
【氏名又は名称】井上 正
(74)【代理人】
【識別番号】100189913
【弁理士】
【氏名又は名称】鵜飼 健
(74)【代理人】
【識別番号】100199565
【弁理士】
【氏名又は名称】飯野 茂
(72)【発明者】
【氏名】久保 誠雄
(72)【発明者】
【氏名】出野 徹
(72)【発明者】
【氏名】近藤 秀規
【審査官】 中里 裕正
(56)【参考文献】
【文献】 特開2000−115153(JP,A)
【文献】 特開2017−67735(JP,A)
【文献】 特表2016−519861(JP,A)
【文献】 特開2006−122610(JP,A)
【文献】 米国特許出願公開第2016/0080372(US,A1)
【文献】 米国特許出願公開第2016/0066212(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 9/08
G06F 21/60
A61B 5/0245
A61B 5/022
(57)【特許請求の範囲】
【請求項1】
生体の情報に関する量を測定する測定制御部と、
受信装置との間で共有できる第1共有情報及び第2共有情報から算出される情報を暗号鍵として生成する暗号鍵生成制御部と、
前記暗号鍵を使用して前記生体の情報を暗号化し暗号化データを生成する暗号化制御部と、
前記第1共有情報及び前記暗号化データを含む片方向送信用のパケットを生成するパケット生成制御部と、
前記パケットを送信する送信部と、
を備え
前記第1共有情報及び第2共有情報から算出される情報は、第2共有情報で決まる日時から前記第1共有情報に対応付けられる日時までの経過期間を含む
データ送信装置。
【請求項2】
前記第1共有情報、第2共有情報及び前記算出される情報は、前記生体の情報を含まない、
請求項1に記載のデータ送信装置。
【請求項3】
前記暗号鍵生成制御部は、前記第1共有情報に日時を対応付け、前記第2共有情報に予め設定した日時を対応付ける
請求項2に記載のデータ送信装置。
【請求項4】
前記第1共有情報に対応付けられる日時は、前記生体の情報に関する量を測定した日時を含む、
請求項3に記載のデータ送信装置。
【請求項5】
前記生体の情報は、血圧値、及び脈拍の少なくとも1つを含む、
請求項1乃至のいずれか1項に記載のデータ送信装置。
【請求項6】
暗号化されたデータである暗号化データと、送信装置との間で共有できる第1共有情報を含む片方向送信用のパケットを受信する受信部と、
前記第1共有情報に基づいて、送信装置との間で共有する第2共有情報から算出される情報を暗号鍵として決定する暗号鍵決定制御部と、
前記パケットに含まれる暗号化データを、前記暗号鍵を使用して復号し復号データを生成する復号制御部と、
を備え、
前記復号データは、前記送信装置で測定された生体の情報を含み、
前記第1共有情報及び第2共有情報から算出される情報は、第2共有情報で決まる日時から前記第1共有情報に対応付けられる日時までの経過期間を含む、
データ受信装置。
【請求項7】
前記第1共有情報、第2共有情報及び前記算出される情報は、前記生体の情報を含まない、
請求項に記載のデータ受信装置。
【請求項8】
前記第1共有情報は、前記送信装置で前記生体の情報に関する量を測定した日時であり、
前記暗号鍵決定制御部は、前記生体の情報に関する量を測定した日時に基づいて、前記第2共有情報から前記暗号鍵を決定する、
請求項またはに記載のデータ受信装置。
【請求項9】
前記生体の情報は、血圧値、及び脈拍の少なくとも1つを含む、
請求項乃至のいずれか1項に記載のデータ受信装置。
【請求項10】
生体の情報に関する量を測定し、
受信装置との間で共有できる第1共有情報及び第2共有情報から算出される情報を暗号鍵として生成し、
前記暗号鍵を使用して前記生体の情報を暗号化し暗号化データを生成し、
前記第1共有情報及び前記暗号化データを含む片方向送信用のパケットを生成し、
前記パケットを送信すること、
を備え
前記第1共有情報及び第2共有情報から算出される情報は、第2共有情報で決まる日時から前記第1共有情報に対応付けられる日時までの経過期間を含む
データ送信方法。
【請求項11】
暗号化されたデータである暗号化データと、送信装置との間で共有できる第1共有情報を含む片方向送信用のパケットを受信し、
前記第1共有情報に基づいて、送信装置との間で共有する第2共有情報から算出される情報を暗号鍵として決定し、
前記パケットに含まれる暗号化データを、前記暗号鍵を使用して復号し復号データを生成すること、
を備え、
前記復号データは、前記送信装置で測定された生体の情報を含み、
前記第1共有情報及び第2共有情報から算出される情報は、第2共有情報で決まる日時から前記第1共有情報に対応付けられる日時までの経過期間を含む、
データ受信方法。
【請求項12】
コンピュータを、請求項1乃至のいずれか1項に記載のデータ送信装置が備える各制御部として機能させるためのプログラム。
【請求項13】
コンピュータを、請求項乃至のいずれか1項に記載のデータ受信装置が備える各制御部として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、片方向通信によるデータ送信装置、データ受信装置、方法及びプログラムに関する。
【背景技術】
【0002】
血圧データをユーザの携帯情報端末に転送する機能を備えた血圧計が市場投入されている。携帯情報端末としては、例えばスマートフォンやタブレット型端末、ノート型パーソナルコンピュータが用いられる。係る機能を利用すれば、ユーザは様々な状況下での自己の血圧の測定結果を携帯情報端末で一覧することができる。また、血圧データの転送には、近距離無線通信技術、特にBluetooth(登録商標)技術が典型的には使用される。一般に、Bluetoothの通信(コネクション)は、WLAN(Wireless Local Area Network)通信に比べると、小規模かつ省電力に実現可能である。Bluetoothの仕様のバージョン4.0は、BLE(Bluetooth Low Energy)とも呼ばれ、従前の仕様に比べて消費電力をさらに少なくすることが可能である。
【0003】
BLEでは、コネクションと呼ばれる双方向通信を行うことができる。しかしながら、コネクションは、ペアリングのためにユーザに課される操作が煩雑である、ペアリング後の通信手順が煩雑である、携帯情報端末側がBLEをサポートしている必要がある、携帯情報端末ばかりでなく血圧計にも高性能なハードウェア(プロセッサ、メモリ)が必要となる、開発及び/または評価コストが高い、通信のオーバーヘッド量が大きく小容量のデータ送信に向かない、などの問題がある。
【0004】
他方、BLEでは、アドバタイジングと呼ばれる片方向通信を行うこともできる。特許文献1には、アドバタイズメントパケットのデータフィールドの余白部分に任意のデータを含めて送信する技術が開示されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特許第5852620号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
アドバタイジングを利用して血圧データを送信すれば、ペアリングやその後の煩雑な通信手順が不要となるので、先の問題は解消または軽減される。しかしながら、例えば血圧計が片方向の送信機能しか実装していなければ、携帯情報端末から血圧計に制御データを送って制御したり、逆に、血圧計から携帯情報端末の状態(データの受信状況など)を参照したりすることができなくなる。
【0007】
一般に、血圧計から無線送信されるデータは、その電波の伝播状況次第で、ユーザの携帯情報端末以外のデータ受信装置によっても受信可能である。このとき、仮に血圧データが暗号化されずに送信されていれば、ユーザの血圧データが他人に見られるおそれがある。このようなユーザの健康状態を表す情報の漏洩を予防して、血圧データの転送機能の安全性を高めることが求められる。さらに、前述のように、例えば血圧計が片方向の送信機能しか実装していなければ、血圧計は、携帯情報端末におけるデータの受信状況を参照することはできないので、携帯情報端末におけるデータ欠損が生じないように必要以上に大きな電力でパケットを送信することがあるかもしれない。このような場合には、ユーザの健康状態を表す情報の漏洩が一層生じやすくなる。
【0008】
この発明は上記事情に着目してなされたもので、その目的とするところは、片方向通信によって送信されたデータの漏洩を生じ難くするデータ送信装置、データ受信装置、方法及びプログラムを提供することである。
【課題を解決するための手段】
【0009】
本発明は、上述した課題を解決するために、以下の構成を採用する。
【0010】
すなわち、本発明の一側面に係るデータ送信装置は、生体の情報に関する量を測定する測定制御部と、受信装置との間で共有できる第1共有情報及び第2共有情報から算出される情報を暗号鍵として生成する暗号鍵生成制御部と、前記暗号鍵を使用して前記生体の情報を暗号化し暗号化データを生成する暗号化制御部と、前記第1共有情報及び前記暗号化データを含む片方向送信用のパケットを生成するパケット生成制御部と、前記パケットを送信する送信部と、を備える。
【0011】
上記の構成では、受信装置との間で共有できる第1共有情報及び第2共有情報から算出される情報を暗号鍵として、所望の情報(例えば、生体の情報、以下「生体情報」とも称す)を暗号化する。例えば、受信装置と送信装置とで予め同一の第2共有情報(例えば、任意の同一の数値(初期値))を保存しておき、さらに第1共有情報(例えば、数値化できるイベントに関する数値(イベント数値))をデータ送信装置とデータ受信装置との間で共有する場合には、この第1共有情報と第2共有情報を入力として演算を施した出力値が暗号鍵になる。この演算は、例えば、入力値と出力値が対応する演算であればどんな演算でもよい。理想的には、入力値と出力値が一対一に対応する演算を採用してもよい。この場合、入力値に関して出力値が一意に決定され、さらに、その逆、出力値に関して入力値も一意に決定される。しかしながら、一対一の演算でなくとも、入力値に関して出力値の分布が適度に離散されていればよい。すなわち、入力値が異なっても、出力値が同一値になることがあっても構わない(例えば、完全でないハッシュ関数)。もちろん完全なハッシュ関数を演算に使用して出力値を得てもよい。
【0012】
また、入力値は、第1共有情報と第2共有情報とから決定されるが、これらも同様な演算で入力値を決定してもよい。セキュリティ上は、暗号鍵を出力する演算と、入力値を出力する演算は異なることが望ましい。
この暗号鍵を使用して暗号化データを生成し、片方向送信用のパケットに暗号化データと第1共有情報とを含ませてパケットを片方向に送信する。すなわち、パケットはデータ送信装置から送信されるのみで、この装置がパケットを受信することはない。以上のように、第1共有情報及び第2共有情報を入力として演算した暗号鍵に用いて所望の情報を暗号化して送信するので、秘匿性の優れる送信を実現することが可能になるデータ送信装置を提供することができる。なお、暗号化する方式は、共通鍵暗号方式を採用し、具体的な暗号化方式は特に拘らない。
【0013】
上記の一側面に係るデータ送信装置において、前記第1共有情報、第2共有情報及び前記算出される情報は、前記生体の情報を含まない。
上記の構成では、データ送信装置とデータ受信装置とで第1共有情報、第2共有情報及び前記算出される情報から共通する暗号鍵を生成するために、それぞれの装置でセンサによって生体情報を暗号鍵の生成に使用しないので、データ送信装置及びデータ受信装置を常に生体に装着、または装置を携帯する必要がなくなる。したがって、データ送信装置のみを生体に装着すれば、データ送信装置から送信したい生体情報を取得してこの生体情報を暗号化してデータ受信装置に送信することができる。
【0014】
上記の一側面に係るデータ送信装置において、前記暗号鍵生成制御部は、前記第1共有情報に日時を対応付け、前記第2共有情報に予め設定した日時を対応付ける。
上記の構成では、第1共有情報に日時を対応付け、これをデータ受信装置へパケットに含めて送信するため、データ送信装置とデータ受信装置とでこの第1共有情報を共有することができる。これにより、第2共有情報(例えば、受信装置と送信装置とで予め任意の同一の日時)と、第1共有情報(例えば、生体情報に関する量を測定した日時)とから算出される情報(例えば、これら日時の時間差(経過時間、または経過期間とも称す))を暗号鍵とすることができる。なお、この日時は、データ送信装置で生体情報が測定された日時だけでなく、任意の時刻でもよい(未来でも過去でもよい)。また、時刻のみに限らず年月日を含む日時情報でもよい。なお、時刻は、日にちに関する情報も含んでいると見なし、日時情報と同様の意味で使用する。
【0015】
上記の一側面に係るデータ送信装置において、前記第1共有情報に対応付けられる日時は、前記生体の情報に関する量を測定した日時を含む。
上記の構成では、例えば、受信装置と送信装置とで予め任意の同一の時刻(第2共有情報)と、生体情報に関する量を測定する日時(第1共有情報)とから算出される情報を共有情報として、所定の演算で暗号鍵を生成することができる。
【0016】
上記の一側面に係るデータ送信装置において、前記第1共有情報及び第2共有情報から算出される情報は、第2共有情報で決まる日時から前記第1共有情報に対応付けられる日時までの経過期間を含む。
上記の構成では、受信装置と送信装置とで予め任意の同一の日時(第2共有情報)と、生体情報に関する量を測定した日時(第1共有情報)とから算出されるこれら日時の時間差である経過期間を暗号鍵とすることになる。したがって、データ送信装置とデータ受信装置との間でのみに通用する暗号鍵を使用して任意のデータ(例えば、生体情報)を暗号化することができる。
【0017】
上記の一側面に係るデータ送信装置において、前記生体の情報は、血圧値、及び脈拍の少なくとも1つを含む。
上記の構成では、データ送信装置が第1共有情報及び第2共有情報に基づいて暗号鍵として使用して、生体情報を送信することが可能になる。ここで生体情報は通常、取得日時を含んだ血圧値及び/または脈拍である時系列データである。したがって、所望の生体情報をセキュアに送信することが可能になるデータ送信装置を提供することができる。
【0018】
上記の一側面に係るデータ受信装置において、暗号化されたデータである暗号化データと、送信装置との間で共有できる第1共有情報を含む片方向送信用のパケットを受信する受信部と、前記第1共有情報に基づいて、送信装置との間で共有する第2共有情報から算出される情報を暗号鍵として決定する暗号鍵決定制御部と、前記パケットに含まれる暗号化データを、前記暗号鍵を使用して復号し復号データを生成する復号制御部と、を備え、前記復号データは、前記送信装置で測定された生体の情報を含む。
上記の構成では、データ送信装置との間で共有できる第1共有情報及び第2共有情報から算出される情報を暗号鍵として、所望の情報(例えば、生体情報)が暗号化されている。例えば、第1共有情報及び第2共有情報は数値であり、受信装置と送信装置とで予め任意の同一の初期値(第2共有情報)を記憶しておき、さらに数値化できるイベントに関するイベント数値(第1共有情報)を送信することにより、データ送信装置とデータ受信装置との間で第1共有情報及び第2共有情報を共有することができる。データ送信装置でもデータ受信装置でも、第1共有情報及び第2共有情報から決まった演算で暗号鍵を生成することにより、データ受信装置は、この暗号鍵によってセキュアに受信することができ、暗号化データを復号して所望の生体情報を得ることができる。
【0019】
上記の一側面に係るデータ受信装置において、前記第1共有情報、第2共有情報及び前記算出される情報は、前記生体の情報を含まない。
上記の構成では、データ送信装置との間で共通する暗号鍵を生成するために、それぞれの装置でセンサによって生体情報を暗号鍵の生成に使用しない。したがって、データ受信装置は、生体情報を使用する暗号鍵を使用する必要がないので、データ受信装置の使用形態が多様になる。例えば、データ受信装置を常に生体に装着、または装置を携帯する必要がなくなる。この結果、データ受信装置は自宅に設置したまま等でも暗号化データの送受信ができるようになる。
【0020】
上記の一側面に係るデータ受信装置において、前記第1共有情報は、前記送信装置で前記生体情報に関する量を測定した日時であり、前記暗号鍵決定制御部は、前記生体情報に関する量を測定した日時に基づいて、前記第2共有情報から前記暗号鍵を決定する。
上記の構成では、送信装置で前記生体情報に関する量を測定した日時をパケットに含めて、データ受信装置が受信するため、データ送信装置とデータ受信装置とでこの日時を共有することができる。例えば、受信装置と送信装置とで予め任意の同一の日時(第2共有情報)と、生体情報に関する量を測定した日時(第1共有情報)とから算出される情報(例えば、これら日時の時間差である経過期間)を暗号鍵とすることができる。なお、この日時は、データ送信装置が生体情報に関する量を測定した日時だけでなく、任意の時刻でもよい(未来でも過去でもよい)。また、時刻のみに限らず年月日を含む日時情報でもよい。なお、時刻は、日にちに関する情報も含んでいると見なし、日時情報と同様の意味で使用する。
【0021】
上記の一側面に係るデータ受信装置において、前記第1共有情報及び第2共有情報から算出される情報は、第2共有情報で決まる日時から第1共有情報に対応付けられる日時までの経過期間を含む。
上記の構成では、受信装置と送信装置とで予め共有する日時(第2共有情報)から、生体情報に関する量を測定した日時(第1共有情報)までの経過期間を暗号鍵とする。この経過期間は、データ受信装置とデータ送信装置との間でしか知り得ないので、セキュアに生体情報を授受することが可能になるデータ受信装置を提供することができる。
【0022】
上記の一側面に係るデータ受信装置において、前記生体の情報は、血圧値、及び脈拍の少なくとも1つを含む。
上記の構成では、復号データは、データ送信装置のセンサが取得する生体情報であり、例えば、血圧値及び/または脈拍である。データ受信装置が第1共有情報及び第2共有情報に基づいて生成された情報を暗号鍵として使用して、生体情報を復号することが可能になる。ここで生体情報は通常、取得日時を含んだ血圧値及び/または脈拍である時系列データである。したがって、所望の生体情報をセキュアに復号することが可能になるデータ受信装置を提供することができる。
【0023】
上記の一側面に係る前記データ送信装置は血圧計または脈拍計であり、前記データ受信装置は携帯情報端末である。
上記の構成では、血圧計または脈拍計で測定した生体情報を送信し、携帯情報端末がこの生体情報をセキュアに受信することが可能になる。
【0024】
上記の一側面に係るデータ送信装置で生成されるパケットは近距離無線通信方式によって送信される。
上記の構成では、データ送信装置からデータ受信装置への送信は近距離無線通信方式(例えば、BLE)にしたがうことによって、他の無線通信方式よりも低消費電力かつ安価な機器で送信を実現することが可能になる。
【発明の効果】
【0025】
本発明によれば、片方向通信によって送信されたデータの漏洩を生じ難くすることができるデータ送信装置、データ受信装置、方法及びプログラムを提供することができる。
【図面の簡単な説明】
【0026】
図1】実施の形態に係るデータ送信装置及びデータ受信装置の適用場面の一例を模式的に例示する図。
図2】実施の形態に係るデータ送信装置のハードウェア構成の一例を模式的に例示する図。
図3】実施の形態に係るデータ受信装置のハードウェア構成の一例を模式的に例示する図。
図4】実施の形態に係るデータ送信装置のソフトウェア構成の一例を模式的に例示する図。
図5】実施の形態に係るデータ受信装置のソフトウェア構成の一例を模式的に例示する図。
図6】実施の形態に係るデータ送信装置の処理手順の一例を例示する図。
図7】実施の形態に係るデータ受信装置の処理手順の一例を例示する図。
図8】BLEにおいて行われるアドバタイジングの説明図。
図9】BLEにおいて送受信されるパケットのデータ構造を例示する図。
図10】アドバタイズメントパケットのPDUフィールドのデータ構造を例示する図。
図11】実施の形態に係るデータ送信装置が送信するパケットのPDUフィールドのペイロードに格納されるデータ構造の一例を示す図。
図12】実施の形態に係るデータ送信装置及びデータ受信装置を含むデータ伝送システムの一例を例示する図。
【発明を実施するための形態】
【0027】
以下、本発明の一側面に係る実施の形態(以下、「本実施形態」とも表記する)を、図面に基づいて説明する。なお、以下の実施形態では、同一の番号を付した部分については同様の動作を行うものとして、重ねての説明を省略する。
【0028】
[適用例]
まず、図1を用いて、本発明が適用される場面の一例について説明する。図1は、本実施形態に係るデータ送信装置100及びデータ受信装置150の適用場面の一例を模式的に例示する。本実施形態に係るデータ送信装置100は、センサ101が生体から取得したセンサデータと計時部103によって時刻とを対応付けた時系列のセンサデータを、センサデータ記憶部102に記憶する。第1共有情報生成部109がセンサデータ記憶部102から第1共有情報を生成し、暗号鍵生成部104が第2共有情報記憶部108から第2共有情報を取得する。そして、データ送信装置100とデータ受信装置150との第1共有情報及び第2共有情報に基づいて暗号鍵生成部104が暗号鍵を生成し、暗号化部105がセンサデータ記憶部102から取得した送信したい所望のデータ(例えば、生体情報)をこの暗号鍵で暗号化する。次に、パケット生成部106が第1共有情報及び暗号化データを含んだパケットを生成し、送信部107が生成された片方向送信用のパケット(例えば、BLEのアドバタイジングを使用)を送信する。なお、暗号鍵生成部104が本発明の「暗号鍵生成制御部」に相当し、暗号化部105が本発明の「暗号化制御部」に相当する。第1共有情報は、例えば、センサデータがセンサで取得(または検出)された日時であり、第2共有情報は、例えば、予めデータ送信装置とデータ受信装置との間で共有している日時である。センサデータがセンサに取得(または測定、検出)された日時は、より正確に言えば、センサデータの元になる生体情報がセンサに取得(または測定、検出)された日時であるが、便宜上、以下の説明と特許請求の範囲では同一の意味で使用する。第2共有情報は、ユーザが任意に設定することができることが望ましい。この結果、複数のデータ送信装置及びデータ受信装置があっても、同一の暗号鍵が生成される可能性が低くなる。したがって、復号化されるべきでない任意のデータ受信装置が第1共有情報を受信しても、データ受信装置が暗号化データを復号化できる可能性は低くなる。
【0029】
本実施形態に係るデータ受信装置150は、受信部153が片方向送信用のパケットを受信し、第1共有情報抽出部156がパケットにから抽出した第1共有情報(例えば、センサデータがセンサに取得された日時データ)と第2共有情報記憶部152に含まれる情報に基づいて、暗号鍵決定部154が暗号鍵を生成し決定する。第2共有情報記憶部152には、データ受信装置とデータ送信装置とで第2共有情報(例えば、予め任意の同一の数値(初期値;例えば、時刻等))が記憶されている。復号部155は、暗号鍵決定部154で生成された暗号鍵を使用して受信部153で受信された暗号化データを復号し、データ受信装置はデータ送信装置で取得した所望のデータを受け取ることができる。計時部151は、第2共有情報記憶部152に格納される第2共有情報に関連した情報として日時データを付す際に使用される。単純な例としては、ユーザが入力装置を使用してある所望の時刻データを第2共有情報記憶部152に記録する際に使用する。
【0030】
データ送信装置からデータ受信装置への片方向の通信方式は、例えば、BLEのアドバタイジングである。この通信方式によって片方向送信用のパケットが生成される。また、本実施形態で送信される所望のデータは、例えば、生体情報であり、具体的には例えば、血圧値及び/または脈拍である。センサデータは、センサ101で検出できるデータであれば何でもよく、例えば、歩数及び/または3軸加速度である。さらに、センサで検出できれば血圧値及び/または脈拍等の生体情報でも構わない。また、暗号化する方式は、共通鍵暗号方式を採用し、具体的な暗号化方式は特に拘らないが、例えば、DES(Data Encryption Standard)、またはAES(Advanced Encryption Standard)を使用する。また、例えば、データ送信装置は血圧計または脈拍計であり、データ受信装置はスマートフォン、携帯電話機、またはモバイルパソコンなどの携帯情報端末である。
【0031】
以上の通り、本実施形態では、データ送信装置100は、データ送信装置100で生成した第1共有情報と、受信装置と送信装置とで予め共有している第2共有情報とから算出される暗号鍵で所望の生体情報を暗号化し、片方向送信用のパケットを生成し送信する。データ受信装置150は、データ送信装置100から送信されたパケットに含まれる第1共有情報と、受信装置と送信装置とで予め共有している第2共有情報(例えば、任意の同一の数値)とに基づいて算出した情報を暗号鍵として暗号化データを復号する。そのため、データ受信装置150では、データ送信装置100と同一の第1共有情報及び第2共有情報を得ることができ、これら共有情報から算出される暗号鍵を生成することにする。この暗号鍵はデータ送信装置100とデータ受信装置150とで同じものになる。つまり、データ送信装置100とデータ受信装置150との双方で、データ送信装置100で生成した第1共有情報と、予め共有している第2共有情報とを含む共有情報に基づいて算出した暗号鍵を設定することができる。したがって、本実施形態によれば、データ送信装置100が生成した第1共有情報と、受信装置及び送信装置で予め共有している第2共有情報(任意の同一の数値)を使用して、送信側と受信側でそれぞれ暗号鍵を生成することにより、片方向送信用のパケットを安全に送信して情報を伝達することができる。この結果、第2共有情報に対応した共通暗号鍵のみによる暗号化方式よりも、第1共有情報が暗号鍵の内容に影響するので、本実施形態による方式は安全に情報を伝達することが可能になる。
【0032】
[構成例]
(ハードウェア構成)
<データ送信装置>
次に、図2を用いて、本実施形態に係るデータ送信装置100のハードウェア構成の一例について説明する。
図2に示される通り、本実施形態に係るデータ送信装置100は、出力装置211、入力装置212、制御部213、記憶部214、ドライブ215、外部インタフェース216、通信インタフェース217、及び電池218が電気的に接続されたコンピュータを含む。さらにデータ送信装置100は、生体センサ219、及び計時装置220を備える。本実施形態に係るデータ送信装置100は、本発明の「データ送信装置」に相当する。なお、図2では、通信インタフェース及び外部インタフェースをそれぞれ、「通信I/F」及び「外部I/F」と記載している。
【0033】
制御部213は、CPU(Central Processing Unit)、RAM(Random Access Memory)、ROM(Read Only Memory)等を含み、情報処理に応じて各構成要素の制御を行う。記憶部214は、例えば、ハードディスクドライブ、ソリッドステートドライブ等の補助記憶装置であり、制御部213で実行される暗号鍵生成及びパケット送信制御プログラム、生体センサ219及が検出したセンサデータ、送信予定の所望のデータ、第2共有情報、及び計時装置220が計時した日時データ等を記憶する。
【0034】
暗号鍵生成及びパケット送信制御プログラムは、第1共有情報及び第2共有情報から暗号鍵を生成し、生成された暗号鍵を使用して所望のデータを暗号化し、第1共有情報と暗号化されたデータとを片方向送信用のパケットで送信する処理を実行させる(図6)ためのプログラムである。また、所望のデータは、例えば、生体情報である。生体情報は例えば、血圧値の時系列データである。
【0035】
通信インタフェース217は、例えば、近距離無線通信(例えば、ブルートゥース(登録商標))モジュール、無線LANモジュール等であり、ネットワークを介した無線通信を行うためのインタフェースである。通信インタフェース217は、データ送信装置100をデータ受信装置150に無線接続するためのインタフェースである。通信インタフェース217は、制御部213によって制御される。通信インタフェース217は、制御部213が生成した暗号化データを含んだパケットを受け取り、データ受信装置150へ送信するために使用される。なお、通信インタフェース217は、情報をデータ受信装置150から受信することはできず、片方向送信用のパケットを送信するのみである。
【0036】
入力装置212は、例えば、マウス、キーボード等の入力を行うための装置である。出力装置211は、例えば、ディスプレイ、スピーカ等の出力を行うための装置である。外部インタフェース216は、USBポート等であり、例えば、生体センサ219及び/または計時装置220等の外部装置と接続するためのインタフェースである。図2等では生体センサ219、及び計時装置220が外部インタフェース216に接続しているように図示されていないが、これは後に図4等で制御部213の内部のブロックとの接続を明確にするために便宜的に制御部213に直接接続しているように記載しているためである。
【0037】
記憶部214は、コンピュータその他の装置、機械等が記録されたプログラム等の情報を読み取り可能なように、当該プログラム等の情報を、電気的、磁気的、光学的、機械的、または化学的作用によって蓄積する媒体である。データ送信装置100は、この記憶部214から、暗号鍵生成及びパケット送信制御プログラム、生体センサ219が検出したセンサデータ、送信予定の所望のデータ、データ送信装置とデータ受信装置との間で予め共有する第2共有情報、及び計時装置220が計時した日時データを取得してもよい。
【0038】
ドライブ215は、例えば、CD(Compact Disk)ドライブ、DVD(Digital Versatile Disk)ドライブ等であり、記憶媒体に記憶されたプログラムを読み込むための装置である。ドライブ215の種類は、記憶媒体の種類に応じて適宜選択されてよい。上記の暗号鍵生成及びパケット送信制御プログラム、生体センサ219が検出したセンサデータ、送信予定の所望のデータ、及び計時装置220が計時した日時データは、この記憶媒体に記憶されていてもよい。ここでは、記憶媒体の一例として、CD、DVD等のディスク型の記憶媒体を例示している。しかしながら、記憶媒体の種類は、ディスク型に限定される訳ではなく、ディスク型以外であってもよい。ディスク型以外の記憶媒体として、例えば、フラッシュメモリ等の半導体メモリを挙げることができる。
【0039】
電池218は、例えば、充電可能な2次電池である。電池218は、データ送信装置100本体に搭載されている各要素へ電力を供給する。電池218は、例えば、出力装置211、入力装置212、制御部213、記憶部214、ドライブ215、外部インタフェース216、通信インタフェース217、生体センサ219、及び計時装置220へ電力を供給する。
【0040】
生体センサ219は、例えば、血圧測定装置である。この場合、生体センサ219は、例えば、生体であるユーザの手首に装着された押圧カフの圧力を検出して生体の血圧値を検出する。生体センサ219は、血圧データ(例えば、血圧値の時系列データ)を制御部213へ出力する。また、生体センサ219は脈拍測定装置でもよいし、血圧と共に脈拍を測定してもよい。
【0041】
計時装置220は、時間を計測する装置であり、日時を計測できる。例えば、計時装置220はカレンダーを含む時計であり、現在の日時の情報を制御部213へ渡す。
【0042】
なお、データ送信装置100の具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。例えば、制御部213は、複数のプロセッサを含んでもよい。データ送信装置100は、複数台の情報処理装置で構成されてもよい。また、データ送信装置100は、提供されるサービス専用に設計された情報処理装置の他、汎用のデスクトップPC(Personal Computer)、タブレットPC等が用いられてもよい。
【0043】
<データ受信装置>
次に、図3を用いて、本実施形態に係るデータ受信装置150のハードウェア構成の一例について説明する。データ受信装置150のハードウェア構成はデータ送信装置100とほぼ同様である。
図3に示される通り、本実施形態に係るデータ受信装置150は、出力装置311、入力装置312、制御部313、記憶部314、ドライブ315、外部インタフェース316、通信インタフェース317、及び電池318が電気的に接続されたコンピュータを含む。さらにデータ受信装置150は、計時装置319を備える。本実施形態に係るデータ受信装置150は、本発明の「データ受信装置」に相当する。なお、図3では、通信インタフェース及び外部インタフェースをそれぞれ、「通信I/F」及び「外部I/F」と記載している。
【0044】
制御部313は、CPU(Central Processing Unit)、RAM(Random Access Memory)、ROM(Read Only Memory)等を含み、情報処理に応じて各構成要素の制御を行う。記憶部314は、例えば、ハードディスクドライブ、ソリッドステートドライブ等の補助記憶装置であり、制御部313で実行される暗号鍵生成及びデータ復号制御プログラム、受信して復号した所望のデータ、データ送信装置とデータ受信装置との間で予め共有する第2共有情報、及び計時装置319が計時した日時データ等を記憶する。
【0045】
暗号鍵生成及びデータ復号制御プログラムは、パケットに含まれる第1共有情報と予め共有している第2共有情報とから暗号鍵を生成し、生成された暗号鍵を使用して片方向送信用の受信したパケットに含まれる暗号化データを復号する処理を実行させる(図7)ためのプログラムである。また、所望のデータは、例えば、生体情報である。生体情報は例えば、血圧値の時系列データである。
【0046】
通信インタフェース317は、通信インタフェース217とほぼ同様である。通信インタフェース317は、データ送信装置100からデータを受信するためのインタフェースである。通信インタフェース317は、データ送信装置100からパケットを受け取り、制御部313へ渡す。
【0047】
入力装置312、出力装置311、及び外部インタフェース316はそれぞれ、入力装置212、出力装置211、及び外部インタフェース216と同様である。
【0048】
記憶部314は、コンピュータその他の装置、機械等が記録されたプログラム等の情報を読み取り可能なように、当該プログラム等の情報を、電気的、磁気的、光学的、機械的、または化学的作用によって蓄積する媒体である。データ受信装置150は、この記憶部314から、暗号鍵生成及びデータ復号制御プログラム、受信して復号した所望のデータ、データ送信装置とデータ受信装置との間で共有する第2共有情報、及び計時装置319が計時した日時データを取得してもよい。
【0049】
ドライブ315は、例えば、CD(Compact Disk)ドライブ、DVD(Digital Versatile Disk)ドライブ等であり、記憶媒体に記憶されたプログラムを読み込むための装置である。ドライブ315の種類は、記憶媒体の種類に応じて適宜選択されてよい。上記の暗号鍵生成及びデータ復号制御プログラム、計時装置319及び/または動きセンサ320が検出したセンサデータ、受信して復号した所望のデータ、及び計時装置319が計時した日時データは、この記憶媒体に記憶されていてもよい。ここでは、記憶媒体の一例として、CD、DVD等のディスク型の記憶媒体を例示している。しかしながら、記憶媒体の種類は、ディスク型に限定される訳ではなく、ディスク型以外であってもよい。ディスク型以外の記憶媒体として、例えば、フラッシュメモリ等の半導体メモリを挙げることができる。
【0050】
電池318は、電池218と同様である。電池318は、データ受信装置150本体に搭載されている各要素へ電力を供給する。
【0051】
計時装置319は、計時装置220と同様である。
【0052】
なお、データ受信装置150の具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。例えば、制御部313は、複数のプロセッサを含んでもよい。データ受信装置150は、複数台の情報処理装置で構成されてもよい。また、データ受信装置150は、提供されるサービス専用に設計された情報処理装置の他、汎用のデスクトップPC(Personal Computer)、タブレットPC等が用いられてもよい。
【0053】
(ソフトウェア構成)
<データ送信装置>
次に、図4を用いて、本実施形態に係るデータ送信装置100のソフトウェア構成の一例を説明する。
データ送信装置100の制御部213は、必要なプログラムを実行する際に、記憶部214に記憶された、暗号鍵生成及びパケット送信制御プログラムをRAMに展開する。そして、制御部213は、RAMに展開された暗号鍵生成及びパケット送信制御プログラムをCPUにより解釈及び実行して、各構成要素を制御する。これによって、図4に示される通り、本実施形態に係るデータ送信装置100は、生体情報測定部401、記憶制御部402、暗号鍵生成部403、暗号化部404、パケット生成部405、送信部406、第1共有情報生成部407を備えるコンピュータとして機能する。
【0054】
生体情報測定部401は、生体センサ219が生体情報を検出し出力するセンサデータと、計時装置220から取得した日時情報と共に記憶制御部402に渡す。また、生体情報測定部401は、この生体情報と日時情報とを合わせた生体情報の時系列データを記憶制御部402に渡してもよい。
記憶制御部402は、生体情報測定部401から受け取った、センサデータと日時情報とを関連付けたデータを記憶部214に記憶させる。また、記憶制御部402は、計時装置220から日時情報を取得し、日時情報を他の受け取った情報に対応付けて記憶部214に記憶させてもよい。
【0055】
第1共有情報生成部407は、数値化できるイベントに関する数値(イベント数値)を生成する。具体的には、第1共有情報生成部407は、例えば、イベント数値はデータ送信装置で生体情報に関する量を測定した日時情報を生成する。
【0056】
暗号鍵生成部403は、第1共有情報生成部407で生成される第1共有情報と、記憶部214が記憶している第2共有情報とから、暗号鍵を生成する。共有情報は、例えば、受信装置と送信装置とで予め任意の同一の数値(初期値)を保存しておき、さらに数値化できるイベントに関する数値(イベント数値)である。具体的には、例えば、初期値はある特定の日時情報であり、この場合には、暗号鍵生成部403は、例えば、初期値の日時からイベント数値の日時までの経過期間を算出し、この経過期間を暗号鍵とする。
また、暗号鍵は、共有情報の他に予め設定された、データ受信装置150と共有している他のデータを含んでもよい。例えば、予めデータ送信装置100のMAC(media access control)アドレスを暗号鍵に含めてもよい。このMACアドレスはデータ受信装置150も予め既知に設定しておく。この場合、データ送信装置100のMACアドレスは、記憶部214及び記憶部314に記憶しておく。
【0057】
暗号化部404は、記憶部214に記憶されている送信すべき所望のデータを受け取り、暗号鍵生成部403から受け取る暗号鍵で、所望のデータを暗号化する。暗号化する方式は、共通鍵暗号方式を採用し、具体的な暗号化方式は特に拘らない。具体的な暗号化方式は、例えば、DES、AESがある。
【0058】
パケット生成部405は、暗号鍵生成部403から暗号鍵に関する情報を取得し、暗号鍵に関するこの情報と、暗号化部404で暗号化された所望のデータとを含むパケットを生成する。このパケットは片方向送信用のパケットであり、例えば、BLEのアドバタイズメントパケットである。また、暗号鍵に関する情報は、例えば、暗号鍵に含まれる算出された数値の元になるイベント数値を含む。具体的には、暗号鍵に含まれる算出された数値は、例えば、経過期間であり、イベント数値は暗号鍵が生成された日時である。
なお、暗号鍵に関する情報は、センサの位置情報を含んでもよい。この日時と位置の情報は、暗号鍵でデータを復号する際に使用される。
【0059】
送信部406は、パケット生成部405で生成されたパケットを、片方向送信用として所定の通信方式で通信インタフェース217を介して送信する。この通信方式は、例えば、BLEであり、送信部406はBLEのアドバタイジングを利用してパケットを送信する。
【0060】
<データ受信装置>
次に、図5を用いて、本実施形態に係るデータ受信装置150のソフトウェア構成の一例を説明する。
データ受信装置150の制御部313は、必要なプログラムを実行する際に、記憶部314に記憶された、暗号鍵生成及びデータ復号制御プログラムをRAMに展開する。そして、制御部313は、RAMに展開された暗号鍵生成及びデータ復号制御プログラムをCPUにより解釈及び実行して、各構成要素を制御する。これによって、図5に示される通り、本実施形態に係るデータ受信装置150は、記憶制御部501、受信部502、暗号鍵決定部503、復号部504、及び第1共有情報抽出部505を備えるコンピュータとして機能する。
【0061】
記憶制御部501は計時装置319から日時情報を取得し、日時情報を他の受け取った情報に対応付けて記憶部314に記憶させる。
【0062】
受信部502は、データ送信装置100からのパケットを、通信インタフェース317を介して受信する。このパケットには、暗号化データと、暗号鍵に関する情報とが少なくとも含まれている。
【0063】
第1共有情報抽出部505は、受信部502が受信したパケットに含まれる第1共有情報を抽出する。第1共有情報は、例えば、データ送信装置でセンサが生体情報に関する量を測定した日時情報である。
【0064】
暗号鍵決定部503は、第1共有情報抽出部505が生成した第1共有情報と、記憶部314に記憶されている第2共有情報(予め共有している任意の同一数値;初期値、すなわち、受信装置と送信装置とで予め任意の同一の数値)と、を取得する。パケットに含まれる第1共有情報は、例えば、数値化できるイベントに関する数値(イベント数値)が含まれる。より具体的には、イベント数値は、例えば、センサデータをセンサが測定した日時である。パケットに含まれるこのイベント数値と記憶部314に記憶されている初期値とを入力として演算を施した出力値が暗号鍵になる。この演算は、例えば、(完全でない)ハッシュ関数が使用される。また、完全なハッシュ関数を演算に使用してもよい。
【0065】
また、パケットが他にMACアドレスを含んでいる場合には、そのMACアドレスも記憶部314から暗号鍵決定部503が取得する。暗号鍵決定部503は、記憶部314に記憶されるMACアドレスが、受信したパケットに含まれるMACアドレスに一致しているかを確認する。暗号鍵決定部503は、例えば、一致している場合にはそのまま処理を進め、一致していない場合にはこのパケットは宛先が異なるとして棄却する。
【0066】
復号部504は、受信部502から暗号化データを受け取り、さらに暗号鍵決定部503で生成された暗号鍵を受け取る。そして、復号部504は、この暗号鍵で暗号化データを復号し、所望のデータを受け取る。復号部504はこの所望のデータを記憶部314に記憶させる。
【0067】
<その他>
データ送信装置100及びデータ受信装置150の各機能に関しては後述する動作例で詳細に説明する。なお、本実施形態では、データ送信装置100及びデータ受信装置150の各機能がいずれも汎用のCPUによって実現される例について説明している。しかしながら、以上の機能の一部または全部が、1または複数の専用のプロセッサにより実現されてもよい。また、データ送信装置100の機能構成に関して、実施形態に応じて、適宜、機能の省略、置換及び追加が行われてもよい。
【0068】
[動作例]
<データ送信装置>
次に、図6を用いて、データ送信装置100の動作例を説明する。図6は、データ送信装置100の処理手順の一例を例示するフローチャートである。なお、以下で説明する処理手順は一例に過ぎず、各処理は可能な限り変更されてよい。また、以下で説明する処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が可能である。
【0069】
(起動)
まず、ユーザは、データ送信装置100を起動し、起動したデータ送信装置100に暗号鍵生成及びパケット送信制御プログラムを実行させる。データ送信装置100の制御部213は、以下の処理手順にしたがって、第1共有情報を生成し、第1共有情報と、データ受信装置と予め共有している第2共有情報とに基づいて暗号鍵を生成し、送信予定の所望のデータを暗号鍵で暗号化し、第1共有情報及び暗号化データを含んだ片方向送信用のパケットを送信する。
【0070】
(ステップS601)
ステップS601では、制御部213は、暗号鍵生成部403及び第1共有情報生成部407として機能し、例えば、記憶部214からデータ受信装置と共有している第2共有情報(例えば、初期値の日時情報)と、第1共有情報(例えば、データ送信装置でセンサデータがセンサに測定された日時情報)とを取得する。そして、暗号鍵生成部403は、第2共有情報の日時から第1共有情報の日時までの経過期間を計算し、この経過期間を含む情報を暗号鍵として生成する。
【0071】
(ステップS602)
ステップS602では、制御部213は、暗号化部404として機能し、ステップS601で決定した暗号鍵を使用して、送信予定の所望のデータ(例えば、生体情報)を暗号化して暗号化データを生成する。
【0072】
(ステップS603)
ステップS603では、制御部213は、パケット生成部405として機能し、ステップS602で生成された暗号化データと、暗号鍵生成部403で生成された暗号鍵に使用された第1共有情報(ここでは、センサデータを測定した日時情報)を含めてパケットを生成する。
【0073】
(ステップS604)
ステップS604では、制御部213は、送信部406として機能し、ステップS603で生成されたパケットを、通信インタフェース217を介して片側用送信で送信する。例えば、送信部406は通信インタフェース217を介してアドバタイズメントパケットを送信する。
【0074】
次に、図7を用いて、データ受信装置150の動作例を説明する。図7は、データ受信装置150の処理手順の一例を例示するフローチャートである。なお、以下で説明する処理手順は一例に過ぎず、各処理は可能な限り変更されてよい。また、以下で説明する処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が可能である。
【0075】
(起動)
まず、ユーザは、データ受信装置150を起動し、起動したデータ受信装置150に暗号鍵生成及びデータ復号制御プログラムを実行させる。データ受信装置150の制御部313は、以下の処理手順にしたがって、受信したパケットから抽出した第1共有情報と、予め記憶している第2共有情報とから暗号鍵を生成し、受信したパケットに含まれる暗号化データを暗号鍵で復号し、受信パケットに含まれる所望のデータを取得する。
【0076】
(ステップS701)
ステップS701では、制御部313は、受信部502として機能し、通信インタフェース317を介してアドバタイズメントパケットを受信する。
【0077】
(ステップS702)
ステップS702では、制御部313は、第1共有情報抽出部505として機能し、ステップS701で受信されたパケットから第1共有情報を抽出する。第1共有情報とは、ここでは、センサデータを測定した日時を含む情報である。
【0078】
(ステップS703)
ステップS703では、制御部313は、暗号鍵決定部503として機能し、受信装置と送信装置とで予め共有している第2共有情報(任意の同一の数値である初期値の日時情報)を記憶部314から取得する。そして、暗号鍵決定部503は、ステップS702で取得した第1共有情報と、第2共有情報とから、例えば、初期値の日時からセンサデータを測定した日時までの経過期間を計算して、この経過期間を暗号鍵として生成する。
受信したパケットがMACアドレスを含む場合には、暗号鍵決定部503は、このアドレスが記憶部314に記憶しているMACアドレスと一定しているかどうかを確認する。暗号鍵決定部503は、一致している場合にはそのまま処理を進め、一致していない場合にはこのパケットは宛先が異なるとして棄却する。
【0079】
(ステップS704)
ステップS704では、制御部313は、復号部504として機能し、ステップS703で生成された暗号鍵を使用して、受信部502で受信されたアドバタイズメントパケットを復号する。
【0080】
(ステップS705)
ステップS705では、制御部313は、復号部504として機能し、ステップS704で復号された所望のデータを取得する。所望のデータは、例えば、データ送信装置100で取得した生体情報(例えば、血圧値及び/または脈拍)である。
【0081】
<作用と効果>
以上のように、本実施形態では、データ送信装置100において上記のステップS601で第2共有情報が示す日時(初期値の日時)から第1共有情報が示す日時(センサデータを測定した日時)までの経過期間を計算し、この経過期間を含む暗号鍵を作成し、データ受信装置150においてステップS702及びステップS703で、第1共有情報を取得し、第2共有情報を記憶部314から選択して、経過期間を計算し暗号鍵を生成することができる。同一の経過期間をデータ送信装置100とデータ受信装置150で独自に計算するので、共通の暗号鍵を送信側と受信側で所有することができる。
【0082】
すなわち、本実施形態では、データ送信装置100で、暗号鍵生成部403が受信装置と送信装置とで予め任意の同一の数値である初期値(第2共有情報)を記憶部214から取得し、さらに、第1共有情報生成部407が、数値化できるイベントに関する数値であるイベント数値(第1共有情報)を生成し、暗号鍵生成部403がこの第2共有情報と第2共有情報とから演算した数値を含んだ暗号鍵を生成する。暗号化部404がこの暗号鍵を使用し、送信したい所望の情報(例えば、生体情報)を予め設定した暗号化方式で暗号化することができる。第1共有情報と第2共有情報とから演算した数値はデータ送信装置とデータ受信装置に特有なデータであるため、再現性が低く秘匿性に優れた暗号鍵になる。そして、パケット生成部405が暗号化データと、第1共有情報を含むパケットを生成し、送信部406がこのパケットを片方向送信する(アドバタイズメントパケットを送信する)。
【0083】
その後、データ受信装置150で、受信部502がアドバタイズメントパケットを受信し、第1共有情報抽出部505がパケットから第1共有情報を抽出し、暗号鍵決定部503がパケットに含まれる第1共有情報を取得し、第2共有情報を記憶部314から取得する。暗号鍵決定部503は、暗号鍵生成部403と同一の演算により、第1共有情報と第2共有情報とから数値を得てこの数値から演算した情報(例えば、経過期間)を含む暗号鍵を生成する。このようにして、データ送信装置100とデータ受信装置150とにおいて同一である共通の暗号鍵を有することが可能になる。そして、復号部504が、受信部502から受信した所望の暗号化データを、暗号鍵決定部503が生成した暗号鍵を使用して復号し、所望のデータを取得することができる。したがって、本実施形態によれば、片方向通信によって送信されたデータの漏洩を生じ難くすることができるようになる。
【0084】
[BLEのアドバタイズメント]
ここで、BLEのアドバタイズメントについて概略的に説明する。
BLEにおいて採用されるパッシブスキャン方式では、図8に例示するように、新規ノード(本実施形態のデータ送信装置100が対応)は自己の存在を周知するアドバタイズメントパケットを定期的に送信する。この新規ノードは、アドバタイズメントパケットを一度送信してから次に送信するまでの間に、低消費電力のスリープ状態に入ることで消費電力を節約できる。また、アドバタイズメントパケットの受信側も間欠的に動作するので、アドバタイズメントパケットの送受信に伴う消費電力は僅かである。
【0085】
図9にBLE無線通信パケットの基本構造を示す。BLE無線通信パケットは、1バイトのプリアンブルと、4バイトのアクセスアドレスと、2〜39バイト(可変)のプロトコルデータユニット(PDU:Protocol Data Unit)と、3バイトの巡回冗長チェックサム(CRC:Cyclic Redundancy Checksum)とを含む。BLE無線通信パケットの長さは、PDUの長さに依存し、10〜47バイトである。10バイトのBLE無線通信パケット(PDUは2バイト)は、Empty PDUパケットとも呼ばれ、マスタとスレイブとの間で定期的に交換される。
【0086】
プリアンブルフィールドは、BLE無線通信の同期のために用意されており、「01」または「10」の繰り返しが格納される。アクセスアドレスは、アドバタイジングチャネルでは固定数値、データチャネルでは乱数のアクセスアドレスが格納される。本実施形態では、アドバタイジングチャネル上で伝送されるBLE無線通信パケットであるアドバタイズメントパケットを対象とする。CRCフィールドは、受信誤りの検出に用いられる。CRCの計算範囲は、PDUフィールドのみである。
【0087】
次に、図10を用いて、アドバタイズメントパケットのPDUフィールドについて説明する。なお、データチャネル上で伝送されるBLE無線通信パケットであるデータ通信パケットのPDUフィールドは図10とは異なるデータ構造を有するが、本実施形態ではデータ通信パケットを対象としていないので説明を省略する。
【0088】
アドバタイズメントパケットのPDUフィールドは、2バイトのヘッダと、0〜37バイト(可変)のペイロードとを含む。ヘッダは、さらに、4ビットのPDU Typeフィールドと、2ビットの未使用フィールドと、1ビットのTxAddフィールドと、1ビットのRxAddフィールドと、6ビットのLengthフィールドと、2ビットの未使用フィールドとを含む。
【0089】
PDU Typeフィールドには、このPDUのタイプを示す値が格納される。「接続可能アドバタイジング」、「非接続アドバタイジング」などのいくつかの値が定義済みである。TxAddフィールドには、ペイロード中に送信アドレスがあるか否かを示すフラグが格納される。同様に、RxAddフィールドには、ペイロード中に受信アドレスがあるか否かを示すフラグが格納される。Lengthフィールドには、ペイロードのバイトサイズを示す値が格納される。
【0090】
ペイロードには、任意のデータを格納することができる。そこで、データ送信装置100は、予め定められたデータ構造を用いて、暗号鍵になるセンサデータの種類、センサデータが検出された日時、暗号化された生体情報をペイロードに格納する。このデータ構造は、例えば、ユーザを表す識別子、送信元装置であるデータ送信装置100を表す識別子、または宛先装置であるデータ受信装置150を表す識別子、日時データ、日時データに関連付けられる生体情報(例えば、収縮期血圧値、拡張期血圧値、脈拍数、活動量がある)を含む。
【0091】
次に、図11を用いて、ペイロードのデータ構造を具体的に説明する。
データ構造1100は、IDフィールド1101、センサデータ測定日時フィールド1102、及び暗号データフィールド1103を含む。
【0092】
IDフィールド1101は、ユーザを表す識別子が格納される。なお、ユーザを表す識別子の代わりに、または、これに加えて、データ送信装置100またはデータ受信装置150を表す識別子が格納されてもよい。
【0093】
センサデータ測定生成日時フィールド1102は、データ送信装置100でセンサデータが測定された日時情報が格納される。
【0094】
暗号データフィールド1103は、暗号鍵生成日時フィールド1102に含まれる日時情報に対応する暗号鍵で暗号化された送信する所望のデータが格納される。
【0095】
[変形例]
以上、本発明の実施の形態を詳細に説明してきたが、前述までの説明はあらゆる点において本発明の例示に過ぎない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。例えば、以下のような変更が可能である。また、本発明の実施にあたって、実施形態に応じた具体的構成が適宜採用されてもよい。なお、以下では、上記実施形態と同様の構成要素に関しては同様の符号を用い、上記実施形態と同様の点については、適宜説明を省略した。以下の変形例は適宜組み合わせ可能である。
【0096】
<1>
(システム例)
図12を用いて、ネットワークを含めたデータ伝送システムの一例を説明する。
データ送信装置100は、パケット生成部405が、データ送信装置100でセンサデータが測定されて日時を示す第1共有情報と、暗号鍵によって暗号化された暗号化データとをアドバタイズメントパケットに含めて送信し、データ受信装置150はこのパケットを受信し、第1共有情報を抽出し第1共有情報と第2共有情報に基づいて暗号鍵を生成し、この暗号鍵で暗号化データを復号する。そして、データ受信装置150は復号したデータ(例えば、生体情報)をネットワーク経由でサーバ1200へ送信する。
データ受信装置150は、例えば移動通信またはWLANを利用してサーバ1200へ送信する。なお、図12の例では、データ送信装置100として腕時計型のウェアラブル血圧計の外観が示されているが、データ送信装置100の外観はこれに限られず据え置き型の血圧計であってもよいし、他の生体情報または活動情報に関する量を測定するセンサ装置であり得る。
【0097】
<2>
(ハードウェア構成)
上記の実施形態では、データ送信装置100は、図2に示すように、出力装置211、入力装置212、制御部213、記憶部214、ドライブ215、外部インタフェース216、通信インタフェース217、及び電池218が電気的に接続されたコンピュータを含んでいる。しかしながら、この他にさらに種々の情報処理を行うための装置を備えていてもよい。例えば、データ送信装置100は、さらに、気圧センサ及び温湿度センサを備えていてもよい。
【0098】
加速度センサは、生体の動きを検出し、その動き情報を制御部213へ渡す。加速度センサは、例えば、3軸加速度センサであり、生体の加速度を線型独立な3軸(例えば、互いに直交した3軸)に関して検出する。そして、計時装置220は、3方向の加速度を表す加速度信号を制御部213へ出力する。
気圧センサは、気圧を検出し、気圧データを制御部213へ出力する。
温湿度センサは、データ送信装置100の周辺の環境温度及び環境湿度を計測し、温度及び湿度データを制御部213へ出力する。
【0099】
また、データ送信装置100は、GPS受信機を備えていてもよい。GPS受信機は、複数のGPS衛星から送信されるGPS信号をそれぞれ受信し、受信したGPS信号を制御部213へ出力する。制御部213は、上記各GPS信号を基に測距演算を行うことで、データ送信装置100の現在位置情報、つまりデータ送信装置100を装着している被測定者(ユーザ)の位置を算出する。
【0100】
なお、この場合、電池218は、例えば、出力装置211、制御部213、記憶部214、気圧センサ、温湿度センサ、通信インタフェース217、生体センサ219、計時装置220、及びGPS受信機へ電力を供給する。
以上の変形例のハードウェア構成は、データ受信装置150も備えてもよい。この場合、GPSによる位置情報、気圧データ、及び温度及び湿度データを、センサデータに含めて、これらの情報を含んだ暗号鍵を使用してもよい。
【0101】
<3>
(ソフトウェア構成)
本実施形態に係るデータ送信装置100は、活動量測定部、歩数計測部、睡眠状態計測部、及び、環境(温度及び湿度)計測部をさらに備えるコンピュータとして機能してもよい。記憶部214は、例えば、それぞれに対応するプログラム(活動量測定プログラム、歩数計測プログラム、睡眠状態計測プログラム、及び、環境(温度及び湿度)計測プログラム)を記憶し、必要なプログラムを実行する際に、所望のプログラムをRAMに展開する。そして、制御部213は、RAMに展開されたプログラムをCPUにより解釈及び実行して、各構成要素を制御する。
【0102】
活動量測定部は、加速度センサより加速度を検出し、活動量を算出する。活動量測定部は、加速度信号を用いて、被測定者の歩行だけでなく、家事やデスクワークなどの様々な活動における活動量を算出することができる。活動量は、例えば、歩行距離、消費カロリー、または、脂肪燃焼量などの被測定者の活動に関連する指標である。
【0103】
歩数計測部は、加速度センサにより加速度、気圧センサにより気圧を検出し、歩数、早歩き歩数、階段上り歩数を算出する。加速度信号を用いて、被測定者の歩行を算出する。歩数計測部は、気圧データ及び加速度信号を用いて、被測定者の歩数、早歩き歩数、及び、階段上り歩数などを算出することができる。
【0104】
睡眠状態計測部は、加速度センサにより加速度を検出し、加速度信号によって寝返りの状態を検出することで、睡眠状態を推定することができる。
【0105】
環境(温度及び湿度)計測部は、温湿度センサにより計測された環境温度及び環境湿度を示す環境データを温湿度センサにおける計測時刻と紐づけて記憶部214に記憶させる。気温(気温の変化)は、例えば、人間の血圧変動を引き起こしうる要素の1つとして考えられる。このため、環境データは、被測定者の血圧変動の要因となりうる情報である。
【0106】
以上の変形例のソフトウェア構成は、データ受信装置150も備えてもよい。この場合、活動量、階段上り歩数、及び睡眠状態を含んだ情報を含めた暗号鍵を使用してもよい。
【0107】
<4>
データ送信装置100は、データ受信装置150と別体で構成されている。しかしながら、データ送信装置100及びデータ受信装置150の構成はこのような例に限定されなくてもよく、データ送信装置100及びデータ受信装置150の両方の機能を有するシステムを1台のコンピュータで実現してもよい。
【0108】
<5>
入力装置212に含まれる操作部が押される(オンされる)と、データ送信装置100は生体情報の測定が開始されてもよい。そして、測定が終了後、図6の動作が続いてもよい
【0109】
<6>
上述の実施形態では、血圧測定について記載したが、本実施形態に適用可能な血圧測定方式について説明する。一般的な手法としては、カフ構造体を使用してオシロメトリック方式によりユーザの血圧値を測定する手法がある。しかしながら、血圧値を測定するだけの場合にはこれに限らなくてもよい。例えば、圧脈波を心拍ごとに検出する圧脈波センサを備え、被測定部位(例えば、左手首)を通る橈骨動脈の圧脈波を検出して血圧値(収縮期血圧値と拡張期血圧値)を測定してもよい(トノメトリ方式)。圧脈波センサは、被測定部位(例えば、左手首)を通る橈骨動脈の脈波をインピーダンスの変化として検出して血圧値を測定してもよい(インピーダンス方式)。圧脈波センサは、被測定部位のうち対応する部分を通る動脈へ向けて光を照射する発光素子と、その光の反射光(または透過光)を受光する受光素子とを備えて、動脈の脈波を容積の変化として検出して血圧値を測定してもよい(光電方式)。また、圧脈波センサは、被測定部位に当接された圧電センサを備えて、被測定部位のうち対応する部分を通る動脈の圧力による歪みを電気抵抗の変化として検出して血圧値を測定してもよい(圧電方式)。さらに、圧脈波センサは、被測定部位のうち対応する部分を通る動脈へ向けて電波(送信波)を送る送信素子と、その電波の反射波を受信する受信素子とを備えて、動脈の脈波による動脈とセンサとの間の距離の変化を送信波と反射波との間の位相のずれとして検出して血圧値を測定してもよい(電波照射方式)。なお、血圧値を算出することができる物理量を観測することができれば、これらの以外の方式を適用してもよい。
【0110】
<7>
本発明の装置は、コンピュータとプログラムによっても実現でき、プログラムを記録媒体(または記憶媒体)に記録することも、ネットワークを通して提供することも可能である。
また、以上の各装置及びそれらの装置部分は、それぞれハードウェア構成、またはハードウェア資源とソフトウェアとの組み合せ構成のいずれでも実施可能となっている。組み合せ構成のソフトウェアとしては、予めネットワークまたはコンピュータ読み取り可能な記録媒体(または記憶媒体)からコンピュータにインストールされ、当該コンピュータのプロセッサに実行されることにより、各装置の機能を当該コンピュータに実現させるためのプログラムが用いられる。
【0111】
なお、この発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
【0112】
また、「及び/または」とは、「及び/または」でつながれて列記される事項のうちの任意の1つ以上の事項という意味である。具体例を挙げると、「x及び/またはy」とは、3要素からなる集合{(x),(y),(x,y)}のうちのいずれかの要素という意味である。もう1つの具体例を挙げると、「x、y、及び/またはz」とは、7要素からなる集合{(x),(y),(z),(x,y),(x,z),(y,z),(x,y,z)}のうちのいずれかの要素という意味である。
【0113】
<8>
また、上記の実施形態の一部または全部は、以下の付記のようにも記載されうるが、以下には限られない。
【0114】
(付記1)
ハードウェアプロセッサと、メモリとを備える生体の情報に関する量を測定するデータ送信装置であって、
前記ハードウェアプロセッサは、
生体の情報に関する量を測定し、
受信装置との間で共有できる第1共有情報及び第2共有情報から算出される情報を暗号鍵として生成し、
前記暗号鍵を使用して前記生体の情報を暗号化し暗号化データを生成し、
前記第1共有情報及び前記暗号化データを含む片方向送信用のパケットを生成し、
前記パケットを送信するように構成され、
前記メモリは、
前記第1共有情報及び前記暗号化データを記憶する記憶部と、を備えるデータ送信装置。
【0115】
(付記2)
ハードウェアプロセッサと、メモリとを備える生体の情報に関する量を測定するデータ受信装置であって、
前記ハードウェアプロセッサは、
暗号化されたデータである暗号化データと、送信装置との間で共有できる第1共有情報を含む片方向送信用のパケットを受信し、
前記第1共有情報に基づいて、送信装置との間で共有する第2共有情報から算出される情報を暗号鍵として決定し、
前記パケットに含まれる暗号化データを、前記暗号鍵を使用して復号し、前記送信装置で測定された生体の情報を含む復号データを生成するように構成され、
前記メモリは、
前記第1共有情報及び前記復号データを記憶する記憶部と、を備えるデータ受信装置。
【0116】
(付記3)
少なくとも1つのハードウェアプロセッサを用いて、生体の情報に関する量を測定し、
少なくとも1つのハードウェアプロセッサを用いて、受信装置との間で共有できる第1共有情報及び第2共有情報から算出される情報を暗号鍵として生成し、
少なくとも1つのハードウェアプロセッサを用いて、前記暗号鍵を使用して前記生体の情報を暗号化し暗号化データを生成し、
少なくとも1つのハードウェアプロセッサを用いて、前記第1共有情報及び前記暗号化データを含む片方向送信用のパケットを生成し、
少なくとも1つのハードウェアプロセッサを用いて、前記パケットを送信することを備えるデータ送信方法。
【0117】
(付記4)
少なくとも1つのハードウェアプロセッサを用いて、暗号化されたデータである暗号化データと、送信装置との間で共有できる第1共有情報を含む片方向送信用のパケットを受信し、
少なくとも1つのハードウェアプロセッサを用いて、前記第1共有情報に基づいて、送信装置との間で共有する第2共有情報から算出される情報を暗号鍵として決定し、
少なくとも1つのハードウェアプロセッサを用いて、前記パケットに含まれる暗号化データを、前記暗号鍵を使用して復号し、前記送信装置で測定された生体の情報を含む復号データを生成することを備えるデータ受信方法。
【符号の説明】
【0118】
100…データ送信装置、
101…センサ、
102…センサデータ記憶部、
103…計時部、
104…暗号鍵生成部、
105…暗号化部、
106…パケット生成部、
107…送信部、
108…第2共有情報記憶部、
109…第1共有情報生成部、
150…データ受信装置、
151…計時部、
152…鍵情報記憶部、
153…受信部、
154…暗号鍵決定部、
155…復号部、
156…第1共有情報抽出部
211…出力装置、
212…入力装置、
213…制御部、
214…記憶部、
215…ドライブ、
216…外部インタフェース、
217…通信インタフェース、
218…電池、
219…生体センサ、
220…計時装置、
311…出力装置、
312…入力装置、
313…制御部、
314…記憶部、
315…ドライブ、
316…外部インタフェース、
317…通信インタフェース、
318…電池、
319…計時装置、
320…動きセンサ、
401…生体情報測定部、
402…記憶制御部、
403…暗号鍵生成部、
404…暗号化部、
405…パケット生成部、
406…送信部、
407…第1共有情報生成部、
501…記憶制御部、
502…受信部、
503…暗号鍵決定部、
504…復号部、
505…第1共有情報抽出部、
1100…データ構造、
1101…IDフィールド、
1102…センサデータ測定日時フィールド、
1103…暗号データフィールド、
1200…サーバ。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12