(57)【要約】      （修正有）【課題】片方向通信によって送信されたデータの漏洩を生じ難くするデータ送信装置、データ受信装置、方法及びプログラムを提供する。【解決手段】データ送信装置１００は、生体から情報を取得しセンサデータを出力する１以上のセンサと、センサデータを含む暗号鍵により、所望の情報を暗号化し暗号化データを生成する暗号化制御部１０４、１０５と、センサデータの属性情報を生成する属性情報生成制御部１０８と、属性情報及び暗号化データを含む片方向送信用のパケットを生成するパケット生成制御部１０６と、パケットを送信する送信部１０７と、を備える。【選択図】図１
2019033449.tif 000002
【特許請求の範囲】
【請求項１】
生体から情報を取得しセンサデータを出力する１以上のセンサと、
前記センサデータを含む暗号鍵により、所望の情報を暗号化し暗号化データを生成する暗号化制御部と、
前記センサデータの属性情報を生成する属性情報生成制御部と、
前記属性情報及び前記暗号化データを含む片方向送信用のパケットを生成するパケット生成制御部と、
前記パケットを送信する送信部と、
を備える、
データ送信装置。
【請求項２】
同一の生体に基づいて受信装置で取得されるセンサデータと同一のセンサデータを含む情報を前記暗号鍵として生成する暗号鍵生成制御部、
をさらに備え、
請求項１に記載のデータ送信装置。
【請求項３】
前記属性情報生成制御部は、前記属性情報としてセンサデータがセンサで取得された日時情報と、前記センサデータの種類情報とを生成する、
請求項２に記載のデータ送信装置。
【請求項４】
前記センサデータは、血圧値、脈拍、歩数、及び３軸加速度の少なくとも１つを含む、
請求項１乃至３のいずれか１項に記載のデータ送信装置。
【請求項５】
前記所望の情報は、血圧値、及び脈拍の少なくとも１つを含む、
請求項１乃至４のいずれか１項に記載のデータ送信装置。
【請求項６】
暗号化されたデータである暗号化データと、送信装置で使用された暗号鍵に含まれるセンサデータの属性情報とを含む片方向送信用のパケットを受信する受信部と、
生体から情報を取得しセンサデータを出力する１以上のセンサと、
前記出力されたセンサデータから、前記暗号鍵に含まれるセンサデータを、前記パケットに含まれる属性情報に基づいて選択する選択制御部と、
前記パケットに含まれる暗号化データを、前記選択されたセンサデータを含む暗号鍵を使用して復号し復号データを生成する復号制御部と、
を備える、
データ受信装置。
【請求項７】
前記属性情報は、センサデータの種類情報と、暗号鍵に含まれるセンサデータがセンサで取得された日時情報とを含み、
前記選択制御部は、前記種類情報及び前記日時情報に基づいて、前記暗号鍵に含まれるセンサデータを選択し、
前記選択されたセンサデータと同一の情報が送信装置で取得されている、
請求項６に記載のデータ受信装置。
【請求項８】
前記種類情報は、対応するセンサで検出される情報を示す、
請求項７に記載のデータ受信装置。
【請求項９】
前記センサデータは、血圧値、脈拍、歩数、及び３軸加速度の少なくとも１つを含む、
請求項６乃至８のいずれか１項に記載のデータ受信装置。
【請求項１０】
前記復号データは、血圧値、及び脈拍の少なくとも１つを含む、
請求項６乃至９のいずれか１項に記載のデータ受信装置。
【請求項１１】
生体から情報を１以上のセンサが取得してセンサデータを出力し、
前記センサデータを含む暗号鍵により、所望の情報を暗号化し暗号化データを生成し、
前記センサデータの属性情報を生成し、
前記属性情報及び前記暗号化データを含む片方向送信用のパケットを生成し、
前記パケットを送信すること、
を備える、
データ送信方法。
【請求項１２】
暗号化されたデータである暗号化データと、送信装置で使用された暗号鍵に含まれるセンサデータの属性情報とを含む片方向送信用のパケットを受信し、
生体から情報を１以上のセンサが取得してセンサデータを出力し、
前記出力されたセンサデータから、前記暗号鍵に含まれるセンサデータを、前記パケットに含まれる属性情報に基づいて選択し、
前記パケットに含まれる暗号化データを、前記選択されたセンサデータを含む暗号鍵を使用して復号し復号データを生成すること、
を備える、
データ受信方法。
【請求項１３】
コンピュータを、請求項１乃至５のいずれか１項に記載のデータ送信装置が備える各制御部として機能させるためのプログラム。
【請求項１４】
コンピュータを、請求項６乃至１０のいずれか１項に記載のデータ受信装置が備える各制御部として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、片方向通信によるデータ送信装置、データ受信装置、方法及びプログラムに関する。
【背景技術】
【０００２】
血圧データをユーザの携帯情報端末に転送する機能を備えた血圧計が市場投入されている。携帯情報端末としては、例えばスマートフォンやタブレット型端末、ノート型パーソナルコンピュータが用いられる。係る機能を利用すれば、ユーザは様々な状況下での自己の血圧の測定結果を携帯情報端末で一覧することができる。また、血圧データの転送には、近距離無線通信技術、特にＢｌｕｅｔｏｏｔｈ（登録商標）技術が典型的には使用される。一般に、Ｂｌｕｅｔｏｏｔｈの通信（コネクション）は、ＷＬＡＮ（Wireless Local Area Network）通信に比べると、小規模かつ省電力に実現可能である。Ｂｌｕｅｔｏｏｔｈの仕様のバージョン４．０は、ＢＬＥ（Bluetooth Low Energy）とも呼ばれ、従前の仕様に比べて消費電力をさらに少なくすることが可能である。
【０００３】
ＢＬＥでは、コネクションと呼ばれる双方向通信を行うことができる。しかしながら、コネクションは、ペアリングのためにユーザに課される操作が煩雑である、ペアリング後の通信手順が煩雑である、携帯情報端末側がＢＬＥをサポートしている必要がある、携帯情報端末ばかりでなく血圧計にも高性能なハードウェア（プロセッサ、メモリ）が必要となる、開発及び／または評価コストが高い、通信のオーバーヘッド量が大きく小容量のデータ送信に向かない、などの問題がある。
【０００４】
他方、ＢＬＥでは、アドバタイジングと呼ばれる片方向通信を行うこともできる。特許文献１には、アドバタイズメントパケットのデータフィールドの余白部分に任意のデータを含めて送信する技術が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第５８５２６２０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
アドバタイジングを利用して血圧データを送信すれば、ペアリングやその後の煩雑な通信手順が不要となるので、先の問題は解消または軽減される。しかしながら、例えば血圧計が片方向の送信機能しか実装していなければ、携帯情報端末から血圧計に制御データを送って制御したり、逆に、血圧計から携帯情報端末の状態（データの受信状況など）を参照したりすることができなくなる。
【０００７】
一般に、血圧計から無線送信されるデータは、その電波の伝播状況次第で、ユーザの携帯情報端末以外のデータ受信装置によっても受信可能である。このとき、仮に血圧データが暗号化されずに送信されていれば、ユーザの血圧データが他人に見られるおそれがある。このようなユーザの健康状態を表す情報の漏洩を予防して、血圧データの転送機能の安全性を高めることが求められる。さらに、前述のように、例えば血圧計が片方向の送信機能しか実装していなければ、血圧計は、携帯情報端末におけるデータの受信状況を参照することはできないので、携帯情報端末におけるデータ欠損が生じないように必要以上に大きな電力でパケットを送信することがあるかもしれない。このような場合には、ユーザの健康状態を表す情報の漏洩が一層生じやすくなる。
【０００８】
この発明は上記事情に着目してなされたもので、その目的とするところは、片方向通信によって送信されたデータの漏洩を生じ難くするデータ送信装置、データ受信装置、方法及びプログラムを提供することである。
【課題を解決するための手段】
【０００９】
本発明は、上述した課題を解決するために、以下の構成を採用する。
【００１０】
すなわち、本発明の一側面に係るデータ送信装置は、生体から情報を取得しセンサデータを出力する１以上のセンサと、前記センサデータを含む暗号鍵により、所望の情報を暗号化し暗号化データを生成する暗号化制御部と、前記センサデータの属性情報を生成する属性情報生成制御部と、前記属性情報及び前記暗号化データを含む片方向送信用のパケットを生成するパケット生成制御部と、前記パケットを送信する送信部と、を備える。
【００１１】
上記の構成では、１以上のセンサが生体から情報を取得し１以上のセンサデータを出力する。１以上のセンサデータのうちの１つのセンサデータを暗号鍵として、所望の情報（例えば、生体の情報、以下「生体情報」とも称す）を暗号化する。暗号化する方式は、共通鍵暗号方式を採用し、具体的な暗号方式は特に拘らない。センサデータは生体に特有なデータであるため、暗号鍵として秘匿性に優れたものになる。また、データ送信装置は、このセンサデータの属性情報を生成し、この暗号鍵を使用して暗号化データを生成し、片方向送信用のパケットに属性情報及び暗号化データを含ませてパケットを片方向に送信する。すなわち、パケットはデータ送信装置から送信されるのみで、この装置がパケットを受信することはない。以上のように、生体に特有なセンサデータを暗号鍵に用いて所望の情報を暗号化して属性情報と共に送信するので、秘匿性の優れる送信を実現することが可能になるデータ送信装置を提供することができる。
【００１２】
上記の一側面に係るデータ送信装置において、同一の生体に基づいて受信装置で取得されるセンサデータと同一のセンサデータを含む情報を前記暗号鍵として生成する暗号鍵生成制御部、をさらに備える。  
上記の構成では、受信装置でも同一の生体からセンサデータを得てこのセンサデータを暗号鍵として使用するので、受信装置と送信装置とで共通の暗号鍵を予め備えることなく、データ送信時に生成した暗号鍵を受信装置でも生成し使用することが可能になる。したがって、受信装置と送信装置との間で共通の暗号鍵を使用することができるため、セキュアなデータ送信が可能になるデータ送信装置を提供することができる。
【００１３】
上記の一側面に係るデータ送信装置において、前記属性情報生成制御部は、前記属性情報としてセンサデータがセンサで取得された日時情報と、前記センサデータの種類情報とを生成する。  
上記の構成では、データ送信装置が、前記属性情報としてセンサデータがセンサで取得された日時情報と、前記センサデータの種類情報とを生成するため、受信装置で属性情報を受け取るので受信した暗号鍵に含まれるセンサデータがいつ取得されたものかが判明する。このため、受信装置では同一の生体からセンサデータを得ることができ、送信装置でセンサデータを取得した時刻を受信装置が認識すれば受信装置で同一のセンサデータを得ることができる。したがって、受信装置で送信装置と同一な暗号鍵を生成することが可能になるデータ送信装置を提供することができる。なお、この時刻は、センサが生体からセンサデータを生成した時刻でもよい。また、時刻のみに限らず年月日を含む日時情報でもよい。
【００１４】
上記の一側面に係るデータ送信装置において、前記センサデータは、血圧値、脈拍、歩数、及び３軸加速度の少なくとも１つを含む。  
上記の構成では、データ送信装置で取得するセンサデータは、血圧値、脈拍、歩数、及び３軸加速度の少なくとも１つを含んでいる。データ送信装置は、これらのうちの１つ以上によって暗号鍵を生成する。例えば、歩数と３軸加速度の同一時刻での情報をセンサデータとして採用する。この場合は、歩数は１次元の成分、３軸加速度は３次元成分なので、時刻（または日時情報）と合わせて５次元成分のセンサデータとなる。３軸加速度のうち、Ｘ軸に関する加速度だけでもよいし、Ｘ軸とＹ軸との加速度だけでもよい。なお、このセンサデータは、受信装置が測定可能な生体に関するデータであれば何でもよい。ここでは、一例として、血圧値、脈拍、歩数、及び３軸加速度を挙げているが、受信装置と共有できる生体に関する情報であれば、何の情報でも構わない。このように、１以上のセンサデータを採用することによってデータ送信装置は暗号鍵を生成することが可能になる。
【００１５】
上記の一側面に係るデータ送信装置において、前記所望の情報は、血圧値、及び脈拍の少なくとも１つを含む。  
上記の構成では、暗号鍵を使用して暗号化する所望の情報は、データ送信装置のセンサが取得する生体情報であり、例えば、血圧値及び／または脈拍である。データ送信装置がセンサデータを暗号鍵として使用して、生体情報を送信することが可能になる。ここで生体情報は通常、取得日時を含んだ血圧値及び／または脈拍である時系列データである。したがって、所望の生体情報をセキュアに送信することが可能になるデータ送信装置を提供することができる。
【００１６】
上記の一側面に係るデータ受信装置において、暗号化されたデータである暗号化データと、送信装置で使用された暗号鍵に含まれるセンサデータの属性情報とを含む片方向送信用のパケットを受信する受信部と、生体から情報を取得しセンサデータを出力する１以上のセンサと、前記出力されたセンサデータから、前記暗号鍵に含まれるセンサデータを、前記パケットに含まれる属性情報に基づいて選択する選択制御部と、前記パケットに含まれる暗号化データを、前記選択されたセンサデータを含む暗号鍵を使用して復号し復号データを生成する復号制御部と、を備える。
上記の構成では、データ受信装置が、データ送信装置で暗号鍵を使用して暗号化された暗号化データとセンサデータの属性情報とを受信し、データ送信装置と同一の生体からセンサデータを受信装置で抽出して暗号鍵を生成する。データ送信装置とデータ受信装置との間で同一の生体から同一のセンサデータを含む暗号鍵を生成するため、データ受信装置がこの暗号鍵で送信データを復号することができる。したがって、片方向送信用のパケットを受信することによって、セキュアに生体情報を受信することができるデータ受信装置を提供することができる。
【００１７】
上記の一側面に係るデータ受信装置において、前記属性情報は、センサデータの種類情報と、暗号鍵に含まれるセンサデータがセンサで取得された日時情報とを含み、前記選択制御部は、前記種類情報及び前記日時情報に基づいて、前記暗号鍵に含まれるセンサデータを選択し、前記選択されたセンサデータと同一の情報が送信装置で取得されている。
上記の構成では、受信したパケットに含まれるセンサデータの属性情報を受け取ることにより、送信パケットに含まれる暗号鍵が、どの種類のセンサデータを含んでいるかと、センサデータがセンサで取得された日時情報とをデータ受信装置が認識することができる。データ受信装置がセンサデータの種類と、センサデータがセンサで取得された日時情報とを把握することにより、データ送信装置と同一の暗号鍵をデータ受信装置が確実に生成することができる。したがって、センサデータの種類を認識して、対応するセンサデータを含む暗号鍵を生成することが可能になるデータ受信装置を提供することができる。
【００１８】
上記の一側面に係るデータ受信装置において、前記種類情報は、対応するセンサで検出される情報を示す。  
上記の構成では、受信したパケットに含まれる属性情報は、センサデータの種類に関する種類情報が含まれるため、データ受信装置は、どの種類のセンサデータを受信しているかを認識することができる。センサデータの種類は、例えば、血圧値、脈拍、歩数、及び３軸加速度があり、パケットに含まれる属性情報はこれらの種類のうちの少なくとも１つ以上を含む。
【００１９】
上記の一側面に係るデータ受信装置において、前記センサデータは、血圧値、脈拍、歩数、及び３軸加速度の少なくとも１つを含む。  
上記の構成では、データ受信装置は、これらのセンサデータのうちの１つ以上によって暗号鍵を生成する。なお、ここでの作用効果は、データ送信装置での場合と同様である。すなわち、例えば、脈拍、歩数と３軸加速度の同一時刻（または同一の日時情報）での情報をセンサデータとして採用する。この場合は、脈拍及び歩数はそれぞれ１次元の成分、３軸加速度は３次元成分なので、時刻（または日時情報）と合わせて６次元成分のセンサデータとなる。３軸加速度のうち、Ｚ軸に関する加速度だけでもよいし、Ｘ軸とＺ軸との加速度だけでもよい。なお、このセンサデータは、データ送信装置でも測定可能な生体に関するデータであれば何でもよい。ここでは、一例として、血圧値、脈拍、歩数、及び３軸加速度を挙げているが、データ送信装置と共有できる生体に関する情報であれば、何の情報でも構わない。このように、１以上のセンサデータを採用することによってデータ受信装置はデータ送信装置と同一の暗号鍵を生成することが可能になる。
【００２０】
上記の一側面に係るデータ受信装置において、前記復号データは、血圧値、及び脈拍の少なくとも１つを含む。  
上記の構成では、復号データは、データ送信装置のセンサが取得する生体情報であり、例えば、血圧値及び／または脈拍である。データ受信装置がデータ送信装置と同一のセンサデータを暗号鍵として使用して、生体情報を復号することが可能になる。ここで生体情報は通常、取得日時を含んだ血圧値及び／または脈拍である時系列データである。したがって、所望の生体情報をセキュアに復号することが可能になるデータ受信装置を提供することができる。
【００２１】
上記の一側面に係る前記データ送信装置は血圧計または脈拍計であり、前記データ受信装置は携帯情報端末である。  
上記の構成では、血圧計または脈拍計で測定した生体情報を送信し、携帯情報端末がこの生体情報をセキュアに受信することが可能になる。
【００２２】
上記の一側面に係るデータ送信装置で生成されるパケットは近距離無線通信方式によって送信される。
上記の構成では、データ送信装置からデータ受信装置への送信は近距離無線通信方式（例えば、ＢＬＥ）にしたがうことによって、他の無線通信方式よりも低消費電力かつ安価な機器で送信を実現することが可能になる。
【発明の効果】
【００２３】
本発明によれば、片方向通信によって送信されたデータの漏洩を生じ難くすることができるデータ送信装置、データ受信装置、方法及びプログラムを提供することができる。
【図面の簡単な説明】
【００２４】
【図１】実施の形態に係るデータ送信装置及びデータ受信装置の適用場面の一例を模式的に例示する図。
【図２】実施の形態に係るデータ送信装置のハードウェア構成の一例を模式的に例示する図。
【図３】実施の形態に係るデータ受信装置のハードウェア構成の一例を模式的に例示する図。
【図４】実施の形態に係るデータ送信装置のソフトウェア構成の一例を模式的に例示する図。
【図５】実施の形態に係るデータ受信装置のソフトウェア構成の一例を模式的に例示する図。
【図６】実施の形態に係るデータ送信装置の処理手順の一例を例示する図。
【図７】実施の形態に係るデータ受信装置の処理手順の一例を例示する図。
【図８】ＢＬＥにおいて行われるアドバタイジングの説明図。
【図９】ＢＬＥにおいて送受信されるパケットのデータ構造を例示する図。
【図１０】アドバタイズメントパケットのＰＤＵフィールドのデータ構造を例示する図。
【図１１】実施の形態に係るデータ送信装置が送信するパケットのＰＤＵフィールドのペイロードに格納されるデータ構造の一例を示す図。
【図１２】実施の形態に係るデータ送信装置及びデータ受信装置を含むデータ伝送システムの一例を例示する図。
【発明を実施するための形態】
【００２５】
以下、本発明の一側面に係る実施の形態（以下、「本実施形態」とも表記する）を、図面に基づいて説明する。なお、以下の実施形態では、同一の番号を付した部分については同様の動作を行うものとして、重ねての説明を省略する。
【００２６】
［適用例］  
まず、図１を用いて、本発明が適用される場面の一例について説明する。図１は、本実施形態に係るデータ送信装置１００及びデータ受信装置１５０の適用場面の一例を模式的に例示する。本実施形態に係るデータ送信装置１００は、センサ１０１が生体から取得したセンサデータと計時部１０３からの時刻とを対応付けた時系列のセンサデータを、センサデータ記憶部１０２に記憶する。このセンサデータはセンサごとに対応する種類（例えば、血圧値、脈拍、歩数、加速度）のセンサデータがセンサデータ記憶部１０２に記憶される。そして、暗号鍵生成部１０４がセンサデータ記憶部１０２に記憶されたセンサデータを含む暗号鍵を生成し、暗号化部１０５がセンサデータ記憶部１０２から取得した送信したい所望のデータ（例えば、生体情報）をこの暗号鍵で暗号化する。属性情報生成部１０８が、暗号鍵生成部１０４で生成された暗号鍵に含まれるセンサデータの属性情報を生成する。この属性情報は、対応するセンサデータの種類と、このセンサデータがセンサに抽出された日時とを含む。次に、パケット生成部１０６が暗号データと属性情報とを含んだパケットを生成し、送信部１０７が生成された片方向送信用のパケット（例えば、ＢＬＥのアドバタイジングを使用）を送信する。なお、センサデータ記憶部１０２、計時部１０３、暗号鍵生成部１０４、及び暗号化部１０５が本発明の「暗号化制御部」に相当する。
【００２７】
本実施形態に係るデータ受信装置１５０は、データ送信装置１００と同様に、センサ１５１が生体から取得したセンサデータと計時部１５３によって時刻と対応付けた時系列のセンサデータをセンサデータ記憶部１５２に記憶する。ここで、センサ１５１はデータ送信装置１００でのセンサ１０１と同じ種類のセンサデータを出力する。また、受信部１５４が片方向送信用のパケットを受信し、属性情報抽出部１５７がパケットに含まれるセンサデータについての属性情報（例えば、センサデータの種類及び生成日時等）をパケットから抽出する。暗号鍵選択部１５５が抽出された属性情報に基づいて、データ送信装置１００で暗号鍵に使用されたセンサデータ対応するセンサデータをセンサデータ記憶部１５２から選択する。復号部１５６は、受信部１５４から暗号化データを受け取り、暗号鍵選択部１５５が選択したセンサデータを含む暗号鍵を復号鍵として使用して暗号化データを復号し、データ受信装置はデータ送信装置で取得した所望のデータを受け取ることができる。なお、データ送信装置１００とデータ受信装置１５０とはそれぞれ複数の同一種類のセンサを持っていることが望ましい。少なくとも、データ送信装置１００とデータ受信装置１５０との間で、１つの同一種類のセンサを有している。
【００２８】
データ送信装置からデータ受信装置への片方向の通信方式は、例えば、ＢＬＥのアドバタイジングである。この通信方式によって片方向送信用のパケットが生成される。また、本実施形態で送信される所望のデータは任意のデータでよいが、例えば、生体情報であり、具体的には例えば、血圧値及び／または脈拍である。センサデータは、センサ１０１及び１５１で検出できるデータであれば何でもよく、例えば、歩数及び／または３軸加速度である。さらに、センサで検出できれば血圧値及び／または脈拍等の生体情報でも構わない。また、暗号化する方式は、共通鍵暗号方式を採用し、具体的な暗号方式は特に拘らないが、例えば、ＤＥＳ、またはＡＥＳを使用する。また、例えば、データ送信装置は血圧計または脈拍計であり、データ受信装置はスマートフォン、携帯電話機、またはモバイルパソコンなどの携帯情報端末である。
【００２９】
以上の通り、本実施形態では、データ送信装置１００は、所定のセンサデータを暗号鍵として所望の生体情報を暗号化し、暗号化データとセンサデータの属性情報とを含む片方向送信用のパケットを生成し送信し、データ受信装置１５０は、受信したセンサデータの属性情報に基づいて、データ送信装置１００で検出した生体と同一の生体から、センサ１５１により測定されたセンサデータのうち、センサ１０１と同一のセンサデータを抽出し、このセンサデータによって暗号化データを復号する。そのため、データ受信装置１５０では、データ送信装置１００と同一のセンサデータをセンサ１５１により得ることができ、このセンサデータを含む暗号鍵を生成することができる。つまり、データ送信装置１００とデータ受信装置１５０との双方で、同一の生体から双方でしか認識できないセンサデータをそれぞれが得ることにより、センサデータを共通の暗号鍵に設定することができる。したがって、本実施形態によれば、センサデータという再現性が低いデータを使用して、送信側と受信側でそれぞれ暗号鍵を生成することにより、片方向送信用のパケットを安全に送信して情報を伝達することができる。なお、原理的には同一のセンサデータの種類（例えば、血圧値）に関して、属性情報に基づいて（例えば、同一時間）、同一の生体から取得されたセンサデータは、センサ１０１とセンサ１５１とで同一のセンサデータを取得する。しかし、現実にはセンサ自体の精度誤差、製品ごとの精度の違い等によって、厳密にセンサデータが示す測定量が一致する可能性は低い。したがって、ここでは、測定された物理量が精度に関してある範囲内に、それぞれのセンサデータが示す物理量が含まれる場合には、これらのセンサデータは同一であるとする。なお、技術の進歩によるセンサの精度の向上、製品ごとの精度のばらつきの低減等によって、精度に関するこの範囲は狭くなると想定される。
【００３０】
［構成例］  
（ハードウェア構成）  
＜データ送信装置＞  
次に、図２を用いて、本実施形態に係るデータ送信装置１００のハードウェア構成の一例について説明する。  
図２に示される通り、本実施形態に係るデータ送信装置１００は、出力装置２１１、入力装置２１２、制御部２１３、記憶部２１４、ドライブ２１５、外部インタフェース２１６、通信インタフェース２１７、及び電池２１８が電気的に接続されたコンピュータを含む。さらにデータ送信装置１００は、生体センサ２１９、動きセンサ２２０、及び計時装置２２１を備える。本実施形態に係るデータ送信装置１００は、本発明の「データ送信装置」に相当する。なお、図２では、通信インタフェース及び外部インタフェースをそれぞれ、「通信Ｉ／Ｆ」及び「外部Ｉ／Ｆ」と記載している。
【００３１】
制御部２１３は、ＣＰＵ（Central Processing Unit）、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）等を含み、情報処理に応じて各構成要素の制御を行う。記憶部２１４は、例えば、ハードディスクドライブ、ソリッドステートドライブ等の補助記憶装置であり、制御部２１３で実行される暗号鍵生成及びパケット送信制御プログラム、生体センサ２１９及び／または動きセンサ２２０が検出したセンサデータ、送信予定の所望のデータ、及び計時装置２２１が計時した日時データ等を記憶する。
【００３２】
暗号鍵生成及びパケット送信制御プログラムは、センサデータから暗号鍵を生成し、生成された暗号鍵を使用して所望のデータを暗号化し、暗号化されたデータとセンサデータの属性情報とを片方向送信用のパケットで送信する処理を実行させる（図６）ためのプログラムである。また、所望のデータは、例えば、生体情報である。生体情報は例えば、血圧値の時系列データである。
【００３３】
通信インタフェース２１７は、例えば、近距離無線通信（例えば、ブルートゥース（登録商標））モジュール、無線ＬＡＮモジュール等であり、ネットワークを介した無線通信を行うためのインタフェースである。通信インタフェース２１７は、データ送信装置１００をデータ受信装置１５０に無線接続するためのインタフェースである。通信インタフェース２１７は、制御部２１３によって制御される。通信インタフェース２１７は、制御部２１３が生成した暗号化データを含んだパケットを受け取り、データ受信装置１５０へ送信するために使用される。なお、通信インタフェース２１７は、情報をデータ受信装置１５０から受信することはできず、片方向送信用のパケットを送信するのみである。
【００３４】
入力装置２１２は、例えば、マウス、キーボード等の入力を行うための装置である。出力装置２１１は、例えば、ディスプレイ、スピーカ等の出力を行うための装置である。外部インタフェース２１６は、ＵＳＢポート等であり、例えば、生体センサ２１９、動きセンサ２２０、及び／または計時装置２２１等の外部装置と接続するためのインタフェースである。図２等では生体センサ２１９、動きセンサ２２０、及び計時装置２２１が外部インタフェース２１６に接続しているように図示されていないが、これは後に図４等で制御部２１３の内部のブロックとの接続を明確にするために便宜的に制御部２１３に直接接続しているように記載しているためである。
【００３５】
記憶部２１４は、コンピュータその他の装置、機械等が記録されたプログラム等の情報を読み取り可能なように、当該プログラム等の情報を、電気的、磁気的、光学的、機械的、または化学的作用によって蓄積する媒体である。データ送信装置１００は、この記憶部２１４から、暗号鍵生成及びパケット送信制御プログラム、生体センサ２１９及び／または動きセンサ２２０が検出したセンサデータ、送信予定の所望のデータ、センサデータの属性情報、及び計時装置２２１が計時した日時データを取得してもよい。
【００３６】
ドライブ２１５は、例えば、ＣＤ（Compact Disk）ドライブ、ＤＶＤ（Digital Versatile Disk）ドライブ等であり、記憶媒体に記憶されたプログラムを読み込むための装置である。ドライブ２１５の種類は、記憶媒体の種類に応じて適宜選択されてよい。上記の暗号鍵生成及びパケット送信制御プログラム、生体センサ２１９及び／または動きセンサ２２０が検出したセンサデータ、送信予定の所望のデータ、及び計時装置２２１が計時した日時データは、この記憶媒体に記憶されていてもよい。ここでは、記憶媒体の一例として、ＣＤ、ＤＶＤ等のディスク型の記憶媒体を例示している。しかしながら、記憶媒体の種類は、ディスク型に限定される訳ではなく、ディスク型以外であってもよい。ディスク型以外の記憶媒体として、例えば、フラッシュメモリ等の半導体メモリを挙げることができる。
【００３７】
電池２１８は、例えば、充電可能な２次電池である。電池２１８は、データ送信装置１００本体に搭載されている各要素へ電力を供給する。電池２１８は、例えば、出力装置２１１、入力装置２１２、制御部２１３、記憶部２１４、ドライブ２１５、外部インタフェース２１６、通信インタフェース２１７、生体センサ２１９、動きセンサ２２０、及び計時装置２２１へ電力を供給する。
【００３８】
生体センサ２１９は、例えば、血圧測定装置である。この場合、生体センサ２１９は、生体であるユーザの手首に装着された押圧カフの圧力を検出して生体の血圧値を検出する。生体センサ２１９は、血圧データ（例えば、血圧値の時系列データ）を制御部２１３へ出力する。また、生体センサ２１９は脈拍測定装置でもよいし、血圧と共に脈拍を測定してもよい。
【００３９】
動きセンサ２２０は、生体の動きを検出し、その動き情報を制御部２１３へ渡す。動きセンサ２２０は、例えば、３軸加速度センサであり、生体の加速度を線型独立な３軸（例えば、互いに直交した３軸）に関して検出する。そして、動きセンサ２２０は、３方向の加速度を表す加速度信号を制御部２１３へ出力する。  
【００４０】
計時装置２２１は、時間を計測する装置であり、日時を計測できる。例えば、計時装置２２１はカレンダーを含む時計であり、現在の日時の情報を制御部２１３へ渡す。
【００４１】
なお、データ送信装置１００の具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。例えば、制御部２１３は、複数のプロセッサを含んでもよい。データ送信装置１００は、複数台の情報処理装置で構成されてもよい。また、データ送信装置１００は、提供されるサービス専用に設計された情報処理装置の他、汎用のデスクトップＰＣ（Personal Computer）、タブレットＰＣ等が用いられてもよい。
【００４２】
＜データ受信装置＞  
次に、図３を用いて、本実施形態に係るデータ受信装置１５０のハードウェア構成の一例について説明する。データ受信装置１５０のハードウェア構成はデータ送信装置１００とほぼ同様である。  
図３に示される通り、本実施形態に係るデータ受信装置１５０は、出力装置３１１、入力装置３１２、制御部３１３、記憶部３１４、ドライブ３１５、外部インタフェース３１６、通信インタフェース３１７、及び電池３１８が電気的に接続されたコンピュータを含む。さらにデータ受信装置１５０は、生体センサ３１９、動きセンサ３２０、及び計時装置３２１を備える。本実施形態に係るデータ受信装置１５０は、本発明の「データ受信装置」に相当する。なお、図３では、通信インタフェース及び外部インタフェースをそれぞれ、「通信Ｉ／Ｆ」及び「外部Ｉ／Ｆ」と記載している。
【００４３】
制御部３１３は、ＣＰＵ（Central Processing Unit）、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）等を含み、情報処理に応じて各構成要素の制御を行う。記憶部３１４は、例えば、ハードディスクドライブ、ソリッドステートドライブ等の補助記憶装置であり、制御部３１３で実行される暗号鍵生成及びデータ復号制御プログラム、生体センサ３１９及び／または動きセンサ３２０が検出したセンサデータ、受信して復号した所望のデータ、及び計時装置３２１が計時した日時データ等を記憶する。
【００４４】
暗号鍵生成及びデータ復号制御プログラムは、生体センサ３１９及び／または動きセンサ３２０の検出結果であるセンサデータから暗号鍵を生成し、受信したセンサデータの属性情報に基づいて、生成された暗号鍵から対応するセンサデータを含む暗号鍵を選択し使用して片方向送信用の受信したパケットに含まれる暗号化データを復号する処理を実行させる（図７）ためのプログラムである。また、所望のデータは、例えば、生体情報である。生体情報は例えば、血圧値の時系列データである。
【００４５】
通信インタフェース３１７は、通信インタフェース２１７とほぼ同様である。通信インタフェース３１７は、データ送信装置１００からデータを受信するためのインタフェースである。通信インタフェース３１７は、データ送信装置１００からパケットを受け取り、制御部３１３へ渡す。
【００４６】
入力装置３１２、出力装置３１１、及び外部インタフェース３１６はそれぞれ、入力装置２１２、出力装置２１１、及び外部インタフェース２１６と同様である。
【００４７】
記憶部３１４は、コンピュータその他の装置、機械等が記録されたプログラム等の情報を読み取り可能なように、当該プログラム等の情報を、電気的、磁気的、光学的、機械的、または化学的作用によって蓄積する媒体である。データ受信装置１５０は、この記憶部３１４から、暗号鍵生成及びデータ復号制御プログラム、生体センサ３１９及び／または動きセンサ３２０が検出したセンサデータ、受信したパケットに含まれるセンサデータの属性情報、受信して復号した所望のデータ、及び計時装置３２１が計時した日時データを取得してもよい。
【００４８】
ドライブ３１５は、例えば、ＣＤ（Compact Disk）ドライブ、ＤＶＤ（Digital Versatile Disk）ドライブ等であり、記憶媒体に記憶されたプログラムを読み込むための装置である。ドライブ３１５の種類は、記憶媒体の種類に応じて適宜選択されてよい。上記の暗号鍵生成及びデータ復号制御プログラム、生体センサ３１９及び／または動きセンサ３２０が検出したセンサデータ、受信して復号した所望のデータ、及び計時装置３２１が計時した日時データは、この記憶媒体に記憶されていてもよい。ここでは、記憶媒体の一例として、ＣＤ、ＤＶＤ等のディスク型の記憶媒体を例示している。しかしながら、記憶媒体の種類は、ディスク型に限定される訳ではなく、ディスク型以外であってもよい。ディスク型以外の記憶媒体として、例えば、フラッシュメモリ等の半導体メモリを挙げることができる。
【００４９】
電池３１８は、電池２１８と同様である。電池３１８は、データ受信装置１５０本体に搭載されている各要素へ電力を供給する。
【００５０】
生体センサ３１９及び動きセンサ３２０はそれぞれ、生体センサ２１９及び動きセンサ２２０と同様であることが望ましいが、少なくとも１つのセンサが同じ種類のセンサデータを取得することができればよい。但し、生体センサ３１９及び動きセンサ３２０は、暗号鍵を生成するためのセンサデータを得るためのものである。
【００５１】
計時装置３２１は、計時装置２２１と同様である。
【００５２】
なお、データ受信装置１５０の具体的なハードウェア構成に関して、実施形態に応じて、適宜、構成要素の省略、置換及び追加が可能である。例えば、制御部３１３は、複数のプロセッサを含んでもよい。データ受信装置１５０は、複数台の情報処理装置で構成されてもよい。また、データ受信装置１５０は、提供されるサービス専用に設計された情報処理装置の他、汎用のデスクトップＰＣ（Personal Computer）、タブレットＰＣ等が用いられてもよい。
【００５３】
（ソフトウェア構成）  
＜データ送信装置＞  
次に、図４を用いて、本実施形態に係るデータ送信装置１００のソフトウェア構成の一例を説明する。  
データ送信装置１００の制御部２１３は、必要なプログラムを実行する際に、記憶部２１４に記憶された、暗号鍵生成及びパケット送信制御プログラムをＲＡＭに展開する。そして、制御部２１３は、ＲＡＭに展開された暗号鍵生成及びパケット送信制御プログラムをＣＰＵにより解釈及び実行して、各構成要素を制御する。これによって、図４に示される通り、本実施形態に係るデータ送信装置１００は、生体情報測定部４０１、記憶制御部４０２、動き情報測定部４０３、暗号鍵生成部４０４、暗号化部４０５、パケット生成部４０６、送信部４０７、及び属性情報生成部４０８を備えるコンピュータとして機能する。
【００５４】
生体情報測定部４０１は、生体センサ２１９が生体情報を検出し出力するセンサデータと、計時装置２２１から取得した日時情報と共に記憶制御部４０２に渡す。この生体情報と日時情報とを合わせた生体情報の時系列データを記憶制御部４０２に渡してもよい。
動き情報測定部４０３は、動きセンサ２２０が動き情報を検出し出力するセンサデータと、計時装置２２１から取得した日時情報と共に記憶制御部４０２に渡す。この動き情報と日時情報とを合わせた動き情報の時系列データを記憶制御部４０２に渡してもよい。なお、動き情報は、例えば、生体の３軸加速度の情報であるが、そのうちの１軸または２軸の加速度の情報でもよい。
記憶制御部４０２は、生体情報測定部４０１から受け取った、センサデータと日時情報とを関連付けたデータを記憶部２１４に記憶させる。また、記憶制御部４０２は、動き情報測定部４０３から受け取った、センサデータと日時情報とを関連付けたデータを記憶部２１４に記憶させる。さらに、記憶制御部４０２は計時装置２２１から日時情報を取得し、日時情報を他の受け取った情報に対応付けて記憶部２１４に記憶させてもよい。
【００５５】
暗号鍵生成部４０４は、記憶部２１４が記憶しているデータから、センサデータの元の情報（例えば、上記の生体情報または動き情報）がセンサに検出された日時と共にセンサデータを抽出して、このセンサデータを暗号鍵として生成する。暗号鍵は、センサデータの他に予め設定された、データ受信装置１５０と共有しているデータを含んでもよい。例えば、予めデータ送信装置１００のＭＡＣ（media access control）アドレスを暗号鍵に含めてもよい。このＭＡＣアドレスはデータ受信装置１５０も予め既知に設定しておく。この場合、データ送信装置１００のＭＡＣアドレスは、記憶部２１４及び記憶部３１４に記憶しておく。
【００５６】
属性情報生成部４０８は、暗号鍵生成部４０４が抽出したセンサデータの属性情報を生成して、パケット生成部４０６に渡す。この属性情報は、センサデータの属性を示す情報であり、例えば、このセンサデータの種類（例えば、血圧値、脈拍、歩数、または加速度）と、センサデータの元の情報がセンサに検出された日時とを含む。
【００５７】
暗号化部４０５は、記憶部２１４に記憶されている送信すべき所望のデータを受け取り、暗号鍵生成部４０４から受け取る暗号鍵で、所望のデータを暗号化する。暗号化する方式は、共通鍵暗号方式を採用し、具体的な暗号方式は特に拘らない。具体的な暗号方式は、例えば、ＤＥＳ（Data Encryption Standard）、ＡＥＳ（Advanced Encryption Standard）がある。
【００５８】
パケット生成部４０６は、属性情報生成部４０８から暗号鍵に関する情報である、センサデータの属性情報を取得し、暗号鍵に関するこの属性情報と、暗号化部４０５で暗号化された所望のデータとを含むパケットを生成する。このパケットは片方向送信用のパケットであり、例えば、ＢＬＥのアドバタイズメントパケットである。また、暗号鍵に関する属性情報は、例えば、暗号鍵に含まれるセンサデータの元となる情報（生体情報及び／または動き情報）がセンサに取得された日時を含む。なお、暗号鍵に関する情報は、センサの位置情報を含んでもよい。この日時と位置の情報は、暗号鍵でデータを復号する際に使用される。なお、明細書及び特許請求の範囲では、「センサデータの元となる情報がセンサに取得された」ことを「センサデータがセンサで取得された」と省略して記載することがある。
【００５９】
送信部４０７は、パケット生成部４０６で生成されたパケットを、片方向送信用として所定の通信方式で通信インタフェース２１７を介して送信する。この通信方式は、例えば、ＢＬＥであり、送信部４０７はＢＬＥのアドバタイジングを利用してパケットを送信する。
【００６０】
＜データ受信装置＞  
次に、図５を用いて、本実施形態に係るデータ受信装置１５０のソフトウェア構成の一例を説明する。  
データ受信装置１５０の制御部３１３は、必要なプログラムを実行する際に、記憶部３１４に記憶された、暗号鍵生成及びデータ復号制御プログラムをＲＡＭに展開する。そして、制御部３１３は、ＲＡＭに展開された暗号鍵生成及びデータ復号制御プログラムをＣＰＵにより解釈及び実行して、各構成要素を制御する。これによって、図５に示される通り、本実施形態に係るデータ受信装置１５０は、生体情報測定部５０１、記憶制御部５０２、動き情報測定部５０３、受信部５０４、暗号鍵選択部５０５、復号部５０６、及び属性情報抽出部５０７を備えるコンピュータとして機能する。
【００６１】
生体情報測定部５０１は、生体センサ３１９からのセンサデータと、計時装置３２１から取得した日時情報と共に記憶制御部５０２に渡す。また、この生体情報と日時情報とを合わせた生体情報の時系列データを記憶制御部５０２に渡してもよい。
【００６２】
動き情報測定部５０３は、動きセンサ３２０からのセンサデータと、計時装置３２１から取得した日時情報と共に記憶制御部５０２に渡す。また、この動き情報と日時情報とを合わせた動き情報の時系列データを記憶制御部４０２に渡してもよい。なお、動き情報は、例えば、生体の３軸加速度の情報であるが、そのうちの１軸または２軸の加速度の情報でもよい。
【００６３】
記憶制御部５０２は、生体情報測定部５０１から受け取った、センサデータと日時情報とを関連付けたデータを記憶部３１４に記憶させる。また、記憶制御部５０２は、動き情報測定部５０３から受け取った、センサデータと日時情報とを関連付けたデータを記憶部３１４に記憶させる。さらに、記憶制御部５０２は計時装置２２１から日時情報を取得し、日時情報を他の受け取った情報に対応付けて記憶部３１４に記憶させてもよい。
【００６４】
受信部５０４は、データ送信装置１００からのパケットを、通信インタフェース３１７を介して受信する。このパケットには、暗号化データと、暗号鍵に関するセンサデータの属性情報とが少なくとも含まれている。
【００６５】
属性情報抽出部５０７は、受信部５０４が受信したパケットから、このパケットに含まれる属性情報を抽出し、暗号鍵選択部５０５に渡す。属性情報は、センサデータがセンサで検出された日時情報と、センサデータの種類に関する情報とが含まれる。このセンサデータは、パケットに含まれる暗号化データの暗号鍵に含まれるデータである。センサデータの種類は、例えば、血圧値、脈拍、歩数、及び３軸加速度があり、パケットに含まれる種類情報はこれらの種類のうちの少なくとも１つ以上を含む。
【００６６】
暗号鍵選択部５０５は、属性情報抽出部５０７からセンサデータの属性情報を取得し、この属性情報に基づいて暗号鍵に含まれるセンサデータを特定し、このセンサデータに対応するセンサデータを記憶部３１４から取得する。パケットに含まれるこの属性情報に基づいて、センサデータは一意に特定することができる。したがって、暗号鍵選択部５０５は、この種類と日時に対応するセンサデータを記憶部３１４から取得することができる。したがって、暗号鍵選択部５０５は、センサデータを含む暗号鍵を、記憶部３１４に記憶される複数のセンサデータから選択することになる。また、パケットが他にＭＡＣアドレスを含んでいる場合には、そのＭＡＣアドレスも記憶部３１４から選択する。ＭＡＣアドレスは受信したパケットに含まれるＭＡＣアドレスに一致しているかを確認する。一致している場合にはそのまま処理を進め、一致していない場合にはこのパケットは宛先が異なるとして棄却する。
【００６７】
復号部５０６は、受信部５０４から暗号化データを受け取り、暗号鍵選択部５０５からセンサデータを含む暗号鍵を受け取る。そして、復号部５０６は、この暗号鍵で暗号化データを復号し、所望のデータを受け取る。復号部５０６はこの所望のデータを記憶部３１４に記憶させる。
【００６８】
＜その他＞  
データ送信装置１００及びデータ受信装置１５０の各機能に関しては後述する動作例で詳細に説明する。なお、本実施形態では、データ送信装置１００及びデータ受信装置１５０の各機能がいずれも汎用のＣＰＵによって実現される例について説明している。しかしながら、以上の機能の一部または全部が、１または複数の専用のプロセッサにより実現されてもよい。また、データ送信装置１００の機能構成に関して、実施形態に応じて、適宜、機能の省略、置換及び追加が行われてもよい。
【００６９】
［動作例］
＜データ送信装置＞  
次に、図６を用いて、データ送信装置１００の動作例を説明する。図６は、データ送信装置１００の処理手順の一例を例示するフローチャートである。なお、以下で説明する処理手順は一例に過ぎず、各処理は可能な限り変更されてよい。また、以下で説明する処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が可能である。
【００７０】
（起動）  
まず、ユーザは、データ送信装置１００を起動し、起動したデータ送信装置１００に暗号鍵生成及びパケット送信制御プログラムを実行させる。データ送信装置１００の制御部２１３は、以下の処理手順にしたがって、センサデータを含む暗号鍵を生成し、送信予定の所望のデータを暗号鍵で暗号化し、暗号化データとセンサデータの属性情報とを含んだ片方向送信用のパケットを送信する。
【００７１】
（ステップＳ６０１）  
ステップＳ６０１では、制御部２１３は、暗号鍵生成部４０４及び属性情報生成部４０８として機能し、生体センサ２１９及び／または動きセンサ２２０で取得されたセンサデータのうち、どの種類のデータを使用して、暗号鍵を生成するかを決定し、決定にしたがって暗号鍵を生成する。センサデータの種類は、例えば、血圧値、脈拍、歩数、及び３軸加速度があり、属性情報に含まれる種類情報はこれらの種類のうちの少なくとも１つ以上を含む。さらに、暗号鍵生成部４０４は、使用するセンサデータがセンサに検出された日時も決定する。暗号鍵生成部４０４は、センサデータの種類を先に決定して、そのセンサデータのどの日時のものを使用するかを決定してもよいし、その逆の順序でもよい。また、以下の４つの手法に応じて、種類と日時の決定を変更してもよい。属性情報生成部４０８は、属性情報として、センサデータの種類情報と、センサデータがセンサに検出された日時情報とを生成し、これらをパケット生成部４０６に渡す。
【００７２】
暗号鍵生成部４０４がどの種類のセンサデータを使用するかは、様々な手法があるが主な手法は以下の４つである。  
１．鍵を生成する度にセンサデータの種類をランダムに決定する。この場合には例えば、暗号鍵生成部４０４が乱数生成器を備え、乱数生成器が生成する乱数に基づいてセンサデータの種類を決定してもよい。  
２．ユーザの指示を受け付け、その指示にしたがいセンサデータの種類を決定する。また、例えば、ユーザの再度の変更指示があるまで同一の種類のセンサデータで暗号鍵を生成する。  
３．使用する種類の順序を予め決めておき、ある周期で種類を順序にしたがって変更する。  
４．センサが確実に対象とする物理量を検出していると認められる種類に決定する。例えば、センサが出力した血圧値が、所定値よりも大きい場合に、センサは確実に血圧値を検出しているとして、センサデータの種類を血圧値に決定する。
【００７３】
（ステップＳ６０２）  
ステップＳ６０２では、制御部２１３は、暗号化部４０５として機能し、ステップＳ６０１で決定した暗号鍵を使用して、送信予定の所望のデータを暗号化して暗号化データを生成する。
【００７４】
（ステップＳ６０３）  
ステップＳ６０３では、制御部２１３は、パケット生成部４０６として機能し、ステップＳ６０２で生成された暗号化データと、暗号鍵生成部４０４で生成された暗号鍵に使用されたセンサデータの属性情報とを含めてパケットを生成する。この属性情報は、センサデータの種類と、使用したセンサデータがセンサで検出された日時情報とを含む。
【００７５】
（ステップＳ６０４）  
ステップＳ６０４では、制御部２１３は、送信部４０７として機能し、ステップＳ６０３で生成されたパケットを、通信インタフェース２１７を介して片側用送信で送信する。例えば、送信部４０７は通信インタフェース２１７を介してアドバタイズメントパケットを送信する。
【００７６】
次に、図７を用いて、データ受信装置１５０の動作例を説明する。図７は、データ受信装置１５０の処理手順の一例を例示するフローチャートである。なお、以下で説明する処理手順は一例に過ぎず、各処理は可能な限り変更されてよい。また、以下で説明する処理手順について、実施の形態に応じて、適宜、ステップの省略、置換、及び追加が可能である。
【００７７】
（起動）  
まず、ユーザは、データ受信装置１５０を起動し、起動したデータ受信装置１５０に暗号鍵生成及びデータ復号制御プログラムを実行させる。データ受信装置１５０の制御部３１３は、以下の処理手順にしたがって、受信したパケットに含まれるセンサデータの属性情報に基づいて暗号鍵を選択し、受信した所望の暗号化されたデータを暗号鍵で復号し、復号データを得る。
【００７８】
（ステップＳ７０１）  
ステップＳ７０１では、制御部３１３は、受信部５０４として機能し、通信インタフェース３１７を介してアドバタイズメントパケットを受信する。
【００７９】
（ステップＳ７０２）  
ステップＳ７０２では、制御部３１３は、属性情報抽出部５０７として機能し、ステップＳ７０１で受信されたパケットから暗号鍵に含まれるセンサデータの属性情報を取得し、その属性情報を暗号鍵選択部５０５に渡す。属性情報抽出部５０７は、受信したパケットから、暗号鍵に使用したセンサデータの種類と、このセンサデータがセンサに検出された日時を、センサデータの属性情報として抽出する。
【００８０】
（ステップＳ７０３）  
ステップＳ７０３では、制御部３１３は、暗号鍵選択部５０５として機能し、ステップＳ７０２で抽出された属性情報に含まれるセンサデータの種類と上記の日時に基づいて、この属性情報に合致するセンサデータを記憶部３１４から選択し、これを含む暗号鍵を生成する。受信したパケットがＭＡＣアドレスを含む場合には、このアドレスが記憶部３１４に記憶しているＭＡＣアドレスと一定しているかどうかを確認する。一致している場合にはそのまま処理を進め、一致していない場合にはこのパケットは宛先が異なるとして棄却する。
【００８１】
（ステップＳ７０４）  
ステップＳ７０４では、制御部３１３は、復号部５０６として機能し、ステップＳ７０３で生成された暗号鍵を使用して、受信部５０４で受信されたアドバタイズメントパケットを復号する。
【００８２】
（ステップＳ７０５）  
ステップＳ７０５では、制御部３１３は、復号部５０６として機能し、ステップＳ７０４で復号された所望のデータを取得する。所望のデータは、例えば、データ送信装置１００で取得した生体情報（例えば、血圧値及び／または脈拍）である。
【００８３】
＜作用と効果＞  
以上のように、本実施形態では、データ送信装置１００において上記のステップＳ６０１でセンサデータの属性情報である、種類と検出された日時とが決定されて、センサデータを含む暗号鍵を作成し、データ受信装置１５０においてステップＳ７０２及びステップＳ７０３で属性情報に対応するセンサデータを記憶部３１４から選択して暗号鍵を使用して受信側で暗号化データを復号することができる。同一のセンサデータをデータ送信装置１００とデータ受信装置１５０で独自に検出して記憶しているので、共通の暗号鍵を送信側と受信側で所有することができる。
【００８４】
すなわち、本実施形態では、データ送信装置１００で、暗号鍵生成部４０４が複数のセンサ（生体センサ２１９、動きセンサ２２０）からセンサデータを取得し、暗号化部４０５がこのセンサデータのある日時のものを暗号鍵として使用し、送信したい所望の情報（例えば、生体情報）を予め設定した暗号化方式で暗号化することができる。センサデータは生体に特有なデータであるため、再現性が低く秘匿性に優れた暗号鍵になる。そして、パケット生成部４０６が暗号化データと、センサデータの属性情報（例えば、種類及び検出された日時）を含むパケットを生成し、送信部４０７がこのパケットを片方向送信する（アドバタイズメントパケットを送信する）。その後、データ受信装置１５０で、受信部５０４がアドバタイズメントパケットを受信し、暗号鍵選択部５０５がパケットに含まれるセンサデータの属性情報を参照し、属性情報に対応するセンサデータを記憶部３１４から取得する。暗号鍵選択部５０５はこのセンサデータを含む暗号鍵を選択し生成する。このようにして、データ送信装置１００とデータ受信装置１５０とにおいて同一である共通の暗号鍵を有することが可能になる。そして、復号部５０６が、受信部５０４から受信した所望の暗号化データを、暗号鍵選択部５０５が生成した暗号鍵を使用して復号し、所望のデータを取得することができる。したがって、本実施形態によれば、片方向通信によって送信されたデータの漏洩を生じ難くすることができるようになる。
【００８５】
［ＢＬＥのアドバタイズメント］  
ここで、ＢＬＥのアドバタイズメントについて概略的に説明する。  
ＢＬＥにおいて採用されるパッシブスキャン方式では、図８に例示するように、新規ノード（本実施形態のデータ送信装置１００が対応）は自己の存在を周知するアドバタイズメントパケットを定期的に送信する。この新規ノードは、アドバタイズメントパケットを一度送信してから次に送信するまでの間に、低消費電力のスリープ状態に入ることで消費電力を節約できる。また、アドバタイズメントパケットの受信側も間欠的に動作するので、アドバタイズメントパケットの送受信に伴う消費電力は僅かである。
【００８６】
図９にＢＬＥ無線通信パケットの基本構造を示す。ＢＬＥ無線通信パケットは、１バイトのプリアンブルと、４バイトのアクセスアドレスと、２〜３９バイト（可変）のプロトコルデータユニット（ＰＤＵ：Protocol Data Unit）と、３バイトの巡回冗長チェックサム（ＣＲＣ：Cyclic Redundancy Checksum）とを含む。ＢＬＥ無線通信パケットの長さは、ＰＤＵの長さに依存し、１０〜４７バイトである。１０バイトのＢＬＥ無線通信パケット（ＰＤＵは２バイト）は、Ｅｍｐｔｙ  ＰＤＵパケットとも呼ばれ、マスタとスレイブとの間で定期的に交換される。
【００８７】
プリアンブルフィールドは、ＢＬＥ無線通信の同期のために用意されており、「０１」または「１０」の繰り返しが格納される。アクセスアドレスは、アドバタイジングチャネルでは固定数値、データチャネルでは乱数のアクセスアドレスが格納される。本実施形態では、アドバタイジングチャネル上で伝送されるＢＬＥ無線通信パケットであるアドバタイズメントパケットを対象とする。ＣＲＣフィールドは、受信誤りの検出に用いられる。ＣＲＣの計算範囲は、ＰＤＵフィールドのみである。
【００８８】
次に、図１０を用いて、アドバタイズメントパケットのＰＤＵフィールドについて説明する。なお、データチャネル上で伝送されるＢＬＥ無線通信パケットであるデータ通信パケットのＰＤＵフィールドは図１０とは異なるデータ構造を有するが、本実施形態ではデータ通信パケットを対象としていないので説明を省略する。
【００８９】
アドバタイズメントパケットのＰＤＵフィールドは、２バイトのヘッダと、０〜３７バイト（可変）のペイロードとを含む。ヘッダは、さらに、４ビットのＰＤＵ  Ｔｙｐｅフィールドと、２ビットの未使用フィールドと、１ビットのＴｘＡｄｄフィールドと、１ビットのＲｘＡｄｄフィールドと、６ビットのＬｅｎｇｔｈフィールドと、２ビットの未使用フィールドとを含む。
【００９０】
ＰＤＵ  Ｔｙｐｅフィールドには、このＰＤＵのタイプを示す値が格納される。「接続可能アドバタイジング」、「非接続アドバタイジング」などのいくつかの値が定義済みである。ＴｘＡｄｄフィールドには、ペイロード中に送信アドレスがあるか否かを示すフラグが格納される。同様に、ＲｘＡｄｄフィールドには、ペイロード中に受信アドレスがあるか否かを示すフラグが格納される。Ｌｅｎｇｔｈフィールドには、ペイロードのバイトサイズを示す値が格納される。
【００９１】
ペイロードには、任意のデータを格納することができる。そこで、データ送信装置１００は、予め定められたデータ構造を用いて、暗号鍵になるセンサデータの種類、センサデータが検出された日時、暗号化された生体情報をペイロードに格納する。このデータ構造は、例えば、ユーザを表す識別子、送信元装置であるデータ送信装置１００を表す識別子、または宛先装置であるデータ受信装置１５０を表す識別子、日時データ、日時データに関連付けられる生体情報（例えば、収縮期血圧値、拡張期血圧値、脈拍数、活動量がある）を含む。
【００９２】
次に、図１１を用いて、ペイロードのデータ構造を具体的に説明する。  
データ構造１１００は、ＩＤフィールド１１０１、種類フィールド１１０２、日時フィールド１１０３、及び暗号データフィールド１１０４を含む。  
【００９３】
ＩＤフィールド１１０１は、ユーザを表す識別子が格納される。なお、ユーザを表す識別子の代わりに、または、これに加えて、データ送信装置１００またはデータ受信装置１５０を表す識別子が格納されてもよい。  
【００９４】
種類フィールド１１０２は、センサデータの属性情報に含まれる種類情報が格納される。すなわち、暗号鍵に含まれるセンサデータの種類が１以上指定されるデータが格納される。センサデータの種類は、例えば、血圧値、脈拍、歩数、及び３軸加速度があり、他に活動量等があってもよい。  
【００９５】
日時フィールド１１０３は、センサデータの属性情報に含まれる日時情報が格納される。すなわち、暗号鍵に含まれるセンサデータがセンサに検出された日時データが格納される。  
【００９６】
暗号データフィールド１１０４は、種類フィールド１１０２及び日時フィールド１１０３に対応する暗号鍵で暗号化された送信する所望のデータが格納される。
【００９７】
［変形例］  
以上、本発明の実施の形態を詳細に説明してきたが、前述までの説明はあらゆる点において本発明の例示に過ぎない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。例えば、以下のような変更が可能である。また、本発明の実施にあたって、実施形態に応じた具体的構成が適宜採用されてもよい。なお、以下では、上記実施形態と同様の構成要素に関しては同様の符号を用い、上記実施形態と同様の点については、適宜説明を省略した。以下の変形例は適宜組み合わせ可能である。
【００９８】
＜１＞  
（システム例）  
図１２を用いて、ネットワークを含めたデータ伝送システムの一例を説明する。
データ送信装置１００は、パケット生成部４０６がセンサデータの属性情報（種類と検出された日時）と暗号化データとをアドバタイズメントパケットに含めて送信し、データ受信装置１５０はこのパケットを受信し暗号鍵を生成しこの暗号鍵で暗号化データを復号する。そして、データ受信装置１５０は復号したデータ（例えば、生体情報）をネットワーク経由でサーバ１２００へ送信する。
データ受信装置１５０は、例えば移動通信またはＷＬＡＮを利用してサーバ１２００へ送信する。なお、図１２の例では、データ送信装置１００として腕時計型のウェアラブル血圧計の外観が示されているが、データ送信装置１００の外観はこれに限られず据え置き型の血圧計であってもよいし、他の生体情報または活動情報に関する量を測定するセンサ装置であり得る。
【００９９】
＜２＞  
（ハードウェア構成）  
上記の実施形態では、データ送信装置１００は、図２に示すように、出力装置２１１、入力装置２１２、制御部２１３、記憶部２１４、ドライブ２１５、外部インタフェース２１６、通信インタフェース２１７、及び電池２１８が電気的に接続されたコンピュータを含んでいる。しかしながら、この他にさらに種々の情報処理を行うための装置を備えていてもよい。例えば、データ送信装置１００は、さらに、気圧センサ及び温湿度センサを備えていてもよい。
【０１００】
気圧センサは、気圧を検出し、気圧データを制御部２１３へ出力する。  
温湿度センサは、データ送信装置１００の周辺の環境温度及び環境湿度を計測し、温度及び湿度データを制御部２１３へ出力する。
【０１０１】
また、データ送信装置１００は、ＧＰＳ受信機を備えていてもよい。ＧＰＳ受信機は、複数のＧＰＳ衛星から送信されるＧＰＳ信号をそれぞれ受信し、受信したＧＰＳ信号を制御部２１３へ出力する。制御部２１３は、上記各ＧＰＳ信号を基に測距演算を行うことで、データ送信装置１００の現在位置情報、つまりデータ送信装置１００を装着している被測定者（ユーザ）の位置を算出する。
【０１０２】
なお、この場合、電池２１８は、例えば、出力装置２１１、制御部２１３、記憶部２１４、気圧センサ、温湿度センサ、通信インタフェース２１７、生体センサ２１９動きセンサ２２０、計時装置２２１、及びＧＰＳ受信機へ電力を供給する。
以上の変形例のハードウェア構成は、データ受信装置１５０も備えてもよい。この場合、ＧＰＳによる位置情報、気圧データ、及び温度及び湿度データを、センサデータに含めて、これらに基づいて生成した暗号鍵を使用してもよい。
【０１０３】
＜３＞  
（ソフトウェア構成）  
本実施形態に係るデータ送信装置１００は、活動量測定部、歩数計測部、睡眠状態計測部、及び、環境（温度及び湿度）計測部をさらに備えるコンピュータとして機能してもよい。記憶部２１４は、例えば、それぞれに対応するプログラム（活動量測定プログラム、歩数計測プログラム、睡眠状態計測プログラム、及び、環境（温度及び湿度）計測プログラム）を記憶し、必要なプログラムを実行する際に、所望のプログラムをＲＡＭに展開する。そして、制御部２１３は、ＲＡＭに展開されたプログラムをＣＰＵにより解釈及び実行して、各構成要素を制御する。  
【０１０４】
活動量測定部は、加速度センサより加速度を検出し、活動量を算出する。活動量測定部は、加速度信号を用いて、被測定者の歩行だけでなく、家事やデスクワークなどの様々な活動における活動量を算出することができる。活動量は、例えば、歩行距離、消費カロリー、または、脂肪燃焼量などの被測定者の活動に関連する指標である。
【０１０５】
歩数計測部は、加速度センサにより加速度、気圧センサにより気圧を検出し、歩数、早歩き歩数、階段上り歩数を算出する。加速度信号を用いて、被測定者の歩行を算出する。歩数計測部は、気圧データ及び加速度信号を用いて、被測定者の歩数、早歩き歩数、及び、階段上り歩数などを算出することができる。
【０１０６】
睡眠状態計測部は、加速度センサにより加速度を検出し、加速度信号によって寝返りの状態を検出することで、睡眠状態を推定することができる。
【０１０７】
環境（温度及び湿度）計測部は、温湿度センサにより計測された環境温度及び環境湿度を示す環境データを温湿度センサにおける計測時刻と紐づけて記憶部２１４に記憶させる。気温（気温の変化）は、例えば、人間の血圧変動を引き起こしうる要素の１つとして考えられる。このため、環境データは、被測定者の血圧変動の要因となりうる情報である。
【０１０８】
以上の変形例のソフトウェア構成は、データ受信装置１５０も備えてもよい。この場合、活動量、階段上り歩数、及び睡眠状態を、センサデータに含めて、これらに基づいて生成した暗号鍵を使用してもよい。
【０１０９】
＜４＞  
データ送信装置１００は、データ受信装置１５０と別体で構成されている。しかしながら、データ送信装置１００及びデータ受信装置１５０の構成はこのような例に限定されなくてもよく、データ送信装置１００及びデータ受信装置１５０の両方の機能を有するシステムを１台のコンピュータで実現してもよい。
【０１１０】
＜５＞  
入力装置２１２に含まれる操作部が押される（オンされる）と、データ送信装置１００は生体情報の測定が開始されてもよい。そして、測定が終了後、図６の動作が続いてもよい。
【０１１１】
＜６＞
上述の実施形態では、血圧測定について記載したが、本実施形態に適用可能な血圧測定方式について説明する。一般的な手法としては、カフ構造体を使用してオシロメトリック方式によりユーザの血圧値を測定する手法がある。しかしながら、血圧値を測定するだけの場合にはこれに限らなくてもよい。例えば、圧脈波を心拍ごとに検出する圧脈波センサを備え、被測定部位（例えば、左手首）を通る橈骨動脈の圧脈波を検出して血圧値（収縮期血圧値と拡張期血圧値）を測定してもよい（トノメトリ方式）。圧脈波センサは、被測定部位（例えば、左手首）を通る橈骨動脈の脈波をインピーダンスの変化として検出して血圧値を測定してもよい（インピーダンス方式）。圧脈波センサは、被測定部位のうち対応する部分を通る動脈へ向けて光を照射する発光素子と、その光の反射光（または透過光）を受光する受光素子とを備えて、動脈の脈波を容積の変化として検出して血圧値を測定してもよい（光電方式）。また、圧脈波センサは、被測定部位に当接された圧電センサを備えて、被測定部位のうち対応する部分を通る動脈の圧力による歪みを電気抵抗の変化として検出して血圧値を測定してもよい（圧電方式）。さらに、圧脈波センサは、被測定部位のうち対応する部分を通る動脈へ向けて電波（送信波）を送る送信素子と、その電波の反射波を受信する受信素子とを備えて、動脈の脈波による動脈とセンサとの間の距離の変化を送信波と反射波との間の位相のずれとして検出して血圧値を測定してもよい（電波照射方式）。なお、血圧値を算出することができる物理量を観測することができれば、これらの以外の方式を適用してもよい。
【０１１２】
＜７＞
本発明の装置は、コンピュータとプログラムによっても実現でき、プログラムを記録媒体（または記憶媒体）に記録することも、ネットワークを通して提供することも可能である。  
また、以上の各装置及びそれらの装置部分は、それぞれハードウェア構成、またはハードウェア資源とソフトウェアとの組み合せ構成のいずれでも実施可能となっている。組み合せ構成のソフトウェアとしては、予めネットワークまたはコンピュータ読み取り可能な記録媒体（または記憶媒体）からコンピュータにインストールされ、当該コンピュータのプロセッサに実行されることにより、各装置の機能を当該コンピュータに実現させるためのプログラムが用いられる。
【０１１３】
なお、この発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
【０１１４】
また、「及び／または」とは、「及び／または」でつながれて列記される事項のうちの任意の１つ以上の事項という意味である。具体例を挙げると、「ｘ及び／またはｙ」とは、３要素からなる集合｛（ｘ）,（ｙ）,（ｘ,ｙ）｝のうちのいずれかの要素という意味である。もう１つの具体例を挙げると、「ｘ、ｙ、及び／またはｚ」とは、７要素からなる集合｛（ｘ）,（ｙ）,（ｚ）,（ｘ,ｙ）,（ｘ,ｚ）,（ｙ,ｚ）,（ｘ,ｙ,ｚ）｝のうちのいずれかの要素という意味である。
【０１１５】
＜８＞
また、上記の実施形態の一部または全部は、以下の付記のようにも記載されうるが、以下には限られない。
【０１１６】
（付記１）  
ハードウェアプロセッサと、メモリとを備える生体の情報に関する量を測定するデータ送信装置であって、
前記ハードウェアプロセッサは、
生体から情報を１以上のセンサが取得してセンサデータを出力し、
前記センサデータを含む暗号鍵により、所望の情報を暗号化し暗号化データを生成し、
前記センサデータの属性情報を生成し、
前記属性情報及び前記暗号化データを含む片方向送信用のパケットを生成し、
前記パケットを送信するように構成され、
前記メモリは、
前記センサデータ、前記属性情報、及び前記暗号化データを記憶する記憶部と、を備えるデータ送信装置。
【０１１７】
（付記２）  
ハードウェアプロセッサと、メモリとを備える生体の情報に関する量を測定するデータ受信装置であって、
前記ハードウェアプロセッサは、
暗号化されたデータである暗号化データと、送信装置で使用された暗号鍵に含まれるセンサデータの属性情報とを含む片方向送信用のパケットを受信し、
生体から情報を１以上のセンサが取得してセンサデータを出力し、
前記出力されたセンサデータから、前記暗号鍵に含まれるセンサデータを、前記パケットに含まれる属性情報に基づいて選択し、
前記パケットに含まれる暗号化データを、前記選択されたセンサデータを含む暗号鍵を使用して復号し復号データを生成するように構成され、
前記メモリは、
前記センサデータ、前記属性情報、及び前記暗号化データを記憶する記憶部と、を備えるデータ受信装置。
【０１１８】
（付記３）  
少なくとも１つのハードウェアプロセッサを用いて、生体から情報を１以上のセンサが取得してセンサデータを出力し、
少なくとも１つのハードウェアプロセッサを用いて、前記センサデータを含む暗号鍵により、所望の情報を暗号化し暗号化データを生成し、
少なくとも１つのハードウェアプロセッサを用いて、前記センサデータの属性情報を生成し、
少なくとも１つのハードウェアプロセッサを用いて、前記属性情報及び前記暗号化データを含む片方向送信用のパケットを生成することを備えるデータ送信方法。
【０１１９】
（付記４）  
少なくとも１つのハードウェアプロセッサを用いて、暗号化されたデータである暗号化データと、送信装置で使用された暗号鍵に含まれるセンサデータの属性情報とを含む片方向送信用のパケットを受信し、
少なくとも１つのハードウェアプロセッサを用いて、生体から情報を１以上のセンサが取得してセンサデータを出力し、
少なくとも１つのハードウェアプロセッサを用いて、前記出力されたセンサデータから、前記暗号鍵に含まれるセンサデータを、前記パケットに含まれる属性情報に基づいて選択し、
少なくとも１つのハードウェアプロセッサを用いて、前記パケットに含まれる暗号化データを、前記選択されたセンサデータを含む暗号鍵を使用して復号し復号データを生成することを備えるデータ受信方法。
【符号の説明】
【０１２０】
１００…データ送信装置、
１０１…センサ、
１０２…センサデータ記憶部、
１０３…計時部、
１０４…暗号鍵生成部、
１０５…暗号化部、
１０６…パケット生成部、
１０７…送信部、
１０８…属性情報生成部、
１５０…データ受信装置、
１５０…外部装置、
１５１…センサ、
１５２…センサデータ記憶部、
１５３…計時部、
１５４…受信部、
１５５…暗号鍵選択部、
１５６…復号部、
１５７…属性情報抽出部、
２１１…出力装置、
２１２…入力装置、
２１３…制御部、
２１４…記憶部、
２１５…ドライブ、
２１６…外部インタフェース、
２１７…通信インタフェース、
２１８…電池、
２１９…生体センサ、
２２０…動きセンサ、
２２１…計時装置、
３１１…出力装置、
３１２…入力装置、
３１３…制御部、
３１４…記憶部、
３１５…ドライブ、
３１６…外部インタフェース、
３１７…通信インタフェース、
３１８…電池、
３１９…生体センサ、
３２０…動きセンサ、
３２１…計時装置、
４０１…生体情報測定部、
４０２…記憶制御部、
４０３…動き情報測定部、
４０４…暗号鍵生成部、
４０５…暗号化部、
４０６…パケット生成部、
４０７…送信部、
４０８…属性情報生成部、
５０１…生体情報測定部、
５０２…記憶制御部、
５０３…動き情報測定部、
５０４…受信部、
５０５…暗号鍵選択部、
５０６…復号部、
５０７…属性情報抽出部、
１１００…データ構造、
１１０１…ＩＤフィールド、
１１０２…種類フィールド、
１１０３…日時フィールド、
１１０４…暗号データフィールド、
１２００…サーバ。
【図１】
2019033449.tif 000003
【図２】
2019033449.tif 000004
【図３】
2019033449.tif 000005
【図４】
2019033449.tif 000006
【図５】
2019033449.tif 000007
【図６】
2019033449.tif 000008
【図７】
2019033449.tif 000009
【図８】
2019033449.tif 000010
【図９】
2019033449.tif 000011
【図１０】
2019033449.tif 000012
【図１１】
2019033449.tif 000013
【図１２】
2019033449.tif 000014