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

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

▶ ジーエヌ リザウンド エー/エスの特許一覧

特許6714446聴覚デバイスおよび聴覚デバイス通信の方法
<>
  • 特許6714446-聴覚デバイスおよび聴覚デバイス通信の方法 図000002
  • 特許6714446-聴覚デバイスおよび聴覚デバイス通信の方法 図000003
  • 特許6714446-聴覚デバイスおよび聴覚デバイス通信の方法 図000004
  • 特許6714446-聴覚デバイスおよび聴覚デバイス通信の方法 図000005
  • 特許6714446-聴覚デバイスおよび聴覚デバイス通信の方法 図000006
  • 特許6714446-聴覚デバイスおよび聴覚デバイス通信の方法 図000007
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6714446
(24)【登録日】2020年6月9日
(45)【発行日】2020年6月24日
(54)【発明の名称】聴覚デバイスおよび聴覚デバイス通信の方法
(51)【国際特許分類】
   H04L 9/14 20060101AFI20200615BHJP
   H04L 9/32 20060101ALI20200615BHJP
   G09C 1/00 20060101ALI20200615BHJP
   H04L 9/08 20060101ALI20200615BHJP
   G06F 21/44 20130101ALI20200615BHJP
【FI】
   H04L9/00 641
   H04L9/00 675A
   G09C1/00 640D
   H04L9/00 601C
   G06F21/44
【請求項の数】15
【外国語出願】
【全頁数】42
(21)【出願番号】特願2016-120146(P2016-120146)
(22)【出願日】2016年6月16日
(65)【公開番号】特開2017-17685(P2017-17685A)
(43)【公開日】2017年1月19日
【審査請求日】2019年5月30日
(31)【優先権主張番号】PA201570434
(32)【優先日】2015年7月2日
(33)【優先権主張国】DK
(31)【優先権主張番号】15175138.5
(32)【優先日】2015年7月2日
(33)【優先権主張国】EP
(73)【特許権者】
【識別番号】503021401
【氏名又は名称】ジーエヌ ヒアリング エー/エス
【氏名又は名称原語表記】GN Hearing A/S
(74)【代理人】
【識別番号】110000110
【氏名又は名称】特許業務法人快友国際特許事務所
(72)【発明者】
【氏名】ペダーセン ブライアン ダム
(72)【発明者】
【氏名】ヴェネルボー アラン ムンク
【審査官】 青木 重徳
(56)【参考文献】
【文献】 特開2014−239427(JP,A)
【文献】 特開2013−162433(JP,A)
【文献】 特開2012−085130(JP,A)
【文献】 特開2011−248593(JP,A)
【文献】 特開2007−336308(JP,A)
【文献】 特表2004−527188(JP,A)
【文献】 米国特許出願公開第2014/0169599(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 9/14
G06F 21/44
G09C 1/00
H04L 9/08
H04L 9/32
(57)【特許請求の範囲】
【請求項1】
聴覚デバイスであって、
前記聴覚デバイスのユーザの聴力損失を補うように構成された処理ユニットと、
メモリ・ユニットと、
インターフェースとを備えており、
前記処理ユニットは、
前記インターフェースを介してセッションに対する接続要求を受信し、
セッション識別子を取得し、
前記インターフェースを介して、聴覚デバイス識別子および前記セッション識別子を含む接続応答を送信し、
前記インターフェースを介して、認証鍵識別子およびクライアント・デバイス・データを含む認証メッセージを受信し、
前記認証鍵識別子に基づいて前記メモリ・ユニット内の複数の聴覚デバイス鍵のうちから聴覚デバイス鍵を選択し、
前記選択された聴覚デバイス鍵に基づいて前記クライアント・デバイス・データを検証し、
前記検証が失敗した場合に前記セッションを終了するように構成されている、聴覚デバイス。
【請求項2】
前記認証メッセージは、認証タイプ識別子を含み、前記複数の聴覚デバイス鍵のうちから聴覚デバイス鍵を選択することは、前記認証タイプ識別子に基づいている、請求項1に記載の聴覚デバイス。
【請求項3】
前記クライアント・デバイス・データは、暗号化されたクライアント・デバイス証明書を含み、前記処理ユニットは、共通秘密に基づいて証明書鍵を生成するように構成されており、前記クライアント・デバイス・データを検証することは、前記暗号化されているクライアント・デバイス証明書を前記証明書鍵で復号して、前記暗号化されているクライアント・デバイス証明書の復号されたバージョンを取得することを含む、請求項1または2に記載の聴覚デバイス。
【請求項4】
前記共通秘密は、前記選択された聴覚デバイス鍵および/または前記セッション識別子に基づいている、請求項3に記載の聴覚デバイス。
【請求項5】
前記クライアント・デバイス・データを検証することは、前記認証鍵識別子が前記クライアント・デバイス証明書のクライアント・デバイス鍵識別子と一致しているかどうかを判定することを含み、一致していないと判定された場合に検証は失敗となる、請求項3または4に記載の聴覚デバイス。
【請求項6】
前記クライアント・デバイス・データを検証することは、前記クライアント・デバイス証明書のクライアント・デバイス・タイプ識別子が有効であるかどうかを判定することを含み、前記クライアント・デバイス証明書の前記クライアント・デバイス・タイプ識別子が有効でない場合に検証は失敗となる、請求項3から5のいずれか一項に記載の聴覚デバイス。
【請求項7】
前記クライアント・デバイス・データを検証することは、前記クライアント・デバイス証明書のデジタル署名を検証することを含み、前記デジタル署名が検証されない場合に検証は失敗となる、請求項3から6のいずれか一項に記載の聴覚デバイス。
【請求項8】
前記クライアント・デバイス証明書は、署名デバイス識別子および/またはクライアント・デバイス識別子を含み、前記クライアント・デバイス・データを検証することは、前記署名デバイス識別子および/または前記クライアント・デバイス識別子が有効であるかどうかを判定することを含み、前記クライアント・デバイスの前記クライアント・デバイス識別子および/または前記署名デバイス識別子が有効でない場合に検証は失敗となる、請求項3から7のいずれか一項に記載の聴覚デバイス。
【請求項9】
前記処理ユニットは、クライアント・デバイス・データおよび認証デバイス識別子を含む追加の認証メッセージを受信するように構成されており、
前記処理ユニットは、
前記メモリ・ユニットから、前記認証デバイス識別子に基づいて前記共通秘密を取得し、
前記共通秘密から追加の証明書鍵を生成し、
前記追加の証明書鍵に基づいて前記クライアント・デバイス・データを検証するように構成されている、請求項3から8のいずれか一項に記載の聴覚デバイス。
【請求項10】
前記処理ユニットは、前記共通秘密および前記セッション識別子に基づいてオフライン・セッション鍵を生成するように構成され、前記処理ユニットは、前記オフライン・セッション鍵を使用して前記クライアント・デバイスと通信するように構成されている、請求項9に記載の聴覚デバイス。
【請求項11】
前記認証メッセージは、認証トークン識別子を含み、前記処理ユニットは、前記認証トークン識別子を前記メモリ・ユニットに記憶し、前記認証トークン識別子を前記共通秘密とリンクするように構成されている、請求項3から10のいずれか一項に記載の聴覚デバイス。
【請求項12】
前記処理ユニットは、クライアント・デバイス・データ、認証タイプ識別子、認証鍵識別子、および/または認証セッション・トークン識別子を含むさらなる認証メッセージを受信するように構成されており、
前記処理ユニットは、
前記認証タイプ識別子に基づいて共通秘密を取得し、
前記共通秘密に基づいてトークン鍵を生成し、
前記トークン鍵および前記セッション識別子に基づいてセッション・トークン識別子を生成し、
前記セッション・トークン識別子に基づいて前記認証セッション・トークン識別子を検証するように構成されている、請求項3から11のいずれか一項に記載の聴覚デバイス。
【請求項13】
前記処理ユニットは、前記セッション識別子および前記聴覚デバイス鍵に基づいてセッション鍵を生成するように構成されており、前記処理ユニットは、前記セッション鍵に基づいてセッション・データを受信し、認証するように構成されている、請求項1から12のいずれか一項に記載の聴覚デバイス。
【請求項14】
聴覚デバイスを運用する方法であって、前記聴覚デバイスは、前記聴覚デバイスのユーザの聴力損失を補うように構成された処理ユニットと、メモリ・ユニットと、インターフェースとを備えており、前記方法は、
前記インターフェースを介してセッションに対する接続要求を受信するステップと、
セッション識別子を取得するステップと、
前記インターフェースを介して、聴覚デバイス識別子およびセッション識別子を含む接続応答を送信するステップと、
前記インターフェースを介して、認証鍵識別子およびクライアント・デバイス・データを含む認証メッセージを受信するステップと、
前記認証鍵識別子に基づいて複数の聴覚デバイス鍵のうちから聴覚デバイス鍵を選択するステップと、
前記選択された聴覚デバイス鍵に基づいて前記クライアント・デバイス・データを検証するステップと、
検証が失敗した場合に前記セッションを終了するステップとを含む方法。
【請求項15】
前記認証メッセージは、認証タイプ識別子を含み、前記複数の聴覚デバイス鍵のうちから聴覚デバイス鍵を選択するステップは、前記認証タイプ識別子に基づいている、請求項14に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、聴覚デバイスの分野に関し、詳細には、聴覚デバイスのセキュリティに関する。安全な聴覚デバイス通信のための聴覚デバイスおよび方法が開示されている。
【背景技術】
【0002】
聴覚デバイスの機能は、次第に高度化してきている。聴覚デバイスと、聴覚デバイス・フィッティング装置、タブレット、スマートフォン、およびリモート・コントローラなどの外部デバイスとの間のワイヤレス通信が発展している。聴覚デバイスのワイヤレス通信インターフェースは、オープン標準ベースのインターフェースを使用する。しかしながら、このことは、セキュリティに関して多くの問題を提起する。聴覚デバイスは、受信したデータを合法的であるとみなし、不正パーティによるメモリへの書き込みまたは変更を許し得る。そのような攻撃があると、その結果、補聴器の誤動作、またはバッテリ消耗攻撃が引き起こされ得る。
【0003】
しかしながら、聴覚デバイスは、計算能力、メモリ空間などに関して厳しい制約条件が課せられている非常に小型のデバイスである。市販のセキュリティ・アルゴリズムおよびプロトコルは、聴覚デバイス上ではたやすく機能し得ない。
【発明の概要】
【発明が解決しようとする課題】
【0004】
セキュリティが改善されている方法および聴覚デバイスが必要である。
【課題を解決するための手段】
【0005】
開示されるのは、聴覚デバイスである。聴覚デバイスは、処理ユニットと、メモリ・ユニットと、インターフェースとを備える。聴覚デバイスは、聴覚デバイスのユーザの聴力損失を補うように構成された処理ユニットを備え得る。処理ユニットは、インターフェースを介してセッションに対する接続要求を受信し、セッション識別子を取得するように構成される。処理ユニットは、インターフェースを介して、聴覚デバイス識別子およびセッション識別子を含む接続応答を送信するように構成され得る。処理ユニットは、インターフェースを介して、認証メッセージを受信するように構成される。認証メッセージは、認証鍵識別子および/またはクライアント・デバイス・データを含むものとしてよい。処理ユニットは、例えば、認証鍵識別子に基づいて、メモリ・ユニット内の複数の聴覚デバイス鍵のうちから聴覚デバイス鍵を選択するように構成され得る。処理ユニットは、例えば、選択された聴覚デバイス鍵またはデフォルトの聴覚デバイス鍵に基づいて、クライアント・デバイス・データを検証し、検証が失敗した場合にセッションを終了するように構成され得る。
【0006】
聴覚デバイスを運用する方法も開示されている。聴覚デバイスは、聴覚デバイスのユーザの聴力損失を補うように構成された処理ユニットと、メモリ・ユニットと、インターフェースとを備える。方法は、インターフェースを介してセッションに対する接続要求を受信することを含む。方法は、セッション識別子を取得することを含む。方法は、インターフェースを介して、聴覚デバイス識別子および/またはセッション識別子を含む接続応答を送信することを含み得る。方法は、インターフェースを介して、認証メッセージを受信することを含む。認証メッセージは、認証鍵識別子および/またはクライアント・デバイス・データを含む。方法は、例えば、認証鍵識別子に基づいて、メモリ・ユニット内の複数の聴覚デバイス鍵のうちから聴覚デバイス鍵を選択することを含み得る。方法は、例えば、選択された聴覚デバイス鍵またはデフォルトの聴覚デバイス鍵に基づいて、クライアント・デバイス・データを検証することと、検証が失敗した場合にセッションを終了することとを含み得る。
【0007】
開示されている聴覚デバイスおよび方法は、聴覚デバイスの計算のオーバーヘッドおよび電力消費量を最小限度に抑えながら、聴覚デバイスが、聴覚デバイスへのアクセスを非認証パーティから保護することと、聴覚デバイスとの通信を盗聴、変更攻撃、および反射攻撃から保護することとを実行できるようにする。本開示では、聴覚デバイスに、通信パーティおよび受信されたメッセージのさまざまなレベルの認証を実行するほかに、プレーン・テキストで秘密を交換せず盗聴から通信を保護するための鍵材料を導出する機能を付与する。本開示は、通信の認証および/または機密性をサポートする聴覚デバイスを実現する。さらに、本開示は、スケーラブルなセキュリティ・アーキテクチャを提供する。
【0008】
上記、および他の特徴ならびに利点は、添付図面を参照する例示的な実施形態の以下の「発明を実施するための形態」の説明により、当業者にとって容易に理解できるものとなるであろう。
【図面の簡単な説明】
【0009】
図1】本開示による例示的なアーキテクチャの概略図である。
図2】例示的な聴覚デバイスの概略図である。
図3A】例示的なクライアント・デバイス証明書の概略図である。
図3B】例示的な聴覚デバイス証明書の概略図である。
図4】例示的な信号図の概略図である。
図5】例示的な方法のフローチャートの概略図である。
【発明を実施するための形態】
【0010】
以下では、図を参照しつつさまざまな実施形態について説明する。全体を通して同様の参照番号は、同様の要素を指す。したがって、同様の要素については、それぞれの図面の説明に関して詳しくは説明しない。図面は、実施形態の説明を容易にすることのみ意図されていることにも留意されたい。これらは、特許請求の範囲に記載された発明の網羅的説明として、または特許請求の範囲に記載された発明の技術的範囲の限定として、意図されていない。さらに、図示されている実施形態は、図示されているすべての態様または利点を有している必要はない。特定の実施形態と併せて説明されている態様または利点は、必ずしもその実施形態に限定されず、そのように図示されていない、またはそのように明示的に説明されていないとしても、他の任意の実施形態で実施され得る。
【0011】
本明細書全体を通して、同じ参照番号は、同一のまたは対応する部分に対して使用される。
【0012】
本開示の目的は、当技術分野における上述の欠点および不利点のうちの1つまたは複数を、単独で、または組み合わせて、軽減するか、緩和するか、または排除しようとする、聴覚デバイスおよび聴覚デバイスを運用する方法を提供することである。
【0013】
本開示は、聴覚デバイスの改善されたセキュリティに関する。すなわち、本明細書で開示されている聴覚デバイスは、脅威および攻撃から保護するためのセキュリティ・メカニズムなどの適切な保護手段および対抗策を実装することによって、セキュリティ脅威、脆弱性、および攻撃に対してロバストである。本開示は、反射攻撃、不正アクセス、バッテリ消耗攻撃、盗聴、および介入者攻撃に対してロバストである聴覚デバイスに関する。
【0014】
本明細書で使用されるとき、「聴覚デバイス」という用語は、聴覚器具、補聴デバイス、ヘッドセット、一組のヘッドフォンなどの、ユーザが音を聴くのを補助するように構成されたデバイスを指す。
【0015】
本明細書で使用されるとき、「証明書」という用語は、デバイスの素性および内容の正当性および/または真正性を検証することなどの、デバイスの素性および内容の検証を可能にするデータ構造体を指す。証明書は、証明書の発行者によって証明書の保有者に関連付けられている内容を提示するように構成される。証明書は、デジタル署名を備えており、したがって、証明書の受領者は、証明書の内容および素性を検証または認証することができる。証明書は、聴覚デバイス・システムにおける安全な通信を可能にする1つまたは複数の暗号鍵(例えば、聴覚デバイス鍵)などの1つまたは複数の識別子および/または鍵材料を備え得る。これにより、証明書は、素性および内容の認証、否認防止、および/または完全性保護を達成することを可能にする。証明書は、有効期間、1つまたは複数のアルゴリズム・パラメータ、および/または発行者をさらに含み得る。証明書は、デジタル証明書、公開鍵証明書、属性証明書、および/または承認証明書を含むものとしてよい。
【0016】
本明細書で使用されるとき、「鍵」という用語は、暗号鍵、すなわち、暗号アルゴリズムの機能的出力を決定するデータ(例えば、文字列、パラメータ)を指す。例えば、鍵は、暗号化ではプレーン・テキストから暗号文への変換、および復号ではその逆の変換を行うことを可能にする。鍵は、デジタル署名および/またはメッセージ認証コード、MACを検証するためにも使用され得る。鍵は、同じ鍵が暗号化と復号の両方に使用されるとき、いわゆる対称鍵である。非対称暗号法または公開鍵暗号法では、鍵材料は、鍵ペアであり、いわゆる、公開鍵と秘密鍵とを備える秘密/公開鍵ペアである。非対称または公開鍵暗号システム(Rivest Shamir Adelman(RSA)暗号システム、および楕円曲線暗号法(ECC)など)では、公開鍵は、暗号化および/または署名検証に使用され、秘密鍵は、復号および/または署名生成に使用される。聴覚デバイス鍵は、聴覚デバイス通信のためのセッション鍵および/または証明書鍵などの、1つまたは複数の対称鍵を導出することを可能にする鍵材料であるものとしてよい。聴覚デバイス鍵は、例えば、製造時に、聴覚デバイスのメモリ・ユニットに記憶され得る。聴覚デバイス鍵は、対称鍵を導出するために使用される鍵材料を備え得る。聴覚デバイス鍵は、例えば、AES−128ビット鍵などの、Advanced Encryption Standard(AES)鍵を含む。
【0017】
本明細書で使用されるとき、「識別子」という用語は、分類する、および/または一意に識別するなど、識別するために使用されるデータを指す。識別子は、単語、数、英字、記号、リスト、アレイ、またはこれらの任意の組合せの形態をとり得る。例えば、数としての識別子は、符号なし整数のアレイなど、長さが例えば8ビット、16ビット、32ビットなどの、符号なし整数(uint)などの整数の形態をとり得る。
【0018】
本明細書で使用される「クライアント・デバイス」という用語は、聴覚デバイスと通信することができるデバイスを指す。クライアント・デバイスは、クライアントとして動作するコンピューティング・デバイスを指すものとしてよい。クライアント・デバイスは、フィッティング・デバイス、ハンドヘルド・デバイス、リレー、タブレット、パーソナル・コンピュータ、携帯電話、パーソナル・コンピュータもしくはタブレットもしくは携帯電話上で実行されるアプリケーション、および/またはパーソナル・コンピュータにプラグ接続されるUSBドングルを含み得る。クライアント・デバイスは、フィッティング・タイプ、例えば、聴覚デバイスをフィッティングするためのタブレット製品モデル、カテゴリ、またはタイプ、聴覚デバイスをフィッティングするためのUSBドングル製品モデル、カテゴリ、またはタイプなどの、クライアント・デバイスのモデル、カテゴリ、またはタイプに対応するクライアント・デバイス・タイプを割り当てられ得る。クライアント・デバイスは、フィッティング・データ、聴覚デバイス動作パラメータ、および/またはファームウェア・データのいずれかを送信することによって、聴覚デバイスの動作を制御することができる。
【0019】
本開示は、聴覚デバイスに関する。聴覚デバイスは、処理ユニットと、メモリ・ユニットと、インターフェースとを備える。メモリ・ユニットは、限定はしないが、読出し専用メモリ(ROM)、ランダム・アクセス・メモリ(RAM)、などを含む、取り外し可能なおよび取り外し不可能なデータ記憶ユニットを含み得る。メモリ・ユニットは、そこに記憶される聴覚デバイス証明書を有するものとしてよい。メモリ・ユニットは、指定されたメモリ・セル内、および/または指定されたアドレスなど、メモリ・ユニットのメモリ・アドレスに、および/またはメモリ・ユニットのメモリ・セル内に記憶される聴覚デバイス証明書を有するものとしてよい。聴覚デバイスは、聴覚デバイスのユーザの聴力損失を補うように構成された処理ユニットを備え得る。インターフェースは、例えば、2.4から2.5GHzの範囲内の周波数でワイヤレス通信するように構成された、ワイヤレス・トランシーバを備え得る。1つまたは複数の例示的な聴覚デバイスにおいて、インターフェースは、データを受信し、および/または送信するように構成されたワイヤレス・トランシーバをそれぞれ備える、クライアント・デバイスまたは聴覚デバイスと、ワイヤレス通信などの、通信を行うように構成される。処理ユニットは、受信されたデータに従って聴覚デバイスのユーザの聴力損失を補うように構成され得る。処理ユニットは、インターフェースを介してセッションに対する接続要求を受信し、適宜、例えば、接続要求に応答して、セッション識別子を取得するように構成される。インターフェースは、クライアント・デバイスからセッションに対する接続要求を受信するように構成され得る。処理ユニットは、乱数または疑似乱数を生成することなどによって、セッション識別子を取得するように構成される。処理ユニットは、メモリ・ユニットにセッション識別子を記憶するように構成され得る。メモリ・ユニットは、指定されたメモリ・セル内、および/または指定されたアドレスなど、メモリ・ユニットのメモリ・アドレスに、および/またはメモリ・ユニットのメモリ・セル内にセッション識別子を記憶するように構成され得る。接続要求は、聴覚デバイスがこの早期の段階で接続要求および接続要求を送信するクライアント・デバイスの認証を実行することを可能にするために、認証鍵識別子および/または認証タイプ識別子を含み得る。これは、あるレベルのアクセス制御を行うことができる。
【0020】
処理ユニットは、インターフェースを介して、聴覚デバイス識別子および/またはセッション識別子を含む接続応答を送信するように構成される。処理ユニットは、セッション識別子および聴覚デバイス識別子を接続応答に含めることによって接続応答を生成するように構成され得る。聴覚デバイス識別子は、聴覚デバイスの一意の識別子を指すものとしてよい。聴覚デバイス識別子は、聴覚デバイス証明書に含まれ得る。インターフェースは、例えば、クライアント・デバイスに接続応答を送信するように構成され得る。
【0021】
処理ユニットは、インターフェースを介して、認証鍵識別子および/またはクライアント・デバイス・データを含む認証メッセージを受信するように構成される。例えば、インターフェースは、クライアント・デバイスから認証メッセージを受信するように構成され得る。例えば、聴覚デバイスは、通信セッションを確立するためにクライアント・デバイスから認証メッセージを受信する。クライアント・デバイス・データは、(暗号化または復号された)クライアント・デバイス証明書、フィッティング・データ、聴覚デバイス動作パラメータ、および/またはファームウェア・データを含むことができる。例えば、認証メッセージは、プレーン・テキスト内に認証鍵識別子を入れることができる。認証鍵識別子は、例えば、聴覚デバイス証明書の一部として、聴覚デバイス鍵、例えば、聴覚デバイスのメモリ・ユニットに記憶されている聴覚デバイス鍵を示すものとしてよい。
【0022】
処理ユニットは、適宜、認証鍵識別子および/または他の識別子に基づいて、例えば、メモリ・ユニット内の複数の聴覚デバイス鍵のうちから、聴覚デバイス鍵を選択するように構成される。認証鍵識別子が、聴覚デバイスによって保持されている聴覚デバイス鍵識別子に基づいて聴覚デバイスによって受け入れ可能であるとき、処理ユニットは、認証鍵識別子が示す聴覚デバイス鍵を選択し、選択された聴覚デバイス鍵を、セッションを保護する際の鍵材料として使用するように構成され得る。処理ユニットは、例えば、認証鍵識別子および/または認証タイプ識別子に基づいてメモリ・ユニット内の複数の聴覚デバイス鍵のうちから、聴覚デバイス鍵を選択するように構成され得る。認証タイプ識別子は、聴覚デバイスによってプレーン・テキストで受信され、および/または(暗号化または復号されている)クライアント・デバイス証明書内のクライアント・デバイス・タイプ識別子として受信され得る。例えば、処理ユニットは、認証鍵識別子および認証タイプ識別子が示す聴覚デバイス鍵を選択するように構成され得る。
【0023】
処理ユニットは、例えば、選択された聴覚デバイス鍵に基づいて、クライアント・デバイス・データを検証し、検証が失敗した場合にセッションを終了するように構成される。クライアント・デバイス・データを検証することは、聴覚デバイス証明書またはその少なくとも一部に基づいてもよい。選択された聴覚デバイス鍵に基づいてクライアント・デバイス・データを検証することは、クライアント・デバイス・データに含まれるMACおよび/またはデジタル署名を検証することなど、選択された聴覚デバイス鍵に基づいてクライアント・デバイス・データの完全性を検証することを含み得る。選択された聴覚デバイス鍵に基づいてクライアント・デバイス・データを検証することは、クライアント・デバイス・データが暗号化されて受信されるとき、選択された聴覚デバイス鍵を(復号鍵を導出するための鍵材料として、または復号鍵として)使用して、クライアント・デバイス・データ、例えば、クライアント・デバイス証明書を復号することを含み得る。選択された聴覚デバイス鍵に基づいてクライアント・デバイス・データを検証することは、受信されたクライアント・デバイス・データをメモリ・ユニット内に記憶されているデータと比較することによって、クライアント・デバイス・データ、例えば、復号されたクライアント・デバイス証明書を検証することを含み得る。クライアント・デバイス・データは、クライアント・デバイス証明書(暗号化されたクライアント・デバイス証明書など)、認証鍵識別子、および/または認証タイプ識別子を含むことができる。クライアント・デバイスは、クライアント・デバイス証明書を割り当てられ得る。クライアント・デバイス証明書は、例えば、クライアント・デバイスを製造するデバイスによって、生成され、クライアント・デバイスに割り当てられる証明書を指す。
【0024】
クライアント・デバイス証明書は、証明書タイプ識別子を備え得る。証明書タイプ識別子は、聴覚デバイス・ファミリ証明書タイプ、聴覚デバイス証明書タイプ、ファームウェア証明書タイプ、研究開発証明書タイプ、クライアント・デバイス証明書タイプなどの、さまざまな証明書タイプのうちの証明書の1つのタイプを示し得る。証明書タイプ識別子は、どのようなタイプの証明書を受信し、記憶し、および/または取り出すかを識別するために聴覚デバイスによって使用され得る。クライアント・デバイス証明書は、証明書のデータ・フォーマット・バージョンを示すバージョン識別子を含むものとしてよい。聴覚デバイスは、証明書タイプ識別子および/またはバージョン識別子を使用して、証明書がどのようなタイプのデータを含むか、どのようなタイプのデータが証明書のフィールドに入っているかを決定するように構成され得る。例えば、聴覚デバイスは、証明書タイプ識別子および/またはバージョン識別子に基づいて、証明書のどのようなフィールドがデジタル署名を含むか、および/またはデジタル署名を検証するためにどの公開鍵が必要かを決定する。証明書タイプ識別子と公開/秘密鍵ペアとの間に一対一マッピングがあることが想定され得る。
【0025】
クライアント・デバイス証明書は、署名デバイス識別子を備え得る。署名デバイス識別子は、クライアント・デバイス証明書に署名したデバイス(製造デバイス、例えば、集積回路カード、スマート・カード、ハードウェア・セキュリティ・モジュールなど)を識別する一意の識別子を指す。署名デバイス識別子は、例えば、署名デバイスの媒体アクセス制御(MAC)アドレス、および/またはシリアル番号を含み得る。署名デバイス識別子は、適宜、例えば、聴覚デバイスが、署名デバイスが例えばブラックリストに載っているかどうかを決定すること、したがってブラックリストに載っている署名デバイスによって署名された証明書を拒絶することを可能にする。
【0026】
クライアント・デバイス証明書は、第1のハードウェア識別子および/または第2のハードウェア識別子などの1つまたは複数のハードウェア識別子を備え得る。ハードウェア識別子は、クライアント・デバイスに備えられている無線チップまたはクライアント・デバイスのデジタル・シグナル・プロセッサなどの、クライアント・デバイスに備えられているハードウェアを識別することができる。ハードウェア識別子は、ハードウェアの製造時に聴覚デバイスに備えられているハードウェアのレジスタに記憶され得る。ハードウェア識別子は、シリアル番号、媒体アクセス制御(MAC)アドレス、チップ識別子、またはこれらの任意の組合せを含み得る。クライアント・デバイス証明書は、クライアント・デバイス・タイプ識別子を備え得る。クライアント・デバイス・タイプ識別子は、クライアント・デバイスが属しているタイプを示し得る。クライアント・デバイスは、フィッティング・タイプ、例えば、聴覚デバイスをフィッティングするように構成されたタブレット製品モデル、カテゴリ、またはタイプ、聴覚デバイスをフィッティングするように構成されたUSBドングル製品モデル、カテゴリ、またはタイプなどの、クライアント・デバイスのモデル、カテゴリ、またはタイプに対応するクライアント・デバイス・タイプを割り当てられ得る。
【0027】
クライアント・デバイス証明書は、クライアント・デバイス識別子を備え得る。クライアント・デバイス識別子は、クライアント・デバイスを識別する識別子を指す。クライアント・デバイス識別子は、例えば、クライアント・デバイスの媒体アクセス制御(MAC)アドレス、および/またはクライアント・デバイスのシリアル番号を含み得る。
【0028】
クライアント・デバイス証明書は、クライアント・デバイス鍵識別子を備え得る。クライアント・デバイス鍵識別子は、聴覚デバイスなどの、外部パーティとの通信を保護するための鍵材料として使用されるクライアント・デバイス鍵を示し得る。1つまたは複数の例示的なクライアント・デバイス証明書において、クライアント・デバイス証明書は、クライアント・デバイスのBluetooth(登録商標)アドレスを含む。
【0029】
クライアント・デバイス証明書は、デジタル署名を備える。デジタル署名は、署名者の正当性の検証などの、聴覚デバイス証明書の真正性の立証または検証を可能にする。デジタル署名は、適宜、クライアント・デバイス・フィッティング秘密鍵を使用して製造デバイスによって生成される。聴覚デバイスは、デジタル署名を備える(暗号化されているか、または暗号化されていない)クライアント・デバイス証明書を受信したとき(すなわち、暗号化されたクライアント・デバイス証明書を含む認証メッセージを受信し、クライアント・デバイス証明書の復号されたバージョンを取得したとき)にクライアント・デバイス証明書のデジタル署名を検証するように構成され得る。デジタル署名は、対応するクライアント・デバイス・フィッティング公開鍵を使用して聴覚デバイスによって検証可能である。デジタル署名が、申し立てられた公開鍵を使用して検証に成功しなかった場合、聴覚デバイスは、クライアント・デバイス証明書を破棄し、および/または通常動作を中断することができる。これは、聴覚デバイスが改竄されたまたは非認証パーティから受信されたクライアント・デバイス証明書を拒絶するという利点をもたらし得る。したがって、聴覚デバイスとの通信は、偽装攻撃、変更攻撃、およびなりすまし攻撃に対してロバストであり得る。
【0030】
認証メッセージは、認証タイプ識別子を含み得る。複数の聴覚デバイス鍵のうちから聴覚デバイス鍵を1つ選択することは、認証タイプ識別子に基づくものとしてよい。認証タイプ識別子は、例えば、(暗号化された)クライアント・デバイス証明書の、クライアント・デバイス・タイプ識別子および/または証明書タイプ識別子を示し得る。クライアント・デバイスは、フィッティング・タイプ、例えば、聴覚デバイスをフィッティングするように構成されたタブレット製品モデル、カテゴリ、またはタイプ、聴覚デバイスをフィッティングするように構成されたUSBドングル製品モデル、カテゴリ、またはタイプなどの、クライアント・デバイスのモデル、カテゴリ、またはタイプに対応するクライアント・デバイス・タイプを割り当てられ得る。クライアント・デバイス・タイプ識別子は、クライアント・デバイス・タイプを示す識別子を指すものとしてよい。クライアント・デバイス・タイプ識別子は、クライアント・デバイス・タイプを一意に識別することができる。クライアント・デバイス・タイプ識別子は、クライアント・デバイスが属しているタイプを識別し得る。クライアント・デバイス・タイプ識別子は、クライアント・デバイス証明書に含まれ得る。聴覚デバイスは、認証タイプ識別子および/または認証鍵識別子に対応する聴覚デバイス鍵を選択するように構成され得る。
【0031】
クライアント・デバイス・データは、暗号化されたクライアント・デバイス証明書を備えるものとしてよく、処理ユニットは、選択された聴覚デバイス鍵および/またはセッション識別子に基づいて証明書鍵を生成するように構成され得る。クライアント・デバイス・データを検証することは、暗号化されているクライアント・デバイス証明書を証明書鍵で復号して、暗号化されているクライアント・デバイス証明書の復号されたバージョンを取得することを含み得る。暗号化されたクライアント・デバイス証明書は、暗号化アルゴリズムおよび証明書鍵を使用してクライアント・デバイスによって生成され得る。
【0032】
聴覚デバイスは、証明書鍵、共通秘密(common secret)、および/または聴覚デバイス鍵を使用して、暗号化されているクライアント・デバイス証明書を復号するように構成され得る。証明書鍵は、共通秘密および/または証明書値に基づくものとしてよい。聴覚デバイスは、選択された聴覚デバイス鍵などの、聴覚デバイス鍵に基づいて共通秘密を取得し、および/または生成するように構成され得る。例えば、聴覚デバイス鍵に基づいて共通秘密を生成するために、聴覚デバイスは、メモリ・ユニットから聴覚デバイス鍵を、および/またはメモリ・ユニットから聴覚デバイス証明書を取り出すことができ、聴覚デバイス証明書は、共通秘密を導出するために使用されることになる、聴覚デバイス鍵を含む。聴覚デバイスは、例えば、必要なときにメモリ・ユニットから共通秘密を取り出せるように、メモリ・ユニットに共通秘密を記憶するように構成され得る。
【0033】
聴覚デバイスは、処理ユニットを使用してセッション識別子に基づいて共通秘密を生成し、共通秘密をメモリ・ユニットに記憶するように構成され得る。例えば、聴覚デバイスは、聴覚デバイス鍵、例えば、選択された聴覚デバイス鍵、およびセッション識別子に基づいて、共通秘密を生成することができる。聴覚デバイスは、共通秘密CSを、例えば以下の式
CS=hash(HD_KEY,S_ID)
で生成することができる。ここで、hashはハッシュ関数であり、HD_KEYは(選択された)聴覚デバイス鍵であり、S_IDはセッション識別子である。セッション識別子は、接続要求を受信したとき聴覚デバイスによって生成され得る。セッション識別子は、定義された長さの乱数または疑似乱数を含むものとしてよい。共通秘密は、1つまたは複数の例示的な聴覚デバイス内の証明書鍵として使用され得る。
【0034】
証明書鍵は、共通秘密に基づく、例えば、共通秘密および/または証明書値に対してハッシュ関数を実行することによって生成され得る。次いで、聴覚デバイスは、証明書鍵を、例えば以下の式
C_KEY=hash(CS,C_VAL)
で生成することができる。ここで、hashはハッシュ関数であり、CSは共通秘密であり、C_VALは証明書値である。証明書値は、予め定義された値または文字列、例えば「certificate」であってよい。
【0035】
1つまたは複数の例示的な聴覚デバイスにおいて、証明書鍵は、適宜、聴覚デバイス鍵およびセッション識別子に対してハッシュ関数を実行することによって生成され得る。聴覚デバイスは、聴覚デバイスによって生成された証明書鍵を使用して暗号化されているクライアント・デバイス証明書(クライアント・デバイス・データの一部)を復号し、クライアント・デバイス証明書の復号されたバージョンを取得することができる。聴覚デバイスは、クライアント・デバイス証明書の復号されたバージョンの内容を検証し得る。
【0036】
1つまたは複数の例示的な聴覚デバイスにおいて、クライアント・デバイス・データを検証することは、認証鍵識別子がクライアント・デバイス証明書のクライアント・デバイス鍵識別子と一致しているかどうかを判定することを含み、一致していないと判定された場合に検証は失敗となる。
【0037】
例えば、聴覚デバイスは、認証鍵識別子がクライアント・デバイス証明書に含まれる対応するクライアント・デバイス鍵識別子と一致することを検証するように構成され得る。例えば、聴覚デバイスは、認証鍵識別子がクライアント・デバイス証明書に含まれるクライアント・デバイス鍵識別子に等しい値を有することを検証するように構成され得る。例えば、聴覚デバイスは、認証鍵識別子がクライアント・デバイス証明書の復号されたバージョンに含まれる対応するクライアント・デバイス鍵識別子と一致することを検証するように構成され得る。
【0038】
1つまたは複数の例示的な聴覚デバイスにおいて、クライアント・デバイス・データを検証することは、クライアント・デバイス証明書のクライアント・デバイス・タイプ識別子が有効であるかどうかを判定することを含み、クライアント・デバイス証明書のクライアント・デバイス・タイプ識別子が有効でない場合に検証は失敗となる。例えば、聴覚デバイスは、認証タイプ識別子がクライアント・デバイス証明書の復号されたバージョンに含まれる対応するクライアント・デバイス・タイプ識別子と一致することを検証するように構成され得る。
【0039】
1つまたは複数の例示的な聴覚デバイスにおいて、クライアント・デバイス証明書のクライアント・デバイス・タイプ識別子が有効であるかどうかを判定することは、クライアント・デバイス・タイプ識別子がブラックリストに載っているかどうかを判定することを含み、クライアント・デバイス・タイプは、クライアント・デバイス・タイプ識別子が、ブラックリストに載っている、例えば、ブラックリストに載っているクライアント・デバイス・タイプのリスト上に出現している場合に有効ではない。1つまたは複数の例示的な聴覚デバイスにおいて、クライアント・デバイス証明書のクライアント・デバイス・タイプ識別子が有効であるかどうかを判定することは、クライアント・デバイス・タイプ識別子が許可されているどうかを判定することを含み、クライアント・デバイス・タイプは、クライアント・デバイス・タイプ識別子が、許可されている、例えば、許可されているクライアント・デバイス・タイプのリスト上に出現している場合に有効である。例えば、クライアント・デバイスのクライアント・デバイス・タイプ識別子は、認証タイプ識別子がクライアント・デバイス証明書の復号されたバージョンに含まれる対応するクライアント・デバイス・タイプ識別子と一致する場合に有効であるものとしてよい。
【0040】
1つまたは複数の例示的な聴覚デバイスにおいて、クライアント・デバイス・データを検証することは、クライアント・デバイス証明書のデジタル署名を検証することを含み、デジタル署名が検証されていない場合に検証は失敗となる。例えば、クライアント・デバイス・データは、クライアント・デバイス・データの完全性を保護するために付加されるデジタル署名を含む。デジタル署名を検証することは、例えば、デジタル署名および対応するクライアント・デバイス公開鍵に基づいて比較結果を計算することと、比較結果を受信されたクライアント・デバイス・データ/クライアント・デバイス証明書と比較することとを含む。対応するクライアント・デバイス公開鍵は、メモリ・ユニット、リモート・データ記憶ユニット、および/またはサーバ・デバイスから聴覚デバイスによって取り出され得る。デジタル署名をクライアント・デバイス公開鍵でべき乗したものが、受信されたクライアント・デバイス・データと同一であるときに、デジタル署名は有効なものとして検証され得る、または検証が成功となる。
【0041】
1つまたは複数の例示的な聴覚デバイスにおいて、クライアント・デバイス証明書は、署名デバイス識別子および/またはクライアント・デバイス識別子を含む。クライアント・デバイス識別子は、クライアント・デバイスを識別する識別子を指す。クライアント・デバイス識別子は、例えば、クライアント・デバイスの媒体アクセス制御(MAC)アドレス、および/またはクライアント・デバイスのシリアル番号を含み得る。聴覚デバイスは、署名デバイス識別子および/またはクライアント・デバイス識別子が有効であるかどうかを判定することによって、クライアント・デバイス・データを検証するように構成され得る。例えば、聴覚デバイスは、署名デバイス識別子がブラックリストに載っていないことを検証することによって、署名デバイス識別子が有効であるかどうかを判定するように構成され得る。例えば、聴覚デバイスは、クライアント・デバイス識別子がブラックリストに載っていないことを検証することによって、クライアント・デバイス識別子が有効であるかどうかを判定するように構成され得る。クライアント・デバイス識別子は、例えば、聴覚デバイスが複数のクライアント・デバイスのうちからクライアント・デバイスを識別することを可能にする。署名デバイス識別子および/またはクライアント・デバイス識別子が有効でない場合に、検証は失敗となる。例えば、聴覚デバイスが、署名デバイス識別子および/またはクライアント・デバイス識別子がブラックリストに載っていると決定した場合に、署名デバイス識別子および/またはクライアント・デバイス識別子は有効でなく、検証は失敗となる。
【0042】
1つまたは複数の例示的な聴覚デバイスにおいて、処理ユニットは、追加の認証メッセージを受信するように構成される。追加の認証メッセージは、クライアント・デバイス・データおよび/または認証デバイス識別子を含むものとしてよい。認証デバイス識別子は、認証メッセージに含まれるクライアント・デバイス識別子などの、クライアント・デバイスの認証を可能にする識別子を指すものとしてよい。例えば、認証デバイス識別子は、シリアル番号、媒体アクセス制御(MAC)アドレス、またはこれらの任意の組合せを含む。聴覚デバイスは、認証メッセージを検証し、認証メッセージを送信するクライアント・デバイスを認証するように構成され得る。処理ユニットは、メモリ・ユニットから認証デバイス識別子に基づいて共通秘密を取得するように構成され得る。メモリ・ユニットは、そこに記憶される共通秘密に関連付けられているクライアント・デバイス識別子を有するものとしてよい。次いで、処理ユニットは、認証デバイス識別子に基づいて対応する共通秘密を取り出すように構成され得る。共通秘密は、早い段階で、例えば、復帰するクライアント・デバイスの認証の初回に生成され、記憶されている。したがって、クライアント・デバイスが認証された後、処理ユニットは、対応する共通秘密だけを取り出すことができる。これは、より高速なその後の認証を可能にし、追加の証明書鍵を計算するための共通秘密を再生成しなくて済むようにし、したがって、対応する電力消費量を節減する。処理ユニットは、共通秘密から追加の証明書鍵を生成し、追加の証明書鍵に基づいてクライアント・デバイス・データを検証するように構成され得る。例えば、処理ユニットは、共通秘密および証明書値に基づいてハッシュ値を計算することによって追加の証明書鍵を生成することができる。上で説明されているように、処理ユニットは、クライアント・デバイス・データのMACおよび/またはデジタル署名を検証することなど、クライアント・デバイス・データの完全性を検証することによって、追加の証明書鍵に基づいてクライアント・デバイス・データを検証するように構成され得る。処理ユニットは、クライアント・デバイス・データが暗号化されて受信されるとき、追加の証明書鍵を(復号鍵として)使用してクライアント・デバイス・データを復号することによって、追加の証明書鍵に基づいてクライアント・デバイス・データを検証するように構成される。処理ユニットは、クライアント・デバイス・データの内容を検証することによって、クライアント・デバイス・データを検証するように構成される。処理ユニットは、クライアント・デバイス・データをメモリ・ユニットに記憶されているデータと比較することによって、追加の証明書鍵に基づいてクライアント・デバイス・データを検証するように構成され得る。
【0043】
1つまたは複数の例示的な聴覚デバイスにおいて、処理ユニットは、共通秘密およびセッション識別子に基づいてオフライン・セッション鍵を生成するように構成され、また、処理ユニットは、オフライン・セッション鍵を使用してクライアント・デバイスと通信するように構成される。オフライン・セッション鍵は、聴覚デバイスとクライアント・デバイスとの間のオフライン通信を保護するために使用され得る。オフライン通信は、他の任意のネットワーク・デバイス(例えば、サーバ・デバイス)を伴わない通信を指す。オフライン・セッション鍵を生成することは、共通秘密に基づいてオフライン鍵を生成すること(例えば、共通秘密およびオフライン値のハッシュ関数を実行すること)と、オフライン鍵およびセッション識別子に基づいてオフライン・セッション鍵を計算すること(例えば、オフライン鍵およびセッション識別子のハッシュ関数を実行すること)とを含み得る。オフライン・セッション鍵は、聴覚デバイスとクライアント・デバイスとの間の通信でやり取りされる聴覚デバイス・データを保護する(例えば、暗号化する)ために、聴覚デバイスおよびクライアント・デバイスによって使用される。
【0044】
1つまたは複数の例示的な聴覚デバイスにおいて、認証メッセージは、認証トークン識別子を含み、処理ユニットは、認証トークン識別子をメモリ・ユニットに記憶し、認証トークン識別子を共通秘密とリンクするように構成される。認証トークン識別子は、聴覚デバイス側でトークンベースの認証を可能にすることを示すものとしてよい、すなわち、聴覚デバイスが、認証されたクライアント・デバイスから認証トークン識別子を受信したとき、例えば、共通秘密およびクライアントに関連するフラグなどのインジケータを記憶することによって、同じクライアント・デバイスとの将来の通信においてトークンベースの認証を使用可能にし得る。例えば、認証トークン識別子を受信する聴覚デバイスは、トークン識別子を記憶し、および/または同じクライアント・デバイスに対して生成された共通秘密とリンクさせることによって、例えば、トークン識別子を記憶し、および/または、当該共通秘密と、当該同じクライアント・デバイスのクライアント・デバイス識別子を例えばテーブルにおいてリンクさせることによって、トークンベースの認証を可能とすることを処理ユニットに対して示すように構成され得る。トークン識別子およびトークンベースの認証は、例えば病院または店の中の一群の聴覚デバイスについて、聴覚デバイス管理のために使用することができ、おそらくはより単純でより高速なクライアント・デバイス認証を可能にするとともに、ユーザとの物理的なやり取り/介入を最小限度に抑え、または全く行わない、さらなるフィッティングを可能にする。クライアント・デバイスは、例えば、トークン識別子が第1のセッションにおいて安全に記憶されているデータ記憶装置に安全にアクセスし、資格証明および鍵材料を取り出して、トークンベースの認証をその後のセッションで実行する。このようにして、例えば、病院または店にあるクライアント・デバイスは、トークンベースの認証を使用する安全な方法で、フィッティングを実行するために使用され得る。
【0045】
1つまたは複数の例示的な聴覚デバイスにおいて、処理ユニットは、クライアント・デバイス・データ、認証タイプ識別子、認証鍵識別子、および/または認証セッション・トークン識別子を含むさらなる認証メッセージを受信するように構成される。さらなる認証メッセージは、認証デバイス識別子を含み得る。処理ユニットは、メモリ・ユニット内で、認証タイプ識別子に対応する記憶されているクライアント・デバイス・タイプ識別子を特定すること、および/または認証デバイス識別子に対応する記憶されているクライアント・デバイス識別子を特定することに基づいて、さらなる認証メッセージを送信するクライアント・デバイスのクライアント・デバイス・タイプ識別子および/またはクライアント・デバイス識別子にリンクされた共通秘密を見つけるように構成され得る。処理ユニットは、認証タイプ識別子に基づいて共通秘密を取得し、共通秘密に基づいてトークン鍵を生成し、トークン鍵およびセッション識別子に基づいてセッション・トークン識別子を生成するように構成され得る。処理ユニットは、クライアント・デバイスとの早い段階でのセッションにおいて、例えば証明書鍵を確立するために共通秘密を生成している場合があり、また共通秘密を記憶し、共通秘密をクライアント・デバイス・タイプ識別子および/またはクライアント・デバイス識別子にリンクしている場合がある。次いで、処理ユニットは、記憶されているクライアント・デバイス・タイプ識別子および/またはクライアント・デバイス識別子に対応する認証タイプ識別子および/または認証クライアント識別子に基づいて共通秘密を取得するように構成され得る。処理ユニットは、共通秘密およびトークン値(事前定義された任意の文字列または事前定義された任意の値など)に対してハッシュ関数を実行することによって、トークン鍵を生成するように構成され得る。処理ユニットは、セッション識別子を生成することと、トークン鍵およびセッション識別子に対してハッシュ関数を実行することとによって、トークン鍵およびセッション識別子に基づいてセッション・トークン識別子を生成するように構成され得る。処理ユニットは、セッション・トークン識別子に基づいて認証セッション・トークン識別子を検証するように構成され得る。処理ユニットは、認証セッション・トークン識別子と生成されたセッション・トークン識別子とを比較することによって、認証セッション・トークン識別子を検証するように構成され得る。例えば、処理ユニットが、認証セッション・トークン識別子が生成されたセッション・トークン識別子と一致していると決定した場合に、検証は成功となり、処理ユニットは、ユーザによる物理的介入なしで先に進むことができ、さらなる認証メッセージにおいて与えられるクライアント・デバイス・データを検証し続けることができる。クライアント・デバイス・データは、クライアント・デバイス証明書を含み得る。聴覚デバイスは、フィッティングが許可されるかについてクライアント・デバイス証明書を検証する(および/またはブラックリストに載っていないかチェックする)ことができる。検証された認証トークン識別子は、例えば、聴覚デバイスに対して、クライアント・デバイスが以前の共有されているトークン鍵を保有しており、したがって、ユーザによる聴覚デバイスへの物理的介入なしでこの聴覚デバイスを間違いなくフィッティングすることが可能であることを示すために使用され得る。
【0046】
1つまたは複数の例示的な聴覚デバイスにおいて、処理ユニットは、セッション識別子および聴覚デバイス鍵に基づいてセッション鍵を生成するように構成され、また、処理ユニットは、セッション鍵に基づいてセッション・データを受信し、認証するように構成される。セッション識別子および聴覚デバイス鍵に基づいてセッション鍵を生成することは、聴覚デバイス鍵およびセッション識別子に基づいて共通秘密を生成することと、共通秘密およびセッション値の、セッション鍵に対応するハッシュ値を適宜生成することとによって、セッション鍵を計算することを含み得る。例えば、処理ユニットは、セッション鍵で生成されたMACを検証すること、および/またはセッション鍵を使用してセッション・データを復号することによって、セッション鍵に基づいてセッション・データを認証するように構成される。
【0047】
本開示は、聴覚デバイスのユーザの聴力損失を補うように構成された処理ユニット、メモリ・ユニット、およびインターフェースを備える聴覚デバイスを運用する方法、例えば、聴覚デバイスの通信を制御するための方法、例えば、安全な聴覚デバイス通信を可能にするための方法に関する。方法は、インターフェースを介してセッションに対する接続要求を受信することを含む。接続要求は、聴覚デバイスが接続要求および接続要求を送信するクライアント・デバイスのこの早期の段階での認証を実行することを可能にするために、認証鍵識別子および/または認証タイプ識別子を含み得る。これは、あるレベルのアクセス制御を行うことができる。
【0048】
方法は、セッション識別子を、例えば、聴覚デバイスで、取得することを含む。セッション識別子を取得することは、乱数または疑似乱数を生成することなどによって、セッション識別子を生成することを含み得る。例えば、処理ユニットは、セッション識別子として使用されるべき所定の長さ、例えば、16バイト、32バイト、64バイトなどの乱数または疑似乱数を生成する。セッション識別子を取得することは、メモリ・ユニットからセッション識別子を取り出すことを含み得る。方法は、メモリ・ユニットにセッション識別子を記憶することを含み得る。例えば、メモリ・ユニットにセッション識別子を記憶することは、指定されたメモリ・セル内および/または指定されたアドレスなど、メモリ・ユニットのメモリ・アドレスに、および/またはメモリ・ユニットのメモリ・セル内にセッション識別子を記憶することを含む。
【0049】
方法は、インターフェースを介して、聴覚デバイス識別子およびセッション識別子を含む接続応答を送信することを含む。接続応答を送信することは、セッション識別子および聴覚デバイス識別子を含めることによって接続応答を生成することと、こうして生成された接続応答を例えばクライアント・デバイスに送信することとを含み得る。
【0050】
方法は、インターフェースを介して、認証メッセージを受信することを含む。認証メッセージは、認証鍵識別子および/またはクライアント・デバイス・データを含むものとしてよい。方法は、インターフェースを介して、クライアント・デバイスから認証メッセージを受信することを含み得る。例えば、聴覚デバイスは、通信セッションを確立するためにクライアント・デバイスから認証メッセージを受信する。クライアント・デバイス・データは、クライアント・デバイス証明書、フィッティング・データ、聴覚デバイス動作パラメータ、および/またはファームウェア・データを含むことができる。認証鍵識別子は、クライアント・デバイスが聴覚デバイスによって受け入れ可能な認証鍵識別子を提供するかどうかを検証するために使用され得る識別子とすることができる。
【0051】
方法は、例えば、認証鍵識別子に基づいて、メモリ・ユニット内の複数の聴覚デバイス鍵のうちから聴覚デバイス鍵を選択することを含む。認証鍵識別子が、聴覚デバイスによって保持されている聴覚デバイス鍵識別子と一致し、および/または聴覚デバイスの聴覚デバイス鍵を示す場合、処理ユニットは、認証鍵識別子を、どの聴覚デバイス鍵がセッションにおける鍵材料として使用されるべきかを示す鍵識別子として使用するように構成され得る。メモリ・ユニット内の複数の聴覚デバイス鍵のうちから聴覚デバイス鍵を選択することは、認証鍵識別子および/または認証タイプ識別子に基づいてもよい。認証タイプ識別子は、聴覚デバイスによってプレーン・テキストで受信され、および/または(暗号化または復号されている)クライアント証明書内のクライアント・デバイス・タイプ識別子として受信され得る。例えば、処理ユニットは、認証鍵識別子および認証タイプ識別子が示す聴覚デバイス鍵を選択する。
【0052】
方法は、例えば、選択された聴覚デバイス鍵に基づいて、クライアント・デバイス・データを検証することを含む。クライアント・デバイス・データを検証することは、聴覚デバイス証明書またはその少なくとも一部に基づいてもよい。さらに、方法は、検証が失敗した場合にセッションを終了することを含み得る。選択された聴覚デバイス鍵に基づいてクライアント・デバイス・データを検証することは、クライアント・デバイス・データに含まれるMACおよび/またはデジタル署名を検証することなど、選択された聴覚デバイス鍵に基づいてクライアント・デバイス・データの完全性を検証することを含み得る。選択された聴覚デバイス鍵に基づいてクライアント・デバイス・データを検証することは、クライアント・デバイス・データが暗号化されて受信されるとき、選択された聴覚デバイス鍵を(復号鍵を導出するための鍵材料として、または復号鍵として)使用して、クライアント・デバイス・データを復号することを含み得る。選択された聴覚デバイス鍵に基づいてクライアント・デバイス・データを検証することは、受信されたクライアント・デバイス・データ、例えば、復号されたクライアント・デバイス証明書をメモリ・ユニット内に記憶されているデータと比較することによって、クライアント・デバイス・データを検証することを含み得る。例えば、クライアント・デバイス・データの完全性が、例えばMACまたはデジタル署名を検証することによって破損していると検出された場合に、復号が失敗した場合に、および/または、受信されたクライアント・デバイス・データとメモリ・ユニットに記憶されているデータとの比較で不整合が示された場合に、検証は失敗となる。
【0053】
認証メッセージは、適宜、認証タイプ識別子を含む。認証タイプ識別子は、クライアント・デバイス・タイプ識別子および/または証明書タイプ識別子を示し得る。複数の聴覚デバイス鍵のうちから聴覚デバイス鍵を選択することは、認証タイプ識別子に基づくものとしてよい。聴覚デバイス鍵を選択することは、認証メッセージで与えられる認証タイプ識別子および/または検証された認証鍵識別子に基づいてもよい。
【0054】
クライアント・デバイス・データは、クライアント・デバイス証明書(例えば暗号化されたクライアント・デバイス証明書)、認証鍵識別子、および/または認証タイプ識別子を含むことができる。クライアント・デバイスは、クライアント・デバイス証明書を割り当てられ得る。
【0055】
この方法は、選択された聴覚デバイス鍵および/またはセッション識別子に基づいて証明書鍵を生成することを含むことができ、クライアント・デバイス・データを検証することは、暗号化されているクライアント・デバイス証明書を証明書鍵で復号して、暗号化されているクライアント・デバイス証明書の復号されたバージョンを取得することを含み得る。暗号化されたクライアント・デバイス証明書を証明書鍵で復号することは、共通秘密に基づいて証明書鍵を生成し、暗号化されたクライアント証明書を復号関数および証明書鍵を使用して処理することなど、暗号化されたクライアント・デバイス証明書を証明書鍵、共通秘密、および/または聴覚デバイス鍵を使用して復号することを含み得る。証明書鍵は、共通秘密および/または証明書値に基づくものとしてよい。証明書鍵を生成することは、選択された聴覚デバイス鍵に基づいて共通秘密を取得または生成することを含み得る。例えば、聴覚デバイス鍵に基づいて共通秘密を生成することは、メモリ・ユニットから、選択された聴覚デバイス鍵を含む聴覚デバイス証明書を取り出すこと、および/または選択された聴覚デバイス鍵をメモリ・ユニットから取り出すことを含む。方法は、セッション識別子および/または聴覚デバイス鍵に基づいて共通秘密を生成することを含み得る。例えば、共通秘密CSは、選択された聴覚デバイス鍵およびセッション識別子に基づいて、例えば以下の式
CS=hash(HD_KEY,S_ID)
で生成される。ここで、hashはハッシュ関数であり、HD_KEYは選択された聴覚デバイス鍵であり、S_IDはセッション識別子である。セッション識別子は、定義された長さの乱数または疑似乱数を含むものとしてよい。共通秘密は、1つまたは複数の例示的な聴覚デバイス内の証明書鍵として使用され得る。聴覚デバイスは、例えば、必要なときにメモリ・ユニットから共通秘密を取り出せるように、メモリ・ユニットに共通秘密を記憶するように構成され得る。
【0056】
証明書鍵を生成することは、共通秘密および/または証明書値に対してハッシュ関数を実行することを含み得る。次いで、聴覚デバイスは、証明書鍵を、例えば以下の式
C_KEY=hash(CS,C_VAL)
で生成することができる。ここで、hashはハッシュ関数であり、CSは共通秘密であり、C_VALは証明書値である。証明書値は、予め定義された値または文字列、例えば「certificate」であってよい。
【0057】
1つまたは複数の例示的な方法において、証明書鍵を生成することは、聴覚デバイス鍵およびセッション識別子に対してハッシュ関数を実行することを含む。別の言い方をすると、共通秘密は、クライアント・デバイスが、クライアント・デバイス証明書を暗号化するための証明書鍵として共通秘密も使用している場合に、証明書鍵として使用され得る。
【0058】
クライアント・デバイス・データを検証することは、聴覚デバイスによって生成された証明書鍵を使用して、暗号化されているクライアント・デバイス証明書を復号することと、クライアント・デバイス証明書の復号されたバージョンを取得することとを含み得る。
【0059】
1つまたは複数の例示的な方法において、クライアント・デバイス・データを検証することは、クライアント・デバイス証明書の復号されたバージョンの内容を検証することを含み得る。例えば、クライアント・デバイス・データを検証することは、認証鍵識別子がクライアント・デバイス証明書のクライアント・デバイス鍵識別子と一致しているかどうかを判定することを含み、一致していないと判定された場合に検証は失敗となる。
【0060】
1つまたは複数の例示的な方法において、クライアント・デバイス・データを検証することは、クライアント・デバイス証明書のクライアント・デバイス・タイプ識別子が有効であるかどうかを判定することを含み、クライアント・デバイス証明書のクライアント・デバイス・タイプ識別子が有効でない場合に、検証は失敗となる。例えば、認証タイプ識別子は、認証メッセージ中のプレーン・テキストで送信され、プレーン・テキストで送信された認証タイプ識別子は、認証タイプ識別子がクライアント・デバイス証明書の復号されたバージョンに含まれる対応するクライアント・デバイス・タイプ識別子と一致する場合に、有効である。例えば、クライアント・デバイス証明書のクライアント・デバイス・タイプ識別子が有効であるかどうかを判定することは、クライアント・デバイス証明書のクライアント・デバイス・タイプ識別子が、承認されたクライアント・デバイスのリストに含まれているかどうかを判定することを含み得る。
【0061】
1つまたは複数の例示的な方法において、クライアント・デバイス証明書のクライアント・デバイス・タイプ識別子が有効であるかどうかを判定することは、クライアント・デバイス・タイプ識別子がブラックリストに載っているかどうかを判定することを含み、クライアント・デバイス・タイプは、クライアント・デバイス・タイプ識別子が、ブラックリストに載っている、例えば、ブラックリストに載っているクライアント・デバイス・タイプのリスト上に出現している場合に、有効ではない。1つまたは複数の例示的な方法において、クライアント・デバイス証明書のクライアント・デバイス・タイプ識別子が有効であるかどうかを判定することは、クライアント・デバイス・タイプ識別子が許可されているかどうかを判定することを含み、クライアント・デバイス・タイプは、クライアント・デバイス・タイプ識別子が、許可されている、例えば、許可または承認されているクライアント・デバイス・タイプのリスト上に出現している場合に、有効である。
【0062】
1つまたは複数の例示的な方法において、クライアント・デバイス・データを検証することは、クライアント・デバイス証明書のデジタル署名を検証することを含み、デジタル署名が検証されない場合に、検証は失敗となる。例えば、クライアント・デバイス・データは、クライアント・デバイス・データの完全性を保護するために付加されるデジタル署名を含む。デジタル署名を検証することは、例えば、デジタル署名および対応する公開鍵に基づいて比較結果を計算することと、比較結果を受信されたクライアント・デバイス・データと比較することとを含む。デジタル署名を公開鍵でべき乗したものが、受信されたクライアント・デバイス・データと同一であるときに、デジタル署名は有効なものとして検証され得る、または検証が成功となる。
【0063】
1つまたは複数の例示的な方法において、クライアント・デバイス証明書は、署名デバイス識別子および/またはクライアント・デバイス識別子を含み、クライアント・デバイス・データを検証することは、署名デバイス識別子および/またはクライアント・デバイス識別子が有効であるかどうかを判定することを含み、クライアント・デバイスのクライアント・デバイス識別子および/または署名デバイス識別子が有効でない場合に、検証は失敗となる。
【0064】
1つまたは複数の例示的な方法において、クライアント・デバイス証明書のクライアント・デバイス識別子が有効であるかどうかを判定することは、クライアント・デバイス識別子がブラックリストに載っているかどうかを判定することを含み、クライアント・デバイス識別子は、クライアント・デバイス識別子が、ブラックリストに載っている、例えば、ブラックリストに載っているクライアント・デバイスのリスト上に出現している場合に有効ではない。1つまたは複数の例示的な方法において、クライアント・デバイス証明書のクライアント・デバイス識別子が有効であるかどうかを判定することは、クライアント・デバイス識別子が許可されているかどうかを判定することを含み、クライアント・デバイス・タイプは、クライアント・デバイス識別子が、許可されている、例えば、許可または承認されているクライアント・デバイスのリスト上に出現している場合に、有効である。
【0065】
1つまたは複数の例示的な方法において、この方法は、クライアント・デバイス・データおよび/または認証デバイス識別子を含む追加の認証メッセージを受信することを含む。方法は、メモリ・ユニットから、認証デバイス識別子に基づいて共通秘密を取得することと、共通秘密から追加の証明書鍵を生成することと、追加の証明書鍵に基づいてクライアント・デバイス・データを検証することとをさらに含み得る。
【0066】
1つまたは複数の例示的な方法において、方法は、共通秘密およびセッション識別子に基づいてオフライン・セッション鍵を生成することと、オフライン・セッション鍵を使用してクライアント・デバイスと通信することとを含む。
【0067】
1つまたは複数の例示的な方法において、方法は、クライアント・デバイス・データ、認証タイプ識別子、認証鍵識別子、および/または認証セッション・トークン識別子を含むさらなる認証メッセージを受信することを含む。さらなる認証メッセージは、認証デバイス識別子を含み得る。方法は、メモリ・ユニット内で、認証タイプ識別子に対応する記憶されているクライアント・デバイス・タイプ識別子を特定すること、および/または認証デバイス識別子に対応する記憶されているクライアント・デバイス識別子を特定することに基づいて、さらなる認証メッセージを送信するクライアント・デバイスのクライアント・デバイス・タイプ識別子および/またはクライアント・デバイス識別子にリンクされた共通秘密を見つけるまたは決定することを含み得る。方法は、認証タイプ識別子に基づいて共通秘密を取得することと、共通秘密に基づいてトークン鍵を生成することと、トークン鍵およびセッション識別子に基づいてセッション・トークン識別子を生成することとを含み得る。処理ユニットは、クライアント・デバイスとの早い段階でのセッションにおいて、例えば証明書鍵を確立するために共通秘密を生成している場合があり、また共通秘密を記憶し、共通秘密をクライアント・デバイス・タイプ識別子および/またはクライアント・デバイス識別子にリンクしている場合がある。方法は、記憶されているクライアント・デバイス・タイプ識別子および/またはクライアント・デバイス識別子に対応する認証タイプ識別子および/または認証クライアント識別子に基づいて、共通秘密を取得することを含み得る。方法は、共通秘密およびトークン値(事前定義された任意の文字列または事前定義された任意の値など)に対してハッシュ関数を実行することによって、トークン鍵を生成することを含み得る。方法は、セッション識別子を生成することと、トークン鍵およびセッション識別子に対してハッシュ関数を実行することとによって、トークン鍵およびセッション識別子に基づいてセッション・トークン識別子を生成することを含み得る。方法は、セッション・トークン識別子に基づいて認証セッション・トークン識別子を検証することを含み得る。方法は、認証セッション・トークン識別子と生成されたセッション・トークン識別子とを比較することによって、認証セッション・トークン識別子を検証することを含み得る。例えば、認証セッション・トークン識別子が生成されたセッション・トークン識別子と一致していると決定された場合に、検証は成功となり、処理ユニットは、ユーザによる物理的介入なしで先に進むことができ、さらなる認証メッセージにおいて与えられるクライアント・デバイス・データを検証し続けることができる。クライアント・デバイス・データは、クライアント・デバイス証明書を含み得る。聴覚デバイスは、フィッティングが許可されるかについてクライアント・デバイス証明書を検証する(およびブラックリストに載っていないかチェックする)ことができる。検証された認証トークン識別子は、例えば、聴覚デバイスに対して、クライアント・デバイスが以前の共有されているトークン鍵を保有しており、したがって、ユーザによる聴覚デバイスへの物理的介入なしでこの聴覚デバイスを間違いなくフィッティングすることが可能であることを示すために使用され得る。
【0068】
1つまたは複数の例示的な方法において、方法は、セッション識別子および聴覚デバイス鍵に基づいてセッション鍵を生成することと、セッション鍵に基づいてセッション・データを受信し、認証することとを含む。
【0069】
図1は、聴覚デバイス2の製造、保守、および/または運用に使用され得る例示的なデバイスを概略的に示している。図1は、例示的なシステム1および聴覚デバイス2を示している。システム1は、(聴覚デバイスをフィッティングするため、聴覚デバイス・パラメータを更新する、など)聴力損失補償に関連して聴覚デバイス2を製造し、保守し、および/または運用するための、1つまたは複数の製造デバイス12、クライアント・デバイス10、およびサーバ・デバイス16を備え得る。
【0070】
製造デバイス12は、聴覚デバイスを製造する方法のステップを実行するように構成され得る。製造デバイス12は、聴覚デバイス識別子と少なくとも1つの生成された聴覚デバイス鍵とを含む聴覚デバイス証明書を生成するように構成され得る。製造デバイス12は、聴覚デバイス証明書を聴覚デバイスに送信するように構成され得る。製造デバイス12は、処理要素(プロセッサおよびメモリなどの)を備えることができる。
【0071】
聴覚デバイス2は、聴覚デバイス2のユーザの聴力損失を補うように構成され得る。聴覚デバイス2は、例えば、一方向または双方向通信リンクなどの通信リンク23を使用して製造デバイス12と通信するように構成され得る。通信リンク23は、有線リンクおよび/またはワイヤレス通信リンクであってよい。通信リンク23は、シングルホップ通信リンクまたはマルチホップ通信リンクであってよい。ワイヤレス通信リンクは、Bluetooth、Bluetooth Low Energy、IEEE 802.11、Zigbee(登録商標)などの、短距離通信システムを介して実現され得る。
【0072】
聴覚デバイス2は、双方向通信リンクなどの通信リンク21を介してクライアント・デバイス10に接続するように構成され得る。通信リンク21は、有線リンクおよび/またはワイヤレス通信リンクであってよい。通信リンク21は、シングルホップ通信リンクまたはマルチホップ通信リンクであってよい。ワイヤレス通信リンクは、Bluetooth、Bluetooth Low Energy、IEEE 802.11、Zigbeeなどの、短距離通信システムを介して実現され得る。聴覚デバイス2は、ネットワーク上でクライアント・デバイス10に接続するように構成され得る。クライアント・デバイス10は、ディスペンサがユーザのクライアント・デバイス10を介して聴覚デバイスに接続する補聴デバイスのリモート・フィッティングを可能にし得る。クライアント・デバイス10は、フィッティング・デバイス14などのクライアント(例えば、ハンドヘルド・デバイス、リレー、タブレット、パーソナル・コンピュータ、携帯電話、および/またはパーソナル・コンピュータにプラグ接続されるUSBドングル)として動作するコンピューティング・デバイスを含み得る。処理ユニット/聴覚デバイスは、インターフェースを介してセッションに対する接続要求を受信し、セッション識別子を取得するように構成される。例えば、聴覚デバイス2のインターフェースは、通信リンク21を介してクライアント・デバイス10から接続要求を受信するように構成される。例えば、聴覚デバイス2は、通信セッションを確立するためにクライアント・デバイス10から接続要求を受信する。聴覚デバイスの処理ユニットは、インターフェースを介して、聴覚デバイス識別子および/またはセッション識別子を含む接続応答を送信するように構成される。聴覚デバイスの処理ユニットは、インターフェースを介して、例えば、通信リンク21を介してクライアント・デバイス10から、認証鍵識別子および/またはクライアント・デバイス・データを含む認証メッセージを受信するように構成される。
【0073】
クライアント・デバイス10は、双方向通信リンクなどの通信リンク24を介してサーバ・デバイス16と通信するように構成され得る。通信リンク24は、有線リンクおよび/またはワイヤレス通信リンクであってよい。通信リンク24は、インターネットなどのネットワークを含み得る。
【0074】
クライアント・デバイス10は、保守および更新を目的としてサーバ・デバイス16と通信するように構成され得る。サーバ・デバイス16は、サーバとして動作する、すなわち、クライアント・デバイス10および/または聴覚デバイス2からの要求を処理するように構成されたコンピューティング・デバイスを含み得る。サーバ・デバイス16は、聴覚デバイス製造者によって制御され得る。サーバ・デバイス16は、製造、保守および/または運用目的のために通信リンク22を介して製造デバイス12と通信するように構成され得る。サーバ・デバイス16および製造デバイス12は、同一の場所に置かれる、および/または聴覚デバイス2の製造、保守、および/または運用目的のために1つのエンティティを形成し得る。
【0075】
図2は、例示的な聴覚デバイス2を概略的に示す。聴覚デバイス2は、処理ユニット4と、メモリ・ユニット6と、インターフェース8とを備える。聴覚デバイス2は、聴覚デバイス2のユーザの聴力損失を補うように構成された処理ユニット4を備える。インターフェース8は、例えば、2.4から2.5GHzの範囲内の周波数でワイヤレス通信するように構成された、ワイヤレス・トランシーバを備える。インターフェース8は、適宜、製造デバイス12と、有線および/またはワイヤレス通信などの通信を行うように構成される。処理ユニット4は、製造および/またはフィッティング時に受信されたデータに従って、補聴器のユーザの聴力損失を補うように構成され得る。聴覚デバイス2は、適宜、音声信号を受信し、音声信号を変換済み音声信号に変換するためのマイクロフォン5または複数のマイクロフォンを備える。変換済み音声信号は、音声信号の電気的および/またはデジタル・バージョンであってよい。処理ユニット4は、変換済み音声信号を受信し、聴覚デバイス2のユーザの聴力損失に応じて変換済み音声信号を処理済み音声信号に処理するように構成される。処理済み音声信号は、圧縮され、および/または増幅されるか、または同様の処理がなされ得る。聴覚デバイス2は、レシーバと称される、出力トランスデューサ/ラウドスピーカ7を備える。レシーバ7は、処理済み音声信号を受信し、それをユーザの鼓膜で受けることができる出力音声信号に変換するように構成される。
【0076】
処理ユニット4は、インターフェース8を介してセッションに対する接続要求を受信し、セッション識別子を取得するように構成される。したがって、処理ユニット4は、例えば、セッション識別子を取得するように構成された取得ユニット41を備える。取得ユニット41の例は、乱数または疑似乱数生成器を備える。インターフェースは、クライアント・デバイス10からセッションに対する接続要求を受信するように構成される。処理ユニット4は、乱数または疑似乱数を生成することなどによって、セッション識別子を取得するように構成される。処理ユニット4は、メモリ・ユニット6にセッション識別子を記憶するように構成される。メモリ・ユニット6は、指定されたメモリ・セル内、および/または指定されたアドレスなど、メモリ・ユニット6のメモリ・アドレスに、および/またはメモリ・ユニット6のメモリ・セル内にセッション識別子を記憶するように構成され得る。接続要求は、聴覚デバイス2が接続要求および接続要求を送信するクライアント・デバイス10のこの早期の段階での認証を実行することを可能にするために、認証鍵識別子および/または認証タイプ識別子を含み得る。これは、あるレベルのアクセス制御を行うことができる。
【0077】
処理ユニット4は、インターフェース8を介して、聴覚デバイス識別子およびセッション識別子を含む接続応答を送信するように構成される。処理ユニット4は、セッション識別子および聴覚デバイス識別子を接続応答に含めることによって、接続応答を生成するように構成され得る。聴覚デバイス識別子は、聴覚デバイス2のシリアル番号、MACアドレス、および/またはハードウェア識別子などの、聴覚デバイス2の一意の識別子を指すものとしてよい。インターフェース8は、例えば、クライアント・デバイス10に接続応答を送信するように構成される。
【0078】
処理ユニット4は、インターフェース8を介して、認証鍵識別子およびクライアント・デバイス・データを含む認証メッセージを受信するように構成される。例えば、インターフェース8は、クライアント・デバイス10から認証メッセージを受信するように構成され得る。例えば、聴覚デバイス2は、通信セッションを確立するためにクライアント・デバイス10から認証メッセージを受信する。クライアント・デバイス・データは、(暗号化または復号された)クライアント・デバイス証明書、フィッティング・データ、聴覚デバイス動作パラメータ、および/またはファームウェア・データを含むことができる。例えば、認証メッセージは、プレーン・テキスト内に認証鍵識別子を入れることができる。認証鍵識別子は、聴覚デバイス鍵を示し得る。認証鍵識別子を処理する処理ユニット4は、例えば、認証鍵識別子を例えばメモリ・ユニット6に記憶されている聴覚デバイス鍵識別子と比較することと、認証鍵識別子が例えば記憶されている聴覚デバイス鍵識別子に等しいか、または高い場合に、認証鍵識別子を受け入れ可能であると決定することとによって、認証鍵識別子を検証するように構成される。
【0079】
処理ユニット4は、認証鍵識別子に基づいて、メモリ・ユニット6内の複数の聴覚デバイス鍵のうちから聴覚デバイス鍵を選択するように構成される。したがって、処理ユニット4は、例えば、認証鍵識別子に基づいて聴覚デバイス鍵を選択するように構成された選択ユニット42を備える。認証鍵識別子が、聴覚デバイス2によって保持されている聴覚デバイス鍵識別子に基づいて聴覚デバイス2によって受け入れ可能であるとき、処理ユニット4は、認証鍵識別子が示す聴覚デバイス鍵を選択し、選択された聴覚デバイス鍵を、セッションを保護するために使用される鍵材料として使用するように構成される。適宜、処理ユニット4は、認証鍵識別子および認証タイプ識別子に基づいて、メモリ・ユニット6内の複数の聴覚デバイス鍵のうちから聴覚デバイス鍵を選択するように構成され得る。認証タイプ識別子は、認証メッセージに含まれ、聴覚デバイス2によってプレーン・テキストで受信され、および/または(暗号化または復号されている)クライアント証明書内のクライアント・デバイス・タイプ識別子として受信され得る。例えば、処理ユニット4は、認証鍵識別子および認証タイプ識別子が示す聴覚デバイス鍵を選択するように構成され得る。
【0080】
処理ユニット4は、選択された聴覚デバイス鍵に基づいて、クライアント・デバイス・データを検証し、検証が失敗した場合にセッションを終了するように構成される。例えば、処理ユニット4は、クライアント・デバイス・データのMACおよび/またはデジタル署名を検証することなど、選択された聴覚デバイス鍵に基づいてクライアント・デバイス・データの完全性を検証することによって、選択された聴覚デバイス鍵に基づいてクライアント・デバイス・データを検証するように構成される。処理ユニット4は、クライアント・デバイス・データが暗号化されて受信されるとき、選択された聴覚デバイス鍵を(復号鍵を導出するための鍵材料として、または復号鍵として)使用して、クライアント・デバイス・データを復号することと、復号されたクライアント・デバイス・データの内容を検証することとによって、選択された聴覚デバイス鍵に基づいてクライアント・デバイス・データを検証するように構成される。処理ユニット4は、復号されたクライアント・デバイス・データをメモリ・ユニット6に記憶されているデータと比較することによって、選択された聴覚デバイス鍵に基づいてクライアント・デバイス・データを検証するように構成され得る。クライアント・デバイス・データは、クライアント・デバイス証明書(暗号化されたクライアント・デバイス証明書など)、認証鍵識別子、および/または認証タイプ識別子を含むことができる。クライアント・デバイス10は、クライアント・デバイス証明書を割り当てられ得る。クライアント・デバイス証明書は、例えば、製造デバイス12によって、生成され、クライアント・デバイスに割り当てられる証明書を指す。クライアント・デバイス証明書の例は、図3Aに示されている。処理ユニット4は、選択された聴覚デバイス鍵および/またはセッション識別子に基づいて証明書鍵を生成するように構成され得る。クライアント・デバイス・データを検証することは、暗号化されているクライアント・デバイス証明書を証明書鍵で復号して、暗号化されているクライアント・デバイス証明書の復号されたバージョンを取得することを含み得る。
【0081】
処理ユニット4は、認証鍵識別子が(復号された)クライアント・デバイス証明書のクライアント・デバイス鍵識別子と一致しているかどうかを判定することによってクライアント・デバイス・データを検証するように構成されるものとしてよく、一致していないと判定された場合に検証は失敗となる。
【0082】
1つまたは複数の例示的な聴覚デバイスにおいて、処理ユニット4は、クライアント・デバイス証明書のクライアント・デバイス・タイプ識別子が有効であるかどうかを判定することによってクライアント・デバイス・データを検証するように構成され、クライアント・デバイスのクライアント・デバイス・タイプ識別子が有効でない場合に検証は失敗となる。処理ユニット4は、クライアント・デバイス・データに含まれるクライアント・デバイス証明書のデジタル署名を検証することによってクライアント・デバイス・データを検証するように構成され、デジタル署名が検証されない場合に検証は失敗となる。
【0083】
処理ユニット4は、署名デバイス識別子および/またはクライアント・デバイス識別子が有効であるかどうか、例えば、ブラックリストに載っていないかどうかを判定することによってクライアント・デバイス・データを検証するように構成され得る。
【0084】
1つまたは複数の例示的な聴覚デバイスにおいて、処理ユニット4は、共通秘密およびセッション識別子に基づいてオフライン・セッション鍵を生成するように構成され、また処理ユニット4は、オフライン・セッション鍵を使用してクライアント・デバイスと通信するように構成される。
【0085】
1つまたは複数の例示的な聴覚デバイスにおいて、認証メッセージ421は、認証トークン識別子を含み、処理ユニット4は、認証トークン識別子をメモリ・ユニット6に記憶し、認証トークン識別子を共通秘密とリンクするように構成される。認証トークン識別子は、聴覚デバイス2側でトークンベースの認証を可能にすることを示すものとしてよい。すなわち、聴覚デバイスが、認証されたクライアント・デバイス10から認証トークン識別子を受信したとき、例えば、共通秘密およびクライアント・デバイスに関連するフラグなどのインジケータを記憶することによって、同じクライアント・デバイス10との将来の通信におけるトークンベースの認証を使用可能にし得る。例えば、認証トークン識別子を受信する聴覚デバイス2は、トークン識別子を記憶し、および/または同じクライアント・デバイス10に対して生成された共通秘密とリンクさせることによって、例えば、トークン識別子を記憶し、および/または、当該共通秘密と、当該同じクライアント・デバイスのクライアント・デバイス識別子を例えばテーブルにおいてリンクさせることによって、トークンベースの認証を可能とすることを処理ユニット4に対して示すように構成され得る。
【0086】
聴覚デバイス2において、処理ユニット4は、セッション識別子および聴覚デバイス鍵に基づいてセッション鍵を生成するように構成され、また処理ユニット4は、セッション鍵に基づいてセッション・データを受信し、認証するように構成される。
【0087】
1つまたは複数の例示的な聴覚デバイスにおいて、処理ユニット4は、インターフェース8を介して、追加の認証メッセージを受信するように構成される。追加の認証メッセージは、クライアント・デバイス・データおよび認証デバイス識別子を含む。処理ユニット4は、メモリ・ユニット6から認証デバイス識別子に基づいて共通秘密を取得するように構成され得る。処理ユニット4は、共通秘密から追加の証明書鍵を生成し、追加の証明書鍵に基づいてクライアント・デバイス・データを検証するように構成され得る。
【0088】
図3Aは、例示的なクライアント・デバイス証明書106を概略的に示す。クライアント・デバイス・データは、クライアント・デバイス証明書106および/または暗号化されたクライアント・デバイス証明書106Aを含み得る。クライアント・デバイス10は、クライアント・デバイス証明書106を割り当てられ得る。クライアント・デバイス証明書106は、例えば、製造デバイス12によって、生成され、クライアント・デバイス10に割り当てられる証明書を指す。暗号化されたクライアント・デバイス証明書106Aは、暗号化アルゴリズムおよび証明書鍵を使用してクライアント・デバイス10によって生成され得る。
【0089】
クライアント・デバイス証明書106は、証明書タイプ識別子130Aを備える。証明書タイプ識別子130Aは、聴覚デバイス・ファミリ証明書タイプ、聴覚デバイス証明書タイプ、ファームウェア証明書タイプ、研究開発証明書タイプ、クライアント・デバイス証明書タイプなどの、さまざまな証明書タイプのうちの1つの証明書タイプを示し得る。証明書タイプ識別子130Aは、どのようなタイプの証明書を受信し、記憶し、および/または取り出すかを識別し、それに応じてしかるべく動作するために聴覚デバイス2によって使用され得る。クライアント・デバイス証明書106は、クライアント・デバイス証明書106のデータ・フォーマット・バージョンを示すバージョン識別子132を含むものとしてよい。聴覚デバイス2は、証明書タイプ識別子130Aおよび/またはバージョン識別子132を使用して、証明書がどのようなタイプのデータを含むか、および/またはどのようなタイプのデータが証明書のフィールドに入っているかを決定するように構成され得る。例えば、聴覚デバイス2は、証明書タイプ識別子130Aおよび/またはバージョン識別子132に基づいて、証明書106のどのようなフィールドがデジタル署名113Aを含むか、および/またはデジタル署名113Aを検証するためにどの公開鍵が必要かを決定する。証明書タイプ識別子130Aと公開/秘密鍵ペアとの間に一対一マッピングがあることが想定され得る。聴覚デバイス2は、メモリ・ユニット6、リモート・データ記憶装置から対応する公開鍵を取り出すなど、対応する公開鍵を取得し、および/またはクライアント・デバイス10および/またはサーバ・デバイス16から対応する公開鍵を受信することが想定され得る。クライアント・デバイス証明書106は、署名デバイス識別子136Aを備え得る。署名デバイス識別子136Aは、例えば、クライアント・デバイスの製造時に、クライアント・デバイス証明書106に署名したデバイス(クライアント・デバイス10、サーバ・デバイス16、集積回路カード、スマート・カード、および/またはそのハードウェア・セキュリティ・モジュールなど)を識別する一意の識別子を指す。署名デバイス識別子136Aは、例えば、署名デバイスの媒体アクセス制御(MAC)アドレス、および/または署名デバイスのシリアル番号を含み得る。署名デバイス識別子136Aは、例えば、聴覚デバイス2が、署名デバイスが例えばブラックリストに載っているかどうかを決定すること、したがってブラックリストに載っている署名デバイスによって署名された証明書を拒絶することを可能にする。クライアント・デバイス証明書106は、第1のハードウェア識別子148Aおよび第2のハードウェア識別子150などの1つまたは複数のハードウェア識別子を備え得る。ハードウェア識別子148A、150は、クライアント・デバイス10に備えられている無線チップおよび/またはクライアント・デバイス10のデジタル・シグナル・プロセッサなどの、クライアント・デバイス10に備えられているハードウェアを識別することができる。ハードウェア識別子は、ハードウェアの製造時に聴覚デバイスに備えられているハードウェアのレジスタに記憶され得る。ハードウェア識別子は、シリアル番号、媒体アクセス制御(MAC)アドレス、チップ識別子、またはこれらの任意の組合せを含み得る。
【0090】
1つまたは複数の例示的なクライアント・デバイス証明書において、クライアント・デバイス証明書106は、クライアント・デバイス・タイプ識別子156を含む。クライアント・デバイス・タイプ識別子156は、クライアント・デバイスが属しているタイプを示し得る。クライアント・デバイス証明書106は、クライアント・デバイス識別子158を備え得る。クライアント・デバイス証明書は、クライアント・デバイス鍵識別子159を備え得る。クライアント・デバイス鍵識別子159は、外部パーティとの通信を保護するための鍵材料として使用されるクライアント・デバイス鍵を示し得る。
【0091】
1つまたは複数の例示的なクライアント・デバイス証明書において、クライアント・デバイス証明書106は、クライアント・デバイスのBluetoothアドレス160を含む。
【0092】
クライアント・デバイス証明書106は、デジタル署名113Aを備える。デジタル署名113Aは、署名者の正当性の検証などの、クライアント・デバイス証明書の真正性の立証または検証を可能にする。デジタル署名113Aは、適宜、クライアント・デバイス・フィッティング秘密鍵を使用して製造デバイス12によって生成される。聴覚デバイス2は、デジタル署名113Aを備えるクライアント・デバイス証明書を受信したとき(すなわち、暗号化されたクライアント・デバイス証明書を含む認証メッセージを受信し、クライアント・デバイス証明書の復号されたバージョン106Bを取得したとき)にデジタル署名113Aを検証するように構成され得る。デジタル署名113Aは、例えばメモリ・ユニット6に記憶されている、対応するクライアント・デバイス・フィッティング公開鍵を使用して聴覚デバイス2によって検証可能である。デジタル署名113Aが、申し立てられた公開鍵を使用して検証に成功しなかった場合、聴覚デバイス2は、クライアント・デバイス証明書106(および認証メッセージ)を破棄し、および/または通常動作/セッションを中断することができる。これは、聴覚デバイス2が改竄されたまたは非認証パーティから受信されたクライアント・デバイス証明書106(および認証メッセージ)を拒絶するという利点をもたらし得る。したがって、聴覚デバイス2との通信は、偽装攻撃、変更攻撃、およびなりすまし攻撃に対してロバストであり得る。
【0093】
図3Bは、例示的な聴覚デバイス証明書100を概略的に示す。聴覚デバイス証明書100は、聴覚デバイス識別子112、聴覚デバイス鍵を示す第1の聴覚デバイス鍵識別子114を含む少なくとも1つの聴覚デバイス鍵識別子、および1つまたは複数の聴覚デバイス鍵を備える。聴覚デバイス識別子112は、一意のまたは疑似一意の識別子を指すものとしてよい。第1の聴覚デバイス鍵識別子114は、聴覚デバイス証明書の第1の聴覚デバイス鍵を示す。例えば、第1の聴覚デバイス鍵識別子114は、聴覚デバイス証明書の聴覚デバイス鍵の第1のセット115(115A、115B、115C、115D)のうちの1つの聴覚デバイス鍵、例えば、第1の一次聴覚デバイス鍵115Aを示すか、または指しているものとしてよい。
【0094】
聴覚デバイス証明書100は、適宜、少なくとも4つの異なるクライアント・デバイス/クライアント・デバイス・タイプとの、安全であり、明確に区別できる通信を可能にする聴覚デバイス鍵の少なくとも4つのセットを備える。
【0095】
聴覚デバイス証明書100は、第1の一次聴覚デバイス鍵115Aを含む聴覚デバイス鍵の第1のセット115を備える。少なくとも1つの聴覚デバイス鍵識別子は、聴覚デバイス鍵115A、115B、115C、115Dの第1のセット115のうちの聴覚デバイス鍵を示す第1の聴覚デバイス鍵識別子114を含む。聴覚デバイス鍵の第1のセット115は、例えば、第1のクライアント・デバイスまたは第1のクライアント・デバイス・タイプへの、および第1のクライアント・デバイスまたは第1のクライアント・デバイス・タイプからの、通信を保護することのみを目的とする第1の一次鍵115A、第1の二次鍵115B、第1の三次鍵115C、および第1の四次鍵115Dを含む。例えば、聴覚デバイス鍵の第1のセット115は、第1のクライアント・デバイスによる聴覚デバイス・データの通信を保護するための聴覚デバイス鍵115A、115B、115C、115Dのセットであってよい。
【0096】
複数の聴覚デバイス鍵は、第2の一次聴覚デバイス鍵117A、第2の二次聴覚デバイス鍵117B、第2の三次聴覚デバイス鍵117C、および/または第2の四次聴覚デバイス鍵117Dを含む聴覚デバイス鍵の第2のセット117を含み得る。少なくとも1つの聴覚デバイス鍵識別子は、聴覚デバイス鍵117A、117B、117C、117Dの第2のセット117のうちの聴覚デバイス鍵を示す第2の聴覚デバイス鍵識別子116を含む。聴覚デバイスは、第1のクライアント・デバイスおよび/または第2のクライアント・デバイスなどの、1つまたは複数のクライアント・デバイスと通信するように構成される。聴覚デバイスが通信するように構成されている各クライアント・デバイスまたはクライアント・デバイス・タイプについて、聴覚デバイス証明書は、適宜、特定のクライアント・デバイスまたはクライアント・デバイス・タイプとの安全な通信を可能にするように構成された聴覚デバイス鍵のセット、およびどの聴覚デバイス鍵が聴覚デバイス証明書の一部であるかを示す聴覚デバイス鍵識別子を備える。聴覚デバイス証明書は、第3の一次聴覚デバイス鍵119A、第3の二次聴覚デバイス鍵119B、第3の三次聴覚デバイス鍵119C、および/または第3の四次聴覚デバイス鍵119Dを含む聴覚デバイス鍵の第3のセット119を含み得る。少なくとも1つの聴覚デバイス鍵識別子は、聴覚デバイス鍵の第3のセット119のうちの聴覚デバイス鍵を示す第3の聴覚デバイス鍵識別子118を含む。聴覚デバイス証明書100は、第4の一次聴覚デバイス鍵(図示せず)を含む聴覚デバイス鍵の第4のセットを備え得る。少なくとも1つの聴覚デバイス鍵識別子は、聴覚デバイス鍵の第4のセットのうちの聴覚デバイス鍵を示す第4の聴覚デバイス鍵識別子を含む。聴覚デバイス2は、聴覚デバイスに接続されているクライアント・デバイスまたはクライアント・デバイス・タイプに基づいて聴覚デバイス鍵のセットを選択し、聴覚デバイスの選択されたセットに関連付けられている聴覚デバイス鍵識別子に基づいて聴覚デバイス鍵のセットから聴覚デバイス鍵を1つ選択するように構成され得る。
【0097】
聴覚デバイス証明書100は、適宜、証明書タイプ識別子130Bを備える。証明書タイプ識別子130Bは、例えば、聴覚デバイス・ファミリ証明書タイプ、聴覚デバイス証明書タイプ、ファームウェア証明書タイプ、研究開発証明書タイプ、およびクライアント・デバイス証明書タイプなどの、さまざまな証明書タイプのうちから選択された聴覚デバイス証明書であることを示す。証明書タイプ識別子130Bは、どのようなタイプの証明書を受信し、記憶し、認証し、および/または取り出すかを聴覚デバイス2が識別できるようにするために使用され得る。聴覚デバイス証明書100は、聴覚デバイス証明書のデータ・フォーマット・バージョンを示すバージョン識別子を含むものとしてよい。聴覚デバイス2は、証明書タイプ識別子130Bおよび/またはバージョン識別子を使用して、聴覚デバイス証明書100がどのようなタイプのデータを含むか、どのようなタイプのデータが聴覚デバイス証明書100のフィールドに入っているかを決定することができる。例えば、聴覚デバイス2は、証明書タイプ識別子130Bおよび/またはバージョン識別子に基づいて、証明書のどのようなフィールドがデジタル署名113Bを含むか、およびデジタル署名113Bを検証するためにどの公開鍵が必要かを決定し得る。証明書タイプ識別子130Bと公開/秘密鍵ペアとの間に、デジタル署名113Bを生成するために使用される一対一マッピングがあることが想定され得る。聴覚デバイス証明書100は、聴覚デバイス証明書100の長さを、例えば、ビット、バイト単位で示す長さ識別子を含むものとしてよい。
【0098】
聴覚デバイス証明書100は、適宜、署名デバイス識別子136Bを備える。署名デバイス識別子136Bは、聴覚デバイス証明書100に署名したデバイス(製造デバイス12、例えば、製造デバイス12に含まれる集積回路カード、スマート・カード、ハードウェア・セキュリティ・モジュールなど)を識別する一意の識別子を指す。署名デバイス識別子136Bは、例えば、署名デバイスの媒体アクセス制御(MAC)アドレス、シリアル番号を含み得る。署名デバイス識別子136Bは、例えば、聴覚デバイス2が、署名デバイスが例えばブラックリストに載っているかどうかを決定すること、したがってブラックリストに載っている署名デバイスによって署名された聴覚デバイス証明書100を拒絶することを可能にする。
【0099】
聴覚デバイス証明書100は、適宜、第1のハードウェア識別子148Bおよび/または第2のハードウェア識別子(図示せず)を含む1つまたは複数のハードウェア識別子を備える。第1のハードウェア識別子148Bは、処理ユニット4、聴覚デバイス2に備えられている無線チップ、聴覚デバイス2のデジタル・シグナル・プロセッサなどの、聴覚デバイス2に備えられているハードウェアを識別することができる。第1のハードウェア識別子148Bは、ハードウェアの製造時に聴覚デバイス2に備えられているハードウェアのレジスタに記憶され得る。第1のハードウェア識別子148Bは、シリアル番号、媒体アクセス制御(MAC)アドレス、チップ識別子、またはこれらの任意の組合せを含み得る。聴覚デバイス証明書100は、第1のハードウェア識別子148B、第2のハードウェア識別子、および/または第3のハードウェア識別子を含み得る。例えば、第1のハードウェア識別子148Bは、聴覚デバイス2のハードウェア・モジュール(例えば、処理ユニットまたは無線チップ)のレジスタ内に存在する第1の聴覚デバイスに特有の値を与えることができ、第2のハードウェア識別子は、聴覚デバイス2のハードウェア・モジュールのレジスタ内に存在する第2の聴覚デバイスに特有の値を与えることができ、第3のハードウェア識別子は、第3のハードウェア・モジュール識別子(例えば、処理ユニット識別子、DSP識別子)を与えることができる。聴覚デバイス2は、第1のハードウェア識別子148Bを含む聴覚デバイス証明書100を受信した後に、次いで、記憶されているハードウェア識別子と受信された聴覚デバイス証明書100に含まれる第1のハードウェア識別子148Bとを比較することによって、聴覚デバイス証明書100を検証し得る。このようにして、聴覚デバイス2は、受信された聴覚デバイス証明書が聴覚デバイス2を意図したものであるかどうかを判定し、記憶され、受信されたハードウェア識別子が一致しない場合に、受信された聴覚デバイス証明書を拒絶し得る。
【0100】
聴覚デバイス証明書100は、適宜、クライアント・デバイス・タイプ承認識別子144を備える。クライアント・デバイス・タイプは、タブレット製品モデル、カテゴリ、またはタイプ、USBドングル製品モデル、カテゴリ、またはタイプなどの、クライアント・デバイスのモデル、カテゴリ、またはタイプを含み得る。クライアント・デバイス・タイプ承認識別子144は、フィッティング、保守、および/または運用などのために、聴覚デバイス2が通信を承認し得るクライアント・デバイス・タイプの識別子などの、承認されたクライアント・デバイス・タイプの識別子である。クライアント・デバイス・タイプ承認識別子144は、例えば、フィッティングのために聴覚デバイス2が許容すべきであるクライアント・デバイスのタイプを示すビット・フィールドである。
【0101】
聴覚デバイス証明書100は、適宜、トークン・パラメータ146を備える。トークン・パラメータ146は、トークンベースの認証が有効化されているかどうかを示す。例えば、トークン・パラメータ146が、0に設定されている場合、クライアント・デバイスのトークンベースの認証は、聴覚デバイス2によって有効化されることはなく、聴覚デバイス2は、例えば、クライアント・デバイス・タイプ識別子および/またはクライアント・デバイス識別子(シリアル番号など)の組合せを使用してクライアント・デバイス10の認証を実行することになる。例えば、トークン・パラメータ146が、1に設定されている場合、クライアント・デバイスのトークンベースの認証は、聴覚デバイス2によって有効化されることになる、すなわち、聴覚デバイス2は、(クライアント・デバイス10から受信されたトークンに基づくなどして)クライアント・デバイス10を認証する。聴覚デバイス2は、例えばユーザの介入なくクライアント・デバイス10への接続を受け入れるために使用される、受信されたトークン・パラメータ146に基づいてセッション特有のトークンも導出し得る。
【0102】
聴覚デバイス証明書100は、ハードウェア・プラットフォーム識別子138、ソフトウェア・プラットフォーム識別子140、および/または証明書タイムスタンプ142のうちの1つまたは複数を備える。ハードウェア・プラットフォーム識別子138は、動作している聴覚デバイス・ハードウェア・プラットフォーム、すなわち、聴覚デバイス証明書が使用され得るハードウェア・プラットフォームなどの、ハードウェア・プラットフォームを識別し得る。ソフトウェア・プラットフォーム識別子140は、聴覚デバイス証明書が動作するように構成されているソフトウェア・プラットフォームのファミリを識別し得る。証明書タイムスタンプ142は、聴覚デバイス証明書100が生成された時刻を示す製造デバイス12のタイムスタンプなどの、聴覚デバイス証明書100の生産または製造のタイムスタンプを指す。証明書タイプスタンプ142は、例えば、時、分、日、月、年の形態であるものとしてよい。
【0103】
聴覚デバイス証明書は、デジタル署名113Bおよび/またはMACを備える。デジタル署名113Bは、署名者の正当性(例えば、署名者が正当な製造デバイスであるかどうか)の検証などの、聴覚デバイス証明書100の真正性の立証または検証を可能にする。デジタル署名113Bは、聴覚デバイスの製造時にデバイス・ファミリ秘密鍵を使用して製造デバイス12によって生成される。次いで、聴覚デバイス2または処理ユニット4は、例えば、デジタル署名113Bを含む聴覚デバイス証明書100を受信したとき、デジタル署名113Bを検証することができる。デジタル署名113Bは、対応するデバイス・ファミリ公開鍵を使用して聴覚デバイス2によって検証可能である。デジタル署名113Bが、申し立てられた公開鍵を使用して検証に成功しなかった場合、聴覚デバイスは、聴覚デバイス証明書100を破棄し、および/または通常動作を中断することができる。
【0104】
図4は、聴覚デバイス2およびクライアント・デバイス10を伴う例示的な信号図400を概略的に示している。クライアント・デバイス10は、フィッティング・デバイス14を備え得る。聴覚デバイス2は、インターフェース8を介して、クライアント・デバイス10からセッションに対する接続要求またはメッセージ411を受信する。クライアント・デバイス10が、フィッティング・デバイス14を備えているとき、フィッティング・デバイス14は、接続要求411としてクライアント・デバイス10によって送信される、接続要求410を生成し得る。聴覚デバイス2は、セッション識別子180を生成するなど、セッション識別子180を取得する。聴覚デバイス2は、聴覚デバイス識別子112および/またはセッション識別子180を含む接続応答412を生成し、クライアント・デバイス10に接続応答412を送信する。クライアント・デバイス10が、フィッティング・デバイス14を備えているとき、フィッティング・デバイス10は、クライアント・デバイス10を介して接続応答412を受信し得る。クライアント・デバイス10は、認証メッセージ421を生成し、認証メッセージ421を聴覚デバイス2に送信する。聴覚デバイス2は、クライアント・デバイス10から認証メッセージ421を受信する。認証メッセージ421は、認証鍵識別子166、オプションの認証タイプ識別子168、およびクライアント・デバイス・データ109を含む。クライアント・デバイス・データ109は、暗号化されたクライアント・デバイス証明書106Aまたはクライアント・デバイス証明書106を含む。クライアント・デバイス・タイプ識別子156、クライアント・デバイス識別子158、およびユーザ識別子のうちのどれかが、暗号化されたクライアント・デバイス証明書106Aに含まれ得る。クライアント・デバイス識別子、クライアント・デバイス・タイプ識別子156、および/またはユーザ識別子のうちのどれかが、認証メッセージ421内に、プレーン・テキストで、または(プレーン・テキストの)クライアント・デバイス証明書106の一部として、含まれ得る。クライアント・デバイス10が、フィッティング・デバイス14を備えているとき、フィッティング・デバイス14は、認証メッセージ421としてクライアント・デバイス10によって送信される、認証メッセージ420を生成し得る。
【0105】
適宜、聴覚デバイス2は、認証メッセージ421の内容、発信元、および/または完全性を検証することによって認証メッセージ421を認証するように構成される。例えば、聴覚デバイス2は、受信された認証鍵識別子166の受信された値が、聴覚デバイス証明書100に含まれる聴覚デバイス鍵識別子(および/または聴覚デバイス2が例えばフラッシュ・メモリに聴覚デバイス鍵識別子として記憶している最新の値)より高いか、または等しいかどうかを検証する。聴覚デバイス2が、受信された認証鍵識別子166の受信された値が聴覚デバイス鍵識別子よりも高いか、または等しいと決定した場合に、認証は継続する。そうでない場合、セッションは即座に打ち切られる(適切なエラー・コードを返す)。これは、聴覚デバイス2が失効した/取り消されたクライアント・デバイスと通信することを防ぐ。
【0106】
例えば、聴覚デバイス2は、認証タイプ識別子に基づいてクライアント・デバイスのタイプを決定する。聴覚デバイス2は、認証タイプ識別子168および/または認証鍵識別子166に基づいて、複数の聴覚デバイス鍵から聴覚デバイス鍵を1つ選択する。例えば、聴覚デバイス2は、受信された認証鍵識別子166に対応する聴覚デバイス鍵を識別する。聴覚デバイス2は、クライアント・デバイス10への接続応答412で送信された、識別された聴覚デバイス鍵およびセッション識別子180(例えば、16バイトの乱数)を使用して、例えば証明書鍵が導出可能である共通秘密を計算して、証明書鍵を導出する。
【0107】
証明書鍵を使用することで、聴覚デバイス2は、暗号化されたクライアント・デバイス証明書106Aを復号する。次いで、聴覚デバイス2は、復号されたクライアント・デバイス証明書106Bに含まれる証明書タイプ識別子130Aが正しい証明書106Bに対応していることを検証し得る。次いで、聴覚デバイス2は、プレーン・テキストで受信された認証タイプ識別子168が復号された証明書106B中のクライアント・デバイス・タイプ識別子156と一致することを検証し得る。次いで、聴覚デバイス2は、プレーン・テキストで受信された認証鍵識別子166が、復号された証明書106B中のクライアント・デバイス鍵識別子159と一致することを検証し、認証鍵識別子166および/またはクライアント・デバイス鍵識別子159が聴覚デバイス2によって保持されている聴覚デバイス鍵識別子(第1の聴覚デバイス鍵識別子114など)を示すかどうかをさらに評価することができる。次いで、聴覚デバイス2は、復号された証明書106B中のバージョン識別子132が聴覚デバイス2によってサポートされていることを検証し得る。次いで、聴覚デバイス2は、プレーン・テキストで受信された認証タイプ識別子168またはクライアント・デバイス・タイプ識別子156が、記憶されている聴覚デバイス証明書100のクライアント・デバイス・タイプ承認識別子144にリストされていることを検証し得る。次いで、聴覚デバイス2は、プレーン・テキストで受信された認証タイプ識別子168または第1のハードウェア識別子148A、150に関連付けられているクライアント・デバイス・タイプ識別子156がブラックリストに載っていないことを検証し得る。署名デバイス識別子136Aは、ブラックリストに載っていないことを検証される。次いで、聴覚デバイス2は、一致する公開鍵を使用してクライアント・デバイス証明書106Bのデジタル署名113Aを検証し得る。
【0108】
認証メッセージ421の認証および/または検証が成功した後、聴覚デバイス2は、認証応答422を、クライアント・デバイス10に送信することができる。クライアント・デバイス10がフィッティング・デバイス14を備えるときに、クライアント・デバイス10はフィッティング・デバイス14にそれを転送し得る
【0109】
通信チャネルは、この時点で開かれ、安全が確保されている。クライアント・デバイス10またはクライアント・デバイス10を介したフィッティング・デバイス14は、セッション鍵によって保護されているセッション中の聴覚デバイス・データ430などの、聴覚デバイス・データ430を聴覚デバイス2に送信し得る。聴覚デバイス・データ430は、例えば、ファームウェア、フィッティング・データ、および/または聴覚デバイス動作パラメータを含む。フィッティング・データは、例えば、聴覚デバイス2がユーザの耳にフィッティングされているときにディスペンサによって使用されるフィッティング・デバイス14によって生成されるデータであってよい。フィッティング・データは、聴力損失パラメータ、コンプレッサ・パラメータ、フィルタ係数、および/または利得係数を含み得る。聴覚デバイス動作パラメータは、ボリューム・コントロール・パラメータ、モード、および/またはプログラム・コントロール・パラメータを含み得る。ファームウェアは、聴覚デバイス製造者によって提供され、聴覚デバイス2を制御するために聴覚デバイス2上にインストールされるべきコンピュータ・プログラムを指すものとしてよい。ファームウェアは、例えば、聴覚デバイス2の動作および機能をアップグレードするようにインストールされることになる。
【0110】
適宜、例えば、クライアント・デバイス10が、聴覚デバイス2に再接続するとき、処理ユニット4は、インターフェース8を介して追加の認証メッセージ440を受信するように構成され得る。追加の認証メッセージ440は、クライアント・デバイス・データ110および認証デバイス識別子169を含む。処理ユニット4は、認証メッセージ440を検証し、認証メッセージ440を送信するクライアント・デバイスを認証するように構成され得る。処理ユニット4は、メモリ・ユニット6から、認証デバイス識別子169に基づいて共通秘密を取得するように構成され得る。メモリ・ユニット6は、認証されたクライアント・デバイス10に対する、そこに記憶された対応する共通秘密に関連付けられているクライアント・デバイス識別子158を有するものとしてよい。次いで、処理ユニット4は、認証デバイス識別子169に基づいて対応する共通秘密を取り出すように構成され得る。共通秘密は、早い段階で、例えば、復帰するクライアント・デバイス10の認証の初回に生成され、記憶されている。したがって、クライアント・デバイス10が認証された後、処理ユニット4は、メモリ・ユニット6から対応する共通秘密だけを取り出すことができる。これは、より高速なその後の認証を可能にし、追加の証明書鍵を計算するための共通秘密を再生成しなくて済むようにし、したがって、対応する電力消費量を節減する。処理ユニット4は、共通秘密から追加の証明書鍵を生成し、追加の証明書鍵に基づいてクライアント・デバイス・データ110を検証するように構成され得る。例えば、処理ユニット4は、共通秘密および証明書値に基づいてハッシュ値を計算することによって追加の証明書鍵を生成する。上で説明されているように、処理ユニット4は、クライアント・デバイス・データ110のMACおよび/またはデジタル署名を検証することなど、クライアント・デバイス・データ110の完全性を検証することによって、追加の証明書鍵に基づいてクライアント・デバイス・データ110を検証するように構成され得る。処理ユニット4は、クライアント・デバイス・データ110が暗号化されて受信されるとき、追加の証明書鍵を(復号鍵として)使用してクライアント・デバイス・データ110を復号することによって追加の証明書鍵に基づいてクライアント・デバイス・データ110を検証するように構成される。処理ユニット4は、クライアント・デバイス・データ110の内容を検証することによってクライアント・デバイス・データ110を検証するように構成される。処理ユニット4は、クライアント・デバイス・データ110をメモリ・ユニット6に記憶されているデータと比較することによってクライアント・デバイス・データを検証するように構成され得る。クライアント・デバイス・データ110は、暗号化されたクライアント・デバイス証明書106Aなどの、クライアント・デバイス証明書106を含み得る。
【0111】
適宜、処理ユニット4は、クライアント・デバイス・データ110および認証トークン識別子167を含むさらなる認証メッセージ450を受信するように構成される。処理ユニット4は、メモリ・ユニット6から認証トークン識別子167に基づいて共通秘密を取得し、共通秘密からトークン鍵を生成するように構成される。
【0112】
1つまたは複数の例示的な聴覚デバイスにおいて、処理ユニット4は、クライアント・デバイス・データ110、認証タイプ識別子168、認証鍵識別子166、および/または認証セッション・トークン識別子167を含むさらなる認証メッセージ450を受信するように構成される。さらなる認証メッセージは、認証デバイス識別子169を含み得る。処理ユニット4は、メモリ・ユニット6内で、認証タイプ識別子168に対応する記憶されているクライアント・デバイス・タイプ識別子を特定することおよび/または認証デバイス識別子169に対応する記憶されているクライアント・デバイス識別子を特定することに基づいて、さらなる認証メッセージ450を送信するクライアント・デバイス10のクライアント・デバイス・タイプ識別子および/またはクライアント・デバイス識別子にリンクされた共通秘密を見つけるように構成され得る。処理ユニット4は、認証タイプ識別子168に基づいて共通秘密を取得し、共通秘密に基づいてトークン鍵を生成し、トークン鍵およびセッション識別子に基づいてセッション・トークン識別子を生成するように構成され得る。処理ユニット4は、クライアント・デバイス10との早い段階でのセッションにおいて、例えば証明書鍵を確立するために共通秘密を生成している場合があり、また共通秘密を記憶し、共通秘密をクライアント・デバイス・タイプ識別子および/またはクライアント・デバイス識別子にリンクしている場合がある。次いで、処理ユニット4は、記憶されているクライアント・デバイス・タイプ識別子および/またはクライアント・デバイス識別子に対応する認証タイプ識別子168および/または認証クライアント識別子169に基づいて共通秘密を取得するように構成され得る。処理ユニット4は、共通秘密およびトークン値(事前定義された任意の文字列または事前定義された任意の値など)に対してハッシュ関数を実行することによってトークン鍵を生成するように構成され得る。処理ユニット4は、セッション識別子を生成することと、トークン鍵およびセッション識別子に対してハッシュ関数を実行することとによってトークン鍵およびセッション識別子に基づいてセッション・トークン識別子を生成するように構成され得る。処理ユニット4は、セッション・トークン識別子に基づいて認証セッション・トークン識別子を検証するように構成され得る。処理ユニット4は、認証セッション・トークン識別子167と生成されたセッション・トークン識別子とを比較することによって認証セッション・トークン識別子を検証するように構成され得る。例えば、処理ユニットが、認証セッション・トークン識別子167が生成されたセッション・トークン識別子と一致していると決定した場合に、検証は成功であり、処理ユニット4は、ユーザによる物理的介入なしで先に進むことができ、さらなる認証メッセージ450において与えられるクライアント・デバイス・データ110を検証し続けることができる。クライアント・デバイス・データ100は、本開示に従って検証され得る、クライアント・デバイス証明書を含み得る。
【0113】
1つまたは複数の例示的な聴覚デバイスにおいて、聴覚デバイスは、veteran administration(VA)フィッティングなどの、特別なフィッティングをサポートするように構成される。聴覚デバイスのメモリ・ユニットは、VAフィッティングなどの、特別なフィッティングのタイプを示す特別なインジケータを記憶している場合がある。
【0114】
図5は、聴覚デバイス2を運用する例示的な方法500の流れ図を概略的に示す。聴覚デバイス2は、聴覚デバイス2のユーザの聴力損失を補うように構成された処理ユニット4と、メモリ・ユニット6と、インターフェース8とを備える。方法500は、インターフェース8を介してセッションに対する接続要求を受信すること(S1)を含む。接続要求は、聴覚デバイス2が接続要求および接続要求を送信するクライアント・デバイスのこの早期の段階での認証を実行することを可能にするために、認証鍵識別子166および/または認証タイプ識別子168を含み得る。これは、あるレベルのアクセス制御を行うことができる。
【0115】
方法500は、セッション識別子180を、例えば、聴覚デバイスで取得すること(S2)を含む。セッション識別子180を取得すること(S2)は、乱数または疑似乱数を生成することなどによって、セッション識別子180を生成することを含み得る。例えば、処理ユニット4は、セッション識別子180として使用されるべき所定の長さ、例えば、16ビット、32ビット、64ビットなどの乱数または疑似乱数を生成する。セッション識別子180を取得すること(S2)は、メモリ・ユニットからセッション識別子180を取り出すことを含み得る。方法500は、メモリ・ユニット6にセッション識別子180を記憶することを含み得る。例えば、メモリ・ユニット6にセッション識別子180を記憶することは、指定されたメモリ・セル内および/または指定されたアドレスなど、メモリ・ユニット6のメモリ・アドレスに、および/またはメモリ・ユニット6のメモリ・セル内にセッション識別子180を記憶することを含む。
【0116】
方法500は、インターフェース8を介して、聴覚デバイス識別子112およびセッション識別子180を含む接続応答を送信すること(S3)を含む。接続応答を送信すること(S3)は、セッション識別子180および聴覚デバイス識別子112を含めることによって接続応答を生成することと、こうして生成された接続応答を例えばクライアント・デバイス10に送信することとを含み得る。
【0117】
方法500は、インターフェース8を介して、認証メッセージを受信すること(S4)を含む。認証メッセージは、認証鍵識別子166およびクライアント・デバイス・データ109を含む。方法500は、インターフェース8を介して、クライアント・デバイス10から認証メッセージ421を受信することを含み得る。例えば、聴覚デバイス2は、通信セッションを確立するためにクライアント・デバイス10から認証メッセージ421を受信する。クライアント・デバイス・データ109は、暗号化されていないクライアント・デバイス証明書106または暗号化されているクライアント・デバイス証明書106Aなどのクライアント・デバイス証明書、フィッティング・データ、聴覚デバイス動作パラメータ、および/またはファームウェア・データを含むことができる。認証鍵識別子166は、クライアント・デバイス10が聴覚デバイス2によって受け入れ可能なクライアント・デバイス鍵を使用しているかどうかを検証するために使用され得る識別子とすることができる。
【0118】
方法500は、認証鍵識別子166に基づいて、メモリ・ユニット6内の(例えば、聴覚デバイス鍵115の第1のセット、聴覚デバイス鍵116の第2のセットなどの中、またはそれらの間の)複数の聴覚デバイス鍵から聴覚デバイス鍵を1つ選択すること(S5)を含む。認証鍵識別子166が、聴覚デバイス2によって保持されている第1の聴覚デバイス鍵識別子114などの、聴覚デバイス鍵識別子と一致しているとき、処理ユニット4は、認証鍵識別子166を、どの聴覚デバイス鍵がセッションにおける鍵材料として使用されるべきかを示す鍵識別子として使用するように構成され得る。メモリ・ユニット内の複数の聴覚デバイス鍵のうちから聴覚デバイス鍵を1つ選択すること(S5)は、認証鍵識別子166および/または認証タイプ識別子168に基づいてもよい。認証タイプ識別子168は、聴覚デバイス2によってプレーン・テキストで、認証メッセージ421の一部として受信され、および/または(暗号化または復号されている)クライアント・デバイス証明書106内のクライアント・デバイス・タイプ識別子156として受信され得る。例えば、選択すること(S5)は、認証鍵識別子166および認証タイプ識別子168が示す聴覚デバイス鍵を選択することを含む。
【0119】
方法500は、選択された聴覚デバイス鍵に基づいて、クライアント・デバイス・データ109を検証すること(S6)と、検証が失敗した場合にセッションを終了すること(S7)とを含む。選択された聴覚デバイス鍵に基づいてクライアント・デバイス・データ109を検証すること(S6)は、クライアント・デバイス・データ109に含まれるMACおよび/またはデジタル署名を検証することなど、選択された聴覚デバイス鍵に基づいてクライアント・デバイス・データ109の完全性を検証することを含み得る。選択された聴覚デバイス鍵に基づいてクライアント・デバイス・データ109を検証すること(S6)は、クライアント・デバイス・データ109が暗号化されて受信されるとき、選択された聴覚デバイス鍵を(復号鍵を導出するための鍵材料として、または復号鍵として)使用して、クライアント・デバイス・データ109を復号することを含み得る。選択された聴覚デバイス鍵に基づいてクライアント・デバイス・データ109を検証すること(S6)は、受信されたクライアント・デバイス・データ109をメモリ・ユニット内に記憶されているデータと比較することによって、クライアント・デバイス・データ109を検証することを含み得る。例えば、クライアント・デバイス・データ109の完全性が、例えばMACまたはデジタル署名を検証することによって破損していると検出された場合に、復号が失敗した場合に、および/または、(クライアント・デバイス・データが暗号化されたクライアント・デバイス証明書などの暗号化されたデータを含む場合は、復号されるときに)受信されたクライアント・デバイス・データ109とメモリ・ユニットに記憶されているデータ、例えば、聴覚デバイス証明書との比較で不整合が示されるか、または破損が示される場合に、検証は失敗であり、セッションは終了する。
【0120】
認証メッセージは、適宜、認証タイプ識別子168を含む。認証タイプ識別子は、例えば、クライアント・デバイス・データ(暗号化された)に含まれる、クライアント・デバイス・タイプ識別子156および/または証明書タイプ識別子130を示し得る。複数の聴覚デバイス鍵のうちから聴覚デバイス鍵を1つ選択すること(S5)は、認証タイプ識別子168に基づくものとしてよい。聴覚デバイス鍵を選択すること(S5)は、認証メッセージ421で与えられる認証タイプ識別子168および/または認証鍵識別子166に基づいてもよい。
【0121】
クライアント・デバイス・データ109は、クライアント・デバイス証明書106または暗号化されたクライアント・デバイス証明書106A、認証鍵識別子166、および/または認証タイプ識別子168を含み得る。方法500は、選択された聴覚デバイス鍵および/またはセッション識別子180に基づいて証明書鍵を生成すること(S8)を含むものとしてよく、クライアント・デバイス・データ109を検証すること(S6)は、暗号化されているクライアント・デバイス証明書106Aを証明書鍵で復号して、暗号化されているクライアント・デバイス証明書106Aの復号されたバージョン106Bを取得することを含み得る。暗号化されたクライアント・デバイス証明書106Aを証明書鍵で復号することは、共通秘密に基づいて証明書鍵を生成することなどの、証明書鍵、共通秘密、および/または聴覚デバイス鍵を使用して暗号化されたクライアント・デバイス証明書106Aを復号すること、および復号関数および証明書鍵を使用して暗号化されたクライアント・デバイス証明書106Aを処理することを含み得る。証明書鍵は、共通秘密および/または証明書値に基づくものとしてよい。証明書鍵を生成することは、選択された聴覚デバイス鍵に基づいて共通秘密を取得または生成することを含み得る。例えば、聴覚デバイス鍵に基づいて共通秘密を生成することは、メモリ・ユニット6から、選択された聴覚デバイス鍵を含む聴覚デバイス証明書100を取り出すこと、および/または選択された聴覚デバイス鍵をメモリ・ユニット6から取り出すことを含む。方法は、セッション識別子180および/または選択された聴覚デバイス鍵(例えば、第1の一次聴覚デバイス鍵115A)に基づいて共通秘密を生成することを含み得る。例えば、共通秘密CSは、選択された聴覚デバイス鍵およびセッション識別子180に基づいて、例えば以下の式
CS=hash(HD_KEY,S_ID)
で生成される。ここで、hashはハッシュ関数であり、HD_KEYは選択された聴覚デバイス鍵であり、S_IDはセッション識別子180である。セッション識別子180は、定義された長さの乱数または疑似乱数を含むものとしてよい。共通秘密は、1つまたは複数の例示的な方法における証明書鍵として使用され得る。方法500は、例えば、必要なときにメモリ・ユニット6から共通秘密を取り出せるように、メモリ・ユニット6に共通秘密を記憶することを含み得る。
【0122】
証明書鍵を生成することは、共通秘密および/または証明書値に対してハッシュ関数を実行することを含み得る。証明書鍵を生成することは、例えば以下の式
C_KEY=hash(CS,C_VAL)
で実行されるものとしてよい。ここで、hashはハッシュ関数であり、CSは共通秘密であり、C_VALは証明書値である。証明書値は、予め定義された値または文字列、例えば文字列「certificate」であってよい。
【0123】
1つまたは複数の例示的な方法において、証明書鍵を生成することは、聴覚デバイス鍵(例えば、第1の一次聴覚デバイス鍵115A)およびセッション識別子180に対してハッシュ関数を実行することを含む。別の言い方をすると、共通秘密は、クライアント・デバイスがクライアント・デバイス証明書106を暗号化するための証明書鍵として共通秘密も使用している場合に、証明書鍵として使用され得る。
【0124】
クライアント・デバイス・データ109を検証すること(S6)は、聴覚デバイス2によって生成された証明書鍵を使用して暗号化されているクライアント・デバイス証明書106Aを復号することと、暗号化されているクライアント・デバイス証明書106Aの復号されたバージョン106Bを取得することとを含み得る。
【0125】
1つまたは複数の例示的な方法において、クライアント・デバイス・データ109を検証すること(S6)は、例えば、聴覚デバイス証明書または少なくともその一部に基づいて、暗号化されているクライアント・デバイス証明書106Aの復号されたバージョン106Bの内容を検証することを含み得る。
【0126】
例えば、クライアント・デバイス・データ109を(聴覚デバイスにより)検証すること(S6)は、認証鍵識別子166がクライアント・デバイス証明書106のクライアント・デバイス鍵識別子159と一致しているかどうかを判定することを含み、一致していないと判定された場合に検証は失敗となる。
【0127】
1つまたは複数の例示的な方法において、クライアント・デバイス・データ109を検証すること(S6)は、クライアント・デバイス証明書106または106Bのクライアント・デバイス・タイプ識別子156が有効であるかどうかを判定することを含み、クライアント・デバイス証明書106または106Bのクライアント・デバイス・タイプ識別子156が有効でない場合に検証は失敗となる。例えば、認証タイプ識別子168は、認証メッセージ421中のプレーン・テキストで送信され、プレーン・テキストで送信された認証タイプ識別子168は、認証タイプ識別子168がクライアント・デバイス証明書106の復号されたバージョン106Bに含まれる対応するクライアント・デバイス・タイプ識別子156と一致する場合に有効である。例えば、クライアント・デバイス証明書106のクライアント・デバイス・タイプ識別子156が有効であるかどうかを判定することは、クライアント・デバイス証明書106のクライアント・デバイス・タイプ識別子156が、メモリ・ユニット6に記憶されている、および/またはリモート・データ記憶装置から取り出された、承認されたクライアント・デバイスのリストに含まれているかどうかを判定することを含む。
【0128】
1つまたは複数の例示的な方法において、クライアント・デバイス・データ109を検証すること(S6)は、クライアント・デバイス証明書106、106Bのデジタル署名113Aを検証することを含み、デジタル署名が検証されていない場合に検証は失敗となる。例えば、クライアント・デバイス・データ109は、クライアント・デバイス・データ109の完全性を保護するために、クライアント・デバイス・データ109に含まれるか、または付加されたデジタル署名113Aを含む。デジタル署名113Aを検証することは、例えば、デジタル署名113Aおよび対応するクライアント・デバイス公開鍵に基づいて比較結果を計算することと、比較結果を受信されたクライアント・デバイス・データ109と比較することとを含む。デジタル署名113Aを検証することは、対応するクライアント・デバイス公開鍵をメモリ・ユニット6からおよび/またはリモート・データ記憶装置から取り出すことを含み得る。デジタル署名113Aを対応するクライアント・デバイス公開鍵でべき乗したものが、受信されたクライアント・デバイス・データ109と同一であるときに、デジタル署名113Aは有効なものとして検証される、または検証が成功となる。
【0129】
1つまたは複数の例示的な方法において、クライアント・デバイス証明書106は、署名デバイス識別子136Aおよび/またはクライアント・デバイス識別子158を含み、クライアント・デバイス・データ109を検証すること(S6)は、署名デバイス識別子136Aおよび/またはクライアント・デバイス証明書106または106Bのクライアント・デバイス識別子158が有効であるかどうかを判定することを含み、クライアント・デバイス識別子158および/または署名デバイス識別子136Aが有効でない場合に検証は失敗となる。
【0130】
1つまたは複数の例示的な方法において、方法500は、クライアント・デバイス・データ110および認証デバイス識別子169を含む追加の認証メッセージ440を受信することを含む。方法は、メモリ・ユニット6から、認証デバイス識別子169に基づいて共通秘密を取得することと、共通秘密から追加の証明書鍵を生成することと、追加の証明書鍵に基づいてクライアント・デバイス・データ110を検証することとをさらに含み得る。
【0131】
1つまたは複数の例示的な方法において、方法500は、共通秘密およびセッション識別子180に基づいてオフライン・セッション鍵を生成することと、オフライン・セッション鍵を使用してクライアント・デバイス10と通信することとを含む。
【0132】
1つまたは複数の例示的な方法、方法500において、認証メッセージ421は、認証トークン識別子を含み、方法500は、認証トークン識別子をメモリ・ユニット6に記憶することと、認証トークン識別子を共通秘密とリンクすることとを含む。
【0133】
1つまたは複数の例示的な方法において、方法500は、クライアント・デバイス・データ110、認証タイプ識別子168、認証鍵識別子166、および/または認証セッション・トークン識別子167を含むさらなる認証メッセージ450を受信することを含む。方法500は、認証タイプ識別子168に基づいて共通秘密を取得することと、共通秘密に基づいてトークン鍵を生成することと、トークン鍵およびセッション識別子に基づいてセッション・トークン識別子を生成することとを含み得る。方法500は、セッション・トークン識別子に基づいて認証セッション・トークン識別子167を検証することを含み得る。
【0134】
1つまたは複数の例示的な方法において、方法500は、セッション識別子180および聴覚デバイス鍵に基づいてセッション鍵を生成することと、セッション鍵に基づいてセッション・データ(例えば、聴覚デバイス・データ430)を受信し、認証することとを含む。
【0135】
例示的な聴覚デバイスおよび方法は、次の項目に述べられている。
【0136】
(項目1)
聴覚デバイスであって、
聴覚デバイスのユーザの聴力損失を補うように構成された処理ユニットと、
メモリ・ユニットと、
インターフェースとを備えており、
処理ユニットは、
インターフェースを介してセッションに対する接続要求を受信し、
セッション識別子を取得し、
インターフェースを介して、聴覚デバイス識別子およびセッション識別子を含む接続応答を送信し、
インターフェースを介して、認証鍵識別子およびクライアント・デバイス・データを含む認証メッセージを受信し、
認証鍵識別子に基づいてメモリ・ユニット内の複数の聴覚デバイス鍵のうちから聴覚デバイス鍵を選択し、
選択された聴覚デバイス鍵に基づいて、クライアント・デバイス・データを検証し、
検証が失敗した場合にセッションを終了するように構成されている、聴覚デバイス。
【0137】
(項目2)
認証メッセージは、認証タイプ識別子を含み、複数の聴覚デバイス鍵のうちから聴覚デバイス鍵を選択することは、認証タイプ識別子に基づいている、項目1に記載の聴覚デバイス。
【0138】
(項目3)
クライアント・デバイス・データは、暗号化されたクライアント・デバイス証明書を含み、処理ユニットは、共通秘密に基づいて証明書鍵を生成するように構成され、クライアント・デバイス・データを検証することは、暗号化されているクライアント・デバイス証明書を証明書鍵で復号して、暗号化されているクライアント・デバイス証明書の復号されたバージョンを取得することを含む、項目1または2に記載の聴覚デバイス。
【0139】
(項目4)
共通秘密は、選択された聴覚デバイス鍵および/またはセッション識別子に基づいている、項目3に記載の聴覚デバイス。
【0140】
(項目5)
クライアント・デバイス・データを検証することは、認証鍵識別子がクライアント・デバイス証明書のクライアント・デバイス鍵識別子と一致しているかどうかを判定することを含み、一致していないと判定された場合に検証は失敗となる、項目3または4に記載の聴覚デバイス。
【0141】
(項目6)
クライアント・デバイス・データを検証することは、クライアント・デバイス証明書のクライアント・デバイス・タイプ識別子が有効であるかどうかを判定することを含み、クライアント・デバイス証明書のクライアント・デバイス・タイプ識別子が有効でない場合に検証は失敗となる、項目3から5のいずれか一項に記載の聴覚デバイス。
【0142】
(項目7)
クライアント・デバイス・データを検証することは、クライアント・デバイス証明書のデジタル署名を検証することを含み、デジタル署名が検証されていない場合に検証は失敗となる、項目3から6のいずれか一項に記載の聴覚デバイス。
【0143】
(項目8)
クライアント・デバイス証明書は、署名デバイス識別子および/またはクライアント・デバイス識別子を含み、クライアント・デバイス・データを検証することは、署名デバイス識別子および/またはクライアント・デバイス識別子が有効であるかどうかを判定することを含み、クライアント・デバイスのクライアント・デバイス識別子および/または署名デバイス識別子が有効でない場合に検証は失敗となる、項目3から7のいずれか一項に記載の聴覚デバイス。
【0144】
(項目9)
処理ユニットは、クライアント・デバイス・データおよび認証デバイス識別子を含む追加の認証メッセージを受信するように構成されており、
処理ユニットは、
メモリ・ユニットから、認証デバイス識別子に基づいて共通秘密を取得し、
共通秘密から追加の証明書鍵を生成し、
追加の証明書鍵に基づいてクライアント・デバイス・データを検証するように構成されている、項目3から8のいずれか一項に記載の聴覚デバイス。
【0145】
(項目10)
処理ユニットは、共通秘密およびセッション識別子に基づいてオフライン・セッション鍵を生成するように構成されており、
処理ユニットは、オフライン・セッション鍵を使用してクライアント・デバイスと通信するように構成されている、項目9に記載の聴覚デバイス。
【0146】
(項目11)
認証メッセージは、認証トークン識別子を含み、処理ユニットは、認証トークン識別子をメモリ・ユニットに記憶し、認証トークン識別子を共通秘密とリンクするように構成されている、項目3から10のいずれか一項に記載の聴覚デバイス。
【0147】
(項目12)
処理ユニットは、クライアント・デバイス・データ、認証タイプ識別子、認証鍵識別子、および/または認証セッション・トークン識別子を含むさらなる認証メッセージを受信するように構成されており、
処理ユニットは、
認証タイプ識別子に基づいて共通秘密を取得し、
共通秘密に基づいてトークン鍵を生成し、
トークン鍵およびセッション識別子に基づいてセッション・トークン識別子を生成し、
セッション・トークン識別子に基づいて認証セッション・トークン識別子を検証するように構成されている、項目3から11のいずれか一項に記載の聴覚デバイス。
【0148】
(項目13)
処理ユニットは、セッション識別子および聴覚デバイス鍵に基づいてセッション鍵を生成するように構成されており、処理ユニットは、セッション鍵に基づいてセッション・データを受信し、認証するように構成されている、項目1から12のいずれか一項に記載の聴覚デバイス。
【0149】
(項目14)
聴覚デバイスを運用する方法であって、聴覚デバイスは、聴覚デバイスのユーザの聴力損失を補うように構成された処理ユニットと、メモリ・ユニットと、インターフェースとを備えており、その方法は、
インターフェースを介してセッションに対する接続要求を受信するステップと、
セッション識別子を取得するステップと、
インターフェースを介して、聴覚デバイス識別子およびセッション識別子を含む接続応答を送信するステップと、
インターフェースを介して、認証鍵識別子およびクライアント・デバイス・データを含む認証メッセージを受信するステップと、
認証鍵識別子に基づいて複数の聴覚デバイス鍵のうちから聴覚デバイス鍵を選択するステップと、
選択された聴覚デバイス鍵に基づいてクライアント・デバイス・データを検証するステップと、
検証が失敗した場合にセッションを終了するステップとを含む方法。
【0150】
(項目15)
認証メッセージは、認証タイプ識別子を含み、複数の聴覚デバイス鍵のうちから聴覚デバイス鍵を選択するステップは、認証タイプ識別子に基づいている、項目14に記載の方法。
【0151】
(項目16)
クライアント・デバイス・データは、暗号化されたクライアント・デバイス証明書を含み、方法は、選択された聴覚デバイス鍵および/またはセッション識別子に基づいて証明書鍵を生成することを含み、クライアント・デバイス・データを検証することは、証明書鍵で暗号化されているクライアント・デバイス証明書を復号することを含む、項目14または15に記載の方法。
【0152】
(項目17)
クライアント・デバイス・データを検証することは、クライアント・デバイス証明書のデジタル署名を検証することを含み、デジタル署名が検証されていない場合に検証は失敗となる、項目14から16のいずれか一項に記載の方法。
【0153】
「第1の」、「第2の」、および同様の言い回しの使用は、特定の順序を意味しないが、それらは、個別の要素を識別するために含まれている。さらに、第1の、第2の、などの言い回しの使用は、順序、または重要度を表さず、むしろ、第1の、第2の、などは、要素を互いに区別するために使用される。第1および第2という単語は、ここで、および別のところで、標識付けのみを目的として使用されており、特定の空間的または時間的順序付けを表すことを意図されていないことに留意されたい。さらに、第1の要素のラベル付けは、第2の要素の存在を意味しない。
【0154】
特定の特徴が示され説明されているが、それらは特許請求の範囲に記載された発明を制限することを意図していないことは理解され、当業者に対して、さまざまな変更および修正が特許請求の範囲に記載された発明の精神および範囲から逸脱することなくなされ得ることが明らかにされる。したがって、本明細書および図面は、限定ではなく、例示することを目的としているものとみなすべきである。特許請求の範囲に記載された発明は、すべての代替形態、修正形態、および均等形態を対象とすることが意図されている。
【符号の説明】
【0155】
1:システム
2:聴覚デバイス
4:処理ユニット
5:マイクロフォン
6:メモリ・ユニット
7:受信機
8:インターフェース
10:クライアント・デバイス
12:製造デバイス
14:フィッティング・デバイス
16:サーバ・デバイス
21:クライアント・デバイスと聴覚デバイスとの間の通信リンク
22:サーバ・デバイスと製造デバイスとの間の通信リンク
23:聴覚デバイスと製造デバイスとの間の通信リンク
24:サーバ・デバイスとクライアント・デバイス・フィッティング・デバイスとの間の通信リンク
100:聴覚デバイス証明書
106:クライアント・デバイス証明書
106A:暗号化されたクライアント・デバイス証明書
106B:暗号化されたクライアント・デバイス証明書の復号されたバージョン
109:クライアント・デバイス・データ:
110:追加の/さらなる認証メッセージ中のクライアント・デバイス・データ
112:聴覚デバイス識別子
113A:クライアント・デバイス証明書のデジタル署名
113B:聴覚デバイス証明書のデジタル署名
114:第1の聴覚デバイス鍵識別子
115:聴覚デバイス鍵の第1のセット
115A:第1の一次聴覚デバイス鍵
115B:第1の二次聴覚デバイス鍵
115C:第1の三次聴覚デバイス鍵
115D:第1の四次聴覚デバイス鍵
116:第2の聴覚デバイス鍵識別子
117:聴覚デバイス鍵の第2のセット
117A:第2の一次聴覚デバイス鍵
117B:第2の二次聴覚デバイス鍵
117C:第2の三次聴覚デバイス鍵
117D:第2の四次聴覚デバイス鍵
130A:クライアント・デバイス証明書の証明書タイプ識別子
130B:聴覚デバイス証明書の証明書タイプ識別子
132:バージョン識別子
134:長さ識別子
136A:クライアント・デバイス証明書の署名デバイス識別子
136B:聴覚デバイス証明書の署名デバイス識別子
138:ハードウェア・プラットフォーム識別子
140:ソフトウェア・プラットフォーム識別子
142:証明書タイムスタンプ
144:クライアント・デバイス・タイプ承認識別子
146:トークン・パラメータ
148A:クライアント・デバイス証明書の第1のハードウェア識別子
148B:聴覚デバイス証明書の第1のハードウェア識別子
150:クライアント・デバイス証明書の第2のハードウェア識別子
156:クライアント・デバイス・タイプ識別子
158:クライアント・デバイス識別子
159:クライアント・デバイス鍵識別子
160:Bluetoothアドレス
166:認証鍵識別子
167:認証セッション・トークン識別子
168:認証タイプ識別子
169:認証デバイス識別子
180:セッション識別子
400:信号図
410/411:接続要求
412:接続応答
420/421:認証メッセージ
422:認証応答
430:聴覚デバイス・データ
440:追加の認証メッセージ
450:さらなる認証メッセージ
500:例示的な方法
図1
図2
図3A
図3B
図4
図5