IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ 大日本印刷株式会社の特許一覧

特開2024-105128スマートメーターシステム、暗号ライブラリの更新方法、スマートメーター、セキュアエレメントおよびコンピュータプログラム
<>
  • 特開-スマートメーターシステム、暗号ライブラリの更新方法、スマートメーター、セキュアエレメントおよびコンピュータプログラム 図1
  • 特開-スマートメーターシステム、暗号ライブラリの更新方法、スマートメーター、セキュアエレメントおよびコンピュータプログラム 図2
  • 特開-スマートメーターシステム、暗号ライブラリの更新方法、スマートメーター、セキュアエレメントおよびコンピュータプログラム 図3
  • 特開-スマートメーターシステム、暗号ライブラリの更新方法、スマートメーター、セキュアエレメントおよびコンピュータプログラム 図4
  • 特開-スマートメーターシステム、暗号ライブラリの更新方法、スマートメーター、セキュアエレメントおよびコンピュータプログラム 図5
  • 特開-スマートメーターシステム、暗号ライブラリの更新方法、スマートメーター、セキュアエレメントおよびコンピュータプログラム 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024105128
(43)【公開日】2024-08-06
(54)【発明の名称】スマートメーターシステム、暗号ライブラリの更新方法、スマートメーター、セキュアエレメントおよびコンピュータプログラム
(51)【国際特許分類】
   H04L 9/16 20060101AFI20240730BHJP
   H04L 9/10 20060101ALI20240730BHJP
【FI】
H04L9/16
H04L9/10 A
【審査請求】未請求
【請求項の数】5
【出願形態】OL
(21)【出願番号】P 2023009701
(22)【出願日】2023-01-25
(71)【出願人】
【識別番号】000002897
【氏名又は名称】大日本印刷株式会社
(74)【代理人】
【識別番号】100122529
【弁理士】
【氏名又は名称】藤枡 裕実
(74)【代理人】
【識別番号】100135954
【弁理士】
【氏名又は名称】深町 圭子
(74)【代理人】
【識別番号】100119057
【弁理士】
【氏名又は名称】伊藤 英生
(74)【代理人】
【識別番号】100131369
【弁理士】
【氏名又は名称】後藤 直樹
(74)【代理人】
【識別番号】100171859
【弁理士】
【氏名又は名称】立石 英之
(72)【発明者】
【氏名】高橋 憲介
(72)【発明者】
【氏名】平野 晋健
(72)【発明者】
【氏名】高田 憲一
(72)【発明者】
【氏名】嘉瀬 悠太
(72)【発明者】
【氏名】福永 正剛
(72)【発明者】
【氏名】木下 靖夫
(57)【要約】
【課題】セキュアエレメントに実装した暗号アルゴリズムを効率良く更新できるようにする。
【解決手段】セキュアエレメント3は、暗号アルゴリズムを実装した暗号ライブラリ320と、ライブラリID321が暗号ライブラリ320に紐づけられている場合、平文を暗号化した暗号化データとライブラリIDを含む暗号化コマンド301のレスポンスデータを生成する暗号化手段30を備える。スマートメーター2は、計量データを含ませた暗号化コマンド301のコマンドメッセージをセキュアエレメント3へ送信し、セキュアエレメント3が生成したレスポンスデータを管理サーバ4へ送信する。管理サーバ4は、レスポンスデータに含まれるライブラリID321に対応する暗号ライブラリ320が非推奨になっている場合、暗号ライブラリ320を更新する処理を実行する。
【選択図】図6
【特許請求の範囲】
【請求項1】
暗号演算処理で用いる暗号鍵を記憶したセキュアエレメントと、前記セキュアエレメントを実装し、電力使用量に係る計量データを計量するスマートメーターと、前記スマートメーターが計量した前記計量データを管理する管理サーバを含み、
前記セキュアエレメントは、暗号アルゴリズムを実装した暗号ライブラリと、暗号化を指示するコマンドメッセージに含まれる平文と前記暗号鍵を前記暗号ライブラリに引き渡して前記平文を暗号化した後、ライブラリIDが前記暗号ライブラリに紐づけられていない場合は、前記暗号ライブラリが前記平文を暗号化した暗号化データを含み、ライブラリIDが前記暗号ライブラリに紐づけられている場合は、前記暗号化データとライブラリIDを含むレスポンスデータを生成する暗号化手段を備え、
前記スマートメーターは、前記計量データを前記平文として含ませた前記コマンドメッセージを前記セキュアエレメントへ送信し、前記セキュアエレメントが生成した前記レスポンスデータを、前記計量データを管理する管理サーバへ送信する計量部を備え、
前記管理サーバは、前記暗号鍵と対になる復号鍵を用いて、前記スマートメーターが送信した前記レスポンスデータを復号し、前記レスポンスデータに含まれる前記ライブラリIDを参照し、この前記ライブラリIDに対応する前記暗号ライブラリが非推奨になっている場合、前記暗号ライブラリを更新する処理を実行する、
ことを特徴とするスマートメーターシステム。
【請求項2】
スマートメーターが、電力使用量に係る計量データを平文として含み、暗号化を指示するコマンドメッセージを、暗号演算処理で用いる暗号鍵を記憶したセキュアエレメントへ送信するステップa、
前記セキュアエレメントが、前記コマンドメッセージに含まれる前記平文と暗号鍵を、暗号アルゴリズムを実装した暗号ライブラリに引き渡して前記平文を暗号化した後、ライブラリIDが前記暗号ライブラリに紐づけられていない場合は、前記暗号ライブラリが前記平文を暗号化した暗号化データを含み、前記ライブラリIDが前記暗号ライブラリに紐づけられている場合は、前記暗号化データと前記ライブラリIDを含むレスポンスデータを生成するステップb、
前記スマートメーターが、前記計量データを管理する管理サーバへ、前記セキュアエレメントから生成した前記レスポンスデータを送信するステップc、
前記管理サーバが、前記暗号鍵と対になる復号鍵を用いて、前記スマートメーターが送信した前記レスポンスデータを復号し、前記レスポンスデータに含まれる前記ライブラリIDを参照し、この前記ライブラリIDに対応する前記暗号ライブラリが非推奨になっている場合、前記暗号ライブラリを更新する処理を実行するステップd、
を含むことを特徴とする、暗号ライブラリの更新方法。
【請求項3】
電力使用量に係る計量データを計量する計量部と、暗号演算処理で用いる暗号鍵を記憶したセキュアエレメントを備え、
前記セキュアエレメントは、暗号アルゴリズムを実装した暗号ライブラリと、暗号化を指示するコマンドメッセージに含まれる平文と前記暗号鍵を前記暗号ライブラリに引き渡して前記平文を暗号化した後、ライブラリIDが前記暗号ライブラリに紐づけられていない場合は、前記暗号ライブラリが前記平文を暗号化した暗号化データを含み、ライブラリIDが前記暗号ライブラリに紐づけられている場合は、前記暗号化データとライブラリIDを含むレスポンスデータを前記計量部へ送信する暗号化手段を備え、
前記計量部は、前記計量データを前記平文として含ませた前記コマンドメッセージを前記セキュアエレメントへ送信し、前記セキュアエレメントから受信した前記レスポンスデータを、前記計量データを管理する管理サーバへ送信する、
ことを特徴とするスマートメーター。
【請求項4】
暗号演算処理で用いる暗号鍵と、暗号アルゴリズムを実装した暗号ライブラリと、暗号化を指示するコマンドメッセージに含まれる平文と前記暗号鍵を前記暗号ライブラリに引き渡して前記平文を暗号化した後、ライブラリIDが前記暗号ライブラリに紐づけられていない場合は、前記暗号ライブラリが前記平文を暗号化した暗号化データを含み、ライブラリIDが前記暗号ライブラリに紐づけられている場合は、前記暗号化データとライブラリIDを含むレスポンスデータを生成する暗号化手段を備えたことを特徴とするセキュアエレメント。
【請求項5】
暗号化を指示するコマンドメッセージに含まれる平文と暗号演算処理で用いる暗号鍵を、暗号アルゴリズムを実装した暗号ライブラリに引き渡して前記平文を暗号化した後、ライブラリIDが前記暗号ライブラリに紐づけられていない場合は、前記暗号ライブラリが前記平文を暗号化した暗号化データを含み、ライブラリIDが前記暗号ライブラリに紐づけられている場合は、前記暗号化データとライブラリIDを含むレスポンスデータを生成する暗号化手段として、セキュアエレメントのCPUを動作させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、電力使用量をデジタルで計量するスマートメーターに関する。
【背景技術】
【0002】
電力使用量をデジタルで計量するスマートメーターが普及している。遠隔での自動検針を可能とするため、スマートメーターには、無線マルチホップ方式などの通信機能が搭載されている。スマートメーターは、通信機能を利用して、スマートメーターが計量した電力使用量に係る計量データを、スマートメーターごとに計量データを管理する管理サーバへ送信する。計量データの漏洩や改ざんを防止するため、スマートメーターが管理サーバへ送信する計量データを暗号化することが推奨されている。
【0003】
スマートメーターの分野にかかわらず、データを暗号化する装置では暗号危殆化が問題になる。暗号危殆化とは、何らかの事象の発生や状況の変化により、秘密に保持されるべき暗号鍵が漏洩し得る事態になることを意味している。暗号鍵の漏洩に係るハードウェアの脆弱性を解消するため、外部からの暗号解読攻撃に対して高い耐タンパー性を有するセキュアエレメントに暗号鍵を記憶させ、セキュアエレメントの内部で暗号処理を行うことが行われている。
【0004】
暗号危殆化は、暗号鍵を記憶するハードウェアに起因するだけではない。暗号危殆化は、時間的な要因でも生じ得る。例えば、暗号鍵を長期に渡って使用していると、暗号鍵が漏洩する可能性が高くなる。このことを防止するには、定期的または不定期で暗号鍵を変更することが必要になる。特許文献1で開示された発明では、所定の条件が満たされた場合に、サーバへ送信したデータを用いて暗号鍵を更新している。特許文献1で開示された発明では、暗号鍵の更新に用いるデータを電力使用量に係る計量データとし、所定の条件を、前回の暗号鍵の更新から一定の期間が経過し、かつ、一定の期間内にサーバに対して計量データを送信していないという条件にしている。
【0005】
暗号危殆化は、暗号アルゴリズムの脆弱性によっても生じる。ここでは、低コストで実施可能な暗号鍵解読法が見つかり、暗号アルゴリズムの安全性が危ぶまれる事態になることを暗号アルゴリズムの危殆化としている。
【0006】
計量データの暗号に用いる暗号アルゴリズムが危殆化して非推奨になった場合、この暗号アルゴリズムを変更しなければならない。スマートメーターに実装されたMCU(Micro Controller Unit)が暗号演算を行う場合、MCUのファームウェアを更新することで、スマートメーターの暗号アルゴリズムを変更できる。例えば、特許文献2では、スマートメーターの動作を妨げないタイミングでスマートメーターのファームウェアを効率よく更新できる発明が開示されている。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開2015-216413号公報
【特許文献2】特開2017-091365号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
スマートメーターにセキュアエレメントを実装する場合、計量データの暗号化に用いる暗号アルゴリズムが危殆化して非推奨になったとき、セキュアエレメントに実装した暗号アルゴリズムを更新しなければならない。
【0009】
そこで、本願では、セキュアエレメントに実装した暗号アルゴリズムを効率良く更新できるようにすることを目的とする。
【課題を解決するための手段】
【0010】
上述した課題を解決する第1発明は、暗号演算処理で用いる暗号鍵を記憶したセキュアエレメントと、前記セキュアエレメントを実装し、電力使用量に係る計量データを計量するスマートメーターと、前記スマートメーターが計量した前記計量データを管理する管理サーバを含むスマートメーターシステムである。
第1発明において、前記セキュアエレメントは、暗号アルゴリズムを実装した暗号ライブラリと、暗号化を指示するコマンドメッセージに含まれる平文と前記暗号鍵を前記暗号ライブラリに引き渡して前記平文を暗号化した後、ライブラリIDが前記暗号ライブラリに紐づけられていない場合は、前記暗号ライブラリが前記平文を暗号化した暗号化データを含み、ライブラリIDが前記暗号ライブラリに紐づけられている場合は、前記暗号化データとライブラリIDを含むレスポンスデータを生成する暗号化手段を備える。
第1発明において、前記スマートメーターは、前記計量データを前記平文として含ませた前記コマンドメッセージを前記セキュアエレメントへ送信し、前記セキュアエレメントが生成した前記レスポンスデータを、前記計量データを管理する管理サーバへ送信する計量部を備える。
第1発明において、前記管理サーバは、前記暗号鍵と対になる復号鍵を用いて、前記スマートメーターが送信した前記レスポンスデータを復号し、前記レスポンスデータに含まれる前記ライブラリIDを参照し、この前記ライブラリIDに対応する前記暗号ライブラリが非推奨になっている場合、前記暗号ライブラリを更新する処理を実行する。
【0011】
上述した課題を解決する第2発明は、スマートメーターが、電力使用量に係る計量データを平文として含み、暗号化を指示するコマンドメッセージを、暗号演算処理で用いる暗号鍵を記憶したセキュアエレメントへ送信するステップa、前記セキュアエレメントが、前記コマンドメッセージに含まれる前記平文と暗号鍵を、暗号アルゴリズムを実装した暗号ライブラリに引き渡して前記平文を暗号化した後、ライブラリIDが前記暗号ライブラリに紐づけられていない場合は、前記暗号ライブラリが前記平文を暗号化した暗号化データを含み、前記ライブラリIDが前記暗号ライブラリに紐づけられている場合は、前記暗号化データと前記ライブラリIDを含むレスポンスデータを生成するステップb、前記スマートメーターが、前記計量データを管理する管理サーバへ、前記セキュアエレメントから生成した前記レスポンスデータを送信するステップc、前記管理サーバが、前記暗号鍵と対になる復号鍵を用いて、前記スマートメーターが送信した前記レスポンスデータを復号し、前記レスポンスデータに含まれる前記ライブラリIDを参照し、この前記ライブラリIDに対応する前記暗号ライブラリが非推奨になっている場合、前記暗号ライブラリを更新する処理を実行するステップdを含むことを特徴とする暗号ライブラリの更新方法である。
【0012】
上述した課題を解決する第3発明は、電力使用量に係る計量データを計量する計量部と、暗号演算処理で用いる暗号鍵を記憶したセキュアエレメントを備えたスマートメーターである。
第3発明において、前記セキュアエレメントは、暗号アルゴリズムを実装した暗号ライブラリと、暗号化を指示するコマンドメッセージに含まれる平文と前記暗号鍵を前記暗号ライブラリに引き渡して前記平文を暗号化した後、ライブラリIDが前記暗号ライブラリに紐づけられていない場合は、前記暗号ライブラリが前記平文を暗号化した暗号化データを含み、ライブラリIDが前記暗号ライブラリに紐づけられている場合は、前記暗号化データとライブラリIDを含むレスポンスデータを前記計量部へ送信する暗号化手段を備える。
第3発明において、前記計量部は、前記計量データを前記平文として含ませた前記コマンドメッセージを前記セキュアエレメントへ送信し、前記セキュアエレメントから受信した前記レスポンスデータを、前記計量データを管理する管理サーバへ送信する。
【0013】
上述した課題を解決する第4発明は、暗号演算処理で用いる暗号鍵と、暗号アルゴリズムを実装した暗号ライブラリと、暗号化を指示するコマンドメッセージに含まれる平文と前記暗号鍵を前記暗号ライブラリに引き渡して前記平文を暗号化した後、ライブラリIDが前記暗号ライブラリに紐づけられていない場合は、前記暗号ライブラリが前記平文を暗号化した暗号化データを含み、ライブラリIDが前記暗号ライブラリに紐づけられている場合は、前記暗号化データとライブラリIDを含むレスポンスデータを生成する暗号化手段を備えたことを特徴とするセキュアエレメントである。
【0014】
上述した課題を解決する第5発明は、暗号化を指示するコマンドメッセージに含まれる平文と暗号演算処理で用いる暗号鍵を、暗号アルゴリズムを実装した暗号ライブラリに引き渡して前記平文を暗号化した後、ライブラリIDが前記暗号ライブラリに紐づけられていない場合は、前記暗号ライブラリが前記平文を暗号化した暗号化データを含み、ライブラリIDが前記暗号ライブラリに紐づけられている場合は、前記暗号化データとライブラリIDを含むレスポンスデータを生成する暗号化手段として、セキュアエレメントのCPUを動作させるためのコンピュータプログラムである。
【発明の効果】
【0015】
上述した課題を解決する本発明では、暗号化を指示する暗号化コマンドのレスポンスデータに、セキュアエレメントに実装された暗号ライブラリのライブラリIDを含ませることで、スマートメーターを管理する管理サーバに、セキュアエレメントで動作している暗号ライブラリを伝達できるようにしている。
【図面の簡単な説明】
【0016】
図1】スマートメーターシステムを説明する図。
図2】スマートメーターの構造を説明する図。
図3】スマートメーターのブロック図。
図4】セキュアエレメントのブロック図。
図5】暗号化コマンドの構文を説明する図。
図6】管理サーバへ計量データを送信する一連の手順を示した図。
【発明を実施するための形態】
【0017】
ここから,本願で開示する本発明に係る実施形態について記載する。本実施形態は,本発明の理解を容易にするためのものであり,本発明は,本実施形態に限定されるものではない。また,特に断りのない限り,図面は,本発明の理解を容易にするために描かれた模式的な図である。
【0018】
図1は、スマートメーター2を利用するためのシステムであるスマートメーターシステム1を説明する図である。図1で図示したスマートメーターシステム1は、セキュアエレメント3が実装され、家庭などの電力使用量をデジタルで計量する機能を備えたスマートメーター2と、スマートメーター2ごとに電力使用量に係る計量データを管理する管理サーバ4を含んでいる。
【0019】
管理サーバ4はWAN6(Wide Area Network)と接続している。スマートメーター2がWAN6に接続する態様は一つではない。図1で図示したスマートメーター2aは、FAN7(Field Area Network)を介してWAN6と接続している。また、スマートメーター2bは、FAN7を介さずにWAN6と接続している。
【0020】
FAN7とは、FAN7と接続しているスマートメーター2の計量データを、コンセントレータとも呼ばれる集約装置5で収集して管理サーバ4へ送信するように構築された自営網である。FAN7に接続するスマートメーター2aは、無線マルチホップ方式で計量データを集約装置5へ送信する。無線マルチホップ方式とは、他の機器(ここでは、スマートメーター2a)を中継器として利用する通信方式である。FAN7を介さずにWAN6と接続しているスマートメーター2bの通信方式は、移動体通信(例えば、5G)やPLC(Power Line Communication)になる。
【0021】
このように、スマートメーター2が計量した電力使用量に係る計量データは、公衆網であるWAN6を介して管理サーバ4へ届く。FAN7に接続しているスマートメーター2の場合、スマートメーター2の計量データは、他のスマートメーター2を経由して集約装置5へ届き、集約装置5を経由して管理サーバ4へ届く。このため、スマートメーター2の分野では、スマートメーター2が管理サーバ4へ送信する計量データを、スマートメーター2で固有な鍵で暗号化することが推奨されている。
【0022】
図2では、スマートメーター2の構造を説明している。図3では、スマートメーター2のブロック図を示している。
【0023】
図2で図示した通り、スマートメーター2は、計量部20、通信部21および端子部22より構成され、セキュアエレメント3が実装されている。計量部20と端子部22を分離することで、計量部20を交換するスマートメーター2の近辺を停電させることなく、計量部20の交換工事を行える。図3で図示した通り、端子部22は、電力事業者の電線と接続する端子220と、ユーザの分電盤と接続する端子221を有している。通信部21は、スマートメーター2が対応した通信方式を行うための回路である。計量部20と通信部21を分離することで、スマートメーター2の設置場所に応じて通信方式を変えることができる。
【0024】
計量部20は、スマートメーター2が設置された場所(例えば、建屋)に係る電力使用量を計量する機能を有している。図3で図示した通り、計量部20は、MCU200(Micro Controller Unit)、電流センサ201、電圧センサ202、表示メーター203を備えている。図3において、電流センサ201、電圧センサ202および表示メーター203それぞれは、MCU200と接続している。更に、図3では、電源回路23を図示している。
【0025】
電源回路23は、端子部22を利用してL線(ライブ線)とN線(ニュートラル線)に接続し、スマートメーター2の動作電力を発生させる回路である。図3では明示的に記載していないが、電源回路23は、計量部20、セキュアエレメント3および通信部21と接続している。
【0026】
電流センサ201は、端子部22を利用してL線(ライブ線)に接続し、L線に流れる電流を計測するセンサである。電流センサ202は、端子部22を利用してL線とN線(ニュートラル線)に接続し、L線とN線の間の電圧を計測するセンサである。
【0027】
表示メーター203は、電力使用量に係る計量データを表示するメーターである。表示メーター203には、液晶ディスプレイが利用されている。表示メーター203に表示する値は、単位時間あたり(例えば、30分)の計量データではなく、過去に計量した計量データの積算値である。
【0028】
MCU200は、マイクロプロセッサとメモリなどを一つに集積したチップである。MCU200は、メモリとして、電気的に書き換え可能な揮発性メモリと電気的に書き換え可能な不揮発性メモリを備えている。揮発性メモリには、計量部20が過去に計量した計量データが一時的に記憶される。不揮発性メモリには、スマートメーター2ごとに固有なスマートメーターID、計量部20のファームウェアなどが記憶される。
【0029】
MCU200は、コンピュータプログラムによって実現される機能として、電流センサの計測値および電圧センサの計測値から単位時間あたりの計量データを演算する機能と、通信部21を利用して、管理サーバ4と通信する機能を備えている。本実施形態において、MCU200は、電力使用量に係る計量データを管理サーバ4は送信する際、セキュアエレメント3を利用して、管理サーバ4へ送信する計量データを暗号化し、セキュアエレメント3が暗号化した計量データを管理サーバ4へ送信する。
【0030】
セキュアエレメント3は、暗号演算機能を備え、外部からの暗号解読攻撃に対して高い耐タンパー性を有する半導体製品である。セキュアエレメント3は計量部20の内部に実装され、セキュアエレメント3は計量部20のMCU200と接続している。セキュアエレメント3の形態としては、SIMカード(Subscriber Identity Module Card)のような小型のカード媒体と埋め込む型のICチップがあるが、本発明は、セキュアエレメント3の形態には依存しない。
【0031】
図4では、セキュアエレメント3のブロック図を図示している。セキュアエレメント3は、セキュアエレメント3のハードウェア33と、ハードウェア33の上層になるオペレーティングシステム32と、オペレーティングシステム32を利用するソフトウェアで実現される機能として、平文を暗号化する暗号化手段30と、セキュアチャネルを確立する手段となるセキュアチャネル確立手段31を備えている。
【0032】
セキュアエレメント3のハードウェア33はセキュアエレメント3のICチップである。ICチップは、CPU(Central Processing Unit)やメモリなどを有している。オペレーティングシステム32は、メモリ管理や入出力管理など、セキュアエレメント3の基本的な機能を実行するソフトウェアである。
【0033】
本実施形態に係るオペレーティングシステム32は、セキュアエレメント3が対応する暗号アルゴリズムごとに、暗号アルゴリズムを実装したソフトウェアである暗号ライブラリ320を備える。暗号ライブラリ320の種類としては、DESライブラリ(DES: Data Encryption Standard)、AESライブラリ(AES: Advanced Encryption Standard)、RSAライブラリ(RSA: Rivest-Shamir-Adleman cryptosystem)などを想定できる。暗号ライブラリ320には、ライブラリID321を紐づけることができる。ライブラリID321とは、暗号ライブラリ320を識別する情報である。例えば、ライブラリID321は、暗号ライブラリ320の種類とこのバージョンを示す情報である。暗号ライブラリ320の引数は、暗号演算処理で使用する暗号鍵300と暗号化の対象となる平文になる。暗号ライブラリ320の戻り値は、暗号鍵300を用いて平文を暗号化した暗号化データになる。
【0034】
暗号化手段30は、オペレーティングシステム32を利用するアプリケーションで実現される機能である。本実施形態に係る暗号化手段30は、平文の暗号化に用いる暗号鍵300を記憶する。暗号化手段30は、コマンドとして、コマンドメッセージに含まれる平文の暗号化を指示する暗号化コマンド301を有する。
【0035】
暗号化手段30は、暗号化コマンド301のコマンドメッセージを受信すると、コマンドメッセージに含まれる平文と暗号鍵300を暗号ライブラリ320に引き渡して平文を暗号化した後、暗号化コマンド301のレスポンスデータを生成する。暗号ライブラリ320の識別に用いるライブラリID321が暗号ライブラリ320に紐づけられていない場合、暗号化手段30は、暗号ライブラリ320が平文を暗号化した暗号化データをレスポンスデータに含ませる。暗号ライブラリ320にライブラリID321が紐づけられている場合、暗号化手段30は、暗号化データとライブラリID321をレスポンスデータに含ませる。
【0036】
図5では、暗号化コマンド301の構文を説明している。図5(a)は、暗号化コマンド301のコマンドメッセージの構文を図示している。図5(b)では、暗号化コマンド301のレスポンスメッセージの構文を図示している。
【0037】
図5(a)で図示したごとく、暗号化コマンド301のコマンドメッセージは、CLA、INS、P1、P2、Lcおよびコマンドデータフィールドを含む。CLAは、コマンドのクラスを示すクラスバイトである。INSは、コマンドを識別するためのコマンドバイトである。P1およびP2は、コマンドのパラメーターを示すパラメーターバイトである。Lcは、コマンドデータの長さを示すバイトである。暗号化コマンド301のコマンドデータフィールドには、Tag、Len,Valueからなる簡易符号化TLV構造のコマンドデータが格納される。暗号化コマンド301のValueには、暗号化の対象となる平文が記述される。
【0038】
図5(b)で図示したごとく、暗号化コマンド301のレスポンスメッセージは、レスポンスデータが格納されるレスポンスデータフィールドとSW(Status Word)を含む。SWは、暗号化コマンド301の処理状態を示す2バイトの状態バイトである。
【0039】
本実施形態に係る暗号化コマンド301のレスポンスデータフィールドには、簡易符号化TLV構造のレスポンスデータが格納される。レスポンスデータには、平文を暗号化した暗号化データが含まれる。平文の暗号化に用いた暗号ライブラリ320にライブラリID321が紐づけられている場合、レスポンスデータには、平文の暗号化に用いた暗号ライブラリ320のライブラリID321を含む。
【0040】
暗号化コマンド301のレスポンスデータにライブラリID321を含ませているのは、管理サーバ4側で、平文の暗号化に用いた暗号ライブラリ320を識別できるようにするためである。管理サーバ4側で、平文の暗号化に用いた暗号ライブラリ320を識別できれば、平文の暗号化に用いた暗号ライブラリ320が危殆化して非推奨になっている場合、セキュアエレメント3に実装された暗号ライブラリ320をすみやかに更新できる。暗号ライブラリ320が危殆化するケースとしては、容易に実施可能な暗号鍵解読法が暗号ライブラリ320に見つかったケースが想定できる。この場合、管理サーバ4は、スマートメーター2の計量部20を中継させて、暗号鍵解読法に対処するパッチ(更新用の小さなソフトウェア)を、セキュアエレメント3にインストールする。
【0041】
なお、一度も更新していない初期状態の暗号ライブラリ320にライブラリID321を紐づけずに、更新後の暗号ライブラリ320にのみライブラリID321を紐づけることで、暗号ライブラリ320を更新したときのみ、暗号ライブラリ320のライブラリID321をレスポンスデータに含ませることができる。
【0042】
暗号化手段30が、暗号ライブラリ320のライブラリID321を取得する手法は任意である。例えば、暗号ライブラリ320の戻り値にライブラリID321を含ませることで、暗号化手段30は、暗号ライブラリ320のライブラリID321を取得できる。また、暗号化手段30が、暗号ライブラリ320のライブラリID321を読み出すようにしてもよい。
【0043】
セキュアチャネル確立手段31は、管理サーバ4との間でセキュアチャネルを確立する処理を実行するプログラムで実現される機能になる。管理サーバ4とセキュアエレメント3の間のセキュアチャネルとは、管理サーバ4とセキュアエレメント3の間でセッション鍵310を共有し、セッション鍵310でデータを暗号化することを意味する。管理サーバ4とセキュアエレメント3の間のセキュアチャネルを確立するプロトコルとしては、Global Platformで定義されているSCP80およびSCP81を利用できる。
【0044】
本実施形態において、暗号化手段30は、暗号ライブラリ320の戻り値である暗号化データを少なくとも含む暗号化コマンド301のレスポンスデータをセキュアチャネル確立手段31に引き渡し、セキュアチャネル確立手段31は、レスポンスデータをセッション鍵310で暗号化する。暗号化手段30は、セッション鍵310で暗号化したレスポンスデータを含むレスポンスメッセージを計量部20へ返信する。計量部20は、セキュアエレメント3から受信したレスポンスメッセージに含まれるレスポンスデータを管理サーバ4へ送信する。
【0045】
スマートメーター2の場合、暗号化コマンド301のコマンドメッセージに含まれる平文は、計量部20が計量した計量データになる。計量部20が計量した計量データは、暗号化手段30が記憶している暗号鍵300を利用して暗号化された後、セキュアチャネル手段が記憶しているセッション鍵310で暗号化されることになる。また、暗号ライブラリ320にライブラリID321が紐づけられている場合は、ライブラリID321は、セキュアチャネル確立手段31が記憶しているセッション鍵310のみで暗号化されることになる。
【0046】
図6では、管理サーバ4へ計量データを送信する一連の手順を示している。図6の説明は、本発明に係る暗号ライブラリ320の更新方法およびセキュアエレメント3に実装するコンピュータプログラムの説明も兼ねている。
【0047】
図6で図示した手順において、まず、管理サーバ4は、スマートメーター2に実装されたセキュアエレメント3とセキュアチャネルを確立する処理を実行する(ステップS1)。セキュアチャネルを確立する処理の内容は、SCP80やSCP81などのセキュアチャネルプロトコルに依存する。管理サーバ4とセキュアチャネルを確立する際、セキュアエレメント3のセキュアチャネル確立手段31が起動する。
【0048】
スマートメーター2の計量部20は、管理サーバ4に電力使用量に係る計量データを送信するとき、まず、管理サーバ4へ送信する計量データをMCU200の揮発性メモリから取得する(ステップS2)。管理サーバ4に送信する計量データは単位時間あたりの電力使用量を計量したデータになる。次に、スマートメーター2の計量部20は、電力使用量に係る計量データを平文として含ませた暗号化コマンド301のコマンドメッセージをセキュアエレメント3へ送信する(ステップS3)。
【0049】
暗号化コマンド301のコマンドメッセージはオペレーティングシステム32から暗号化手段30に引き渡され、暗号化手段30は、コマンドメッセージに含まれる平文(ここでは、計量データ)と暗号鍵300を暗号ライブラリ320に引き渡して、コマンドメッセージに含まれる平文を暗号化する(ステップS4)。
【0050】
暗号ライブラリ320の処理が終了すると、暗号化手段30は、暗号化コマンド301のレスポンスデータを生成する(ステップS5)。暗号化コマンド301のレスポンスデータには、暗号ライブラリ320の戻り値となる暗号化データと、暗号ライブラリ320にライブラリID321が紐づけられている場合は、このライブラリID321が含まれる。
【0051】
暗号化コマンド301のレスポンスデータを生成すると、セキュアチャネル処理(ステップS6)が実行される。このセキュアチャネル処理(ステップS6)において、暗号化手段30は、暗号化コマンド301のレスポンスデータをセキュアチャネル確立手段31に引き渡し、セキュアチャネル確立手段31は、管理サーバ4と共有のセッション鍵310を用いてレスポンスデータを暗号化する。セキュアチャネル処理(ステップS6)が終了すると、暗号化手段30は、セキュアチャネル確立手段31が暗号化したレスポンスデータを含む暗号化コマンド301のレスポンスメッセージを計量部20へ返信する(ステップS7)。
【0052】
スマートメーター2の計量部20は、暗号化コマンド301のレスポンスメッセージがセキュアエレメント3から送信されると、通信部21を利用して、計量部20が記憶しているスマートメーターIDと暗号化コマンド301のレスポンスメッセージに含まれるレスポンスデータを管理サーバ4へ送信する(ステップS8)。
【0053】
図示していないが、管理サーバ4は、管理サーバ4とセキュアエレメント3の間のセキュアチャネルで使用するサーバセッション鍵と、セキュアエレメント3に記憶された暗号鍵300と対になる復号鍵を記憶する。管理サーバ4は、レスポンスデータがスマートメーター2から送信されると、まず、セキュアチャネル処理(ステップS9)を実行する。セキュアチャネル処理(ステップS9)において、管理サーバ4は、サーバセッション鍵を用いてスマートメーター2から送信されたレスポンスデータを復号して、セッション鍵310で暗号化されていないレスポンスデータを得る。
【0054】
次に、管理サーバ4は、セキュアエレメント3に記憶された暗号鍵300と対になる復号鍵でレスポンスデータに含まれる暗号化データを復号することで、暗号化データを平文に復号する(ステップS10)。ここでは、暗号化データを復号して得られる平文は電力使用量に係る計量データになる。管理サーバ4は、スマートメーター2から送信されたスマートメーターIDに関連付けて、暗号化データを復号して得られた計量データを記憶する。
【0055】
次に、管理サーバ4は、セッション鍵310で復号したレスポンスデータに含まれるライブラリID321を確認し(ステップS11)、ライブラリID321の確認結果に従い処理を分離する(ステップS12)。
【0056】
レスポンスデータに含まれるライブラリID321に対応した暗号ライブラリ320が非推奨になっている場合、管理サーバ4は、ライブラリID321を送信したスマートメーター2に実装されたセキュアエレメント3の暗号ライブラリ320を更新する処理(ステップS13)を実行して、図4の手順は終了する。一度も更新していない初期状態の暗号ライブラリ320にライブラリID321を紐づけない場合、レスポンスデータにライブラリID321が含まれていない。
【0057】
暗号ライブラリ320を更新する処理(ステップS13)において、管理サーバ4とセキュアエレメント3の間のセキュアチャネルを利用して、セキュアエレメント3の暗号ライブラリ320を更新するためのパッチを送信し、セキュアエレメント3は、暗号ライブラリ320を更新するためのパッチをインストールする。スマートメーター2から送信されたライブラリID321に対応する暗号ライブラリ320が非推奨でない場合、暗号ライブラリ320を更新することなく、図4の手順は終了する。
【0058】
本実施形態の変形例について説明する。本実施形態では、管理サーバ4とセキュアエレメント3の間でセキュアチャネルを確立していたが、管理サーバ4とセキュアエレメント3の間でセキュアチャネルを確立することは必須ではない。管理サーバ4とセキュアエレメント3の間でセキュアチャネルを確立しない場合、計量部20が管理サーバ4へ送信するレスポンスデータはセッション鍵310で暗号化されない。
【0059】
また、暗号化手段30が記憶している暗号鍵300に、暗号鍵300の識別に用いる鍵IDを紐づけしておき、暗号化コマンド301のレスポンスデータに、暗号化手段30が記憶している暗号鍵300に紐付けされた鍵IDを含ませるように構成できる。レスポンスデータに鍵IDを含ませておけば、管理サーバ4は、平文の暗号化に用いられた暗号鍵300をこの鍵IDから特定できる。更に、暗号化コマンド301のレスポンスデータに署名データを付け、レスポンスデータの署名データを管理サーバ4に検証させるようにも構成できる。
【符号の説明】
【0060】
1 スマートメーターシステム
2 スマートメーター
20 計量部
21 通信部
22 端子部
3 セキュアエレメント
30 暗号化手段
300 暗号鍵
301 暗号化コマンド
31 セキュアチャネル確立手段
310 セッション鍵
320 暗号ライブラリ
321 ライブラリID
4 管理サーバ
図1
図2
図3
図4
図5
図6