(57)【特許請求の範囲】
【請求項１】
第１の生体データをｋ回（ｋ≧２）以上測定することにより、ｋ個の第１の測定値を取得する第１の測定部と、
互いに異なるｋ個の分散署名鍵が揃った場合にのみ署名生成鍵を復元することが可能な前記ｋ個の分散署名鍵を用いて、前記ｋ個の第１の測定値に対して署名演算をそれぞれ施すことにより、ｋ個の分散署名を生成する分散署名生成部と、
前記ｋ個の分散署名を合成することにより、署名を復元する署名合成部と、
前記署名生成鍵に対応する署名検証鍵を用いて、前記署名合成部が復元した前記署名が、前記ｋ個の第１の測定値が等しいことを示す正しい署名か否かを検証する定常状態検証部と
を備える測定装置。
【請求項２】
前記署名生成鍵と前記署名検証鍵との積は所定の値であり、
前記署名演算は、前記分散署名鍵又は前記署名生成鍵を指数とするべき乗演算であり、
前記署名生成鍵は、前記ｋ個の分散署名鍵のそれぞれに所定の係数を乗じた値を加算することにより得られ、
前記分散署名生成部は、前記ｋ個の第１の測定値のそれぞれについて、当該第１の測定値を底とし、当該第１の測定値に対応する分散署名鍵を指数とするべき乗演算の結果を分散署名として算出することにより、前記ｋ個の分散署名を生成し、
前記署名合成部は、前記ｋ個の分散署名に前記所定の係数をそれぞれべき乗し、ｋ個のべき乗結果の積を、前記署名として算出し、
前記定常状態検証部は、前記署名を底とし前記署名検証鍵を指数とするべき乗を左辺とし、前記ｋ個の第１の測定値のうちの着目する第１の測定値を右辺とする所定の検証式が成立する場合に前記署名合成部が復元した前記署名が正しい署名であると判断する
請求項１記載の測定装置。
【請求項３】
さらに、
前記第１の測定部が取得した前記ｋ個の第１の測定値を量子化する量子化部を備え、
前記分散署名生成部は、前記ｋ個の分散署名鍵を用いて前記量子化部で量子化された後の前記ｋ個の第１の測定値に対して署名演算をそれぞれ施すことにより、前記ｋ個の分散署名を生成する
請求項１又は２記載の測定装置。
【請求項４】
さらに、
前記定常状態検証部において前記署名合成部が復元した前記署名が正しい署名であると判断された場合に、前記ｋ個の第１の測定値のうちの着目する第１の測定値を前記署名合成部において復元された前記署名とともに外部のサーバに送信する送信部を備える
請求項１〜３のいずれか１項に記載の測定装置。
【請求項５】
さらに、
前記第１の測定部における前記第１の生体データの測定と並行して、前記第１の生体データとは異なる第２の生体データを測定することにより第２の測定値を取得する第２の測定部を備え、
前記定常状態検証部は、さらに、前記署名合成部が復元した前記署名が正しい署名であると判断した場合に、前記第２の測定部が取得した前記第２の測定値を外部に出力することを許可する
請求項１〜３のいずれか１項に記載の測定装置。
【請求項６】
さらに、
前記第１の測定値の基準となる基準値を、参照値として格納している第１の参照値格納部を備え、
前記分散署名生成部は、前記ｋ個の分散署名鍵を用いて、前記参照値と（ｋ−１）個の第１の測定値とに対して署名演算をそれぞれ施すことにより、前記ｋ個の分散署名を生成する
請求項５記載の測定装置。
【請求項７】
さらに、
前記署名合成部で復元された前記署名を署名生成鍵として用いて、前記第２の測定値の署名を生成する第２の署名生成部と、
前記定常状態検証部が前記第２の測定値を外部に出力することを許可した場合に、前記第２の測定値を前記第２の測定値の署名とともに外部のサーバに送信する送信部とを備える
請求項５又は６記載の測定装置。
【請求項８】
さらに、
前記署名合成部で復元された前記署名を暗号鍵として用いて、前記第２の測定値を暗号化する第２の暗号化部と、
前記定常状態検証部が前記第２の測定値を外部に出力することを許可した場合に、暗号化された前記第２の測定値を外部のサーバに送信する送信部とを備える
請求項５又は６記載の測定装置。
【請求項９】
前記第１の生体データは脈拍データであり、
前記第２の測定値は心電図データである
請求項５〜８のいずれか１項に記載の測定装置。
【請求項１０】
前記第１の測定部は、前記第１の生体データを時間的に連続してｋ回測定することにより、前記ｋ個の第１の測定値を取得する
請求項１〜９のいずれか１項に記載の測定装置。
【請求項１１】
第１の生体データをｋ回（ｋ≧２）以上測定することにより、ｋ個の第１の測定値を取得し、
互いに異なるｋ個の分散署名鍵が揃った場合にのみ署名生成鍵を復元することが可能な前記ｋ個の分散署名鍵を用いて、前記ｋ個の第１の測定値に対して署名演算をそれぞれ施すことにより、ｋ個の分散署名を生成し、
前記ｋ個の分散署名を合成することにより、署名を復元し、
前記署名生成鍵に対応する署名検証鍵を用いて、復元した前記署名が、前記ｋ個の第１の測定値が等しいことを示す正しい署名か否かを検証する
測定装置の制御方法。
【請求項１２】
コンピュータに、
第１の生体データをｋ回（ｋ≧２）以上測定することにより、ｋ個の第１の測定値を取得させ、
互いに異なるｋ個の分散署名鍵が揃った場合にのみ署名生成鍵を復元することが可能な前記ｋ個の分散署名鍵を用いて、前記ｋ個の第１の測定値に対して署名演算をそれぞれ施すことにより、ｋ個の分散署名を生成させ、
前記ｋ個の分散署名を合成することにより、署名を復元させ、
前記署名生成鍵に対応する署名検証鍵を用いて、復元した前記署名が、前記ｋ個の第１の測定値が等しいことを示す正しい署名か否かを検証させるための
プログラム。
【請求項１３】
第１の生体データをｋ回（ｋ≧２）以上測定することにより、ｋ個の第１の測定値を取得する第１の測定部と、
互いに異なるｋ個の分散署名鍵が揃った場合にのみ署名生成鍵を復元することが可能な前記ｋ個の分散署名鍵を用いて、前記ｋ個の第１の測定値に対して署名演算をそれぞれ施すことにより、ｋ個の分散署名を生成する分散署名生成部と、
前記ｋ個の分散署名を合成することにより、署名を復元する署名合成部と、
前記署名生成鍵に対応する署名検証鍵を用いて、前記署名合成部が復元した前記署名が、前記ｋ個の第１の測定値が等しいことを示す正しい署名か否かを検証する定常状態検証部と
を備える集積回路。 
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば脈拍、血圧又は血糖値を含む生体データを測定する測定装置及び測定装置の制御方法に関する。
【背景技術】
【０００２】
近年、脈拍、血圧又は血糖値などの生体データを測定し、これらの測定結果を病院又は保険会社等に設置されたサーバに送信する測定装置が検討されている。この測定装置は、通信ネットワークを介してサーバと接続されている。測定装置は、被検者に常時装着可能で、任意の時間に自動で血圧等の健康に関する生体データを測定し、測定結果をサーバに随時送信する。
【０００３】
これにより、被検者に健康上の異常事態が発生した場合に、医療機関などの専門機関が迅速かつ適切に処置することが可能になる（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−２１１１７２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、上記従来の技術では、以下のような問題が生じている。
【０００６】
即ち、病院等の医師が測定結果により正確な診断を行うためには、生体データは、被検者が安静な状態で測定されたものであることが必要となる。例えば、医師等が患者の血圧を自ら直接測定する場合には、患者が安静な状態であるか否かを確認しながら測定することができる。しかし、上記従来技術のように、測定した生体データを単にサーバに送信するだけでは、病院の医師は生体データが安静な状態で測定されたものであるか否かを判断することができない。その結果、医師は測定結果に基づいた正確な診断を行うことができないという問題がある。
【０００７】
そこで、本発明では、上記課題に鑑みてなされたものであって、生体データが安静な状態で測定されたものであると判断できる測定装置及び測定装置の制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、本発明のある局面に係る測定装置は、第１の生体データをｋ回（ｋ≧２）以上測定することにより、ｋ個の第１の測定値を取得する第１の測定部と、互いに異なるｋ個の分散署名鍵が揃った場合にのみ署名生成鍵を復元することが可能な前記ｋ個の分散署名鍵を用いて、前記ｋ個の第１の測定値に対して署名演算をそれぞれ施すことにより、ｋ個の分散署名を生成する分散署名生成部と、前記ｋ個の分散署名を合成することにより、署名を復元する署名合成部と、前記署名生成鍵に対応する署名検証鍵を用いて、前記署名合成部が復元した前記署名が、前記ｋ個の第１の測定値が等しいことを示す正しい署名か否かを検証する定常状態検証部とを備える。
【０００９】
この構成によると、本来暗号化技術に用いられる鍵分散の技術を、ユーザが安静な状態で第１の生体データを測定したか否かを判断するために用いる。ユーザが安静な状態であることを検知するためのセンサーなどを設けることなく、ｋ個の分散署名から復元した署名が正しいか否かを判断することにより、第１の生体データが安静な状態で測定されたか否かを判断するので、簡易な構成で、第１の生体データが安静な状態で測定されたものであることを判断できる。
【００１０】
なお、本発明は、このような特徴的な処理部を備える測定装置として実現することができるだけでなく、測定装置に含まれる特徴的な処理部が実行する処理をステップとする測定装置の制御方法として実現したり、測定装置の制御方法に含まれる特徴的なステップをコンピュータに実行させるプログラムとして実現したりすることもできる。そして、そのようなプログラムを、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ−Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）等のコンピュータ読取可能な不揮発性の記録媒体やインターネット等の通信ネットワークを介して流通させることができるのは、言うまでもない。
【発明の効果】
【００１１】
本発明によると、生体データが安静な状態で測定されたものであると判断できる測定装置及び測定装置の制御方法を提供することができる。
【図面の簡単な説明】
【００１２】
【図１】図１は、本発明の一実施態様に係る測定装置の内部構成を示すブロック図である。
【図２】図２は、本発明の実施の形態１に係る測定装置及び測定装置の制御方法が用いられる生体データ管理システムを示すシステム構成図である。
【図３】図３は、本発明の実施の形態１に係る測定装置の内部構成を示すブロック図である。
【図４】図４は、本発明の実施の形態１に係るサーバの内部構成を示すブロック図である。
【図５】図５は、図４に示す署名検証鍵格納部のメモリ構成図である。
【図６】図６は、図４に示す測定値格納部のメモリ構成図である。
【図７】図７は、本発明の実施の形態１に係る測定装置及び測定装置の制御方法が用いられる生体データ管理システムにおいて、初期設定時の測定装置、サーバ及び鍵発行サーバの動作を示すシーケンス図である。
【図８】図８は、本発明の実施の形態１に係る測定装置及び測定装置の制御方法が用いられる生体データ管理システムにおいて、生体データ測定時の測定装置とサーバの動作を示すシーケンス図である。
【図９】図９は、図８のＳ４０２の動作を示すフローチャートである。
【図１０Ａ】図１０Ａは、分散署名鍵の生成方法の原理を説明するための図である。
【図１０Ｂ】図１０Ｂは、図１０Ａに示した関数ｆ（ｘ）の詳細を表した図である。
【図１１】図１１は、本発明の実施の形態１に係る測定装置の送信データのフォーマット例を示す図である。
【図１２】図１２は、本発明の実施の形態１に係る測定装置における、署名の合成方法及び署名の検証方法を示す概念図である。
【図１３】図１３は、図８のＳ４０３の動作を示すフローチャートである。
【図１４】図１４は、本発明の実施の形態２に係る測定装置の内部構成を示すブロック図である。
【図１５】図１５は、本発明の実施の形態２に係るサーバの内部構成を示すブロック図である。
【図１６】図１６は、図１５に示す第２の署名検証鍵格納部のメモリ構成図である。
【図１７】図１７は、図１５に示す測定値格納部のメモリ構成図である。
【図１８】図１８は、本発明の実施の形態２に係る測定装置及び測定装置の制御方法が用いられる生体データ管理システムにおいて、初期設定時の測定装置、サーバ及び鍵発行サーバの動作を示すシーケンス図である。
【図１９】図１９は、本発明の実施の形態２に係る測定装置及び測定装置の制御方法が用いられる生体データ管理システムにおいて、生体データ測定時の測定装置とサーバの動作を示すシーケンス図である。
【図２０】図２０は、図１９のＳ５０２の動作を示すフローチャートである。
【図２１】図２１は、本発明の実施の形態２に係る測定装置における、署名の合成方法及び署名の検証方法を示す概念図である。
【図２２】図２２は、図１９のＳ５０３の動作を示すフローチャートである。
【図２３】図２３は、本発明の実施の形態３に係る測定装置の内部構成を示すブロック図である。
【図２４】図２４は、本発明の一実施の形態であるサーバの内部構成を示すブロック図である。
【図２５】図２５は、図２４に示す第２の復号鍵格納部のメモリ構成図である。
【図２６】図２６は、図２４に示す測定値格納部のメモリ構成図である。
【図２７】図２７は、本発明の実施の形態３に係る測定装置及び測定装置の制御方法が用いられる生体データ管理システムにおいて、初期設定時の測定装置、サーバ及び鍵発行サーバの動作を示すシーケンス図である。
【図２８】図２８は、本発明の実施の形態３に係る測定装置及び測定装置の制御方法が用いられる生体データ管理システムにおいて、生体データ測定時の測定装置とサーバの動作を示すシーケンス図である。
【図２９】図２９は、図２８のＳ６０２の動作を示すフローチャートである。
【図３０】図３０は、図２８のＳ６０３の動作を示すフローチャートである。
【発明を実施するための形態】
【００１３】
図１は、本発明の一実施態様に係る測定装置の内部構成を示すブロック図である。
【００１４】
本発明の一実施態様に係る測定装置は、第１の生体データをｋ回（ｋ≧２）以上測定することにより、ｋ個の第１の測定値を求める第１の測定部１０１と、互いに異なるｋ個の分散署名鍵が揃った場合にのみ署名生成鍵を復元することが可能な前記ｋ個の分散署名鍵を用いて、前記ｋ個の第１の測定値に対して署名演算をそれぞれ施すことにより、ｋ個の分散署名を生成する分散署名生成部１０４と、前記ｋ個の分散署名を合成することにより、署名を復元する署名合成部１０６と、前記署名生成鍵に対応する署名検証鍵を用いて、前記署名合成部１０６が復元した前記署名が、前記ｋ個の第１の測定値が等しいことを示す正しい署名か否かを検証する定常状態検証部１０７とを備える。
【００１５】
本態様によると、本来暗号化技術に用いられる鍵分散の技術を、ユーザが安静な状態で第１の生体データを測定したか否かを判断するために用いる。ユーザが安静な状態であることを検知するためのセンサーなどを設けることなく、ｋ個の分散署名から復元した署名が正しいか否かを判断することにより、第１の生体データが安静な状態で測定されたか否かを判断するので、簡易な構成で、第１の生体データが安静な状態で測定されたものであることを判断できる。
【００１６】
また、復元した署名が正しくない場合は、第１の測定値が測定時間によって異なることを意味するので、第１の生体データが不安静な状態で測定されたとみなすことができる。その結果、簡易な方法で、不安静な状態で求められた第１の測定値を排除できる。
【００１７】
また、署名演算に用いる演算要素として第１の測定値自身を用いることにより、第１の測定値は本来の第１の生体データの測定値としての機能と署名演算の演算要素としての機能との２つの機能を果たすことができる。このため、第１の生体データが安静な状態で測定されたか否かを判断する構成を簡素化できる。
【００１８】
好ましくは、前記署名生成鍵と前記署名検証鍵との積は所定の値であり、前記署名演算は、前記分散署名鍵又は前記署名生成鍵を指数とするべき乗演算であり、前記署名生成鍵は、前記ｋ個の分散署名鍵のそれぞれに所定の係数を乗じた値を加算することにより得られ、前記分散署名生成部は、前記ｋ個の第１の測定値のそれぞれについて、当該第１の測定値を底とし、当該第１の測定値に対応する分散署名鍵を指数とするべき乗演算の結果を分散署名として算出することにより、前記ｋ個の分散署名を生成し、前記署名合成部は、前記ｋ個の分散署名に前記所定の係数をそれぞれべき乗し、ｋ個のべき乗結果の積を、前記署名として算出し、前記定常状態検証部は、前記署名を底とし前記署名検証鍵を指数とするべき乗を左辺とし、前記ｋ個の第１の測定値のうちの着目する第１の測定値を右辺とする所定の検証式が成立する場合に前記署名合成部が復元した前記署名が正しい署名であると判断する。
【００１９】
本態様は、復元した署名が所定の検証式を満たす場合に正しい署名であると判断するものである。つまり、本態様によると、署名演算を上記べき乗演算としている。また、署名生成鍵と分散署名との関係は上述した関係を有する。このため、ｋ個の第１の測定値が等しければ、ｋ個の分散署名の積は、第１の測定値を署名生成鍵で署名した結果と等しくなる。また、署名生成鍵と署名検証鍵との積が１であるとの関係より、署名を署名検証鍵で検証した結果は、第１の測定値と等しくなる。このため、ｋ個の第１の測定値を用いて、ｋ個の第１の測定値が等しいか否か、すなわちユーザが安静な状態で第１の生体データを測定したか否かを判断することができる。
【００２０】
なお、上述の測定装置は、さらに、前記第１の測定部が求めた前記ｋ個の第１の測定値を量子化する量子化部を備え、前記分散署名生成部は、前記ｋ個の分散署名鍵を用いて前記量子化部で量子化された後の前記ｋ個の第１の測定値に対して署名演算をそれぞれ施すことにより、前記ｋ個の分散署名を生成してもよい。
【００２１】
本態様によると、量子化部が、第１の測定部が求めた各第１の生体データの誤差を吸収することができる。このため、僅かな誤差が原因となり、第１の生体データが安静な状態で測定されたものではないと誤判断されるのを防止できる。
【００２２】
また、上述の測定装置は、さらに、前記定常状態検証部において前記署名合成部が復元した前記署名が正しい署名であると判断された場合に、前記ｋ個の第１の測定値のうちの着目する第１の測定値を前記署名合成部において復元された前記署名とともに外部のサーバに送信する送信部を備えていてもよい。
【００２３】
本態様によると、復元された署名とともに第１の測定値を外部のサーバに送信することができる。
【００２４】
また、上述の測定装置は、さらに、前記第１の測定部における前記第１の生体データの測定と並行して、前記第１の生体データとは異なる第２の生体データを測定することにより第２の測定値を求める第２の測定部を備え、前記定常状態検証部は、さらに、前記署名合成部が復元した前記署名が正しい署名であると判断した場合に、前記第２の測定部が求めた前記第２の測定値を外部に出力することを許可してもよい。
【００２５】
本態様によると、署名演算に用いる演算要素として測定する第１の生体データと、実際に測定する第２の生体データとを異なる生体データとすることもできる。この場合、例えば、上の値（最高血圧）と下の値（最低血圧）とからなる血圧データのように、実際に測定する第２の生体データが複数のデータからなるタイプの生体データであっても、脈拍のように単一のデータからなるタイプの生体データを第１の生体データとして用いることにより、ユーザが安静な状態で第２の生体データを測定したか否かを判断することができる。そのため、簡易な構成で、第２の生体データが安静な状態で測定されたものであることを判断できる。
【００２６】
また、一定の値とならない心電図データのように、実際に測定する第２の生体データが安静な状態で測定したか否かの判断に用いるには相応しくないタイプの生体データであっても、第１の測定値を用いて第２の生体データを安静な状態で測定したか否かを判断できる。
【００２７】
また、上述の測定装置は、さらに、前記第１の測定値の基準となる基準値を、参照値として格納している第１の参照値格納部を備え、前記分散署名生成部は、前記ｋ個の分散署名鍵を用いて、前記参照値と（ｋ−１）個の第１の測定値とに対して署名演算をそれぞれ施すことにより、前記ｋ個の分散署名を生成してもよい。
【００２８】
本態様によると、第１の測定値の基準となる基準値である参照値と（ｋ−１）個の第１の測定値とからｋ個の分散署名を生成している。参照値の分散署名を含めたｋ個の分散署名から署名を復元することにより、第１の生体データを（ｋ−１）回測定して算出された（ｋ−１）個の分散署名が、参照値の分散署名と一致しない場合には、復元した署名が正しい署名であると判断されない。このため、署名演算に用いる演算要素として測定した第１の生体データと、実際に測定する第２の生体データとを異なる生体データとした場合において、第２の生体データが安静な状態で測定され、且つ第２の生体データが第１の生体データのユーザと同一ユーザの生体データであることを判断できる。
【００２９】
また、上述の測定装置は、さらに、前記署名合成部で復元された前記署名を署名生成鍵として用いて、前記第２の測定値の署名を生成する第２の署名生成部と、前記定常状態検証部が前記第２の測定値を外部に出力することを許可した場合に、前記第２の測定値を前記第２の測定値の署名とともに外部のサーバに送信する送信部とを備えていてもよい。
【００３０】
本態様によると、署名合成部で復元された署名を署名生成鍵として、第２の計測値の署名を生成している。これにより、第２の計測値の署名及び第２の計測値を受信した外部のサーバでは、第２の計測値が第１の生体データのユーザと同一ユーザの第２の生体データの計測値であることを判断できる。
【００３１】
また、上述の測定装置は、さらに、前記署名合成部で復元された前記署名を暗号鍵として用いて、前記第２の測定値を暗号化する第２の暗号化部と、前記定常状態検証部が前記第２の測定値を外部に出力することを許可した場合に、暗号化された前記第２の測定値を外部のサーバに送信する送信部とを備えていてもよい。
【００３２】
本態様によると、署名合成部で復元された署名を暗号鍵として、第２の計測値を暗号化している。これにより、簡易な構成で、外部のサーバに送信する第２の計測値の秘匿性を保証できるので、ユーザのプライバシーを保護できる。
【００３３】
また、前記第１の生体データは脈拍データであり、前記第２の測定値は心電図データであってもよい。
【００３４】
本態様によると、第１の生体データを脈拍データとし、第２の生体データを心電図データとすることができる。
【００３５】
また、前記第１の測定部は、前記第１の生体データを時間的に連続してｋ回測定することにより、前記ｋ個の第１の測定値を求めてもよい。
【００３６】
本態様によると、署名合成部は、連続する所定回数の分散署名を集めて署名を復元することができる。これにより、安静な状態が継続した状態で第１の生体データが測定されたものであることを判断できる。
【００３７】
本発明の他の実施態様に係る測定装置の測定装置は、第１の生体データをｋ回（ｋ≧２）以上測定することにより、ｋ個の第１の測定値を求め、互いに異なるｋ個の分散署名鍵が揃った場合にのみ署名生成鍵を復元することが可能な前記ｋ個の分散署名鍵を用いて、前記ｋ個の第１の測定値に対して署名演算をそれぞれ施すことにより、ｋ個の分散署名を生成し、前記ｋ個の分散署名を合成することにより、署名を復元し、前記署名生成鍵に対応する署名検証鍵を用いて、復元した前記署名が、前記ｋ個の第１の測定値が等しいことを示す正しい署名か否かを検証する。
【００３８】
本発明のさらに他の実施態様に係るプログラムは、コンピュータに、第１の生体データをｋ回（ｋ≧２）以上測定することにより、ｋ個の第１の測定値を求めさせ、互いに異なるｋ個の分散署名鍵が揃った場合にのみ署名生成鍵を復元することが可能な前記ｋ個の分散署名鍵を用いて、前記ｋ個の第１の測定値に対して署名演算をそれぞれ施すことにより、ｋ個の分散署名を生成させ、前記ｋ個の分散署名を合成することにより、署名を復元させ、前記署名生成鍵に対応する署名検証鍵を用いて、復元した前記署名が、前記ｋ個の第１の測定値が等しいことを示す正しい署名か否かを検証させる。
【００３９】
本発明のさらに他の実施態様に係る集積回路は、第１の生体データをｋ回（ｋ≧２）以上測定することにより、ｋ個の第１の測定値を求める第１の測定部と、互いに異なるｋ個の分散署名鍵が揃った場合にのみ署名生成鍵を復元することが可能な前記ｋ個の分散署名鍵を用いて、前記ｋ個の第１の測定値に対して署名演算をそれぞれ施すことにより、ｋ個の分散署名を生成する分散署名生成部と、前記ｋ個の分散署名を合成することにより、署名を復元する署名合成部と、前記署名生成鍵に対応する署名検証鍵を用いて、前記署名合成部が復元した前記署名が、前記ｋ個の第１の測定値が等しいことを示す正しい署名か否かを検証する定常状態検証部とを備える。
【００４０】
（実施の形態１）
以下、本発明の一実施の形態である測定装置及び測定装置の制御方法について、図面を参照しながら説明する。図２は、本発明の実施の形態１に係る測定装置及び測定装置の制御方法が用いられる生体データ管理システムを示すシステム構成図である。図２において、本実施の形態に係る生体データ管理システムは、測定装置１００とサーバ２００と鍵発行サーバ６００とを含み、測定装置１００とサーバ２００と鍵発行サーバ６００とは互いにネットワーク３００を介して接続されている。なお、サーバ２００は病院又は保険会社等の医療機関に設置される。鍵発行サーバ６００は、署名生成鍵及び署名検証鍵を発行する鍵発行センターに設置される。なお、鍵発行サーバ６００と測定装置１００又はサーバ２００とは、インターネットなどのネットワーク３００を介してデータのやり取りを行うが、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）などのネットワーク３００を介してデータのやり取りを行ってもよいし、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）メモリなどの記録媒体を介してデータのやり取りを行ってもよい。
【００４１】
測定装置１００は、脈拍、血圧又は血糖値などの生体データを測定する機能、ユーザが安静な状態であるか否かを判断する機能、及びユーザが安静な状態で生体データを測定したことを示す署名を生成する機能を有する。また、測定装置１００は、サーバ２００と通信する機能を有し、測定結果及び署名をサーバ２００に送信する。また、測定装置１００は、鍵発行サーバ６００から署名生成鍵及び署名検証鍵を受信する。
【００４２】
サーバ２００は、測定装置１００から測定結果及び署名を収集し、署名が正しいものであるか否かを判断する機能を有する。また、サーバ２００は、収集した測定結果をユーザごとにデータベースとして管理する。
【００４３】
ネットワーク３００は、インターネット又は病院内のイントラネットワークのようなローカルネットワーク等で構成される。なお、ネットワーク３００は有線又は無線のいずれでもよい。
【００４４】
図３は、本発明の実施の形態１に係る測定装置１００の内部構成を示すブロック図である。測定装置１００は、生体データの測定中にユーザが安静な状態であるか否かを検知し、ユーザが安静な状態で生体データを測定したことを示す署名を生成する。安静状態を検知するために、測定装置１００は一つの測定結果を得るにあたって複数回数の生体データの測定を行う。測定装置１００は、複数回数のうち所定回数分の生体データの測定値が定常値、即ち同一の値になると、ユーザが安静な状態であると判断し、測定値が安静状態で測定されたことを示す署名を生成する。
【００４５】
測定装置１００は、所定回数分の測定値が同一の値であることの判断と、測定値に対する署名の生成とを、秘密分散法を用いて同時に行う。この秘密分散法とは、ある秘密データをｎ個に分割し、そのうちの互いに異なるｋ個が揃ったら初めて元のデータが復元できるといった手法である。なお、ｋ、ｎはそれぞれ２以上の整数でｋ≦ｎを満たす（例えば、非特許文献１、非特許文献２参照）。
【非特許文献１】ブルース・シュナイアー（Ｂｒｕｃｅ  Ｓｃｈｎｅｉｅｒ）著、「アプライド  クリプトグラフィ（ＡＰＰＬＩＥＤ  ＣＲＹＰＴＯＧＲＡＰＨＹ）」、改定第２版、（米国）、ウィリー（ＷＩＬＥＹ）出版、１９９６年、Ｐ５２８−５２９
【非特許文献２】岡本龍明、山本博資著、「現代暗号」、産業図書出版、１９９７年、Ｐ２１４−２１５
【００４６】
ここで、本実施の形態において、前記所定回数がｋに対応する。測定装置１００は、所定の署名生成鍵を秘密分散法で分割した分散署名鍵を用いて、所定回数と等しいｋ個の測定値それぞれに署名（以下、「分散署名」という）を施す。測定装置１００は、このｋ個の分散署名を合成して署名を生成し、これを上記署名生成鍵に対応する署名検証鍵を用いて検証する。もし、正しい署名が生成されていれば、ｋ個の測定値が同一の値であることが分かる。なお、本実施の形態においては、ｋ＝３の場合について説明するが、ｋはそれ以外の値であってもよい。
【００４７】
以下、測定装置１００を構成する各ブロックについて述べる。
【００４８】
測定装置１００は、第１の測定部１０１と、量子化部１０２と、分散署名鍵生成部１０３と、分散署名生成部１０４と、分散署名格納部１０５と、署名合成部１０６と、定常状態検証部１０７と、ＩＤ格納部１０８と、測定関連情報格納部１０９と、送信部１１０と、制御部１１１と、受信部１１２とを含む。
【００４９】
第１の測定部１０１は、制御部１１１から測定開始の指示を受け付けると、測定対象である生体データを測定する。
【００５０】
量子化部１０２は、第１の測定部１０１から出力される各測定値を量子化する。これにより、各測定値間に所定の範囲内で誤差や変動が生じる場合、この誤差や変動を吸収することができる。
【００５１】
分散署名鍵生成部１０３は、測定タイミング「ｉ」（ｉ＝１，２，・・・）ごとに、予め初期設定で測定装置１００に設定される署名生成鍵を分散し、分散署名鍵「ｄ（ｉ）」を生成する。なお、分散署名鍵「ｄ（ｉ）」は、測定タイミング「ｉ」ごとに異なる。なお、本実施の形態では、分散署名鍵生成部１０３は、測定タイミング「ｉ」ごとに逐次、分散署名鍵「ｄ（ｉ）」を生成することを想定している。なお、分散署名鍵生成部１０３は、生体データの測定前に予め分散署名鍵「ｄ（ｉ）」を生成しておき、測定タイミング「ｉ」ごとに順番に出力してもよい。初期設定の概要については、図７を用いて後述する。
【００５２】
分散署名生成部１０４は、測定タイミング「ｉ」ごとに、量子化部１０２から出力される生体データの測定値「ｍ（ｉ）」を、分散署名鍵生成部１０３から出力される分散署名鍵「ｄ（ｉ）」で署名することにより、分散署名「Ｍ（ｉ）」を生成する。例えば、「ｉ＝１」の場合、分散署名生成部１０４は、測定値「ｍ（１）」を分散署名鍵「ｄ（１）」で署名することにより分散署名「Ｍ（１）」を生成する。このように、分散署名生成部１０４は、測定タイミング「ｉ」ごとに分散署名「Ｍ（ｉ）」を生成し、「ｉ＝２」となれば分散署名「Ｍ（２）」を、「ｉ＝３」となれば分散署名「Ｍ（３）」を順次生成する。
【００５３】
分散署名格納部１０５は、測定タイミング「ｉ」ごとに生成される分散署名「Ｍ（ｉ）」を格納する。なお、分散署名格納部１０５は、少なくとも３つの分散署名を格納する。そのため、シフトレジスタで実装してもよい。
【００５４】
署名合成部１０６は、分散署名「Ｍ（１）」から分散署名「Ｍ（ｎ）」までのｎ個の分散署名のうち、所定回数「ｋ」個の分散署名を合成して署名を復元する。本実施の形態では、所定回数「ｋ」個の分散署名を合成する際、各測定タイミング「ｉ」で生成される分散署名「Ｍ（ｉ）」を基準とする。即ち、署名合成部１０６は、この基準となる分散署名「Ｍ（ｉ）」までの所定回数「ｋ」個の分散署名「Ｍ（ｉ）、Ｍ（ｉ−１）、・・・、Ｍ（ｉ−（ｋ−１））」を合成する。例えば、所定回数「ｋ」の値が「ｋ＝３」、即ち３個の分散署名を合成する場合、測定タイミング「ｉ＝ｎ」において分散署名「Ｍ（ｎ）」が生成されると、署名合成部１０６は、この分散署名「Ｍ（ｎ）」を基準として、分散署名「Ｍ（ｎ）」、分散署名「Ｍ（ｎ−１）」及び分散署名「Ｍ（ｎ−２）」の３つの分散署名を合成して署名を復元する。
【００５５】
定常状態検証部１０７は、所定の署名検証鍵を用いて、復元された署名が正しい署名であるか否かを検証する。具体的には、定常状態検証部１０７は、復元された署名が、後述する所定の検証式を満たす場合に、復元された署名が正しい署名であると判断し、所定回数「ｋ」個の測定値が定常値であると判断する。例えば、所定回数「ｋ」の値が「ｋ＝３」の場合、定常状態検証部１０７は、分散署名「Ｍ（ｎ）」、分散署名「Ｍ（ｎ−１）」及び分散署名「Ｍ（ｎ−２）」の３つの分散署名を合成することにより復元される署名が所定の検証式を満たすか否かを検証する。そして、定常状態検証部１０７は、復元された署名が検証式を満たす場合に、署名が正しい署名であると判断し、測定値「ｍ（ｎ）」、測定値「ｍ（ｎ−１）」、及び測定値「ｍ（ｎ−２）」の３つの測定値が同一の値、即ち「ｍ（ｎ）＝ｍ（ｎ−１）＝ｍ（ｎ−２）」と判断する。なお、所定の署名検証鍵は、初期設定時に定常状態検証部１０７に設定される。
【００５６】
ＩＤ格納部１０８は、当該測定装置１００を識別するためのＩＤ（識別子）を格納する。
【００５７】
測定関連情報格納部１０９は、測定に関する情報（以下、「測定関連情報」という）、例えば測定日時やＧＰＳから得られる測定装置１００使用時の位置情報などを格納する。
【００５８】
送信部１１０は、定常状態検証部１０７において測定値が同一の値であると検知された時の測定値及び署名、前記ＩＤ、及び前記測定関連情報を含む所定フォーマットのデータを生成し、サーバ２００に送信する。
【００５９】
制御部１１１は、測定装置１００の各動作を制御する。例えば、制御部１１１は、サーバ２００から送信される測定開始指示を受信部１１２が受信すると、生体データの測定を開始するよう制御する。また、制御部１１１は、定常状態検証部１０７で定常状態が検知されない場合に、生体データの再測定を行うよう制御する。
【００６０】
図４は、本発明の実施の形態１に係るサーバ２００の内部構成を示すブロック図である。
【００６１】
サーバ２００は、測定開始指示部２０１と、送信部２０２と、受信部２０３と、署名検証鍵格納部２０４と、署名検証鍵取得部２０５と、署名確認部２０６と、測定値格納部２０７とを含む。
【００６２】
測定開始指示部２０１は、測定装置１００に対して生体データの測定を開始するよう指示する。この測定開始の指示を行うタイミングは、医療機関の医師等によって設定され、「３０分に１度」又は「１時間に１度」など所定のタイミングでもよいし、ランダムなタイミングでもよい。
【００６３】
送信部２０２は、前記測定開始の指示を測定装置１００に送信する。
【００６４】
受信部２０３は、測定装置１００より、測定値、署名、ＩＤ、及び測定関連情報を含む所定フォーマットのデータを受信する。
【００６５】
署名検証鍵格納部２０４は、測定装置１００から収集した署名を検証するための署名検証鍵を、測定装置１００のＩＤと対応付けて格納する。署名検証鍵は、予め初期設定時に署名検証鍵格納部２０４に設定される。この署名検証鍵格納部２０４の詳細については図５を用いて後述する。
【００６６】
署名検証鍵取得部２０５は、測定装置１００から収集したＩＤに対応する署名検証鍵を署名検証鍵格納部２０４より取得し、署名確認部２０６に出力する。
【００６７】
署名確認部２０６は、署名検証鍵格納部２０４より取得した署名検証鍵を用いて、測定装置１００から収集した署名を検証する。具体的には、署名確認部２０６は、署名が所定の検証式を満たす場合に、署名が正しい署名であると判断する。
【００６８】
測定値格納部２０７は、測定値と測定関連情報とを、ＩＤと対応付けて格納する。なお、これらの情報は、署名確認部２０６において検証された署名が正しい署名である場合、署名確認部２０６により測定値格納部２０７に書き込まれる。この測定値格納部２０７の詳細については図６を用いて後述する。
【００６９】
図５は、図４に示す署名検証鍵格納部２０４のメモリ構成図である。図５において、署名検証鍵格納部２０４には、項目「ＩＤ」と項目「署名検証鍵」とが設けられ、署名検証鍵格納部２０４は、測定装置１００のＩＤと署名検証鍵とを対応付けて管理している。項目「ＩＤ」には、測定装置１００を識別するためのＩＤが格納される。項目「署名検証鍵」には、測定装置１００から送信される署名を検証するための署名検証鍵が格納される。
【００７０】
例えば、図５の場合、署名検証鍵格納部２０４は、ＩＤが「１２３４５」の測定装置１００及びＩＤが「１２３４６」の測定装置１００の各々について、対応する署名検証鍵を格納している。ＩＤが「１２３４５」の測定装置１００には、署名検証鍵「５４３２１」が対応付けられ、ＩＤが「１２３４６」の測定装置１００には、署名検証鍵「４３２１０」が対応付けられている。
【００７１】
図６は、図４に示す測定値格納部２０７のメモリ構成図である。ここでは、測定の対象である生体データを、例えば脈拍とした場合について説明する。図６において、測定値格納部２０７には、項目「ＩＤ」、項目「測定日時」及び項目「脈拍（回／分）」が設けられ、測定値格納部２０７は、測定装置１００のＩＤと、測定日時及び脈拍の測定値とを対応付けて管理している。項目「ＩＤ」には、測定装置１００を識別するためのＩＤが格納される。項目「測定日時」には、脈拍の測定日時が記録される。項目「脈拍（回／分）」には、脈拍の測定値が記録される。
【００７２】
例えば、図６の場合、測定値格納部２０７は、ＩＤが「１２３４５」の測定装置１００で行われた２回の測定に関して、その測定日時及び脈拍の測定値を記録している。具体的には、ＩＤが「１２３４５」の測定装置１００は、「２００８年１２月１日の午前９時」に脈拍の測定を行い、そのときの測定値が「６５」であったことを示している。同様に、ＩＤが「１２３４５」の測定装置１００は、「２００８年１２月１日の午後１２時５分」に脈拍の測定を行い、そのときの測定値が「７０」であったことを示している。
【００７３】
以下、以上のように構成された測定装置１００及び測定装置１００の制御方法について、図面を用いてその動作を説明する。
【００７４】
図７は、本発明の実施の形態１に係る測定装置１００及び測定装置１００の制御方法が用いられる生体データ管理システムにおいて、初期設定時の測定装置１００、サーバ２００及び鍵発行サーバ６００の動作を示すシーケンス図である。この初期設定では、測定装置１００にＩＤ、署名生成鍵、及び署名検証鍵が設定され、サーバ２００に測定装置１００のＩＤ及び署名検証鍵が設定される。
【００７５】
事前に、鍵発行サーバ６００は、測定装置１００のＩＤに対応する一対の署名生成鍵及び署名検証鍵を生成する（Ｓ７０１）。そして、鍵発行サーバ６００は、測定装置１００にＩＤ、署名生成鍵及び署名検証鍵を配布し（Ｓ７０２）、サーバ２００にＩＤ及び署名検証鍵を配布する（Ｓ７０３）。
【００７６】
ここで、署名生成鍵及び署名検証鍵は、例えばＲＳＡ（Ｒｉｖｅｓｔ  Ｓｈａｍｉｒ  Ａｄｌｅｍａｎ）署名を用いた場合、次のように生成される。
【００７７】
（１）大きな素数ｐ、ｑを生成する。
【００７８】
（２）ｎ＝ｐ×ｑを計算する。
【００７９】
（３）ｅ×ｄ＝１ ｍｏｄλ（ここで、λ＝ＬＣＭ（ｐ−１、ｑ−１））を満たす、ｅ、ｄを任意に求める。
【００８０】
この「ｅ」が署名検証鍵に相当し、「ｄ」が署名生成鍵に相当する。鍵発行サーバ６００は、このようにして前記ＩＤに対応する一対の署名検証鍵「ｅ」及び署名生成鍵「ｄ」を生成する。
【００８１】
測定装置１００は、鍵発行サーバ６００よりＩＤ、署名生成鍵「ｄ」及び署名検証鍵「ｅ」を受けとると、ＩＤをＩＤ格納部１０８に、署名生成鍵「ｄ」を分散署名鍵生成部１０３に、署名検証鍵「ｅ」を定常状態検証部１０７に各々設定する（Ｓ７０４）。なお、この測定装置１００への署名生成鍵「ｄ」及び署名検証鍵「ｅ」の設定は、例えば市場に出荷する前に工場で行ってもよいし、市場に出荷した後に店頭で行ってもよい。
【００８２】
サーバ２００は、鍵発行サーバ６００よりＩＤ及び署名検証鍵を受けとると、ＩＤと署名検証鍵とを対応付けて署名検証鍵格納部２０４に設定する（Ｓ７０５）。例えば、ＩＤの値が「１２３４５」で、署名検証鍵「ｅ」の値が「５４３２１」の場合、図５で示した署名検証鍵格納部２０４の項目「ＩＤ」にＩＤの値「１２３４５」を設定し、項目「署名検証鍵」に署名検証鍵の値「５４３２１」を設定する。
【００８３】
図８は、本発明の実施の形態１に係る測定装置１００及び測定装置１００の制御方法が用いられる生体データ管理システムにおいて、生体データ測定時の測定装置１００とサーバ２００の動作を示すシーケンス図である。
【００８４】
まず、サーバ２００は、ネットワーク３００を介して測定開始の指示を測定装置１００に送信する（Ｓ４０１）。
【００８５】
測定装置１００は、測定開始の指示に従って、測定対象である生体データを測定する。このとき、測定装置１００は、一つの測定値を得るに当たって所定回数の測定を行う。そして、測定装置１００は、前記所定回数の測定値より、生体データの測定中にユーザが安静な状態であることを検知し、ユーザが安静な状態で生体データを測定したことを示す署名を生成する。また、測定装置１００は、ユーザが安静な状態であることを検知すると、このときの測定値及び署名、測定装置１００のＩＤ、並びに測定関連情報を含む所定フォーマットのデータを生成し、サーバ２００に送信する（Ｓ４０２）。このＳ４０２の処理の詳細については、図９を用いて後述する。
【００８６】
サーバ２００は、測定値、署名、ＩＤ及び測定関連情報を含む所定フォーマットのデータを受信すると、署名検証鍵を用いて署名が正しい署名であるか否かを検証する。署名が正しい署名である場合、サーバ２００は測定値及び測定関連情報を測定値格納部２０７に格納する（Ｓ４０３）。このＳ４０３の処理の詳細については、図１３を用いて後述する。
【００８７】
図９は、図８のＳ４０２の動作を示すフローチャートである。この処理では、測定装置１００は、生体データを複数回数測定し、複数回数のうちの所定回数と等しいｋ個の測定値より、生体データの測定中にユーザが安静な状態であることを検知し、ユーザが安静な状態で生体データを測定したことを示す署名を生成する。測定装置１００は、この安静な状態で測定された時の測定値及び署名をサーバ２００に送信する。ここでは、前記所定回数であるｋを「ｋ＝３」とした場合を例に本処理を説明する。なお、以下の説明では、ｉは各測定タイミングを示す。また、量子化された後の測定値をｍ（ｉ）、分散署名鍵をｄ（ｉ）として表す。なお、前記所定回数は連続した回数であってもよいし、連続しない回数であってもよい。
【００８８】
事前に、制御部１１１、初期設定として変数ｉに「１」を設定して「ｉ＝１」とする。ここで、１回目の測定時に分散署名「Ｍ（１）」が生成された際、分散署名「Ｍ（−１）」及び分散署名「Ｍ（０）」に値が存在しないので、測定装置１００は、分散署名「Ｍ（１）」を基準として３個の分散署名「Ｍ（１）」、「Ｍ（０）」、及び「Ｍ（−１）」を合成できない。そのため、制御部１１１は、この初期設定時の分散署名「Ｍ（−１）」及び分散署名「Ｍ（０）」の各々に初期値である「０」を代入し、「Ｍ（−１）＝０」及び「Ｍ（０）＝０」とする（Ｓ４１０）。この初期設定を行った後、測定装置１００は前記安静な状態の検知及び前記安静状態を示す署名の生成を行う。
【００８９】
まず、第１の測定部１０１は、ｉ回目の生体データの測定を行う（Ｓ４１１）。そして、量子化部１０２は、この測定値を量子化する（Ｓ４１２）。量子化を行うことにより、各測定値間に所定の範囲内で誤差や変動が生じる場合、この誤差や変動を吸収することができる。
【００９０】
次に、分散署名鍵生成部１０３は、ｉ番目の分散署名鍵ｄ（ｉ）を生成する（Ｓ４１３）。
【００９１】
ここで、図１０Ａ及び図１０Ｂを用いて、分散署名鍵ｄ（ｉ）の生成方法について説明する。図１０Ａ及び図１０Ｂは、図３で述べた秘密分散法を用いて分散署名鍵ｄ（ｉ）の生成方法を説明するための図である。
【００９２】
図１０Ａは、分散署名鍵ｄ（ｉ）の生成方法の原理を説明するための図である。一方、図１０Ｂは、図１０Ａに示した関数ｆ（ｘ）の詳細を表した図である。図１０Ｂは、ｋ＝３の場合における分散署名鍵ｄ（ｉ）の生成方法の一例を表している。図１０Ａに示すように、分散署名鍵生成部１０３は、任意の関数ｆ（ｘ）に各測定タイミングｉの値を入力することにより分散署名鍵ｄ（ｉ）を生成する。
【００９３】
具体的には、「ｋ＝３」の場合、図１０Ｂに示すように、分散署名鍵生成部１０３は、定数項（図１０Ｂの切片）を署名生成鍵ｄとした任意の２次多項式「ｆ（ｘ）＝ａｘ2＋ｂｘ＋ｄ」（ａ，ｂは任意の定数）を定める。なお、以降では、この演算はｍｏｄλの演算をさらに施すことにより行う。また、署名生成鍵ｄは、図７で述べた初期値設定のＳ７０２において、鍵発行サーバから送付されたものである。このとき、ｉ番目の分散署名鍵ｄ（ｉ）は、この２次多項式のｘにｉを設定したｆ（ｉ）の値、つまり、図１０Ｂの座標図では、ｘ座標にｉを設定したときのｙ座標値に相当する。例えば、「ｉ＝１」の場合、分散署名鍵ｄ（１）は「ｄ（１）＝ｆ（１）＝ａ＋ｂ＋ｄ」として算出され、「ｉ＝２」の場合、分散署名鍵ｄ（２）は「ｄ（２）＝ｆ（２）＝４ａ＋２ｂ＋ｄ」として算出される。
【００９４】
このように、分散署名鍵生成部１０３は、予め任意の２次多項式ｆ（ｘ）を定め、測定タイミングｉごとに２次多項式ｆ（ｉ）の値を求めることにより分散署名鍵ｄ（ｉ）を生成する。
【００９５】
なお、２次多項式は、多項式上の任意の３点が揃えば決定されるため、その切片である署名生成鍵ｄが復元される。ここで、この署名生成鍵ｄの復元には、ラグランジェの補間法を用いることができる。ラグランジェの補間法は所定のいくつかの点を通る多項式を求める手法である（例えば、非特許文献３参照）。
【非特許文献３】ディー・イー・クヌース（Ｄ．Ｅ．ＫＮＵＴＨ）著、中川圭介訳、「４ 準数値算法／算術演算」、改定第２版、サイエンス社出版、１９８１年、Ｐ３３４−３３５
【００９６】
このラグランジェの補間法を用いると、例えば３点を（ｘ１,ｙ１）、（ｘ２,ｙ２）、（ｘ３,ｙ３）としたとき、前記２次多項式ｆ（ｘ）は、式（１）を用いて復元することができる。
【００９７】
式（１）  ｆ（ｘ）＝［｛（ｘ−ｘ２）×（ｘ−ｘ３）｝／｛（ｘ１−ｘ２）×（ｘ１−ｘ３）｝］×ｙ１
＋［｛（ｘ−ｘ１）×（ｘ−ｘ３）｝／｛（ｘ２−ｘ１）×（ｘ２−ｘ３）｝］×ｙ２
＋［｛（ｘ−ｘ１）×（ｘ−ｘ２）｝／｛（ｘ３−ｘ１）×（ｘ３−ｘ２）｝］×ｙ３
【００９８】
署名生成鍵ｄは切片であるため、上記２次多項式「ｆ（ｘ）」のｘに０を代入した値、即ち「ｄ＝ｆ（０）」になる。なお、ここでは、分散署名鍵をｉ回目のｉに対応したｆ（ｉ）のｙ座標としているが、多項式上の点（ｘ座標とｙ座標とのペア）であってもよい。
【００９９】
このような分散署名鍵ｄ（ｉ）の生成方法を用いることにより、測定装置１００は、署名生成鍵ｄを時系列に分散する。本実施の形態では、この方法を用いて、測定装置１００は３個の測定値「ｍ（ｉ）」、「ｍ（ｉ−１）」、及び「ｍ（ｉ−２）」が定常値であるか否かを判断する。
【０１００】
以下、図９の説明に戻る。Ｓ４１３の処理後、分散署名生成部１０４は、測定値ｍ（ｉ）及び分散署名鍵ｄ（ｉ）を用いて分散署名「Ｍ（ｉ）」を生成し、分散署名格納部１０５に格納する（Ｓ４１４）。このとき、上述の秘密分散法によると、分散署名「Ｍ（ｉ）」は、測定値ｍ（ｉ）及び分散署名鍵ｄ（ｉ）を用いて「Ｍ（ｉ）＝ｍ（ｉ）d(i) ｍｏｄｎ」と表すことができる。
【０１０１】
次に、署名合成部１０６は、分散署名「Ｍ（ｉ）」を基準として３個の分散署名「Ｍ（ｉ）」、「Ｍ（ｉ−１）」、及び「Ｍ（ｉ−２）」を合成して署名Ｓ（ｉ）を生成する（Ｓ４１５）。この合成の方法は、式（２）に従う。
【０１０２】
式（２）  Ｓ（ｉ）＝｛Ｍ（ｉ−２）Li(i-2)×Ｍ（ｉ−１）Li(i-1)
×Ｍ（ｉ）Li(i)｝ ｍｏｄｎ
なお、上式の指数Ｌｉ（ｉ−２）、Ｌｉ（ｉ−１）、Ｌｉ（ｉ）は、（ｉ−２，ｄ（ｉ−２））、（ｉ−１，ｄ（ｉ−１））、（ｉ，ｄ（ｉ））の３点を通る２次多項式の切片を求める式を、上記ラグランジェの補間法を用いて立てたときの各係数に対応する。具体的には、式（３）のようになる。
【０１０３】
式（３）  Ｌｉ（ｉ−２）＝｛（０−（ｉ−1））×（０−ｉ）｝／
｛（（ｉ−２）−（ｉ−１））×（（ｉ−２）−ｉ）｝
＝［｛ｉ×（ｉ−１）｝／２］ ｍｏｄλ
Ｌｉ（ｉ−１）＝｛（０−（ｉ−２））×（０−ｉ）｝／
｛（（ｉ−１）−（ｉ−２））×（（ｉ−１）−ｉ）｝
＝−［｛ｉ×（ｉ−２）｝］ ｍｏｄλ
Ｌｉ（ｉ）＝｛（０−（ｉ−２））×（０−（ｉ−１））｝／
｛（ｉ−（ｉ−２））×（ｉ−１）｝
＝［｛（ｉ−１）×（ｉ−２）｝／２］ ｍｏｄλ
【０１０４】
この式（３）を用いると、式（４）が成り立つ。
【０１０５】
式（４）  ｄ（ｉ−２）×Ｌｉ（ｉ−２）＋ｄ（ｉ−１）×Ｌｉ（ｉ−１）＋ｄ（ｉ）×Ｌｉ（ｉ）＝ｄ ｍｏｄλ
【０１０６】
次に、定常状態検証部１０７は、図７のＳ７０２で設定された署名検証鍵ｅを用いて署名Ｓ（ｉ）を検証し（Ｓ４１６）、署名Ｓ（ｉ）が所定の検証式を満たすか否か判断する（Ｓ４１７）。具体的には、定常状態検証部１０７は、署名検証鍵ｅを用いて検証式（式（５））が成り立つか否か確認する。
【０１０７】
式（５）  Ｓ（ｉ）e＝ｍ（ｉ） ｍｏｄｎ
【０１０８】
そして、定常状態検証部１０７は、上記検証式（式（５））が成り立っていれば、３つの測定値「ｍ（ｉ）」、「ｍ（ｉ−１）」、及び「ｍ（ｉ−２）」は定常値、即ち「ｍ（ｉ）＝ｍ（ｉ−１）＝ｍ（ｉ−２）」であると判断する。上記検証式で３つの測定値が同一の値であるか否かを判断できる理由は次の通りである。
【０１０９】
即ち、もし３個の測定値が定常値、即ち「ｍ（ｉ−２）＝ｍ（ｉ−１）＝ｍ（ｉ）」が成り立っていれば、式（４）より、式（６）が成り立つ。
【０１１０】
式（６）  Ｓ（ｉ）＝Ｍ（ｉ−２）Li(i-2)×Ｍ（ｉ−１）Li(i-1)×Ｍ（ｉ）Li(i) ｍｏｄｎ
＝（ｍ（ｉ）d(i-2)）Li(i-2)×（ｍ（ｉ）d(i-1））Li(i-1)×（ｍ（ｉ）d(i)）Li(i） ｍｏｄｎ
＝ｍ（ｉ）d(i-2)×Li(i-2)+d(i-1)×Li(i-1)+d(i)×Li(i) ｍｏｄｎ
＝ｍ（ｉ）d ｍｏｄｎ
【０１１１】
式（６）のＳ（ｉ）を底とし、署名検証鍵ｅを指数とするべき乗を計算すると、図７を用いて述べたｅ×ｄ＝１ ｍｏｄλの関係式より、式（７）、即ち、検証式（５）が成り立つ。
【０１１２】
式（７）  Ｓ（ｉ）e＝ｍ（ｉ）e×d ｍｏｄｎ＝ｍ（ｉ） ｍｏｄｎ
【０１１３】
逆に、３つの測定値が定常値でない場合は、上記検証式（式（５））は成立しない。
【０１１４】
なお、ここではＲＳＡ暗号の構成にあわせ、ｅ×ｄ＝１ ｍｏｄλの関係式を用いているが、ｃを所定の定数としたととき、ｅ×ｄ＝ｃ ｍｏｄλとしてもよい。この場合、式（７）の検証式では、Ｓ（ｉ）e＝ｍ（ｉ）ｃ ｍｏｄｎを満たす事を確認すればよい。
【０１１５】
なお、分散署名鍵ｄ（ｉ）の生成方法としては、上記多項式を用いる方法以外に、例えば以下の方法もある。
【０１１６】
まず、ＲＳＡ署名の署名生成鍵ｄを、次の式を満たす３つの分散署名鍵「ｄ１」、「ｄ２」、及び「ｄ３」に任意に分割する。
【０１１７】
ｄ＝（ｄ１＋ｄ２＋ｄ３） ｍｏｄλ
【０１１８】
そして、この３つの分散署名鍵を順繰りにｉ番目の分散署名鍵ｄ（ｉ）として用いる。例えば、「ｄ(１)＝ｄ１、ｄ(２)＝ｄ２、ｄ(３)＝ｄ３」、「ｄ(４)＝ｄ１、ｄ(５)＝ｄ２、ｄ（６）＝ｄ３」、「ｄ(７)＝ｄ１、ｄ(８)＝ｄ２、ｄ(９)＝ｄ３」・・・といった具合に、分散署名鍵ｄ（ｉ）に３つの分散署名鍵「ｄ１」、「ｄ２」、「ｄ３」というように順繰りに用いる。
【０１１９】
この場合、分散署名生成部１０４において分散署名「Ｍ（ｉ）＝ｍ（ｉ）d(i) ｍｏｄｎ」が求められると、署名合成部１０６は、分散署名「Ｍ（ｉ−１）＝ｍ（ｉ−１）d(i-1) ｍｏｄｎ」、及び分散署名「Ｍ（ｉ−２）＝ｍ（ｉ−２）d(i-2) ｍｏｄｎ」を乗算して署名Ｓ（ｉ）を生成する。
【０１２０】
式（８）  Ｓ（ｉ）＝Ｍ（ｉ）×Ｍ（ｉ−１）×Ｍ（ｉ−２） ｍｏｄｎ
【０１２１】
さらに、定常状態検証部１０７は、図７のＳ７０２で設定された署名検証鍵ｅを用いて
式（５）  Ｓ（ｉ）e＝ｍ（ｉ） ｍｏｄｎ
が成り立つか否かを確認する。定常状態検証部１０７は、上記検証式（式（５））が成り立っていれば、３つの測定値「ｍ（ｉ）」、「ｍ（ｉ−１）」、及び「ｍ（ｉ−２）」は定常値、即ち「ｍ（ｉ）＝ｍ（ｉ−１）＝ｍ（ｉ−２）」であると判断する。上記検証式（式（５））で３つの測定値が同一の値であるか否かを判断できる理由は次の通りである。
【０１２２】
即ち、もし３個の測定値が定常値、即ち「ｍ（ｉ−２）＝ｍ（ｉ−１）＝ｍ（ｉ）」が成り立っていれば、式（８）より、式（９）が成り立つ。
【０１２３】
式（９）  Ｓ（ｉ）＝Ｍ（ｉ−２）×Ｍ（ｉ−１）×Ｍ（ｉ）
＝ｍ（ｉ）d(i-2)×ｍ（ｉ）d(i-1)×ｍ（ｉ）d(i) ｍｏｄｎ
＝ｍ（ｉ）d(i-2)+d(i-1)+d(i) ｍｏｄｎ
＝ｍ（ｉ）d ｍｏｄｎ
【０１２４】
式（９）のＳ（ｉ）を底とし、署名検証鍵ｅを指数とするべき乗を計算すると、図７で述べたｅ×ｄ＝１ ｍｏｄλの関係式より、式（１０）、即ち、検証式（５）が成り立つ。
【０１２５】
式（１０）  Ｓ（ｉ）e＝ｍ（ｉ）e×d ｍｏｄｎ＝ｍ（ｉ） ｍｏｄｎ
逆に、３つの測定値が定常値でない場合は、上記検証式（式（５））は成立しない。
【０１２６】
以下、図９の説明に戻る。このように、Ｓ４１７において、署名Ｓ（ｉ）が上記検証式（式（５））を満たすと判断された場合、３つの測定値「ｍ（ｉ）」、「ｍ（ｉ−１）」、及び「ｍ（ｉ−２）」は同一の値であることを示す。この場合（Ｓ４１７でＹｅｓ）、定常状態検証部１０７は、このときの測定値ｍ（ｉ）及び署名Ｓ（ｉ）を送信部１１０に出力する。そして、送信部１１０は、測定値ｍ（ｉ）及び署名Ｓ（ｉ）に加え、測定装置１００のＩＤ及び測定関連情報を含めた図１１のような所定フォーマットのデータを生成し、サーバ２００に送信する（Ｓ４１９）。
【０１２７】
一方、Ｓ４１７において、署名Ｓ（ｉ）が上記検証式（式（５））を満たさないと判断された場合、３つの測定値「ｍ（ｉ）」、「ｍ（ｉ−１）」、及び「ｍ（ｉ−２）」は同一の値でなかったことを示す。この場合（Ｓ４１７でＮｏ）、制御部１１１は、変数ｉに１を加算し（Ｓ４１８）、第１の測定部１０１は、再度、生体データの測定を行う（Ｓ４１８→Ｓ４１１）。そして、測定装置１００は、署名Ｓ（ｉ）が上記検証式（式（５））を満たすまで、即ち、３つの測定値「ｍ（ｉ）」、「ｍ（ｉ−１）」、及び「ｍ（ｉ−２）」が同一の値になるまで上記Ｓ４１１〜Ｓ４１８の処理を繰り返す。
【０１２８】
ここで、図１２を用いて、Ｓ４１５〜Ｓ４１８における定常状態の検証方法を具体的に説明する。図１２は、各測定タイミングｉでの署名の合成方法及び署名の検証方法を示す概念図である。なお、ここで述べる測定値は、量子化された測定値とする。
【０１２９】
まず、測定装置１００はｉ＝１において１回目の測定を実施する。このとき得られた測定値をＡとすると、先のＳ４１４で説明したとおり、分散署名「Ｍ（１）」は「Ａd(1) ｍｏｄｎ」となる。このとき、Ｓ４１５において分散署名の合成は、この分散署名「Ｍ（１）」に加え、初期設定の「Ｍ（−１）＝０」及び「Ｍ（０）＝０」の３つの分散署名を用いて行われる。この場合、分散署名の合成時に底の値が一致しないので（Ｍ（−１）及びＭ（０）の底は「０」、Ｍ（１）の底は「Ａ」）、Ｓ４１７において上記検証式（式（５））は成立しない。したがって、測定装置１００は、変数ｉに１を加算してｉ＝２と設定し、再度、生体データの測定を行う（Ｓ４１８→Ｓ４１１）。
【０１３０】
次に、測定装置１００は２回目の測定を実施する。このとき得られた測定値をＢとすると、分散署名「Ｍ（２）」は「Ｂd(2) ｍｏｄｎ」となる。このとき、Ｓ４１５において分散署名の合成は、この分散署名「Ｍ（２）」を基準として、「Ｍ（２）＝Ｂd(2) ｍｏｄｎ」、「Ｍ（１）＝Ａd(1) ｍｏｄｎ」、及び初期設定の「Ｍ（０）＝０」の３つ分散署名を用いて行われる。この場合、３つの測定値が「Ｂ」、「Ａ」、「０」と同一の値ではないので、分散署名の合成時に底の値が一致せず、Ｓ４１７において上記検証式（式（５））は成立しない。したがって、測定装置１００は、変数ｉに１を加算してｉ＝３と設定し、再度、生体データの測定を行う（Ｓ４１８→Ｓ４１１）。
【０１３１】
次に、測定装置１００は３回目の測定を実施する。このとき得られた測定値をＣとすると、分散署名「Ｍ（３）」は「Ｃd(3) ｍｏｄｎ」となる。このとき、Ｓ４１５において分散署名の合成は、この分散署名「Ｍ（３）」を基準として、「Ｍ（３）＝Ｃd(3) ｍｏｄｎ」、「Ｍ（２）＝Ｂd(2) ｍｏｄｎ」、及び「Ｍ（１）＝Ａd(1) ｍｏｄｎ」の３つの分散署名を用いて行われる。この場合、３つの測定値が「Ｃ」、「Ｂ」、「Ａ」と同一の値ではないので、分散署名の合成時に底の値が一致せず、Ｓ４１７において上記検証式（式（５））は成立しない。したがって、測定装置１００は、変数ｉに１を加算してｉ＝４と設定し、再度、生体データの測定を行う（Ｓ４１８→Ｓ４１１）。
【０１３２】
次に、測定装置１００は４回目の測定を実施する。このとき得られた測定値をＤとすると、分散署名「Ｍ（４）」は「Ｄd(4) ｍｏｄｎ」となる。このとき、Ｓ４１５において分散署名の合成は、この分散署名「Ｍ（４）」を基準として、「Ｍ（４）＝Ｄd(4) ｍｏｄｎ」、「Ｍ（３）＝Ｃd(3) ｍｏｄｎ」、及び「Ｍ（２）＝Ｂd(2) ｍｏｄｎ」の３つの分散署名を用いて行われる。この場合、３つの測定値が「Ｄ」、「Ｃ」、「Ｂ」と同一の値ではないので、分散署名の合成時に底の値が一致せず、Ｓ４１７において上記検証式（式（５））は成立しない。したがって、測定装置１００は、変数ｉに１を加算してｉ＝５と設定し、再度、生体データの測定を行う（Ｓ４１８→Ｓ４１１）。
【０１３３】
次に、測定装置１００は５回目の測定を実施する。このとき得られた測定値をＤとすると、分散署名「Ｍ（５）」は「Ｄd(5) ｍｏｄｎ」となる。このとき、Ｓ４１５において分散署名の合成は、この分散署名「Ｍ（５）」を基準として、「Ｍ（５）＝Ｄd(5) ｍｏｄｎ」、「Ｍ（４）＝Ｄd(4) ｍｏｄｎ」、及び「Ｍ（３）＝Ｃd(3) ｍｏｄｎ」の３つの分散署名を用いて行われる。この場合、３つの測定値が「Ｄ」、「Ｄ」、「Ｃ」と同一の値ではないので、分散署名の合成時に底の値が一致せず、Ｓ４１７において上記検証式（式（５））は成立しない。したがって、測定装置１００は、変数ｉに１を加算してｉ＝６と設定し、再度、生体データの測定を行う（Ｓ４１８→Ｓ４１１）。
【０１３４】
次に、測定装置１００は６回目の測定を実施する。このとき得られる測定値をＤとすると、分散署名「Ｍ（６）」は「Ｄd(6) ｍｏｄｎ」となる。このとき、Ｓ４１５において分散署名の合成は、この分散署名「Ｍ（６）」を基準として、「Ｍ（６）＝Ｄd(6) ｍｏｄｎ」、「Ｍ（５）＝Ｄd(5) ｍｏｄｎ」、及び「Ｍ（４）＝Ｄd(4) ｍｏｄｎ」の３つの分散署名を用いて行われる。この場合、３つの測定値が「Ｄ」と一致する。そのため、分散署名の合成時に底の値が一致し、かつ、指数において署名生成鍵ｄが復元されるので、Ｓ４１７において検証式（式（５））が成立する。したがって、この場合、測定装置１００は計測を終了し、このときの測定値「Ｄ」及び対応する署名「Ｄd ｍｏｄｎ」をサーバ２００に送信する。このとき、測定装置１００は、量子化後の測定値の代わりに量子化前の測定値をサーバ２００に送付してもよい。
【０１３５】
本態様によると、測定装置１００は、連続する所定回数の分散署名を合成して署名を復元する。これにより、ユーザの安静状態が継続した状態で生体データが測定されたものであることを判断できる。
【０１３６】
図１３は、図８のＳ４０３の動作を示すフローチャートである。この処理では、サーバ２００は、測定装置１００から測定値及び署名を受信し、受信した署名を検証する。署名が正しい署名である場合、サーバ２００は、受信した測定値を測定値格納部２０７に格納する。
【０１３７】
まず、受信部２０３は、測定値、署名、ＩＤ、及び測定関連情報を含む所定フォーマットのデータ（図１１）を受信する（Ｓ４３１）。
【０１３８】
次に、署名検証鍵取得部は、受信したＩＤに対応する署名検証鍵ｅを署名検証鍵格納部２０４より取得する（Ｓ４３２）。例えば、測定装置１００から受信したＩＤが「１２３４５」であれば、署名検証鍵取得部２０５は図５で示した署名検証鍵格納部２０４より署名検証鍵「５４３２１」を取得する。なお、この署名検証鍵ｅは、図７で述べた初期設定時（Ｓ７０５）に署名検証鍵格納部２０４に保存されたものである。
【０１３９】
次に、署名検証鍵取得部２０５は、ＩＤに対応する署名検証鍵ｅを取得できたか否かを判断する（Ｓ４３３）。署名検証鍵ｅを取得できなかった場合（Ｓ４３３でＮｏ）、サーバ２００はエラー処理を行う（Ｓ４３７）。例えば、サーバ２００は、署名検証鍵を取得できなかった旨を表示部に表示するようにしても良い。
【０１４０】
一方、ＩＤに対応する署名検証鍵ｅを取得できた場合（Ｓ４３３でＹｅｓ）、署名確認部２０６は、署名検証鍵ｅを用いて署名の検証を行い（Ｓ４３４）、署名が上記検証式（式（５））を満たすか否か確認する（Ｓ４３５）。署名が上記検証式（式（５））を満たさない場合（Ｓ４３５でＮｏ）、サーバ２００はエラー処理を行う（Ｓ４３７）。例えば、サーバ２００は、署名が所定の検証式を満たさない旨を表示部に表示するようにしても良い。
【０１４１】
署名が上記検証式（式（５））を満たす場合（Ｓ４３５でＹｅｓ）、署名確認部２０６は、署名が正しい署名であると判断して、ＩＤごとに測定値及び測定関連情報を測定値格納部２０７に記録する（Ｓ４３６）。例えば、図６の場合、サーバ２００は、ＩＤが「１２３４５」の測定装置１００への２回分（例えば、９時と１２時の２回分）の測定開始指示に対応して、脈拍の測定値及び測定日時を各々ＩＤと対応付けて測定値格納部２０７に記録している。なお、署名も同様に記録してもよい。
【０１４２】
本態様によると、測定装置１００は、所定の鍵分散方法を用いて、測定された生体データが安静な状態で測定されたものか否かを判断し、同時にユーザが安静な状態で生体データを測定したことを示す署名を復元する。これにより、署名生成とは別に安静状態の検知を行う構成を設ける必要が無く、署名生成と一体化して安静状態の検知を行うことができる。そのため、簡易な構成で生体データが安静な状態で測定されたものであるか否かを判断することができる。
【０１４３】
また、復元された署名が正しい署名でない場合は、生体データの測定値が測定時間によって異なることを意味するので、生体データは不安静な状態で測定されたものとみなすことができる。そのため、不安静な状態で測定された生体データを容易に排除できる。
【０１４４】
（実施の形態２）
実施の形態１では、測定装置１００は、測定対象である生体データを用いてユーザが安静な状態であるか否かを判断した。例えば、生体データが脈拍などの場合、ユーザの安静時には、その測定値が「９０」、「８９」、「９１」、・・・と所定の誤差内で一定になる。したがって、測定値に量子化を施して誤差を排除することにより測定値は一定値となるので、測定装置１００は測定対象である脈拍の測定値を用いてユーザが安静な状態であるか否かを判断することができる。例えば、測定値８９、測定値９０、及び測定値９１を量子化して測定値９０とすることで、誤差が排除される。
【０１４５】
ここで、例えば、生体データが血圧などの場合、測定値は下の値が「７０」、上の値が「１２０」と、上の値と下の値との両方の値が必要である。この場合、上の値と下の値とのいずれか一方ではなく、上の値と下の値とのそれぞれについて、安静な状態であるか否かを判断する必要がある。
【０１４６】
そこで、実施の形態２では、測定対象が血圧のような生体データである場合に、脈拍のように、一つの測定値から安静状態を判断できる生体データの測定を、測定対象の生体データの測定とは別に並行して行う。これにより、測定装置はユーザが安静な状態であるか否かを検知する。本実施の形態によれば、測定対象である生体データを用いてユーザが安静な状態であるか否かを判断することが複雑な場合において、測定装置は別の単一の生体データからユーザが安静な状態であることを示す署名を生成することができる。なお、生体データが血圧の場合のほか、心電図のようにその測定値が一定値とならないタイプの生体データの場合にも、本実施の形態は有効である。
【０１４７】
本発明の実施の形態２に係る測定装置及び測定装置の制御方法が用いられる生体データ管理システムは、図２に示した実施の形態１における生体データ管理システムの構成において、測定装置１００及びサーバ２００の代わりに、測定装置１００Ｂ及びサーバ２００Ｂをそれぞれ用いたものである。
【０１４８】
図１４は、本発明の実施の形態２に係る測定装置１００Ｂの内部構成を示すブロック図である。本実施の形態において、測定装置１００Ｂは２つの生体データを並行して測定する。具体的には、測定装置１００Ｂは、ユーザが安静な状態であるか否かを判断するための生体データ、及び測定対象の生体データの２つの生体データを測定する。以下では、ユーザが安静な状態であるか否かを判断するための生体データを「第１の生体データ」とし、測定対象である生体データを「第２の生体データ」とする。なお、実施の形態２では、実施の形態１と異なり、あらかじめ第１の測定値の安静時のデータを第１の参照値として設定しておいて（第１の参照値を「Ｄ」とする）、この設定した値に、所定回数の測定が定常化されることにより、安静であることを判定する。
【０１４９】
測定装置１００Ｂは、実施の形態１で述べた秘密分散法を用いて、第１の測定値よりユーザが安静な状態であることを検知し、安静な状態であることを示す第１の署名を生成する。そして、測定装置１００Ｂは、第１の署名を第２の署名生成鍵として用いて第２の測定値に署名し、第２の生体データが安静な状態で測定されたことを示す第２の署名を生成する。この後、測定装置１００Ｂは、第２の測定値及び第２の署名をサーバ２００Ｂに送信する。
【０１５０】
以下、測定装置１００Ｂを構成する各ブロックについて述べる。
【０１５１】
測定装置１００Ｂは、量子化部１０２と、分散署名鍵生成部１０３と、分散署名生成部１０４と、分散署名格納部１０５と、署名合成部１０６と、定常状態検証部１０７と、ＩＤ格納部１０８と、測定関連情報格納部１０９と、送信部１１０と、制御部１１１と、受信部１１２と、第１の測定部１１３と、第２の測定部１２０と、第１の参照値格納部１２１と、第２の署名生成部１２２とを含む。
【０１５２】
図１４に示す量子化部１０２から測定関連情報格納部１０９までの各ブロックは、図３で述べた各ブロックと同一の機能を有するので、ここでは説明を省略する。
【０１５３】
第１の測定部１１３は、ユーザが安静な状態であるか否かを判断するための第１の生体データを測定する。第１の生体データは、例えば脈拍など、生体データの測定値からユーザの安静状態を検知できる生体データが対象となる。
【０１５４】
第１の参照値格納部１２１は、第１の測定値が安静な状態で測定されているか否かを判断するための基準となる第１の参照値を格納する。この第１の参照値には、例えば、過去にユーザの安静時に測定された第１の生体データの測定値が設定される。
【０１５５】
分散署名生成部１０４は、測定タイミング「ｉ」ごとに、量子化部１０２から出力される生体データの測定値「ｍ（ｉ）」を分散署名鍵生成部１０３から出力される分散署名鍵「ｄ（ｉ）」で署名することにより、分散署名「Ｍ（ｉ）」を生成する。また、本実施の形態では、分散署名生成部１０４は、予め初期設定時に分散署名鍵「ｄ（０）」を用いて第１の参照値「Ｄ」に署名し、分散署名「Ｍ（−１）」（「Ｍ（−１）」＝Ｄd(0) ｍｏｄｎ）を生成して分散署名格納部１０５に格納する。
【０１５６】
署名合成部１０６は、第１の参照値「Ｄ」の分散署名「Ｍ（−１）」（Ｍ（−１）＝Ｄd(0)) ｍｏｄｎ）を基準として、この基準となる分散署名「Ｍ（−１）」を含めて前記所定回数と等しいｋ個の分散署名を合成する。即ち、測定タイミングｉで分散署名Ｍ（ｉ）が生成されると、署名合成部１０６は、基準となる分散署名「Ｍ（−１）」に加え、分散署名「Ｍ（ｉ）」までのｋ−１個の分散署名「Ｍ（ｉ）」、「Ｍ（ｉ−１）」、・・・「Ｍ（ｉ−（ｋ−２））」のｋ個の分散署名を合成する。
【０１５７】
第２の測定部１２０は、測定対象である第２の生体データを測定する。本実施の形態では、この第２の生体データの測定値がサーバ２００Ｂに送信される。
【０１５８】
第２の署名生成部１２２は、署名合成部１０６においてユーザが安静な状態であることを示す第１の署名が生成されると、第１の署名を第２の署名生成鍵として用いて第２の測定値に署名し、第２の生体データが安静な状態で測定されたことを示す第２の署名を生成する。
【０１５９】
送信部１１０は、ユーザが安静な状態であることを示す第１の署名が生成された時に測定された第２の測定値、前記第２の署名、測定装置１００ＢのＩＤ、及び前記測定関連情報を含む所定フォーマットのデータを生成し、サーバ２００Ｂに送信する。
【０１６０】
図１５は、本発明の実施の形態２に係るサーバ２００Ｂの内部構成を示すブロック図である。
【０１６１】
サーバ２００Ｂは、測定開始指示部２０１と、送信部２０２と、受信部２０３と、測定値格納部２０７と、第２の署名検証鍵格納部２２０と、第２の署名検証鍵取得部２２１と、第２の署名確認部２２２とを含む。
【０１６２】
図１５に示す測定開始指示部２０１及び送信部２０２の各ブロックは、図４で述べた各ブロックと同一の機能を有するので、ここでは説明を省略する。
【０１６３】
受信部２０３は、測定装置１００Ｂより、第２の測定値、第２の署名、ＩＤ、及び測定関連情報を含む所定フォーマットのデータを受信する。
【０１６４】
第２の署名検証鍵格納部２２０は、測定装置１００Ｂから収集した第２の署名を検証するための第２の署名検証鍵を、測定装置１００ＢのＩＤと対応付けて格納する。第２の署名検証鍵は、予め初期設定時に第２の署名検証鍵格納部２２０に設定される。この第２の署名検証鍵格納部２２０の詳細については図１６を用いて後述する。
【０１６５】
第２の署名検証鍵取得部２２１は、測定装置１００Ｂから収集したＩＤに対応する第２の署名検証鍵を第２の署名検証鍵格納部２２０より取得し、第２の署名確認部２２２に出力する。
【０１６６】
第２の署名確認部２２２は、第２の署名検証鍵格納部２２０より取得した第２の署名検証鍵を用いて、測定装置１００Ｂから収集した第２の署名を検証する。具体的には、第２の署名確認部２２２は、第２の署名が所定の検証式を満たす場合に、第２の署名が正しい署名であると判断する。
【０１６７】
測定値格納部２０７は、第２の測定値と測定関連情報とを、ＩＤと対応付けて格納する。なお、これらの情報は、第２の署名確認部２２２において検証された第２の署名が正しい署名である場合、第２の署名確認部２２２により測定値格納部２０７に書き込まれる。この測定値格納部２０７の詳細については図１７を用いて後述する。
【０１６８】
図１６は、図１５に示す第２の署名検証鍵格納部２２０のメモリ構成図である。図１６において、第２の署名検証鍵格納部２２０には、項目「ＩＤ」と項目「第２の署名検証鍵」とが設けられ、第２の署名検証鍵格納部２２０は、測定装置１００ＢのＩＤと第２の署名検証鍵とを対応付けて管理している。項目「ＩＤ」には、測定装置１００Ｂを識別するためのＩＤが格納される。項目「第２の署名検証鍵」には、測定装置１００Ｂから送信される第２の署名を検証するための第２の署名検証鍵が格納される。
【０１６９】
例えば、図１６の場合、第２の署名検証鍵格納部２２０は、ＩＤが「１２３４５」の測定装置１００Ｂ及びＩＤが「１２３４６」の測定装置１００Ｂの各々について、対応する第２の署名検証鍵を格納している。ＩＤが「１２３４５」の測定装置１００Ｂには、第２の署名検証鍵「５４３２１」が対応付けられ、ＩＤが「１２３４６」の測定装置１００Ｂには、第２の署名検証鍵「４３２１０」が対応付けられている。
【０１７０】
図１７は、図１５に示す測定値格納部２０７のメモリ構成図である。ここでは、測定対象である第２の生体データを、例えば血圧とした場合について説明する。図１７において、測定値格納部２０７には、項目「ＩＤ」、項目「測定日時」及び項目「第２の測定値：血圧（ｍｍＨＧ）」が設けられ、測定値格納部２０７は、測定装置１００ＢのＩＤと、測定日時及び第２の生体データである血圧の測定値とを対応付けて管理している。項目「ＩＤ」には、測定装置１００Ｂを識別するためのＩＤが格納される。項目「測定日時」には、血圧の測定日時が記録される。項目「第２の測定値：血圧（ｍｍＨＧ）」には、第２の生体データである血圧の測定値が記録される。
【０１７１】
例えば、図１７の場合、測定値格納部２０７は、ＩＤが「１２３４５」の測定装置１００Ｂで行われた２回の測定に関して、その測定日時及び血圧の測定値を記録している。具体的には、ＩＤが「１２３４５」の測定装置１００Ｂは、「２００８年１２月１日の午前９時」に血圧の測定を行い、そのときの測定値は「上の値が１２５、下の値が８０」であったことを示している。同様に、ＩＤが「１２３４５」の測定装置１００Ｂは、「２００８年１２月１日の午後１２時５分」に血圧の測定を行い、そのときの測定値は、「上の値が１３５、下の値が７５」であったことを示している。
【０１７２】
以下、以上のように構成された測定装置１００Ｂ及び測定装置１００Ｂの制御方法について、図面を用いてその動作を説明する。
【０１７３】
図１８は、本発明の実施の形態２に係る測定装置１００Ｂ及び測定装置１００Ｂの制御方法が用いられる生体データ管理システムにおいて、初期設定時の測定装置１００Ｂ、サーバ２００Ｂ及び鍵発行サーバ６００の動作を示すシーケンス図である。この初期設定では、測定装置１００ＢにＩＤ、第１の参照値、第１の署名生成鍵、及び第１の署名検証鍵が設定され、サーバ２００ＢにＩＤ及び第２の署名検証鍵が設定される。なお、第１の署名生成鍵及び第１の署名検証鍵は、第１の生体データの測定値から安静な状態であることを示す第１の署名の生成及び検証に用いられ、それぞれ実施の形態１で述べた署名生成鍵「ｄ」及び署名検証鍵「ｅ」に対応する。
【０１７４】
ここで、第１の参照値は、第１の測定値が安静な状態で測定されているか否かを判断するための基準となる値である。本実施の形態では、第１の参照値は、図１４に示す第１の参照値格納部１２１に設定されている。第１の参照値として、例えば、過去にユーザの安静時に測定された第１の生体データの測定値などが用いられる。
【０１７５】
事前に、鍵発行サーバ６００は、測定装置１００ＢのＩＤに対応する第１の署名生成鍵「ｄ」及び第１の署名検証鍵「ｅ」の対を生成する（Ｓ７１１）。次に、鍵発行サーバ６００は、第１の署名生成鍵「ｄ」を用いて第１の参照値「Ｄ」に署名し、署名「Ｄd ｍｏｄｎ」を生成する。鍵発行サーバ６００はこの署名「Ｄd ｍｏｄｎ」を第２の署名生成鍵として用いる（Ｓ７１２）。そして、鍵発行サーバ６００は、第２の署名生成鍵に対応する第２の署名検証鍵を生成する（Ｓ７１３）。本実施の形態によると、測定装置１００Ｂは、第１の署名検証鍵を用いて第１の参照値に署名し、この署名を第２の署名検証鍵とする。
【０１７６】
次に、鍵発行サーバ６００は、測定装置１００ＢにＩＤ、第１の参照値「Ｄ」、第１の署名生成鍵「ｄ」及び第１の署名検証鍵「ｅ」を配布し（Ｓ７１４）、サーバ２００ＢにＩＤ及び第２の署名検証鍵を配布する（Ｓ７１５）。
【０１７７】
測定装置１００Ｂは、鍵発行サーバ６００よりＩＤ、第１の参照値「Ｄ」、第１の署名生成鍵「ｄ」及び第１の署名検証鍵「ｅ」を受けとると、ＩＤをＩＤ格納部１０８に、第１の参照値「Ｄ」を第１の参照値格納部１２１に、第１の署名生成鍵「ｄ」を分散署名鍵生成部１０３に、第１の署名検証鍵「ｅ」を定常状態検証部１０７に各々設定する。また、測定装置１００Ｂは、予め分散署名鍵生成部１０３において分散署名鍵「ｄ（０）」を生成し、これを用いて第１の参照値「Ｄ」に署名して分散署名「Ｍ（−１）」（Ｍ（−１）＝Ｄd(0) ｍｏｄｎ）を生成する。そして、この分散署名「Ｍ（−１）」（Ｍ（−１）＝Ｄd(0) ｍｏｄｎ）を分散署名格納部１０５に設定する（Ｓ７１６）。
【０１７８】
このように、本実施の形態において、第１の参照値は、鍵発行サーバ６００から測定装置１００Ｂに配布され、図１４に示す第１の参照値格納部１２１に設定される。そして、測定装置１００Ｂは、予め第１の参照値に対応する分散署名を生成し、この分散署名を図１４に示す分散署名格納部１０５に初期値として設定する。
【０１７９】
サーバ２００Ｂは、鍵発行サーバ６００よりＩＤ及び第２の署名検証鍵を受けとると、ＩＤと第２の署名検証鍵とを対応付けて第２の署名検証鍵格納部２２０に設定する（Ｓ７１７）。例えば、ＩＤの値が「１２３４５」で、第２の署名検証鍵の値が「５４３２１」の場合、サーバ２００Ｂは、図１６で示した第２の署名検証鍵格納部２２０の項目「ＩＤ」にＩＤの値「１２３４５」を設定し、項目「第２の署名検証鍵」に第２の署名検証鍵の値「５４３２１」を設定する。
【０１８０】
図１９は、本発明の実施の形態２に係る測定装置１００Ｂ及び測定装置１００Ｂの制御方法が用いられる生体データ管理システムにおいて、第１の生体データ及び第２の生体データ測定時の測定装置１００Ｂとサーバ２００Ｂの動作を示すシーケンス図である。
【０１８１】
まず、サーバ２００Ｂは、ネットワーク３００を介して測定開始の指示を測定装置１００Ｂに送信する（Ｓ５０１）。
【０１８２】
測定装置１００Ｂは、測定開始の指示に従って、ユーザが安静な状態であるか否かを判断するための第１の生体データ、及び測定対象である第２の生体データを測定する。測定装置１００Ｂは、第１の測定値よりユーザが安静な状態であることを検知し、ユーザが安静な状態であることを示す第１の署名を生成する。本実施の形態では、この第１の署名を第２の署名生成鍵として用いる。そして、測定装置１００Ｂは、第２の署名生成鍵を用いて第２の測定値に署名し、第２の生体データが安静な状態で測定されたことを示す第２の署名を生成する。この後、測定装置１００Ｂは、ユーザが安静な状態であることを示す第１の署名が生成された時に測定された第２の測定値、第２の署名、測定装置１００ＢのＩＤ、及び測定関連情報を含む所定フォーマットのデータを生成し、サーバ２００Ｂに送信する（Ｓ５０２）。このＳ５０２の処理の詳細については、図２０を用いて後述する。
【０１８３】
サーバ２００Ｂは、第２の測定値、第２の署名、ＩＤ及び測定関連情報を含む所定フォーマットのデータを受信すると、第２の署名検証鍵を用いて第２の署名が正しい署名であるか否かを検証する。第２の署名が正しい署名である場合、サーバ２００Ｂは第２の測定値及び測定関連情報を測定値格納部２０７に格納する（Ｓ５０３）。このＳ５０３の処理の詳細については、図２２を用いて後述する。
【０１８４】
本態様によると、測定対象である第２の生体データが、例えば、上の値と下の値とからなる血圧データのように複数のデータからなるタイプの生体データであっても、脈拍のようにその測定値から安静状態を判断できる生体データの測定を、測定対象である生体データの測定とは別に並行して行う。これにより、測定装置１００Ｂは簡易な構成でユーザが安静な状態であることを判断することができる。
【０１８５】
また、一定の値とならない心電図データのように、測定対象である第２の生体データが安静な状態で測定したか否かの判断に用いるには相応しくないタイプの生体データであっても、第１の生体データを用いて安静な状態で測定したか否かを判断できる。このため、第２の生体データが安静な状態で測定されたものであることを判断できる。
【０１８６】
図２０は、図１９のＳ５０２の動作を示すフローチャートである。本処理において、測定装置１００Ｂは、その測定値から安静状態を判断できる第１の生体データの測定を、実際の測定対象である第２の生体データとは別に並行して行う。そして、測定装置１００Ｂは、上述の秘密分散法を用いて、第１の測定値よりユーザが安静な状態であることを示す第１の署名を生成する。ここでは、前記所定回数であるｋを「ｋ＝３」として説明する。測定装置１００Ｂは、第１の署名を用いて、第２の測定値が安静な状態で測定されたことを示す第２の署名を生成する。なお、以下の説明では、量子化された後の第１の測定値をｍ1（ｉ）、第２の測定値をｍ2（ｉ）として説明する。
【０１８７】
ここで、本実施の形態では、上述の秘密分散法を用いて第１の測定値よりユーザが安静な状態であることを検知する際、予め分散署名鍵「ｄ（０）」を用いて第１の参照値「Ｄ」に署名し、分散署名「Ｍ（−１）」（Ｍ（−１）＝Ｄd(0) ｍｏｄｎ）を生成する。そして、分散署名「Ｍ（−１）」を基準の分散署名として、この基準の分散署名「Ｍ（−１）」を含めて前記所定回数である３個の分散署名を合成する。即ち、測定タイミングｉで分散署名Ｍ（ｉ）が生成されると、署名合成部１０６は、前記基準となる分散署名「Ｍ（−１）」に加え、分散署名「Ｍ（ｉ）」までの２個の分散署名「Ｍ（ｉ）」及び「Ｍ（ｉ−１）」の３つの分散署名を合成する。
【０１８８】
以下、本処理について説明する。
【０１８９】
事前に、制御部１１１は、初期設定として変数ｉに「１」を設定して「ｉ＝１」とする。このとき、分散署名生成部１０４は、図１９のＳ７１６で述べたように、予め分散署名鍵「ｄ（０）」を用いて前記第１の参照値「Ｄ」に署名し、分散署名「Ｍ（−１）」（Ｍ（−１）＝Ｄd(0) ｍｏｄｎ）を生成する。また、測定開始後に分散署名「Ｍ（１）」（「Ｍ（１）＝ｍ1（１）d(1) ｍｏｄｎ」）が生成された際、分散署名「Ｍ（０）」に値が存在しないので、測定装置１００Ｂは３個の分散署名「Ｍ（−１）」、「Ｍ（０）」、及び「Ｍ（１）」を合成できない。このような状況を回避するために、この初期設定時の分散署名「Ｍ（０）」を「Ｍ（０）＝０」とする（Ｓ５１０）。この初期設定を行った後、測定装置１００Ｂは、第１の測定値からユーザが安静な状態であることを検知し、第２の測定値が安静な状態で測定されたことを示す第２の署名を生成する処理を行う。
【０１９０】
まず、第１の測定部１１３及び第２の測定部１２０は、ｉ回目の第１の生体データ及び第２の生体データをそれぞれ測定する（Ｓ５１１）。さらに、量子化部１０２は、第１の測定値を量子化する（Ｓ５１２）。
【０１９１】
次に、分散署名鍵生成部１０３は、ｉ番目の分散署名鍵ｄ（ｉ）を生成する（Ｓ５１３）。そして、分散署名生成部１０４は、量子化された第１の測定値ｍ1（ｉ）及び分散署名鍵ｄ（ｉ）を用いて分散署名Ｍ（ｉ）を生成し、分散署名格納部１０５に格納する（Ｓ５１４）。
【０１９２】
次に、署名合成部１０６は、分散署名「Ｍ（−１）」を基準として、この基準の分散署名「Ｍ（−１）」を含めて前記所定回数である３個の分散署名「Ｍ（−１）」、「Ｍ（ｉ）」、及び「Ｍ（ｉ−１）」を合成し、署名Ｓ1（ｉ）を生成する（Ｓ５１５）。そして、定常状態検証部１０７は、第１の署名検証鍵「ｅ」を用いて署名Ｓ1（ｉ）を検証し（Ｓ５１６）、署名Ｓ1（ｉ）が所定の検証式（式（５））を満たすか否か判断する（Ｓ５１７）。Ｓ５１７において、署名Ｓ（ｉ）が所定の検証式（式（５））を満たさないと判断された場合、測定値ｍ1（ｉ）及びｍ1（ｉ−１）は第１の参照値「Ｄ」と同一の値でなかったことを示す。この場合（Ｓ５１７でＮｏ）、制御部１１１は変数ｉに１を加算し（Ｓ５１８）、測定装置１００Ｂは、再度、生体データの測定を行う（Ｓ５１８→Ｓ５１１）。
【０１９３】
一方、Ｓ５１７において、署名Ｓ1（ｉ）が所定の検証式（式（５））を満たすと判断された場合、第１の測定値ｍ1（ｉ）及びｍ1（ｉ−１）は第１の参照値「Ｄ」と同一の値であることを示すため、ユーザは安静な状態であると判断することができる。署名合成部１０６は、このときの署名Ｓ1（ｉ）をユーザが安静な状態であることを示す第１の署名として第２の署名生成部１２２に出力する（Ｓ５１７でＹｅｓ、Ｓ５１９）。
【０１９４】
上述のＳ５１５〜Ｓ５１８の処理の詳細については、図２１を用いて後述する。
【０１９５】
次に、第２の署名生成部１２２は、第１の署名Ｓ1（ｉ）を第２の署名生成鍵として用いる。そして、第２の署名生成部１２２は、第２の署名生成鍵を用いて第２の測定値ｍ2（ｉ）に署名し、第２の測定値ｍ2（ｉ）が安静な状態で測定されたことを示す第２の署名Ｓ2（ｉ）を生成する（Ｓ５２０）。
【０１９６】
その後、送信部１１０は、第２の測定値ｍ2（ｉ）、第２の署名Ｓ2（ｉ）、測定装置１００ＢのＩＤ、及び測定関連情報を含む所定フォーマットのデータを生成し、サーバ２００Ｂに送信する（Ｓ５２１）。
【０１９７】
ここで、図２１を用いて、Ｓ５１５〜Ｓ５１８における定常状態の検証方法を具体的に説明する。図２１は、各測定タイミングｉでの署名の合成方法及び署名の検証方法を示す概念図である。なお、ここで述べる第１の測定値は、量子化された測定値とする。
【０１９８】
本実施の形態では、予め初期設定時に、分散署名鍵「ｄ（０）」を用いて第１の参照値「Ｄ」に署名し、分散署名「Ｍ（−１）」（Ｍ（−１）＝Ｄd(0) ｍｏｄｎ）を設定する。そして、測定タイミングｉにおいて、第１の測定値ｍ1（ｉ）及び分散署名鍵「ｄ（ｉ）」から分散署名「Ｍ（ｉ）」（Ｍ（ｉ）＝ｍ1（ｉ）d(i) ｍｏｄｎ）が生成されると、署名合成部１０６は、分散署名「Ｍ（−１）」を基準の分散署名として、この基準の分散署名「Ｍ（−１）」を含めて分散署名「Ｍ（ｉ）」及び分散署名「Ｍ（ｉ−１）」の３個の分散署名を合成する。
【０１９９】
まず、測定装置１００Ｂはｉ＝１において１回目の測定を実施する。このとき得られた第１の測定値ｍ1（１）をＡとすると、分散署名「Ｍ（１）」は「Ａd(1) ｍｏｄｎ」となる。このとき、Ｓ５１５において分散署名の合成は、基準となる分散署名「Ｍ（−１）＝Ｄd(0) ｍｏｄｎ」を含め、分散署名「Ｍ（１）＝Ａd(1) ｍｏｄｎ」、及び分散署名「Ｍ（０）＝０」の３つの分散署名を用いて行われる。この場合、基準である第１の参照値「Ｄ」と、初期値「０」及び１回目の測定で得られた第１の測定値「Ａ」とを時系列で比較すると、第１の参照値「Ｄ」と、２つの測定値「０」、「Ａ」とは同一の値ではない。そのため、分散署名の合成時に底の値が一致せず、Ｓ５１７において上記検証式（式（５））は成立しない。したがって、測定装置１００Ｂは、変数ｉに１を加算してｉ＝２と設定し、再度、生体データの測定を行う（Ｓ５１８→Ｓ５１１）。
【０２００】
次に、測定装置１００Ｂはｉ＝２において２回目の測定を実施する。このとき得られた第１の測定値ｍ1（２）をＢとすると、分散署名「Ｍ（２）」は「Ｂd(2) ｍｏｄｎ」となる。このとき、Ｓ５１５において分散署名の合成は、基準となる分散署名「Ｍ（−１）＝Ｄd(0) ｍｏｄｎ」を含め、分散署名「Ｍ（２）＝Ｂd(2) ｍｏｄｎ」、及び分散署名「Ｍ（１）＝Ａd(1) ｍｏｄｎ」の３つの分散署名を用いて行われる。この場合、基準である第１の参照値「Ｄ」と、１回目の測定で得られた第１の測定値「Ａ」及び２回目の測定で得られた第１の測定値「Ｂ」とを時系列で比較すると、第１の参照値「Ｄ」と、２つの測定値「Ａ」、「Ｂ」とは同一の値ではない。そのため、分散署名の合成時に底の値が一致せず、Ｓ５１７において上記検証式（式（５））は成立しない。したがって、測定装置１００Ｂは、変数ｉに１を加算してｉ＝３と設定し、再度、生体データの測定を行う（Ｓ５１８→Ｓ５１１）。
【０２０１】
次に、測定装置１００Ｂはｉ＝３において３回目の測定を実施する。このとき得られた第１の測定値ｍ1（３）をＣとすると、分散署名「Ｍ（３）」は「Ｃd(3) ｍｏｄｎ」となる。このとき、Ｓ５１５において分散署名の合成は、基準となる分散署名「Ｍ（−１）＝Ｄd(0) ｍｏｄｎ」を含め、分散署名「Ｍ（３）＝Ｃd(3) ｍｏｄｎ」、及び分散署名「Ｍ（２）＝Ｂd(2) ｍｏｄｎ」の３つの分散署名を用いて行われる。この場合、基準である第１の参照値「Ｄ」と、２回目の測定で得られた第１の測定値「Ｂ」及び３回目の測定で得られた第１の測定値「Ｃ」とを時系列で比較すると、第１の参照値「Ｄ」と、２つの測定値「Ｂ」、「Ｃ」とは同一の値ではない。そのため、分散署名の合成時に底の値が一致せず、Ｓ５１７において上記検証式（式（５））は成立しない。したがって、測定装置１００Ｂは、変数ｉに１を加算してｉ＝４と設定し、再度、生体データの測定を行う（Ｓ５１８→Ｓ５１１）。
【０２０２】
次に、測定装置１００Ｂはｉ＝４において４回目の測定を実施する。このとき得られた第１の測定値ｍ1（４）をＤとすると、分散署名「Ｍ（４）」は「Ｄd(4) ｍｏｄｎ」となる。このとき、Ｓ５１５において分散署名の合成は、基準となる分散署名「Ｍ（−１）＝Ｄd(0) ｍｏｄｎ」を含め、分散署名「Ｍ（４）＝Ｄd(4) ｍｏｄｎ」、及び分散署名「Ｍ（３）＝Ｃd(3) ｍｏｄｎ」の３つの分散署名を用いて行われる。この場合、基準である第１の参照値「Ｄ」と、３回目の測定で得られた第１の測定値「Ｃ」及び４回目の測定で得られた第１の測定値「Ｄ」とを時系列で比較すると、第１の参照値「Ｄ」と、２つの測定値「Ｃ」、「Ｄ」とは同一の値ではない。そのため、分散署名の合成時に底の値が一致せず、Ｓ５１７において上記検証式（式（５））は成立しない。したがって、測定装置１００Ｂは、変数ｉに１を加算してｉ＝５と設定し、再度、生体データの測定を行う（Ｓ５１８→Ｓ５１１）。
【０２０３】
次に、測定装置１００Ｂはｉ＝５において５回目の測定を実施する。このとき得られた第１の測定値ｍ1（５）をＤとすると、分散署名「Ｍ（５）」は「Ｄd(5) ｍｏｄｎ」となる。このとき、Ｓ５１５において分散署名の合成は、基準となる分散署名「Ｍ（−１）＝Ｄd(0) ｍｏｄｎ」を含め、分散署名「Ｍ（５）＝Ｄd(5) ｍｏｄｎ」、及び分散署名「Ｍ（４）＝Ｄd(4) ｍｏｄｎ」の３つの分散署名を用いて行われる。この場合、基準である第１の参照値「Ｄ」と、４回目の測定で得られた第１の測定値「Ｄ」及び５回目の測定で得られた第１の測定値「Ｄ」とを時系列で比較すると、第１の参照値「Ｄ」と、２つの測定値「Ｄ」とが一致する。そのため、分散署名の合成時に底の値が一致し、かつ、指数において署名生成鍵ｄが復元されるので、Ｓ５１７において検証式（式（５））が成立する。したがって、この場合、測定装置１００Ｂは計測を終了し、このときの署名「Ｄd ｍｏｄｎ」を第１の署名として第２の署名生成部１２２に送信する。
【０２０４】
本態様によると、測定対象である生体データが、例えば、上の値と下の値とからなる血圧データのように複数のデータからなるタイプの生体データである場合、脈拍のようにその測定値から安静状態を判断できる生体データの測定を、測定対象である生体データの測定とは別に並行して行う。これにより、測定装置１００Ｂは簡易な構成でユーザが安静な状態であるか否かを判断することができる。
【０２０５】
また、一定の値とならない心電図データのように、実際に測定する第２の生体データが安静な状態で測定したか否かの判断に用いるには相応しくないタイプの生体データであっても、第１の生体データを用いて安静な状態で測定したか否かを判断できるので、第２の生体データが安静な状態で測定されたものであることを判断できる。
【０２０６】
さらに、第１の生体データを所定回数測定して得られる分散署名が前記基準の分散署名と一致しない場合には、復元された署名が正しい署名であると判断されない。そのため、医療機関側では、測定の対象である第２の生体データの測定値が安静な状態で測定されたことを判断できると同時に、第２の生体データが、第１の生体データのユーザと同一のユーザであることを判断できる。
【０２０７】
図２２は、図１９のＳ５０３の動作を示すフローチャートである。この処理では、サーバ２００Ｂは、測定装置１００Ｂから第２の測定値及び第２の署名を受信し、受信した第２の署名を検証する。そして、第２の署名が正しい署名である場合、サーバ２００Ｂは第２の測定値を測定値格納部２０７に格納する。
【０２０８】
まず、受信部２０３は、第２の測定値、第２の署名、ＩＤ、及び測定関連情報を含む所定フォーマットのデータを受信する（Ｓ５４１）。
【０２０９】
次に、第２の署名検証鍵取得部２２１は、受信したＩＤに対応する第２の署名検証鍵を第２の署名検証鍵格納部２２０より取得する（Ｓ５４２）。例えば、測定装置１００Ｂから受信したＩＤが「１２３４５」であれば、第２の署名検証鍵取得部２２１は図１６で示した第２の署名検証鍵格納部２２０より第２の署名検証鍵「５４３２１」を取得する。この第２の署名検証鍵は、図１８で述べた初期設定時に鍵発行サーバ６００において生成され、第２の署名検証鍵格納部２２０に設定される。
【０２１０】
次に、第２の署名検証鍵取得部２２１は、ＩＤに対応する第２の署名検証鍵を取得できたか否かを判断する（Ｓ５４３）。第２の署名検証鍵を取得できなかった場合（Ｓ５４３でＮｏ）、サーバ２００Ｂは所定のエラー処理を行う（Ｓ５４７）。例えば、サーバ２００Ｂは、第２の署名検証鍵を取得できなかった旨を表示部に表示するようにしても良い。
【０２１１】
一方、ＩＤに対応する第２の署名検証鍵を取得できた場合（Ｓ５４３でＹｅｓ）、第２の署名確認部２２２は、第２の署名検証鍵を図１３の署名検証鍵ｅとして用いて第２の署名の検証を行い（Ｓ５４４）、第２の署名をＳ（ｉ）として、図１３と同様の検証式（式（５））を満たすか否か確認する（Ｓ５４５）。第２の署名が所定の検証式を満たさない場合（Ｓ５４５でＮｏ）、サーバ２００Ｂはエラー処理を行う（Ｓ５４７）。例えば、サーバ２００Ｂは、第２の署名が所定の検証式を満たさない旨を表示部に表示するようにしても良い。
【０２１２】
第２の署名が検証式（式（５））を満たす場合（Ｓ５４５でＹｅｓ）、署名確認部２０６は、第２の署名が正しい署名であると判断して、ＩＤごとに第２の測定値及び測定関連情報を測定値格納部２０７に記録する（Ｓ５４６）。例えば、図１７では、測定対象である第２の生体データが血圧の場合を例に示している。サーバ２００Ｂは、ＩＤが「１２３４５」の測定装置１００Ｂで行われた２回の血圧の測定結果に関して、血圧の測定値及び測定日時を各々ＩＤと対応付けて測定値格納部２０７に記録している。
【０２１３】
本態様によると、サーバ２００Ｂは、予め、ユーザが安静な状態のときに測定された第１の参照値に基づいて生成された第２の署名検証鍵を所持している。そして、サーバ２００Ｂは、測定装置１００Ｂから第２の測定値及び第２の署名を受信すると、第２の署名を第２の署名検証鍵を用いて検証する。
【０２１４】
これにより、サーバ２００Ｂは、第１の参照値を元に生成された第２の署名検証鍵を用いて第２の署名を検証するので、第２の測定値が安静な状態で測定されたか否かを判断することができる。そのため、測定対象の生体データが、複数のデータからなるタイプの生体データ、又は安静な状態で測定したか否かの判断に用いるには相応しくないタイプの生体データであっても、サーバ２００Ｂは、生体データの測定値が安静な状態で測定されたと判断することができる。
【０２１５】
（実施の形態３）
実施の形態２では、測定装置１００Ｂは、測定対象の生体データが、複数のデータからなるタイプの生体データ、又は安静な状態で測定したか否かの判断に用いるには相応しくないタイプの生体データである場合に、ユーザが安静な状態であるか否かを判断するための生体データ（前記第１の生体データ）及び測定対象の生体データ（前記第２の生体データ）の２つの生体データを並行して測定した。そして、測定装置１００Ｂは、第１の生体データからユーザが安静な状態であることを示す第１の署名を生成し、第１の署名を第２の署名生成鍵として用いて第２の測定値が安静な状態で測定されたことを示す第２の署名を生成した。これにより、サーバ２００Ｂ側ではユーザが安静な状態で測定を行ったか否かを判断することができた。
【０２１６】
一方、実施の形態３では、実施の形態２と同様に、測定装置は、まず、ユーザが安静な状態であるか否かを判断するための生体データ（前記第１の生体データ）及び測定対象の生体データ（前記第２の生体データ）の２つの生体データを並行して測定する。さらに、測定装置は、第１の測定値よりユーザが安静な状態であることを示す第１の署名を生成し、これを暗号鍵として用いて測定対象である第２の測定値を暗号化する。これにより、測定対象の生体データが安静な状態で測定されたことを判断できるとともに、外部のサーバ２００に送信する生体データの秘匿性を保証して、ユーザのプライバシーを保護することができるものである。
【０２１７】
本発明の実施の形態３に係る測定装置及び測定装置の制御方法が用いられる生体データ管理システムは、図２に示した実施の形態１における生体データ管理システムの構成において、測定装置１００及びサーバ２００の代わりに、測定装置１００Ｃ及びサーバ２００Ｃをそれぞれ用いたものである。
【０２１８】
図２３は、本発明の実施の形態３に係る測定装置１００Ｃの内部構成を示すブロック図である。
【０２１９】
測定装置１００Ｃは、量子化部１０２と、分散署名鍵生成部１０３と、分散署名生成部１０４と、分散署名格納部１０５と、署名合成部１０６と、定常状態検証部１０７と、ＩＤ格納部１０８と、測定関連情報格納部１０９と、送信部１１０と、制御部１１１と、受信部１１２と、第１の測定部１１３と、第２の測定部１２０と、第１の参照値格納部１２１と、第２の暗号化部１３０とを含む。
【０２２０】
測定装置１００Ｃは、図１４に示した測定装置１００Ｂの構成のうち、第２の署名生成部１２２に代えて第２の暗号化部１３０を配置したものである。したがって、図２３の第２の暗号化部１３０を除いた他のブロックについては、図１４で述べた各ブロックと同一の機能を有するため、ここでは説明を省略する。
【０２２１】
第２の暗号化部１３０は、署名合成部１０６においてユーザが安静な状態であることを示す第１の署名が生成されると、第１の署名を暗号鍵として用いて第２の測定値を暗号化する。
【０２２２】
送信部１１０は、暗号化された第２の測定値、測定装置１００ＣのＩＤ、及び前記測定関連情報を含む所定フォーマットのデータを生成し、サーバ２００Ｃに送信する。
【０２２３】
図２４は、本発明の一実施の形態であるサーバ２００Ｃの内部構成を示すブロック図である。
【０２２４】
サーバ２００Ｃは、測定開始指示部２０１と、送信部２０２と、受信部２０３と、測定値格納部２０７と、第２の復号鍵格納部２３０と、第２の復号鍵取得部２３１と、第２の復号部２３２とを含む。
【０２２５】
なお、図２４に示す測定開始指示部２０１及び送信部２０２の各ブロックは、図１５で述べた各ブロックと同一の機能を有するので、ここでは説明を省略する。
【０２２６】
受信部２０３は、測定装置１００Ｃより、暗号化された第２の測定値、ＩＤ、及び測定関連情報を含む所定フォーマットのデータを受信する。
【０２２７】
第２の復号鍵格納部２３０は、暗号化された第２の署名を検証するための第２の復号鍵を、測定装置１００ＣのＩＤと対応付けて格納する。第２の復号鍵は、予め初期設定時に第２の復号鍵格納部２３０に設定される。この第２の復号鍵格納部２３０の詳細については図２５を用いて後述する。
【０２２８】
第２の復号鍵取得部２３１は、測定装置１００Ｃから収集したＩＤに対応する第２の復号鍵を第２の復号鍵格納部２３０より取得し、第２の復号部２３２に出力する。
【０２２９】
第２の復号部２３２は、第２の復号鍵取得部２３１において取得した第２の復号鍵を用いて、暗号化された第２の測定値を復号する。
【０２３０】
測定値格納部２０７は、復号された第２の測定値と測定関連情報とを、ＩＤと対応付けて格納する。この測定値格納部２０７の詳細については図２６を用いて後述する。
【０２３１】
図２５は、図２４に示す第２の復号鍵格納部２３０のメモリ構成図である。図２５において、第２の復号鍵格納部２３０には、項目「ＩＤ」と項目「第２の復号鍵」とが設けられ、第２の復号鍵格納部２３０は、測定装置１００ＣのＩＤと第２の復号鍵とを対応付けて管理している。項目「ＩＤ」には、測定装置１００Ｃを識別するためのＩＤが格納される。項目「第２の復号鍵」には、暗号化された第２の測定値を復号するための第２の復号鍵が格納される。
【０２３２】
例えば、図２５の場合、第２の復号鍵格納部２３０は、ＩＤが「１２３４５」の測定装置１００Ｃ及びＩＤが「１２３４６」の測定装置１００Ｃの各々について、対応する第２の復号鍵を格納している。ＩＤが「１２３４５」の測定装置１００Ｃには、第２の復号鍵「５５５５」が対応付けられ、ＩＤが「１２３４６」の測定装置１００Ｃには、第２の復号鍵「３３３２」が対応付けられている。
【０２３３】
図２６は、図２４に示す測定値格納部２０７のメモリ構成図である。ここでは、測定対象である第２の生体データを、例えば心電図データとした場合について説明する。図２６において、測定値格納部２０７には、項目「ＩＤ」、項目「測定日時」及び項目「第２の測定値：心電図ファイル（ファイル名）」が設けられ、測定値格納部２０７は、測定装置１００ＣのＩＤと、測定日時と、第２の生体データである心電図のファイル名とを対応付けて管理している。項目「ＩＤ」には、測定装置１００Ｃを識別するためのＩＤが格納される。項目「測定日時」には、血圧の測定日時が記録される。項目「第２の測定値：心電図ファイル（ファイル名）」には、第２の生体データである心電図データのファイル名が記録される。
【０２３４】
例えば、図２６の場合、測定値格納部２０７は、ＩＤが「１２３４５」の測定装置１００Ｃで行われた２回の測定に関して、その測定日時及び心電図データのファイル名を記録している。具体的には、ＩＤが「１２３４５」の測定装置１００Ｃは、「２００８年１２月１日の午前９時」に心電図の測定を行い、この心電図データのファイル名が「￥１２３４５￥０８１２０１￥０９００」であることを示している。同様に、ＩＤが「１２３４５」の測定装置１００Ｃは、「２００８年１２月１日の午後１２時５分」に心電図の測定を行い、この心電図データのファイル名が、「￥１２３４５￥０８１２０１￥１２０５」であることを示している。
【０２３５】
以下、以上のように構成された測定装置１００Ｃ及び測定装置１００Ｃの制御方法について、図面を用いてその動作を説明する。
【０２３６】
図２７は、本発明の実施の形態３に係る測定装置１００Ｃ及び測定装置１００Ｃの制御方法が用いられる生体データ管理システムにおいて、初期設定時の測定装置１００Ｃ、サーバ２００Ｃ及び鍵発行サーバ６００の動作を示すシーケンス図である。この初期設定では、測定装置１００Ｃには、図１８と同様に測定装置１００ＣのＩＤ、第１の参照値、第１の署名生成鍵、第１の署名検証鍵が設定される。一方、サーバ２００Ｃには、前記ＩＤ及び第２の復号鍵が設定される。
【０２３７】
事前に、鍵発行サーバ６００は、測定装置１００ＣのＩＤに対応する第１の署名生成鍵「ｄ」及び第１の署名検証鍵「ｅ」の対を生成する（Ｓ７２１）。さらに、鍵発行サーバ６００は、第１の署名生成鍵「ｄ」を用いて第１の参照値「Ｄ」に署名し、署名「Ｄd ｍｏｄｎ」を生成する。鍵発行サーバ６００はこの署名「Ｄd ｍｏｄｎ」を第２の復号鍵として用いる（Ｓ７２２）。
【０２３８】
次に、鍵発行サーバ６００は、測定装置１００ＣにＩＤ、第１の参照値「Ｄ」、第１の署名生成鍵「ｄ」及び第１の署名検証鍵「ｅ」を配布し（Ｓ７２３）、サーバ２００ＣにＩＤ及び第２の復号鍵を配布する（Ｓ７２４）。
【０２３９】
測定装置１００Ｃは、鍵発行サーバ６００よりＩＤ、第１の参照値「Ｄ」、第１の署名生成鍵「ｄ」及び第１の署名検証鍵「ｅ」を受けとると、ＩＤをＩＤ格納部１０８に、第１の参照値「Ｄ」を第１の参照値格納部１２１に、第１の署名生成鍵「ｄ」を分散署名鍵生成部１０３に、第１の署名検証鍵「ｅ」を定常状態検証部１０７に各々設定する。また、測定装置１００Ｃは、予め分散署名鍵生成部１０３において分散署名鍵「ｄ（０）」を生成し、これを用いて第１の参照値「Ｄ」に署名して分散署名「Ｍ（−１）」（Ｍ（−１）＝Ｄd(0) ｍｏｄｎ）を生成する。そして、この分散署名「Ｍ（−１）」（Ｍ（−１）＝Ｄd(0) ｍｏｄｎ）を分散署名格納部１０５に設定する（Ｓ７２５）。
【０２４０】
サーバ２００Ｃは、鍵発行サーバ６００よりＩＤ及び第２の復号鍵を受けとると、ＩＤと第２の復号鍵とを対応付けて第２の復号鍵格納部２３０に設定する（Ｓ７２６）。例えば、ＩＤの値が「１２３４５」で、第２の復号鍵の値が「５５５５」の場合、図２５で示した第２の復号鍵格納部２３０の項目「ＩＤ」にＩＤの値「１２３４５」を設定し、項目「第２の復号鍵」に第２の復号鍵の値「５５５５」を設定する。
【０２４１】
図２８は、本発明の実施の形態３に係る測定装置１００Ｃ及び測定装置１００Ｃの制御方法が用いられる生体データ管理システムにおいて、第１の生体データ及び第２の生体データ測定時の測定装置１００Ｃとサーバ２００Ｃの動作を示すシーケンス図である。
【０２４２】
まず、サーバ２００Ｃは、ネットワーク３００を介して測定開始の指示を測定装置１００Ｃに送信する（Ｓ６０１）。
【０２４３】
測定装置１００Ｃは、測定開始の指示に従って、ユーザが安静な状態であるか否かを判断するための第１の生体データ、及び測定対象である第２の生体データを測定する。測定装置１００Ｃは、第１の測定値よりユーザが安静な状態であることを検知し、ユーザが安静な状態であることを示す第１の署名を生成する。さらに、測定装置１００Ｃは、第１の署名を暗号鍵として用い、第２の測定値を暗号化する。この後、測定装置１００Ｃは、暗号化された第２の測定値、測定装置１００ＣのＩＤ、及び測定関連情報を含む所定フォーマットのデータを生成し、サーバ２００Ｃに送信する（Ｓ６０２）。このＳ６０２の処理の詳細については、図２９を用いて後述する。
【０２４４】
サーバ２００Ｃは、暗号化された第２の測定値、ＩＤ及び測定関連情報を含む所定フォーマットのデータを受信すると、第２の復号鍵を用いて暗号化された第２の測定値を復号する。さらに、サーバ２００Ｃは復号された第２の測定値及び測定関連情報を測定値格納部２０７に格納する（Ｓ６０３）。このＳ６０３の処理の詳細については、図３０を用いて後述する。
【０２４５】
図２９は、図２８のＳ６０２の動作を示すフローチャートである。本処理において、測定装置１００Ｃは、実施の形態２（図２０）と同様に、まず、ユーザが安静な状態であるか否かを判断するための生体データである第１の生体データ及び測定対象の生体データである第２の生体データの２つの生体データを並行して測定する。さらに、測定装置１００Ｃは、第１の測定値よりユーザが安静な状態であることを示す第１の署名を生成し、これを暗号鍵として用いて測定対象である第２の測定値を暗号化する。
【０２４６】
なお、本処理において、図２９のＳ５１０〜Ｓ５１９までの各処理は、図２０で述べたＳ５１０〜Ｓ５１０までの処理と同じ処理を行うため、ここでは詳細な説明を省略する。
【０２４７】
事前に、制御部１１１は、図２０と同様に初期設定を行う（Ｓ５１０）。この初期設定を行った後、まず、第１の測定部１１３及び第２の測定部１２０は、ｉ回目の第１の生体データ及び第２の生体データの測定をそれぞれ行い（Ｓ５１１）、量子化部１０２は、第１の測定値を量子化する（Ｓ５１２）。そして、測定装置１００Ｃは、上述の秘密分散法を用いて、量子化された第１の測定値からユーザが安静な状態であることを示す第１の署名を生成する（Ｓ５１２〜Ｓ５１９）。なお、本処理において、この第１の測定値からユーザが安静な状態であるか否かを判断する方法は、図２０のＳ５１３〜Ｓ５１８及び図２１で説明した方法と同様である。
【０２４８】
次に、Ｓ５１９において第１の署名が生成された後の処理について詳細に説明する。第２の暗号化部１３０は、Ｓ５１９において第１の署名が生成されると、この第１の署名を暗号鍵として用い、このとき測定されたｉ番目の第２の測定値を暗号化する（Ｓ５６０）。そして、送信部１１０は、この暗号化された第２の測定値、測定装置１００ＣのＩＤ、及び測定関連情報を含む所定フォーマットのデータを生成し、サーバ２００Ｃに送信する（Ｓ５６１）。
【０２４９】
本態様によると、第１の測定値よりユーザが安静な状態であることを示す第１の署名を生成し、これを暗号鍵として用いて測定対象である第２の測定値を暗号化する。これにより、測定対象の生体データが安静な状態で測定されたことを判断できるとともに、外部のサーバ２００Ｃに送信する生体データの秘匿性を保証して、ユーザのプライバシーを保護することができる。
【０２５０】
図３０は、図２８のＳ６０３の動作を示すフローチャートである。この処理では、サーバ２００Ｃは、測定装置１００Ｃから暗号化された第２の測定値を受信し、第２の復号鍵を用いてこの暗号化された測定値を復号化する。
【０２５１】
まず、受信部２０３は、暗号化された第２の測定値、ＩＤ、及び測定関連情報を含む所定フォーマットのデータを受信する（Ｓ５８１）。
【０２５２】
次に、第２の復号鍵取得部２３１は、第２の復号鍵格納部２３０より前記ＩＤに対応する第２の復号鍵を取得する（Ｓ５８２）。例えば、測定装置１００Ｃから受信したＩＤが「１２３４５」であれば、第２の復号鍵取得部２３１は図２５で示した第２の復号鍵格納部２３０より第２の復号鍵「５５５５」を取得する。この第２の復号鍵は、図１８で述べた初期設定時に鍵発行サーバ６００において生成され、第２の復号鍵格納部２３０に設定される。
【０２５３】
次に、第２の復号鍵取得部２３１は、ＩＤに対応する第２の復号鍵を取得できたか否かを判断する（Ｓ５８３）。第２の復号鍵を取得できなかった場合（Ｓ５８３でＮｏ）、サーバ２００Ｃはエラー処理を行う（Ｓ５８６）。例えば、サーバ２００Ｃは、第２の署名検証鍵を取得できなかった旨を表示部に表示するようにしても良い。
【０２５４】
一方、ＩＤに対応する第２の復号鍵を取得できた場合（Ｓ５８３でＹｅｓ）、第２の復号部２３２は、第２の復号鍵を用いて暗号化された第２の測定値を復号する（Ｓ５８４）。さらに、第２の復号部２３２は、ＩＤごとに復号された第２の測定値及び測定関連情報を測定値格納部２０７に記録する（Ｓ５８５）。例えば、図２６では、サーバ２００Ｃは、ＩＤが「１２３４５」の測定装置１００Ｃで行われた２回の心電図の測定結果に関して、心電図データのファイル名及び測定日時を各々ＩＤと対応付けて測定値格納部２０７に記録した例を示している。
【０２５５】
本態様によると、サーバ２００Ｃは、予め、ユーザが安静な状態のときに測定された第１の参照値に基づいて生成された第２の復号鍵を所持している。そして、サーバ２００Ｃは、測定装置１００Ｃから暗号化された第２の測定値を受信すると、第２の復号鍵を用いてこの暗号化された第２の測定値を復号する。これにより、サーバ２００Ｃは、第１の参照値を元に生成された第２の復号鍵を用いて暗号化された第２の測定値を検証するので、第２の測定値が安静な状態で測定されたか否かを判断することができる。また、測定装置１００Ｃから送信される生体データの秘匿性を保証して、ユーザのプライバシーを保護することができる。
【０２５６】
＜変形例＞
（１）上述の実施の形態１〜３では、例えば血圧計などの測定装置を常時装着して、医療機関側サーバの指示に従って、都度生体データを測定し、安定した測定情報を自動送信するようにしているが、測定装置は常時装着していなくてもよい。また、自動送信ではなく、ユーザが意識して送信ボタンを押すなどの形態であってもよい。
【０２５７】
（２）上述の実施の形態１〜３では、医療機関側サーバからの指示により、測定装置が測定を開始するとしているが、例えば測定装置にタイマーが装備されており、ある一定の時間ごとに測定を開始してもよい。また、別途センサーがあり、例えばＧＰＳで外出を感知し、測定開始としてもよい。
【０２５８】
（３）上述の実施の形態２及び３では、第２の測定値から直接安静状態を検知できない場合に、第１の測定値で安静状態を検知しているが、その場合に限定されない。安静状態における第２の測定値を第三者から秘密にしたい場合や、第１の測定値による安静状態の検知のほうが妥当である場合にも利用できる。
【０２５９】
（４）上述の実施の形態１及び２では、医療機関側に設けられるサーバは、署名検証した結果、測定値と測定関連情報を記録しているが、受信した署名も記録しておいてもよい。これにより、記録後に再度測定値の署名を確認することができる。
【０２６０】
（５）上述の実施の形態１〜３では、分散署名鍵生成部において、分散署名鍵を都度求めているが、あらかじめ分散署名鍵を作成して記憶しておき、順次、分散署名生成部に入力する構成であってもよい。
【０２６１】
（６）上述の実施の形態１〜３で用いる秘密分散法は、上記述べた２方法に限定されない。その他の秘密分散法を適用してもよい。
【０２６２】
（７）上述の実施の形態１〜３では、血圧、脈拍、又は心電図といった生体データの測定を例に挙げているが、これに限定されるものではない。例えば、生体データが呼吸数又は体温であってもよい。
【０２６３】
（８）上述の実施の形態１〜３では、連続したｋ回の測定値を入力として、署名合成を行い、合成された署名を用いて、生体データが一定であること、すなわち安静状態を判定しているが、署名合成に用いる測定値は、連続したｋ個でなくてもよい。計測回数をＬとして、Ｌ個の測定値のうちの任意のｋ個を取り出して、署名合成を行い、安静状態を判定するのであってもよい。
【０２６４】
（９）上述の実施の形態２及び３では、第１の生体データを用いて安静状態を検知し、第２の生体データの署名又は暗号化を行っている。第２の生体データとしては、それ単体では安静状態を検知しにくいもの（例えば心電図など）としているが、それに限定されるわけではなく、任意のものが選択できる。
【０２６５】
（１０）上述の実施の形態１〜３において、ある一定時間内又はある一定計測回数内に測定値が安定しない場合には、測定装置がサーバにエラーを通知してもよい。通知方法としては、例えば次のような方法であってもよい。
【０２６６】
−  測定値が安定しない旨のみを通知
−  測定値が安定しない旨と、そのときの複数の測定値（署名なし）
【０２６７】
（１１）上述の実施の形態１〜３において、測定値が安定しない状態が一定時間又は一定回数続いた場合には、測定装置はユーザに対してアラートを出しても良い。
【０２６８】
（１２）上述の実施の形態１〜３における量子化部による量子化の方法は、ユーザによってレベルを選択できてもよい。比較的測定値が安定している人は、小さい差でも異なる出力となるような量子化にしてもよいし、測定値が不安定な人は、大きな差でも同じ出力となるような量子化にしてもよい。このレベルは、初期設定時に設定できても良いし、年齢などを入力することにより、自動的にレベルが選択されてもよい。この場合、署名データに量子化レベルを示す情報を付加してもよい。
【０２６９】
（１３）上述の実施の形態１〜３における量子化部による量子化の方法は、計測回数によってレベルが変わってもよい。計測の初期段階は、小さい差でも異なる出力となるような量子化にして、計測が安定しない場合、大きな差でも同じ出力となるような量子化に変化していくようにしてもよい。この場合、署名データに量子化レベルを示す情報を付加してもよい。
【０２７０】
（１４）上述の実施の形態２及び３では、第１の参照値格納部１２１に第１の参照値を格納し、分散署名生成部１０４が分散署名鍵「ｄ（０）」を用いて第１の参照値に分散署名することにより得られる分散署名「Ｍ（−１）」をしている。しかし、第１の参照値格納部１２１に、予め、この分散署名「Ｍ（−１）」が格納されていてもよい。この場合には、第１の参照値格納部１２１は、署名合成部１０６に接続され、署名合成部１０６が、第１の参照値格納部１２１から分散署名「Ｍ（−１）」を読み出し、分散署名「Ｍ（−１）」とｋ−１個の分散署名「Ｍ（ｉ）」、「Ｍ（ｉ−１）」、・・・「Ｍ（ｉ−（ｋ−２））」とからなるｋ個の分散署名を合成するようにしてもよい。
【０２７１】
（１５）上述の実施の形態１〜３の各装置は、具体的には、それぞれ個別のコンピュータプログラムであってもよいし、オペレーティングシステムに組み込まれるモジュールであってもよいし、オペレーティングシステムから呼ばれるドライバであってもよいし、アプリケーションプログラムであってもよい。
【０２７２】
（１６）上述の実施の形態１〜３の各装置は、具体的には、マイクロプロセッサ、ＲＯＭ、ＲＡＭ、ハードディスクユニット、ディスプレイユニット、キーボード、マウスなどから構成されるコンピュータシステムである。ＲＡＭ又はハードディスクユニットには、コンピュータプログラムが記憶されている。マイクロプロセッサが、コンピュータプログラムにしたがって動作することにより、各装置は、その機能を達成する。ここでコンピュータプログラムは、所定の機能を達成するために、コンピュータに対する指令を示す命令コードが複数個組み合わされて構成されたものである。
【０２７３】
（１７）上述の実施の形態１〜３の各装置を構成する構成要素の一部又は全部は、１個のシステムＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ：大規模集積回路）から構成されているとしてもよい。システムＬＳＩは、複数の構成部を１個のチップ上に集積して製造された超多機能ＬＳＩであり、具体的には、マイクロプロセッサ、ＲＯＭ、ＲＡＭなどを含んで構成されるコンピュータシステムである。ＲＡＭには、コンピュータプログラムが記憶されている。マイクロプロセッサが、コンピュータプログラムにしたがって動作することにより、システムＬＳＩは、その機能を達成する。
【０２７４】
また、上記の各装置を構成する構成要素の各部は、個別に１チップ化されていても良いし、一部又は全てを含むように１チップ化されてもよい。
【０２７５】
また、ここでは、システムＬＳＩとしたが、集積度の違いにより、ＩＣ、ＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩと呼称されることもある。また、集積回路化の手法はＬＳＩに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。ＬＳＩ製造後に、プログラムすることが可能なＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）や、ＬＳＩ内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用しても良い。
【０２７６】
さらには、半導体技術の進歩又は派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適用等が可能性としてありえる。
【０２７７】
（１８）上述の実施の形態１〜３の各装置を構成する構成要素の一部又は全部は、各装置に脱着可能なＩＣカード又は単体のモジュールから構成されているとしてもよい。ＩＣカード又はモジュールは、マイクロプロセッサ、ＲＯＭ、ＲＡＭなどから構成されるコンピュータシステムである。ＩＣカード又はモジュールは、上記の超多機能ＬＳＩを含むとしてもよい。マイクロプロセッサが、コンピュータプログラムにしたがって動作することにより、ＩＣカード又はモジュールは、その機能を達成する。このＩＣカード又はこのモジュールは、耐タンパ性を有するとしてもよい。
【０２７８】
（１９）本発明は、上記に示す方法であるとしてもよい。また、これらの方法をコンピュータにより実現するコンピュータプログラムであるとしてもよいし、コンピュータプログラムからなるデジタル信号であるとしてもよい。
【０２７９】
また、本発明は、コンピュータプログラム又はデジタル信号をコンピュータ読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＢＤ（Ｂｌｕ−ｒａｙ（登録商標）  Ｄｉｓｃ）、半導体メモリなどに記録したものとしてもよい。また、これらの記録媒体に記録されているデジタル信号であるとしてもよい。
【０２８０】
また、本発明は、コンピュータプログラム又はデジタル信号を、電気通信回線、無線又は有線通信回線、インターネットを代表とするネットワーク、データ放送等を経由して伝送するものとしてもよい。
【０２８１】
また、本発明は、マイクロプロセッサとメモリを備えたコンピュータシステムであって、メモリは、上記コンピュータプログラムを記憶しており、マイクロプロセッサは、コンピュータプログラムにしたがって動作するとしてもよい。
【０２８２】
また、プログラム若しくはデジタル信号を記録媒体に記録して移送することにより、又はプログラム若しくはデジタル信号をネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施するとしてもよい。
【０２８３】
（２０）上述の実施の形態１〜３及び上記変形例をそれぞれ組み合わせるとしてもよい
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて請求の範囲によって示され、請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。
【産業上の利用可能性】
【０２８４】
本発明は、生体データを測定する測定装置等に適用できる。
【符号の説明】
【０２８５】
１００、１００Ｂ、１００Ｃ  測定装置
１０１、１１３  第１の測定部
１０２  量子化部
１０３  分散署名鍵生成部
１０４  分散署名生成部
１０６  署名合成部
１０７  定常状態検証部
１２０  第２の測定部
１２１  第１の参照値格納部
１２２  第２の署名生成部
１３０  第２の暗号化部
２００、２００Ｂ、２００Ｃ  サーバ
２０４  署名検証鍵格納部
２０５  署名検証鍵取得部
２０６  署名確認部
２０７  測定値格納部
２２０  第２の署名検証鍵格納部
２２１  第２の署名検証鍵取得部
２２２  第２の署名確認部
２３０  第２の復号鍵格納部
２３１  第２の復号鍵取得部
２３２  第２の復号部
６００  鍵発行サーバ
【図１】
0005497007.tif 000002
【図２】
0005497007.tif 000003
【図３】
0005497007.tif 000004
【図４】
0005497007.tif 000005
【図５】
0005497007.tif 000006
【図６】
0005497007.tif 000007
【図７】
0005497007.tif 000008
【図８】
0005497007.tif 000009
【図９】
0005497007.tif 000010
【図１０Ａ】
0005497007.tif 000011
【図１０Ｂ】
0005497007.tif 000012
【図１１】
0005497007.tif 000013
【図１２】
0005497007.tif 000014
【図１３】
0005497007.tif 000015
【図１４】
0005497007.tif 000016
【図１５】
0005497007.tif 000017
【図１６】
0005497007.tif 000018
【図１７】
0005497007.tif 000019
【図１８】
0005497007.tif 000020
【図１９】
0005497007.tif 000021
【図２０】
0005497007.tif 000022
【図２１】
0005497007.tif 000023
【図２２】
0005497007.tif 000024
【図２３】
0005497007.tif 000025
【図２４】
0005497007.tif 000026
【図２５】
0005497007.tif 000027
【図２６】
0005497007.tif 000028
【図２７】
0005497007.tif 000029
【図２８】
0005497007.tif 000030
【図２９】
0005497007.tif 000031
【図３０】
0005497007.tif 000032