JP2013239773A - 暗号鍵設定システム、端末装置 - Google Patents

暗号鍵設定システム、端末装置 Download PDF

Info

Publication number
JP2013239773A
JP2013239773A JP2012109597A JP2012109597A JP2013239773A JP 2013239773 A JP2013239773 A JP 2013239773A JP 2012109597 A JP2012109597 A JP 2012109597A JP 2012109597 A JP2012109597 A JP 2012109597A JP 2013239773 A JP2013239773 A JP 2013239773A
Authority
JP
Japan
Prior art keywords
node
identification information
common key
key
management device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2012109597A
Other languages
English (en)
Other versions
JP6050950B2 (ja
Inventor
Hisahiro Fukuda
尚弘 福田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Original Assignee
Panasonic Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Corp filed Critical Panasonic Corp
Priority to JP2012109597A priority Critical patent/JP6050950B2/ja
Priority to PCT/JP2013/001374 priority patent/WO2013168326A1/ja
Publication of JP2013239773A publication Critical patent/JP2013239773A/ja
Application granted granted Critical
Publication of JP6050950B2 publication Critical patent/JP6050950B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/061Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0822Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0827Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving distinctive intermediate devices or communication paths
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

【課題】誤ったノードに共通鍵が設定されないようにし、かつ、管理装置が一方のノードのだけの秘密鍵を管理しながらも、他方のノードにも共通鍵を安全に設定可能にする。
【解決手段】暗号鍵設定システムは、第1のノード10と第2のノード20と管理装置30とを備える。管理装置30は、第1のノード10の識別情報および秘密鍵をあらかじめ保管している。管理装置30は、第1のノード10および第2のノード20から通信によって識別情報を取得し、識別情報の関係を確認する。さらに、管理装置30は、第1のノード10に宛てた第1のチケットと、第2のノード20に宛てた第2のチケットとを発行する。第1のノード10は、設定されている秘密鍵と第1のチケットを認証用に用いて送信されたメッセージとを用いて共通鍵を生成する。第2のノード20は、第2のチケットを用いて共通鍵を生成する。
【選択図】図1

Description

本発明は、複数のノードに共通鍵を設定する暗号鍵設定システム、および共通鍵が設定されるノードとしての端末装置に関するものである。
従来から、通信データの漏洩、通信ネットワークへの不正侵入などを防止するために、通信ネットワークにおけるノード間で通信する際に暗号鍵が用いられている(たとえば、特許文献1参照)。特許文献1に記載された技術は、ノード間で暗号鍵を設定するための特定データを暗号化して伝送し、特定データの送受信に要する時間から求めた基礎値に基づいて暗号鍵を生成している。特許文献1は、無線LANを想定しており、特定データについてはとくに説明されていないが、文脈からWEPキーやMACアドレスが特定データに相当すると考えられる。この特定データを暗号化するために2台のノードに同じ初期暗号鍵が設定され、初期暗号鍵で暗号化された特定データを送受信することによって基礎値が得られ、基礎値に基づいて暗号鍵が生成される。
特許第4746296号公報
特許文献1に記載された技術は、通信するノードが互いに通信するだけで、暗号鍵を設定しているから、2台のノードが互いに通信を許可されたノードであることは初期暗号鍵を設定する作業でしか保証されない。初期暗号鍵は、ノードにあらかじめ設定された仮暗号鍵の一部を変更することにより設定されるから、初期暗号鍵の設定時に、ノードとして機能する別のノードが近隣に存在していると、希望しないノードに誤って初期暗号鍵が設定される可能性がある。
この問題を解決するために、ノードごとの秘密鍵をノードとは別に設けた管理装置で一括して管理し、適切な組み合わせのノードにのみ暗号鍵(共通鍵)を設定することが考えられる。しかしながら、ノードの台数が増加すると、管理装置にノードの秘密鍵を登録する作業に手間がかかるという問題が生じる。また、ノードの管理主体が複数存在する場合に、個々の管理主体が管理下のノードの秘密鍵を保管することは許容されるが、本来の管理主体ではない管理主体にノードの秘密鍵を保管することは、秘密鍵の管理の上で望ましいとは言えない。
本発明は、管理装置が許可したノードにのみ共通鍵を設定することによって、共通鍵が通信外のノードに誤って設定される可能性を低減し、さらに、共通鍵を設定するノードのうちの1台を管理する管理装置が管理下のノードの秘密鍵を管理するだけで、管理下ではないノードにも共通鍵を安全に設定することを可能にした暗号鍵設定システムを提供することを目的とし、さらに、この暗号鍵設定システムに用いられる端末装置を提供することを目的とする。
本発明に係る暗号鍵設定システムは、上記目的を達成するために、識別情報および秘密鍵が設定された第1のノードと、前記第1のノードと通信可能であって識別情報が設定された第2のノードと、前記第1のノードと前記第2のノードとの少なくとも一方と通信可能であって前記第1のノードの識別情報および秘密鍵があらかじめ保管されている管理装置とを備え、前記管理装置は、前記第1のノードおよび前記第2のノードから通信によって識別情報を取得し前記第1のノードの識別情報を認証用の情報と照合する照合部と、前記照合部が前記第2のノードに前記第1のノードとの通信を許可する場合に前記第1のノードの秘密鍵を用いて生成されるチケットであって、前記第1のノードに宛てた第1のチケット、および前記第2のノードに宛てた第2のチケットを発行するチケット発行部とを備え、前記第1のノードは、設定されている秘密鍵と前記第1のチケットを認証用に用いて送信されたメッセージとを用いて共通鍵を生成する第1の共通鍵生成部を備え、前記第2のノードは、前記第2のチケットを用いて共通鍵を生成する第2の共通鍵生成部を備えることを特徴とする
この暗号鍵設定システムにおいて、前記第1のノードは、1個の共通鍵のために第1の交換用のコードを生成し、かつ前記第1の交換用のコードを前記第2のノードに送信する機能を有し、前記第2のノードは、1個の共通鍵のために第2の交換用のコードを生成し、かつ前記第2の交換用のコードを前記第1のノードに送信する機能を有し、前記第1の共通鍵生成部は、設定されている秘密鍵と前記第1の交換用のコードと前記第1のチケットを認証用に用いて送信されたメッセージに含めて前記第2のノードから受信した前記第2の交換用のコードとを用いて共通鍵を生成する機能を有し、前記第2の共通鍵生成部は、前記第2のチケットと前記第2の交換用のコードと前記第1のノードから受信した前記第1の交換用のコードとを用いて共通鍵を生成する機能を有することが好ましい。
この暗号鍵設定システムにおいて、前記第1のノードは、セキュアな通信路を通して設定されている識別情報を前記第2のノードに送信する機能を有し、前記第2のノードは、前記第1のノードから識別情報を受信すると、設定されている識別情報を受信した識別情報と併せて前記管理装置に送信する機能を有していることが好ましい。
この暗号鍵設定システムにおいて、前記第1のノードと前記第2のノードとの一方のノードは、共通鍵を設定する契機となる事象を検出する手段が付設され、前記一方のノードは、当該手段が前記事象を検出すると、設定されている識別情報を他方のノードに送信する機能を有し、前記他方のノードは、前記一方のノードから識別情報を受信すると、設定されている識別情報を受信した識別情報と併せて前記管理装置に送信する機能を有していることが好ましい。
この暗号鍵設定システムにおいて、前記管理装置における前記チケット発行部は、前記第1のノードおよび前記第2のノードに設定される共通鍵の有効期間を定める機能と、少なくとも前記第1のチケットと併せて前記第1のノードに有効期間を通知する機能とを有し、前記第1のノードと前記第2のノードとのうちの少なくとも前記第1のノードは、前記第1のチケットと併せて通知された有効期間を取得し、設定された共通鍵を有効期間内の通信にのみ使用する機能を有することが好ましい。
この暗号鍵設定システムにおいて、前記第1のノードは、資源供給業者から供給される資源の使用量を計測する計測装置に付設され、前記計測装置から計測データを取得する機能を有し、前記第2のノードは、前記資源の需要家が前記資源を用いて使用する機器との間で通信することにより、少なくとも前記機器による資源の消費量を管理する機能を有することが好ましい。
この暗号鍵設定システムにおいて、前記第1のノードは、資源供給業者から供給される資源の使用量を計測する計測装置に付設され、前記計測装置から計測データを取得する機能を有し、前記第2のノードは、前記資源の需要家が前記資源を用いて使用する機器に付設され、少なくとも前記機器による資源の消費量を管理する機能を有することが好ましい。
本発明に係る端末装置は、上述したいずれかの暗号鍵設定システムに用いられ、前記第1のノードとして機能することを特徴とする。
また、本発明に係る端末装置は、上述したいずれかの暗号鍵設定システムに用いられ、前記第2のノードとして機能することを特徴とする。
本発明の構成によれば、管理装置が、第1のノードおよび第2のノードの識別情報を取得して、第1のノードおよび第2のノードに共通鍵の設定を許可するから、管理装置が許可したノードにのみ共通鍵が設定されることになる。その結果、共通鍵が通信外のノードに誤って設定される可能性が低減されるという利点がある。また、管理装置は、第1のノードに宛てた第1のチケットと第2のノードに宛てた第2のチケットとを発行し、第1のノードは第1のチケットをメッセージの認証に用い、第2のノードは第2のチケットを共通鍵の生成に用いるから、管理装置は、第1のノードの秘密鍵を管理するだけで、第2のノードの秘密鍵を管理する必要がない。すなわち、管理装置は第1のノードについて秘密鍵を保管するだけで、第1のノードと第2のノードとの両方に共通鍵を安全に設定することが可能になるという利点がある。
実施形態を示すブロック図である。 実施形態1の動作をシーケンス図で示した説明図である。 同上の他の動作をシーケンス図で示した説明図である。 実施形態3に用いる管理装置を示すブロック図である。 同上の動作をシーケンス図で示した説明図である。 同上の他の動作をシーケンス図で示した説明図である。
(概要)
以下に説明する実施形態は、資源供給事業者が資源を供給する需要家に用いられ、需要家における資源の使用量を計測する計測装置に付設された第1のノードと、第1のノードとの間で通信する第2のノードとに共通鍵を設定する技術を例として説明する。以下では、資源供給事業者が電力会社であって需要家には資源として電力が供給される場合について説明する。ただし、電力以外にガス、水、熱などを資源とする場合でも同様の技術を適用可能である。資源が供給される需要家には、資源の使用量を計測する計測装置としてのメータが設置される。
ここでは、資源が電力であるから、計測装置は電力メータが備えている。計測装置は、需要家が使用する電力量を単位時間毎に計測し、計測した電力量を計測データとして出力する。ここに、計測装置は、電力会社から供給された電力量を計測するだけではなく、需要家が発電装置を備えている場合は、需要家が創出した電力量を計測する機能を備えていてもよい。計測データは、通信ネットワークを通して上位装置に通知される。そのため、通信ネットワークに属するノード(以下、「第1のノード」という)が計測装置に付設される。
上位装置は、電力会社、または電力会社から委託されたサービス提供会社が運営する管理サーバを想定している。上位装置は、1台のコンピュータではなく、複数台のコンピュータで実現されていてもよい。また、上位装置は、複数階層に階層化された通信ネットワークを構築していてもよい。たとえば、管理サーバが複数台の中継装置と通信し、それぞれの中継装置が複数台の第1のノードと通信するように通信ネットワークが構築されていてもよい。すなわち、上位装置が管理サーバと複数台の中継装置とを含み、同じ通信ネットワークに属する中継装置と第1のノードとが通信する構成でもよい。この場合、上位装置が構築している通信ネットワークには、複数種類の伝送媒体が用いられていてもよい。
需要家は資源としての電力を使用する機器を備える。機器は、電力を消費する機器のほか、電力を創出する発電装置(太陽光発電装置、風力発電装置、燃料電池など)、電力を充放電する蓄電装置を含んでいてもよい。機器は、分電盤の主幹回路や分岐回路を通過する電力量などを計測する計測ユニットを含んでいてもよい。これらの機器の少なくとも一部は、第1のノードを備える通信ネットワークとは別に、需要家に構築される通信ネットワークに属するノードになる。
需要家に構築される通信ネットワークは、機器との間で通信を行うノード(以下、「第2のノード」という)を備える。第2のノードは、少なくとも機器による電力の使用に関する情報を機器との間で授受する機能を有する。また、第2のノードは、機器における電力の出入の情報を収集するだけではなく、機器の動作を監視する機能、機器の動作を指示する機能も有していることが望ましい。つまり、第2のノードは、いわゆるHEMS(Home Energy Management System)としての機能を備えることが望ましい。
第1のノードと第2のノードとは、上述した通信ネットワークのいずれにも属さない通信路を用いて通信を行う。以下の実施形態は、この通信路が電波を媒体とする無線通信路である場合を想定して説明するが、この通信路は有線通信路であってもよい。有線通信路をこの通信路に採用する場合は、需要家に給電する配電線を通信路に兼用する電力線搬送通信の技術を採用することが望ましい。第1のノードと第2のノードとの間では、第1のノードが取得した電力量、上位装置から第1のノードに通知された電力量の削減目標、第1のノードと第2のノードとが共有すべき情報などの通信を行う。
上述したように、第1のノードは、電力メータに設けられた計測装置に付設されており、計測装置と併せていわゆる「スマートメータ」を構成している。また、第2のノードは、上述のように、いわゆる「HEMS」に対応している。したがって、以下の実施形態において、第1のノードは「スマートメータ」を想定して説明し、第2のノードは「HEMS」を想定して説明する。また、スマートメータおよびHEMSは、実際にはそれぞれ多数台存在するが、以下の実施形態では、第1のノードおよび第2のノードを1台ずつ設けた場合について説明する。第1のノードおよび第2のノードがそれぞれ複数台存在する場合の動作は、第1のノードおよび第2のノードを1台ずつ設けている場合の動作に帰着する。
なお、以下に説明する実施形態は、資源の使用量を管理する用途に制限されない。すなわち、以下の実施形態で説明する技術は、通信可能な2台の端末装置のうちの一方の端末装置が第三者機関に登録されている場合であって、両方の端末装置に共通鍵を設定する必要があれば、他の用途であっても利用可能である。
(実施形態1)
以下の実施形態において、第1のノード、第2のノード、管理装置は、それぞれ独立したコンピュータ(マイコン)と通信インターフェイス部とを主なハードウェア構成として備える。
図1に示すように、需要家に設置される、第1のノード10と第2のノード20とを備える。第1のノード10および第2のノード20は、それぞれを特定するための識別情報を有する。この識別情報は、通信に用いる識別情報とは異なっていてもよい。第1のノード10の識別情報は、他の第1のノード10と重複しないようにユニークに設定されている必要がある。一方、第2のノード20の識別情報は、利用者による設定が可能であり、ユニークであることは要求されない。隣接した需要家の間で、第1のノード10と第2のノード20との間の通信に干渉が生じなければ、第2のノード20の識別情報は共通であることが許容される。
第1のノード10は需要家に設置することが必須であるが、第2のノード20は必要に応じて設けられる。第1のノード10は、上述したように、電波を伝送媒体とする無線通信路を用いて第2のノード20と通信可能である。第2のノード20は、第三者機関により運営されている管理装置30と通信可能になっている。第2のノード20と管理装置30との間の通信に用いる伝送媒体は、とくに制限はなく、無線通信路と有線通信路とのどちらを用いてもよい。
ここに、第1のノード10を特定する情報は管理装置30が管理する。第1のノード10を特定する情報には、管理装置30に登録された第1のノード10の識別情報および第1のノード10に設定された秘密鍵のほかに、第1のノード10の所在地および所有者が含まれる。第1のノード10を特定する情報は、第1のノード10に固有に割り当てられた製造番号やMACアドレスなどを含んでいてもよい。
第2のノード20の識別情報は、管理装置30に登録されていてもよいが、管理装置30に登録されていることは必須ではない。また、管理装置30は、第2のノード20の所在地および所有者は管理しない。
管理装置30を運営する第三者機関は、需要家に電力を供給する電力会社、当該電力会社から委託されたサービス提供会社などを意味する。管理装置30は、第2のノード20と通信するために通信インターフェイス部31を備える。以下、通信インターフェイス部を「通信I/F」と記載する。
管理装置30は、少なくとも第1のノード10を特定する識別情報と第1のノード10に設定された秘密鍵との組を保管する鍵保管部32を備える。鍵保管部32は、記憶装置であって、第1のノード10の識別情報および秘密鍵のほか、第1のノード10の所在地(たとえば、住所)と第1のノード10の管理者(たとえば、需要家の氏名)をあらかじめ保管している。すなわち、第1のノード10の設置に伴って、これらの情報が管理装置30に登録される。
また、管理装置30は、第2のノード20から取得される第1のノード10の識別情報を鍵保管部32に照合する照合部33と、第1のノード10と第2のノード20とにそれぞれ宛てる2種類のチケットを発行するチケット発行部34とを備える。チケット発行部34は、第1のノード10に宛てる第1のハッシュ値と、第2のノード20に宛てる第2のハッシュ値とを2種類のチケットとして発行する。したがって、ここでは、第1のハッシュ値は第1のチケットと同じ意味で用い、第2のハッシュ値は第2のチケットと同じ意味で用いる。照合部33は、第1のノード10の識別情報を受け取ると、受け取った識別情報を鍵保管部32と照合し、第1のノード10の所在地との関係によって不正を確認する機能を有する。つまり、照合部33は、第1のノード10の識別情報を鍵保管部32に保存された認証用の情報と照合する。さらに、管理装置30は、チケット発行部34が発行した第1のハッシュ値および第2のハッシュ値を用いて第2のノード20に送信するメッセージを生成するメッセージ生成部35を備える。第1のハッシュ値と第2のハッシュ値との関係については後述する。
第2のノード20は、第1のノード10と管理装置30とのそれぞれと情報を双方向に伝送するために、第1のノード10と通信する通信I/F21と、管理装置30と通信する通信I/F22とを備える。2つの通信I/F21,22は共通のハードウェア構成を兼用していてもよい。通信I/F21および通信I/F22を通して第1のノード10および管理装置30との間で授受される情報は、振分部23により宛先が振り分けられる。
第2のノード20は、第1のノード10との間で共通鍵を設定するために、第1のノード10に対して1個の共通鍵のために生成される交換用のコードを含むメッセージを送信する。さらに、第2のノード20は、交換用のコードを含んだ情報から計算されたハッシュ値を含むメッセージを第1のノード10から受信する(図2参照)。本実施形態は、交換用のコードとして乱数を採用している。
第2のノード20は、第1のノード10へのメッセージを送信するために、第1のノード10に送信するメッセージを生成するメッセージ生成部24と、交換用のコードである乱数を発生させる乱数発生器25とを備える。乱数発生器25は、共通鍵を生成するためのメッセージを第1のノード10に送信するたびに乱数を発生する。
第2のノード20は、上述の構成のほかに、振分部23を通して管理装置30から受信した第2のハッシュ値を秘密鍵として保管する秘密鍵保管部26と、この秘密鍵と第1のノード10からのメッセージとを用いて共通鍵を生成する(第2の)共通鍵生成部27とを備える。秘密鍵保管部26は、第2のノード20の識別情報も保管する。共通鍵生成部27が生成した共通鍵は、共通鍵保管部28に保管され、第1のノード10とのその後の通信に用いられる。
第2のノード20の識別情報は、上述したように、利用者による設定が可能であるから、識別情報の設定などを可能にするための操作器(図示せず)を第2のノード20に接続するために通信I/F29が設けられる。操作器は、タッチパネルのように操作だけでなく表示も可能であることが望ましい。操作器は、専用の操作器のほか、パーソナルコンピュータ、スマートホン、タブレットノードなどで適宜のアプリケーションプログラムを実行することによって実現してもよい。第2のノード20が操作器を専用に用いる場合、通信機能を備えた通信I/F29に代えて通信機能のないインターフェイス部を用いてもよい。
ところで、第1のノード10は、第2のノード20と通信するための通信I/F11を備える。また、第1のノード10は、第2のノード20との間で共通鍵を設定するために、第2のノード20に対して1回の通信に限って生成される交換用のコードを含むメッセージを送信する。さらに、第1のノード10は、第2のノード20から受信したメッセージについて改ざんされていないことを確認するためのメッセージ確認部13を備える。メッセージ確認部13の機能については後述する。
第1のノード10は、第2のノード20へのメッセージを送信するために、第2のノード20に送信するメッセージを生成するメッセージ生成部14と、交換用のコードである乱数を発生させる乱数発生器15とを備える。乱数発生器15は、共通鍵を生成するためのメッセージを第2のノード20に送信するたびに乱数を発生する。第1のノード10は、管理装置30が管理している識別情報および秘密鍵と同情報を保管する秘密鍵保管部16も備える。
第1のノード10は、上述の構成のほかに、秘密鍵と第2のノード20からのメッセージとを用いて共通鍵を生成する(第1の)共通鍵生成部17と、共通鍵生成部17が生成した共通鍵を保管する共通鍵保管部18を備える。共通鍵保管部18に保管された共通鍵は、第2のノード20とのその後の通信に用いられる。共通鍵生成部17が生成する共通鍵は、第2のノード20の共通鍵生成部27が生成した共通鍵と一致していなければならない。
また、第1のノード10と第2のノード20とに共通鍵を設定する場合、共通鍵の設定のために授受している情報が盗聴されても共通鍵の生成が困難であることが要求される。さらに、中間攻撃によるメッセージの改ざんを検出することも要求される。これらの要求を満足するために、本実施形態は、管理装置30が発行する第1のハッシュ値および第2のハッシュ値と、第1のノード10と第2のノード20との間で授受するメッセージを以下のように定めている。
図2に示すように、第1のノード10と第2のノード20とに共通鍵を設定する場合、第1のノード10および第2のノード20が管理装置30に対してそれぞれの識別情報ID1,ID2を通知する(P11,P12)。図示例において、管理装置30は、第2のノード20との間でのみ通信が可能になっている。そのため、第1のノード10は識別情報ID1を第2のノード20に送信し(P11)、第2のノード20は第1のノード10から識別情報ID1を受け取ると、振分部23を通して第1のノード10の識別情報ID1を管理装置30に通知する(P12)。このとき、秘密鍵保管部26に保管されている第2のノード20の識別情報ID2も併せて管理装置30に通知される。
管理装置30の照合部33は、識別情報ID1を受け取ると、識別情報ID1を鍵保管部32に照合することにより第1のノード10の秘密鍵K1を抽出する。チケット発行部34は、抽出した秘密鍵K1と識別情報ID1,ID2とを用いて、第1のハッシュ値H1を生成し、また、秘密鍵K1と識別情報ID2とを用いて第2のハッシュ値H2を生成する。たとえば、第1のハッシュ値H1は、H1=H(K1;ID1|ID2)になり、第2のハッシュ値H2は、H2=H(K1;ID2)になる。
ただし、H(a;b)は、aを鍵に用いてbについて算出した鍵付きのハッシュ値を表し、(c|d)はcとdとを結合した(順に並べた)値を表す。
第1のハッシュ値H1は第1のノード10に送信するために生成され、第2のハッシュ値H2は第2のノード20に送信するために生成され、第1のハッシュ値H1および第2のハッシュ値H2は、ともに第2のノード20に送信される(P13,P14)。メッセージ生成部35は、ハッシュ値生成部34が生成した第1のハッシュ値H1と第2のノード20の識別情報ID2とを含むメッセージを生成し、通信I/F31はこのメッセージを第2のノード20に送信する(P13)。また、メッセージ生成部35は、ハッシュ値生成部34が生成した第2のハッシュ値H2を含むメッセージを生成し、通信I/F31はこのメッセージも第2のノード20に送信する(P14)。図示例では、第1のハッシュ値H1を含むメッセージと第2のハッシュ値H2を含むメッセージとを異なるタイミングで送信しているが、両方のメッセージを1回の通信で送信してもよい。
第1のハッシュ値H1は、第1のノード10に対して第2のノード20の識別情報ID2を管理装置30が認証したことを保証する機能を有し、第2のハッシュ値H2は、第2のノード20の秘密鍵として用いられる。なお、第1のノード10と第2のノード20と管理装置30との間の通信(P11〜P14)の盗聴を防止するには、たとえばSSL(Secure Socket Layer)を採用すればよい。とくに、第2のノード20と管理装置30との間の通信(P12〜P14)は盗聴されないように、セキュアに通信を行う必要がある。少なくともこの通信はSSLなどの技術を用いることが望ましい。
第2のノード20が管理装置30から第1のハッシュ値H1を含むメッセージと第2のハッシュ値H2を含むメッセージとを受け取ると、メッセージ生成部24は、第1のハッシュ値H1を含むメッセージを用いて第1のノード10に送信するメッセージを生成する。このメッセージは、通信I/F21および振分部23を通して管理装置30から受信した第1のハッシュ値H1を含むメッセージと、乱数発生器25が生成した交換用のコードとしての乱数r2とを含む。メッセージ生成部24が生成するメッセージは、たとえば(ID2,r2,H1)という形式になる。なお、このメッセージに含まれる情報の順序は適宜に変更可能である。メッセージ生成部24が生成したメッセージは、通信I/F21から第1のノード10に送信される(P15)。
ところで、上述したように、第1のハッシュ値H1は、第1のノード10の秘密鍵K1および識別情報ID1と、第2のノード20の識別情報ID2を用いて生成されている。第1のノード10は、管理装置30の鍵保管部32に保管されている秘密鍵K1および識別情報ID1と同情報を秘密鍵保管部16に保管している。
メッセージ確認部13は、第2のノード20から受け取ったメッセージに含まれる第2のノード20の識別情報ID2と、秘密鍵保管部16に保管された秘密鍵K1および識別情報ID1とを用いて、第1のハッシュ値H1に相当するハッシュ値を生成する。さらに、メッセージ確認部13は、生成したハッシュ値と第2のノード20から受信した第1のハッシュ値H1とを比較し、両者が一致していれば、メッセージに含まれる識別情報ID2が、管理装置30から送信されたものであると認識する。言い換えると、第2のノード20から受信したメッセージに含まれる識別情報ID2が通信の途中で改ざんされていないことが保証される。このハッシュ値の使い方は、メッセージ認証の技術と同様である。
第1のノード10は、第2のノード20から受信したメッセージのうち第2のノード20の識別情報ID2が管理装置30で保証されていることを確認した後、乱数発生器15で乱数r1を生成し、この乱数r1を用いて共通鍵生成部17が共通鍵Ks1を生成する。共通鍵生成部17は、秘密鍵保管部16に保管された秘密鍵K1と、第2のノード20から受信したメッセージに含まれる乱数r2と、乱数発生器15が生成した乱数r1とを用いて共通鍵Ks1を生成する。
ところで、上述したように、管理装置30が第2のノード20に送信する第2のハッシュ値H2は、第2のノード20の秘密鍵K2として用いられる。共通鍵Ks1は、秘密鍵K2を用いて、たとえば、Ks1=H(K2;r2|r1)という形式で生成される。そのため、第1のノード10は、第2のノード20が生成した乱数r2を受け取るだけではなく、秘密鍵K2を生成する必要がある。一方、第2のノード20は、管理装置30から秘密鍵K2が引き渡されるから、第1のノード10が生成した乱数r1を受け取る必要がある。
ここに、秘密鍵K2は第2のハッシュ値H2であって、第2のハッシュ値H2は、第1のノード10の秘密鍵K1と第2のノード20の識別情報ID2とから生成される。したがって、第1のノード10の共通鍵生成部17は、第2のノード20から受信したメッセージに含まれる識別情報ID2と、第1のノード10の秘密鍵保管部16に保管されている秘密鍵K1とを用いて秘密鍵K2を生成する。つまり、秘密鍵K2は、たとえばK2=H(K1;ID2)になるから、第2のハッシュ値H2と同じハッシュ値を生成可能である。共通鍵生成部17は、生成した秘密鍵K2を、第2のノード20から受信したメッセージに含まれる乱数r2および乱数発生器15が発生した乱数r1と併せて用いることにより、共通鍵Ks1を生成する。
乱数発生器15が発生した乱数r1は、メッセージ生成部14にも与えられる。メッセージ生成部14は、共通鍵生成部17が生成した秘密鍵K2と第2のノード20から受け取った乱数r2とを用いてハッシュ値を生成し、乱数発生器15から発生した乱数r1と併せて、このハッシュ値を第2のノード20にメッセージとして送信する(P16)。このメッセージは、たとえば(r1,H(K2;r2))という形式になる。
第2のノード20は、第1のノード10からメッセージを受信すると、共通鍵生成部27において、乱数発生器25が生成した乱数r2と秘密鍵保管部26に保管された秘密鍵K2とを用いて、ハッシュ値H(K2;r2)を算出する。共通鍵生成部27は、生成したハッシュ値H(K2;r2)が受信したメッセージのハッシュ値と一致していれば、メッセージに含まれる乱数r1を第1のノード10が発行した乱数r1として受け取る。さらに、共通鍵生成部27は、秘密鍵保管部26に保管された秘密鍵K2および乱数発生器25が生成した乱数r2と、メッセージに含まれる乱数r1とを用いてハッシュ値を算出し、このハッシュ値を共通鍵Ks1として共通鍵保管部28に保管する。したがって、共通鍵Ks1は、第1のノード10から受け取ったメッセージに含まれる乱数r1と第2のノード20が保有する情報とを用いて、たとえば、Ks1=H(K2;r2|r1)という形式で生成される。なお、共通鍵Ks1を求める演算は、秘密鍵K2と2つの乱数r1,r2との3個のパラメータを用いて共通鍵Ks1が生成され、かついずれか1つの乱数r1,r2と共通鍵Ks1とを用いても秘密鍵K2を求めることが極めて困難であればよい。
上述のように、第2のノード20から第1のノード10に対して、管理装置30が保証した第2のノード20の識別情報ID2と、第2のノード20が発行した乱数r2とを含むメッセージを送信する。また、このメッセージを受信した第1のノード10は第2のノード20に対して、第1のノード10が発行した乱数r1を含むメッセージを送信する。
第2のノード20は、管理装置30が第1のノード20の秘密鍵K1と第2のノード20の識別情報ID2とを用いて生成した秘密鍵K2を元にして、乱数r1,r2を用いて共通鍵Ks1を生成する。一方、第1のノード10は、第1のノード10が保管している第1のノード20の秘密鍵K1と第2のノード20を通して受信した識別情報ID2とを用いて生成したハッシュ値H2(つまり、秘密鍵K2)を元にして、乱数r1,r2を用いて共通鍵Ks1を生成する。その結果、第1のノード10と第2のノード20とのそれぞれが同じ共通鍵Ks1を持つ。
上述のようにして第1のノード10と第2のノード20とにそれぞれ共通鍵Ks1が設定されると、第1のノード10と第2のノード20との以後の通信は、共通鍵Ks1を用いて暗号化される。
本実施形態の技術では、第2のノード20の秘密鍵K2は、管理装置30が発行する。したがって、第2のノード20は、あらかじめ秘密鍵K2を保管している必要がなく、秘密鍵の管理が容易である。また、第1のノード10と第2のノード20との管理主体が異なる場合でも、本実施形態の技術を採用すれば、両者に共通鍵Ks1を設定できる。たとえば、第1のノード10の管理主体が電力会社であり、第2のノード20の管理主体が製造メーカあるいは利用者である場合でも、第1のノード10の管理主体が管理する情報のみで、第1のノード10と第2のノード20とに共通鍵Ks1を設定できる。しかも、第2のノード20は、第1のノード10の秘密鍵K1を保持することなく、第1のノード10と第2のノード20との双方が暗号通信に用いる共通鍵Ks1を保有することが可能になる。
第1のノード10と第2のノード20とが共通鍵Ks1を設定するために行う通信(P15,P16)には共通鍵Ks1の有効期間を設定しておくことが好ましい。つまり、第2のノード20が第1のノード10にメッセージを送信する際に(P15)、メッセージ中にこの有効期間を含め、メッセージに添付するハッシュ値の生成時にこの有効期間も用いる。また、第1のノード10が第2のノード20にメッセージを送信する際に(P16)、有効期間を用いて生成したハッシュ値を付加しておく。
共通鍵Ks1の有効期間を指定する形式は、有効期間の開始時刻と終了時刻との両方を指定する形式と、開始時刻のみを指定して開始時刻から所定時間を有効期間とする形式と、終了時刻のみを指定して終了時刻までを有効期間とする形式とから選択される。有効期間を指定する形式は、あらかじめ選択しておけば、どの形式を採用してもよい。
共通鍵Ks1に有効期間を設定する場合、有効期限をTとすると、第1のハッシュ値H1は、たとえばH1=H(K1;T|ID1|ID2)になり、第2のハッシュ値H2は、たとえばH2=H(K1;T|ID2)になる。また、第2のノード20から第1のノード10への通信の際のメッセージを、(ID2,r2,H1)から(ID2,r2,T,H1)などに変更する。一方、第1のノード10から第2のノード20への通信の際のメッセージは、(r1,H(K2;r2))でよい。K2=H2=H(K1;T|ID2)であるから、このメッセージのメッセージ認証に有効期限Tが用いられることになる。
共通鍵Ks1に有効期間を設定する場合の動作例を図3に示す。図示例は、図2に示した動作例と同様に、まず、第1のノード10および第2のノード20が管理装置30に対してそれぞれの識別情報ID1,ID2を通知する(P21,P22)。管理装置30は、現在時刻を計時するリアルタイムクロック(図示せず)を備え、チケット発行部34は、識別情報ID1,ID2を受信した時刻に対して所定時間後である有効期間Tを定める。
すなわち、チケット発行部34は、抽出した秘密鍵K1と識別情報ID1,ID2と有効期間Tとを用いて、第1のハッシュ値H1を生成し、また、秘密鍵K1と識別情報ID2とを用いて第2のハッシュ値H2を生成する。第1のハッシュ値H1は、たとえば、H1=H(K1;T|ID1|ID2)になり、第2のハッシュ値H2は、たとえば、H2=H(K1;T|ID2)になる。
メッセージ生成部35は、ハッシュ値生成部34が生成した第1のハッシュ値H1と第2のノード20の識別情報ID2と有効期間Tとを含むメッセージを生成し、このメッセージを第2のノード20に送信する(P23)。また、メッセージ生成部35は、ハッシュ値生成部34が生成した第2のハッシュ値H2を含むメッセージを生成し、このメッセージを第2のノード20に送信する(P24)。
第2のノード20は、管理装置30から受信した第2のハッシュ値H2を秘密鍵K2に用いる。したがって、秘密鍵K2は、たとえば、K2=H(K1;T|ID2)になる。また、第2のノード20は、管理装置30から受信した第1のハッシュ値H1を、第2のノード20の識別情報ID2と、乱数発生器25が生成した乱数r2と、有効期間Tと併せたメッセージを第1のノード10に送信する(P25)。
第1のノード10は、第2のノード20から受信したメッセージに含まれるハッシュ値H1を用いてメッセージ認証を行う。さらに、第1のノード10の共通鍵生成部17は、保有している秘密鍵K1、乱数発生器15が生成した乱数r1、受信した識別情報ID2および乱数r2、有効期間Tを用いて、共通鍵Ks1を生成する。すなわち、共通鍵Ks1は、たとえば、Ks1=H(K2;T|r2|r1)という形式で生成される。また、第1のノード10は、有効期間Tを受け取ることにより、有効期間Tの終了時刻を知るから、以後は、生成した共通鍵Ks1の有効期間Tの管理を行う。
第1のノード10の乱数発生器15で生成された乱数r1は、メッセージ認証に用いるハッシュ値(たとえば、H(H(K1;T|ID2),r2)=H(K2;r2))を付加して、第1のノード10から第2のノード20に送信される(P26)。第2のノード20は、秘密鍵K2と乱数r2とを用いてメッセージ認証を行い、第1のノード10が生成した乱数r1を受け取る。
第2のノード20は、管理装置30から第1のハッシュ値H1とともに有効期間Tを受け取っているから、この有効期間Tと、第1のノード10から受け取った乱数r1と、秘密鍵K2および乱数r2とを用いて共通鍵Ks1を生成する。共通鍵Ks1は、たとえば、Ks1=H(K2;T|r2|r1)という形式で生成される。つまり、共通鍵生成部27は、第1のノード10と同じ形式の共通鍵Ks1を生成するから、第1のノード10と第2のノード20との間で共通鍵Ks1を用いて暗号化した通信を行うことが可能になる。
第1のノード10と第2のノード20とがそれぞれ生成した共通鍵Ks1は、有効期間Tが設定されているから、第1のノード10と第2のノード20とにおいて、それぞれ有効期間Tを管理し、有効期間Tを超えると共通鍵Ks1は無効になる。つまり、第1のノード10と第2のノード20との一方が共通鍵Ks1を用いて他方に対して情報を伝送する際に、有効期間Tを過ぎているときには、送信側において共通鍵Ks1を用いて暗号化することができず、受信側において情報を復号することができなくなる。
したがって、第三者が何らかの方法で取得した共通鍵Ks1を用いて暗号化した情報を伝送したとしても、有効期間Tが過ぎていれば、その情報は受信側に到達することがない。そのため、第1のノード10と第2のノード20との間の通信において、共通鍵Ks1の有効期間Tを管理し、有効期間Tを超える場合には共通鍵Ks1を無効にすれば、再送攻撃ないし再生攻撃による鍵共有が防止される。なお、共通鍵Ks1に有効期間Tを設定する技術は、以下の実施形態においても適用可能である。
(実施形態2)
実施形態1は、管理装置30から、第1のハッシュ値を含むメッセージと第2のハッシュ値を含むメッセージとを第2のノード20に送信していたが、本実施形態は、第1のハッシュ値を含むメッセージのみを第2のノード20に送信する。この場合、第2のノード20は管理装置30から送信されたメッセージでは秘密鍵を得られない。一方、実施形態1の説明から明らかなように、第2のノード20の秘密鍵K2は、第1のノード10において生成可能な情報でなければならない。
本実施形態では、管理装置30が発行した第2のノード20の秘密鍵K2を、別経路で利用者に伝達し、第2のノード20に対して利用者が秘密鍵K2を入力する。秘密鍵K2を利用者に伝達する方法は、電子メールやウェブページを利用することが可能であるが、安全のためには郵送、ファクシミリ、電話などを利用することが望ましい。
利用者は、管理装置30が発行した秘密鍵K2を入手すると、第2のノード20に設けられた通信I/F29に接続された操作器を操作して秘密鍵K2を秘密鍵保管部26に登録する。本実施形態は、第2のノード20に人為的に秘密鍵K2を登録する作業を行うことにより、実施形態1と同様に、第1のノード10と同じ共通鍵Ks1を生成することが可能になる。
ところで、管理装置30が第2のノード20に対する秘密鍵K2を発行するにあたって、第2のノード20の利用者に宛てて秘密鍵K2を送付しなければならないから、第2のノード20の所在地を知る必要がある。そのため、管理装置30は、第2のノード20の利用者から通知される所在地を受け付けるための通信I/F36を備える(図1参照)。通信I/F36は、利用者が利用する通信ノードとの間で情報を授受するか、あるいは管理装置30の管理主体が操作するノードとの間で情報を授受する。いずれの場合も、通信I/F36を通して、第2のノード20の識別情報ID2と、第2のノード20の所在地とが入力される。
管理装置30の照合部33は、通信I/F31が第2のノード20から受信した識別情報ID1により鍵保管部32から第1のノード10の所在地を抽出し、抽出した所在地を通信I/F36から入力された所在地と照合する。第1のノード10と第2のノード20との所在地が一致していれば、第2のノード20が第1のノード10と通信することを許可する。すなわち、管理装置30は、第2のノード20に対して、共通鍵Ks1を生成するための秘密鍵K2を発行する。なお、管理装置30が第1のハッシュ値を含むメッセージを第2のノード20に送信するタイミングと、通信I/F36を通して第1のノード10の識別情報および所在地を受け付けるタイミングとは、どちらが先であってもよい。
本実施形態は、管理装置30が、第2のノード20の所在地の入力を受け付ける機能と、入力された第2のノード20の所在地を鍵保管部32に保管している第1のノード10の所在地と照合する機能とを備えている。そのため、第1のノード10と第2のノード20とを所在地(住所)によって紐付けることが可能になり、第2のノード20を第1のノード10に紐付ける際に、誤って隣家の第1のノード10を選択することが防止される。
実施形態1では、とくに説明していないが、第1のノード10から第2のノード20に対して識別情報ID1を通知するタイミングは、何らかの事象の検出を行ったことを契機とすればよい。そのため、第1のノード10は、事象の検出を契機として識別情報ID1を通知させる通知部12を備える。この種の事象は、スイッチやキーボードの操作、センサが検出している状態の変化、タイムスケジュールなどから選択される。
上述のように、事象を検出したときに識別情報ID1を通知すれば、たとえば、第2のノード20が第1のノード10との距離が所定範囲内であるときにのみ、共通鍵Ks1を設定するための動作を開始させることが可能になる。この動作により、第2のノード20が誤って隣家の第1のノード10に対応付けることが防止される。
第1のノード10と第2のノード20との紐付けをさらに確実にするには、第1のノード10と第2のノード20との通信路として、常時は使用しない特別な通信路を形成可能にしておき、上述した事象の検出を契機として、特別な通信路を用いて紐付けを行えばよい。この場合の通信路は、無線通信路であれば周波数あるいは変調方式を常時とは異ならせるようにすればよい。また、特別な通信路を形成するために、第1のノード10と第2のノード20との間に一時的に有線通信路を形成するように、紐付け時に用いる専用の通信用コネクタを第1のノード10と第2のノード20とに設けてもよい。
以上説明したように、本実施形態は、以下の3つの技術を採用している。(1)第2のノード20が秘密鍵K2の入力を受け付ける通信I/F29を備える。(2)管理装置30が、第2のノード20の識別情報ID2および所在地の入力を受け付ける通信I/F36を備え、かつ第1のノード10と第2のノード20との所在地を照合する機能を有する。(3)第1のノード10が、何らかの事象を検出したときに、識別情報ID1を送信する通知部12を備える。
本実施形態では、第1のハッシュ値を含むメッセージのみが管理装置30から第2のノード20に送信され、管理装置30が発行した第2のノード20の秘密鍵K2は、第1のハッシュ値を含むメッセージとは別経路で第2のノード20に送信されている。ただし、第1のハッシュ値を含むメッセージも、秘密鍵K2と同様に、通信路を通さずに郵送、ファクシミリ、電話、電子メール、ウェブページなどを利用して利用者に伝達してもよい。この場合、第1のハッシュ値を含むメッセージは、利用者が第2のノード20に入力することになる。
ここで、第2のノード20がHEMSである場合、第2のノード20の所在地はスマートメータに付設された第1のノード10の所在地に対応していると考えられるから、第1のノード10の所在地に第1のハッシュ値を含むメッセージを送ればよい。この場合、第1のノード10と第2のノード20とが同じ所在地(住所)であることの確認は、第1のハッシュ値を含むメッセージを受け取った利用者が行う。つまり、第1のノード10と第2のノード20との所在地の照合を管理装置30で行う必要がないから、上述した(2)の技術は不要になる。
他の構成および動作は実施形態1と同様であるから説明を省略する。
(実施形態3)
上述した実施形態は、1台の管理装置30を用いているが、本実施形態は2台の管理装置30,40を用いる技術を説明する。上述した実施形態では、第1のノード10を管理する管理主体が管理装置30を運営していることを想定している。これに対して、本実施形態では、第1のノード10の管理主体が運営する管理装置30とは別に、第2のノード20の管理主体が運営する管理装置40を設けている点が異なる。管理装置30は、実施形態1で説明したように、第1のノード10の識別情報ID1および秘密鍵Ks1を保管している。一方、管理装置40は、第2のノード20の識別情報ID2および秘密鍵K2を保管するために設けられている。
上述した実施形態の管理装置30は、第2のノード20と直接通信するが、本実施形態の管理装置30は、第2のノード20との間に管理装置40を介在させている。つまり、管理装置30の通信I/F31は管理装置40との間に通信路を形成する。ただし、管理装置30と管理装置40との間の通信は、セキュアに行われることが保証されていることを想定している。
管理装置40は、図4に示すように、管理装置30および第2のノード20との通信を行う通信I/F41を備える。したがって、第2のノード20の通信I/F22は、管理装置40と通信することになる。管理装置40は、第2のノード20の識別情報ID2および秘密鍵K2を保管するために鍵保管部42を備える。鍵保管部42は、管理装置40の識別情報ID4および管理装置40の秘密鍵K4を保管する。
第2のノード20と管理装置40とは管理主体が同じであるから、管理装置40の秘密鍵K4と第2のノード20の識別情報ID2とを用いて生成したハッシュ値H4を、第2のノード20の製造時ないし出荷時にあらかじめ第2のノード20に保存しておくことが可能である。さらに、ハッシュ値H4と、管理装置40の識別情報ID4と第2のノード20の識別情報ID2とから生成したハッシュ値H5も鍵保管部42に保管される。ハッシュ値H4は通信には用いられずメッセージ認証の目的で用いられ、ハッシュ値H5は管理装置40との通信に際して第2のノード20からのメッセージであることを確認させるために用いられる。ハッシュ値H4は、たとえばH4=H(K4;ID2)とし、ハッシュ値H5は、たとえばH5=H(H4,ID4|ID2)とする。
管理装置40は、通信I/F41と鍵保管部42とに加えて、第2のノード20および管理装置30とに対して送信するメッセージを生成するメッセージ生成部44、交換用のコードとしての乱数を生成する乱数発生器45を備える。さらに、管理装置40は、第2のノード20との通信に用いる共通鍵を生成する共通鍵生成部47と、共通鍵生成部47が生成した共通鍵を保管する共通鍵保管部48とを備える。
次に、図5を用いて本実施形態の動作を説明する。第2のノード20は、第1のノード10から識別情報ID1を受け取ると(P31)、乱数発生器25が乱数を生成する。乱数発生器25が生成する乱数は、交換用のコードであるから、通信相手との間でメッセージの認証を行う間にのみ用いられ、次の通信機会には新たな乱数が用いられる。すなわち、乱数発生器25が生成した乱数は、乱数を含むメッセージを送信し、通信相手から得られる応答のメッセージについて認証するまでの間が乱数の有効期間になる。
乱数発生器25が生成した乱数r21は、第1のノード10から取得した識別情報ID1と、第2のノード20の識別情報ID2とともに管理装置40へのメッセージとして送信される(P32)。第2のノード20から管理装置40へのメッセージは、ハッシュ値H5も含む。
管理装置40のメッセージ生成部44は、第2のノード20から受信したメッセージを受信すると、鍵保管部42に保管している秘密鍵K4と識別情報ID4とともに、メッセージに含まれる第2のノード20の識別情報ID2を用いてハッシュ値を生成する。さらに、メッセージ生成部44は、生成したハッシュ値をメッセージに含まれるハッシュ値H5と比較し、両者が一致していれば第2のノード20から送信されたメッセージであることを認証する。
メッセージ生成部44は、メッセージを認証した後、第2のノード20から受け取った第1のノード10および第2のノード20の識別情報ID1,ID2を管理装置30に送信する(P33)。さらに、メッセージ生成部44は、乱数発生器45が生成した乱数r4を含むメッセージを第2のノード20に送信する(P34)。このメッセージは、第2のノード20が鍵保管部42に保管しているハッシュ値H4および管理装置40が第2のノード20から受信した乱数r21を元にしたハッシュ値を含む。このハッシュ値は、たとえばH(H4,r21)=H(H(K4;ID2),r21)になる。
ここまでの処理によって、管理装置40は、鍵保管部42に保管されている秘密鍵K4と、乱数発生器45が生成した乱数r4と、第2のノード20の識別情報ID2と、第2のノード20から受信した乱数r21とを取得する。共通鍵生成部47は、秘密鍵K4、識別情報ID2、乱数r21,r3を元にハッシュ値を生成し、このハッシュ値を共通鍵として、第2のノード20との以後の通信に用いる。この共通鍵は、たとえばH(H4,r21|r4)=H(H(K4;ID2),r21|r4)になる。
ところで、管理装置30は、管理装置40から識別情報ID1,ID2を受け取ると、第1のノード10に向けた第1のハッシュ値H1を含むメッセージと、第2のノード20に向けた第2のハッシュ値H2を含むメッセージとを送信する(P35)。第1のハッシュ値H1および第2のハッシュ値H2は、実施形態1あるいは実施形態2と同様である。
一方、管理装置40が生成した乱数r4を含むメッセージを管理装置40から受信した第2のノード20は、鍵保管部26に保管しているハッシュ値H4と、先に生成した乱数r21と、管理装置40から受信した乱数r4とを元にハッシュ値を生成する。メッセージ生成部24は、管理装置40から受信したハッシュ値が、このハッシュ値と一致すると、管理装置40からのメッセージであることを認証し、共通鍵生成部27に対してメッセージを認証したことを通知する。
第2のノード20における共通鍵生成部27は、管理装置40から受信した乱数r4と鍵保管部26に保管しているハッシュ値H4と、乱数発生器25が生成した乱数r21とを元にしたハッシュ値を共通鍵として生成し、この共通鍵を共通鍵保管部28に保管する。この共通鍵は、当然のことであるが、たとえばH(H4,r21|r4)=H(H(K4;ID2),r21|r4)になる。
以上の手順によって、第2のノード20と管理装置40との間で共通鍵が設定され、第2のノード20と管理装置40との間の以後の通信は、共通鍵を用いた暗号化が可能になる。そこで、第2のノード20は、乱数発生器25により乱数r22を生成し、この乱数r22と、管理装置40から受け取った乱数r4とを併せて、共通鍵Ks2を用いて暗号化したメッセージを送信する(P36)。このメッセージは、たとえばE(Ks2;r4|r22)になる。ここに、E(K;y)は、yを共通鍵Kで暗号化したことを表す。
共通鍵Ks2で暗号化されたメッセージを受信した管理装置40は、共通鍵Ks2を用いてメッセージの内容を復号することができるから、乱数r22を取り出す。また、管理装置40は、管理装置30から受信した第1のハッシュ値H1を含むメッセージ、および第2のハッシュ値H2を含むメッセージを、共通鍵Ks2で暗号化して、第2のノード20に送信する(P37)。また、通信の安全性を高めるために、乱数r22に所定の演算を行って共通鍵Ks2で暗号化した情報も送信される。図示例では、乱数r22に対する演算として、乱数22に1を加算する演算を例示しているが、他の演算であってもよい。
管理装置40から共通鍵Ks2で暗号化された情報を受信した第2のノード20は、乱数r22に関する情報を復号し、管理装置40から送信された情報であることを確認する。その後、第1のノード10に宛てた第1のハッシュ値H1を含むメッセージと、第2のノード20に宛てた第2のハッシュ値H2を含むメッセージとを復号する。復号されたメッセージは、たとえば、H(K1;ID2)と(ID2,H(K2;ID2|ID1))とであって、実施形態1、実施形態2と同様に、前者は第2のノード20の秘密鍵保管部26に保管され、後者は第1のノード10に送信される。
以後の動作は実施形態1、実施形態2において説明した動作と同様であるから、以後の動作については説明を省略する。本実施形態のように、第1のノード10と同じ管理主体である管理装置30と、第2のノード20と同じ管理主体である管理装置40とを分離して設けたことにより、第1のノード10と第2のノード20とに関する情報を、分離して管理することが可能になる。
なお、本実施形態の動作において、第2のノード20と管理装置40との間で用いる共通鍵Ks1,Ks2について有効期間を設定し、実施形態2で説明した技術と同様にして共通鍵Ks1,Ks2の有効期間を管理すれば、再送攻撃ないし再生攻撃による鍵共有が防止される。
共通鍵Ks1,Ks2に有効期間Tを設定する動作例を図6に示す。図示例は、図5に示した動作と多くの共通点を有しているが、共通鍵Ks1,Ks2に有効期間Tを定めている点と、第1のノード10および第2のノード20を識別する情報として、識別情報ID1,ID2のほかに、製品番号を用いる点とが相違する。以下では、第1のノード10の製品番号をPN1とし、第2のノード20の製品番号をPN2とする。第2のノード20を識別する情報として製品番号PN2を用いているのは、第2のノード20を識別する情報として利用者が容易に入力できるからである。
以下では、主として図5に示した動作との相違点について説明する。上述した動作と同様に、第2のノード20は、管理装置40の秘密鍵K4を用いて第2のノード20の識別情報ID2から算出したハッシュ値H4=H(K4;ID2)を暗号鍵Kxとして保管している。また、第2のノード20は、暗号鍵Kxを用いて管理装置40の識別情報ID4および第2のノード20の識別情報ID2から算出したハッシュ値H5=H(Kx;ID4|ID2)も保管している。さらに、第2のノード20に接続された操作器を用いて、第2のノード20に製造番号PN2が入力される。
第2のノード20は、第1のノード10から識別情報ID1を受け取ると(P41)、管理装置40との間で通信を行うことにより、管理装置40との間で用いる共通鍵Ks2を設定する。共通鍵Ks2の設定のために、第2のノード20は、第1のノード10の識別情報ID1と第2のノードの識別情報ID2と、乱数発生器25が生成した乱数r21と、ハッシュ値H5とを含むメッセージを管理装置40に送信する(P42)。このメッセージは、暗号鍵Kxを用いて製品番号PN2を暗号化した情報E(Kx;PN2)も含む。
管理装置40は、ハッシュ値H5を用いてメッセージを認証し、メッセージの内容と管理装置40が保管している情報とを用いて共通鍵Ks2を設定する。共通鍵Ks2は、たとえばKs2=H(Kx;H(Kx;r21|r4))とする。ここで、図5に示した動作例は、管理装置40から管理装置30に対して、識別情報ID1,ID2を送信しているが、図6に示す動作例は、識別情報ID1,ID2に加えて製品番号PN2を送信している(P43)。また、管理装置40は、乱数発生器45が生成した乱数r4を含むメッセージを第2のノード20に送信する(P44)。このメッセージを認証するためのハッシュ値は、管理装置40の秘密鍵K4を用いて第2のノード20の識別情報ID2から算出したハッシュ値H4を暗号鍵Kxとし、この暗号鍵Kxを用いて、乱数r21および乱数r4から算出される。つまり、乱数r4に付加されるメッセージ認証用のハッシュ値は、たとえば、H(Kx;r2|r4)になる。
図6に示す動作例では、第2のノード20は、管理装置40からメッセージ認証用に受け取ったハッシュ値から暗号鍵Kxを用いて算出したハッシュ値を、管理装置40との間の通信に用いる共通鍵Ks2とする。つまり、共通鍵Ks2は、たとえばKs2=H(Kx;H(Kx;r21|r4))になる。このようにして、第2のノード20が共通鍵Ks2を生成することにより、管理装置40と同じ共通鍵Ks2が第2のノード20に設定され、第2のノード20と管理装置40との以後の通信を、共通鍵Ks2により暗号化することが可能になる。
ところで、管理装置40から管理装置30に対して送信された製品番号PN2は、管理装置30において、管理装置30が管理している第1のノード10の製品番号PN1との関係が確認される。管理装置30は、製品番号PN1,PN2が規定の関係であれば、第1のハッシュ値H1を含むメッセージと、第2のハッシュ値H2を含むメッセージとを管理装置40に送信する(P45)。管理装置30から管理装置40へのメッセージは、図5に示した動作と同じである。
ここで、管理装置40は、第1のノード10と第2のノード20とが用いる共通鍵Ks1の有効期間Tを定め、有効期間Tを含むメッセージを共通鍵Ks2で暗号化して第2のノード20に送信する(P46)。管理装置40から第2のノード20には、たとえば、E(Ks2;ID2,T,H(K1;T|ID2|ID1),H(K1;T|ID2))という情報が送信される。
図5に示した動作例は、第2のノード20が共通鍵Ks2を生成した後に、第2のノード20から管理装置40に対して、乱数r22を送信することにより、第2のノード20が管理装置40からの応答を確認している。これに対して、図6に示す動作例は、乱数r22を省略して、管理装置40が管理装置30から第1のハッシュ値H1および第2のハッシュ値H2を受け取ったことを契機として、管理装置40から第2のノード20に上述した情報を送信している。
以後の処理は、実施形態1において図3に示した処理と同様であって、第2のノード20は、管理装置40から受け取った情報を復号することにより、2個のハッシュ値H(K1;T|ID2|ID1),H(K1;T|ID2)を受け取る。一方のハッシュ値H(K1;T|ID2)は、第2のノード20の秘密鍵K2として保管され、他方のハッシュ値H(K1;T|ID2|ID1)は、第2のノード20の識別情報ID2、有効期間T、乱数r2と併せて第1のノード10に送信される(P47)。第2のノード20から第1のノード10へのメッセージは、たとえば、(ID2,T,r2,H(K1;T|ID1|ID2))のようになる。
第1のノード10は、保有している情報と第2のノード20から受け取った情報とを用いて共通鍵Ks1を生成する。さらに、第1のノード10は、乱数r1を生成し、この乱数r1にメッセージ認証用のハッシュ値を付加して第2のノード20に送信する(P48)。第2のノード20は、第1のノード10から乱数r1を受け取ることにより、共通鍵Ks1を生成する。第1のノード10から第2のノード20へのメッセージは、たとえば、(r1,H(K2;T|r2|r1))などになる。
上述した例の場合、第1のノード10と第2のノード20とに設定される共通鍵Ks1は、たとえば、Ks1=(K2,H(K2;T|r2|r1))という形式で表される。ここでは、K2=H(K1;T|ID2)としている。
図6に示すように2台の管理装置30,40を用いる場合であっても、第1のノード10と第2のノード20との間の通信に用いる共通鍵Ks1に有効期間Tを設定することが可能である。第1のノード10と第2のノード20との間の通信に際し、共通鍵Ks1の有効期間Tを超えると、この共通鍵Ks1は無効化される。他の構成および動作は実施形態1、実施形態2と同様であるから説明を省略する。
上述した各実施形態は、第1のノード10が計測装置と併せていわゆるスマートメータを構成し、第2のノード20がいわゆるHEMSに対応している場合を想定している。したがって、需要家が使用する機器が通信機能を備えている場合、第2のノード20と機器とにより通信ネットワークが構築され、この通信ネットワークのゲートウェイとして第2のノード20が用いられる。ただし、第2のノード20がゲートウェイとなるHEMSであることは一例であって、需要家において使用される機器ごとに第2のノード20が付設される場合でも上述した技術は適用可能である。
また、上述した各実施形態は、管理装置30が第1のノード10の管理主体により運営され、管理装置40が第2のノード20の管理主体により運営されている場合を想定しているが、管理装置40は、需要家に設置されていてもよい。このような通信ネットワークは、たとえば、管理装置40が無線LANのアクセスポイント、第1のノード10がHEMS、第2のノード20が機器となる無線LANなどに該当する。
なお、上述した各実施形態は、第1のノード10が計測装置と併せて電力メータを構成し、第2のノード20がHEMSあるいは需要家で使用する機器に付設されている場合を例として説明したが、実施形態において説明した技術の用途は説明した内容に限定されない。
10 第1のノード
17 (第1の)共通鍵生成部
20 第2のノード
27 (第2の)共通鍵生成部
30 管理装置
32 鍵保管部
33 照合部
34 チケット発行部
40 管理装置

Claims (9)

  1. 識別情報および秘密鍵が設定された第1のノードと、
    前記第1のノードと通信可能であって識別情報が設定された第2のノードと、
    前記第1のノードと前記第2のノードとの少なくとも一方と通信可能であって前記第1のノードの識別情報および秘密鍵があらかじめ保管されている管理装置とを備え、
    前記管理装置は、
    前記第1のノードおよび前記第2のノードから通信によって識別情報を取得し前記第1のノードの識別情報を認証用の情報と照合する照合部と、
    前記照合部が前記第2のノードに前記第1のノードとの通信を許可する場合に前記第1のノードの秘密鍵を用いて生成されるチケットであって、前記第1のノードに宛てた第1のチケット、および前記第2のノードに宛てた第2のチケットを発行するチケット発行部とを備え、
    前記第1のノードは、設定されている秘密鍵と前記第1のチケットを認証用に用いて送信されたメッセージとを用いて共通鍵を生成する第1の共通鍵生成部を備え、
    前記第2のノードは、前記第2のチケットを用いて共通鍵を生成する第2の共通鍵生成部を備える
    ことを特徴とする暗号鍵設定システム。
  2. 前記第1のノードは、1個の共通鍵のために第1の交換用のコードを生成し、かつ前記第1の交換用のコードを前記第2のノードに送信する機能を有し、
    前記第2のノードは、1個の共通鍵のために第2の交換用のコードを生成し、かつ前記第2の交換用のコードを前記第1のノードに送信する機能を有し、
    前記第1の共通鍵生成部は、設定されている秘密鍵と前記第1の交換用のコードと前記第1のチケットを認証用に用いて送信されたメッセージに含めて前記第2のノードから受信した前記第2の交換用のコードとを用いて共通鍵を生成する機能を有し、
    前記第2の共通鍵生成部は、前記第2のチケットと前記第2の交換用のコードと前記第1のノードから受信した前記第1の交換用のコードとを用いて共通鍵を生成する機能を有する
    ことを特徴とする請求項1記載の暗号鍵設定システム。
  3. 前記第1のノードは、セキュアな通信路を通して設定されている識別情報を前記第2のノードに送信する機能を有し、
    前記第2のノードは、前記第1のノードから識別情報を受信すると、設定されている識別情報を受信した識別情報と併せて前記管理装置に送信する機能を有している
    ことを特徴とする請求項1又は2記載の暗号鍵設定システム。
  4. 前記第1のノードと前記第2のノードとの一方のノードは、共通鍵を設定する契機となる事象を検出する手段が付設され、
    前記一方のノードは、当該手段が前記事象を検出すると、設定されている識別情報を他方のノードに送信する機能を有し、
    前記他方のノードは、前記一方のノードから識別情報を受信すると、設定されている識別情報を受信した識別情報と併せて前記管理装置に送信する機能を有している
    ことを特徴とする請求項1又は2記載の暗号鍵設定システム。
  5. 前記管理装置における前記チケット発行部は、前記第1のノードおよび前記第2のノードに設定される共通鍵の有効期間を定める機能と、少なくとも前記第1のチケットと併せて前記第1のノードに有効期間を通知する機能とを有し、
    前記第1のノードと前記第2のノードとのうちの少なくとも前記第1のノードは、前記第1のチケットと併せて通知された有効期間を取得し、設定された共通鍵を有効期間内の通信にのみ使用する機能を有する
    ことを特徴とする請求項1〜4のいずれか1項に記載の暗号鍵設定システム。
  6. 前記第1のノードは、資源供給業者から供給される資源の使用量を計測する計測装置に付設され、前記計測装置から計測データを取得する機能を有し、
    前記第2のノードは、前記資源の需要家が前記資源を用いて使用する機器との間で通信することにより、少なくとも前記機器による資源の消費量を管理する機能を有する
    ことを特徴とする請求項1〜5のいずれか1項に記載の暗号鍵設定システム。
  7. 前記第1のノードは、資源供給業者から供給される資源の使用量を計測する計測装置に付設され、前記計測装置から計測データを取得する機能を有し、
    前記第2のノードは、前記資源の需要家が前記資源を用いて使用する機器に付設され、少なくとも前記機器による資源の消費量を管理する機能を有する
    ことを特徴とする請求項1〜5のいずれか1項に記載の暗号鍵設定システム。
  8. 請求項1〜7のいずれか1項に記載の暗号鍵設定システムに用いられ、前記第1のノードとして機能することを特徴とする端末装置。
  9. 請求項1〜7のいずれか1項に記載の暗号鍵設定システムに用いられ、前記第2のノードとして機能することを特徴とする端末装置。
JP2012109597A 2012-05-11 2012-05-11 暗号鍵設定システム、端末装置 Active JP6050950B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2012109597A JP6050950B2 (ja) 2012-05-11 2012-05-11 暗号鍵設定システム、端末装置
PCT/JP2013/001374 WO2013168326A1 (ja) 2012-05-11 2013-03-06 暗号鍵設定システム、端末装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012109597A JP6050950B2 (ja) 2012-05-11 2012-05-11 暗号鍵設定システム、端末装置

Publications (2)

Publication Number Publication Date
JP2013239773A true JP2013239773A (ja) 2013-11-28
JP6050950B2 JP6050950B2 (ja) 2016-12-21

Family

ID=49550398

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012109597A Active JP6050950B2 (ja) 2012-05-11 2012-05-11 暗号鍵設定システム、端末装置

Country Status (2)

Country Link
JP (1) JP6050950B2 (ja)
WO (1) WO2013168326A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6153031B2 (ja) * 2014-06-10 2017-06-28 パナソニックIpマネジメント株式会社 通信システム及び通信方法
CN111526128B (zh) * 2020-03-31 2022-07-19 中国建设银行股份有限公司 一种加密管理的方法和装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010150813A1 (ja) * 2009-06-23 2010-12-29 パナソニック電工株式会社 暗号鍵配布システム
JP2011188620A (ja) * 2010-03-08 2011-09-22 Toshiba Corp 制御装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010150813A1 (ja) * 2009-06-23 2010-12-29 パナソニック電工株式会社 暗号鍵配布システム
JP2011188620A (ja) * 2010-03-08 2011-09-22 Toshiba Corp 制御装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JPN6013015926; A. J. MENEZES et al.: Handbook of Applied Cryptography , 1997, pp. 502-503, CRC Press *

Also Published As

Publication number Publication date
WO2013168326A1 (ja) 2013-11-14
JP6050950B2 (ja) 2016-12-21

Similar Documents

Publication Publication Date Title
US8918639B2 (en) Smarter leveraging of the power grid to substantially improve security of distributed systems via a control plane data communication network over the smart power grid
CN103714633B (zh) 一种安全生成传输密钥的方法及pos终端
CN101401387B (zh) 用于嵌入式设备的访问控制方法
EP2622357B1 (en) Utility device management
CN1964258B (zh) 用于安全装置发现及引入的方法
CN101772024B (zh) 一种用户身份确定方法及装置和系统
CN108650082A (zh) 待验证信息的加密和验证方法、相关装置及存储介质
CN101005357A (zh) 一种更新认证密钥的方法和系统
CN106549502B (zh) 一种配电安全防护监控系统
CN101874419A (zh) 为有源rfid标签提供安全通信
CN102447705A (zh) 数字证书撤销方法及设备
Kamto et al. Key distribution and management for power aggregation and accountability in advance metering infrastructure
KR101575042B1 (ko) 이종의 자동제어 시스템간의 통신 인터페이스를 지원하는 2.5계층 보안 시스템
JP6050950B2 (ja) 暗号鍵設定システム、端末装置
CN109644185A (zh) 用于进行安全电子数据通信的方法和装置
JP2007049455A (ja) 暗号鍵管理サーバ、暗号鍵管理方法および暗号鍵管理プログラム
US11616646B2 (en) Key-management for advanced metering infrastructure
ITMI20082309A1 (it) Metodo di trasmissione di un messaggio, preferibilmente per una rete di distribuzione di energia
CN101772025A (zh) 一种用户身份确定方法及装置和系统
Sherman et al. Location authentication through power line communication: Design, protocol, and analysis of a new out-of-band strategy
JP4976794B2 (ja) 駅務システム及びセキュリティ通信方法
Limbasiya et al. Attacks on authentication and authorization models in smart grid
Cho et al. Authentication method for privacy protection in smart grid environment
CN115883211B (zh) 一种面向企业数据安全的文件流转系统
CN114143627B (zh) 一种基于NB-IoT的计量仪表安全通讯方法

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20141003

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150212

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160209

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160324

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20160705

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161005

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20161014

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20161101

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20161128

R151 Written notification of patent or utility model registration

Ref document number: 6050950

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151