JP2013149487A - パック電池 - Google Patents
パック電池 Download PDFInfo
- Publication number
- JP2013149487A JP2013149487A JP2012009238A JP2012009238A JP2013149487A JP 2013149487 A JP2013149487 A JP 2013149487A JP 2012009238 A JP2012009238 A JP 2012009238A JP 2012009238 A JP2012009238 A JP 2012009238A JP 2013149487 A JP2013149487 A JP 2013149487A
- Authority
- JP
- Japan
- Prior art keywords
- authentication
- battery pack
- challenge
- unit
- response
- 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.)
- Pending
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02E—REDUCTION OF GREENHOUSE GAS [GHG] EMISSIONS, RELATED TO ENERGY GENERATION, TRANSMISSION OR DISTRIBUTION
- Y02E60/00—Enabling technologies; Technologies with a potential or indirect contribution to GHG emissions mitigation
- Y02E60/10—Energy storage using batteries
Landscapes
- Secondary Cells (AREA)
- Charge And Discharge Circuits For Batteries Or The Like (AREA)
Abstract
【課題】相異なる暗号方式に適宜対応することにより、暗号方式が異なる電気機器との間で認証を行うことが可能なパック電池を提供する。
【解決手段】制御部5のCPU51が外部の電気機器20の制御・電源部21から受信したチャレンジコマンドに含まれるチャレンジのデータ長が20バイトではない場合、ROM52に記憶したプログラムに含まれるSHA−1のライブラリを用いて実行する認証とは異なる認証を認証ICに実行させるべきであると判定し、受信したチャレンジコマンドに含まれるチャレンジをそのまま中継して認証IC6に与える。認証IC6が生成したレスポンスは、CPU51が中継して制御・電源部21に返送する。
【選択図】図1
【解決手段】制御部5のCPU51が外部の電気機器20の制御・電源部21から受信したチャレンジコマンドに含まれるチャレンジのデータ長が20バイトではない場合、ROM52に記憶したプログラムに含まれるSHA−1のライブラリを用いて実行する認証とは異なる認証を認証ICに実行させるべきであると判定し、受信したチャレンジコマンドに含まれるチャレンジをそのまま中継して認証IC6に与える。認証IC6が生成したレスポンスは、CPU51が中継して制御・電源部21に返送する。
【選択図】図1
Description
本発明は、電気機器に装着された際に、正規品であるか否かが認証によって確認されるパック電池に関する。
近年、ポータブルな電気機器にパック電池を装着して動作させる機会が多くなっており、パック電池を構成する二次電池には、エネルギー密度が大きいリチウムイオン電池が多用される傾向にある。リチウムイオン電池は、他の二次電池と比較して高価であるがゆえに、模倣品及び模造品を含めた安価な非正規品(メーカ純正品ではない製品)が早晩市場に流通することが想定され、非正規品のパック電池が安易に使用されることがあり得る。また、正規品と誤認されて非正規品が使用されることも考えられる。
二次電池の中でも特にリチウムイオン電池は、過充電、過放電等のいわゆる定格を超えた状態での使用に対する耐性が低いため、パック電池内には過充電防止回路、過放電防止回路等の保護回路が備わっている。このような保護回路で保護されるパック電池を用いることによって、パック電池のみならず、該パック電池が装着される電気機器の安全性が確保される。
一方、非正規品のパック電池では、上述した保護回路が貧弱であるか又は保護回路そのものが備わっていないことが多々あり、過充電、過放電等の異常が発生した場合にパック電池が破損又は焼損する虞があるばかりか、非正規品のパック電池が装着された電気機器の安全性が脅かされる。
そこで、パック電池が正規品であるか否かを判定するために、パック電池及び該パック電池が装着される電気機器間で、入出力の関係が推測され難い信号を授受することにより、パック電池の真贋判定を行う技術が開示されている(特許文献1参照)。また、単なる真贋判定にとどまることなく、例えば電池パック(パック電池)に認証ICを含む認証部を備え、該認証部が外部の電子機器(電気機器)との間で認証を試行することによって、電池パックが純正品であることを検証する技術が開示されている(特許文献2参照)。
認証ICで用いられる暗号方式としては、SHA−1等のハッシュ関数によって認証用データを暗号化するものがある(特許文献3参照)。例えば、MAXIM社の認証IC(DS2703)によって、電気機器との間で認証セキュリティを実現することができる。また、ルネサス社のSH7710グループのように、マイコン自体にSHA−1による暗号化機能が含まれているものがある。
ところで、近年、SHA−1の脆弱性が指摘されている。このため、認証ICでは、暗号の強度がより高い楕円曲線暗号(ECC=Elliptic Curve Cryptography )等の公開鍵暗号方式が用いられることが多くなっている。
しかしながら、従来、電気機器及びパック電池間の認証に用いられる暗号方式は1つの方式に固定されているため、相異なる暗号方式を用いる電気機器に対して、1つのパック電池で随時対応して認証セキュリティを実現することはできなかった。
本発明は斯かる事情に鑑みてなされたものであり、その目的とするところは、相異なる暗号方式に適宜対応することにより、暗号方式が異なる電気機器との間で認証を行うことが可能なパック電池を提供することにある。
本発明に係るパック電池は、二次電池と、外部の電気機器との通信を制御する通信制御部とを備え、該通信制御部及び前記電気機器間で認証を行うパック電池において、前記電気機器との間で前記認証とは異なる認証を行う認証部を備え、前記通信制御部は、認証に係る信号を受信した場合、受信した信号を前記認証部に与えるべきか否かを判定する判定手段と、該判定手段が与えるべきであると判定した場合、前記認証部に受信した信号の一部又は全部を与える手段とを有することを特徴とする。
本発明に係るパック電池は、前記通信制御部は、前記電気機器をマスタとする通信手順に従うようにしてあることを特徴とする。
本発明に係るパック電池は、前記認証は、チャレンジ及びレスポンスを用いる認証であることを特徴とする。
本発明に係るパック電池は、前記通信制御部は、受信した信号がチャレンジの受信指示であるか否かを判定する手段と、該手段がチャレンジの受信指示であると判定した場合、チャレンジのデータ長が所定長であるか否かを判定する第2の判定手段とを有し、前記判定手段は、前記第2の判定手段が所定長ではないと判定した場合、前記認証部に与えるべきであると判定するようにしてあることを特徴とする。
本発明に係るパック電池は、前記通信制御部は、受信した信号に含まれるチャレンジに基づいてSHA−1(Secure Hash Algorithm 1)によるハッシュアルゴリズムを用いたHMAC(Keyed-Hashing for Message Authentication Code )を生成してレスポンスとするようにしてあることを特徴とする。
本発明に係るパック電池は、前記認証部は、与えられた信号の一部又は全部に含まれるチャレンジを楕円曲線暗号(Elliptic Curve Cryptography )の秘密鍵で暗号化してレスポンスを生成するようにしてあることを特徴とする。
本発明にあっては、通信制御部が、外部の電気機器から認証に係る信号を受信した場合、自身が実行する認証とは異なる認証を、認証部に実行させるべきであると判定したときに、認証部に対して受信した信号の一部又は全部を与える。
これにより、通信制御部では対応できない認証方式について、認証部に認証を実行させることができる。
これにより、通信制御部では対応できない認証方式について、認証部に認証を実行させることができる。
本発明にあっては、通信制御部が外部の電気機器をマスタとする通信手順に従うため、パック電池では一般的な通信手順に対して容易に適用することができる。また、認証部に認証を実行させた場合であっても、認証部による認証の応答タイミングに左右されずに、電気機器の要求に応じて認証の応答を返送することができる。
本発明にあっては、チャレンジ及びレスポンスを用いて認証を実行するため、パック電池では一般的な認証手順に対して容易に適用することができる。
本発明にあっては、通信制御部が受信した信号がチャレンジの受信指示であり、且つチャレンジのデータ長が所定長ではない場合、受信指示の一部又は全部を認証部に与える。
これにより、所定長のチャレンジのみを処理対象とする通信制御部が、認証処理を認証部に委ねることができる。
これにより、所定長のチャレンジのみを処理対象とする通信制御部が、認証処理を認証部に委ねることができる。
本発明にあっては、受信したチャレンジにSHA−1のハッシュ関数を適用して生成したHMACをレスポンスとするため、パック電池における旧来の認証方式に対応することができる。
本発明にあっては、制御部から認証部に与えられた信号の一部又は全部に含まれるチャレンジを、認証部が楕円曲線暗号の秘密鍵で暗号化してレスポンスを生成するため、SHA−1のハッシュ関数を用いた場合よりも認証が強化される。
本発明によれば、通信制御部では対応できない認証方式について、認証部に認証を実行させる。
従って、相異なる暗号方式に適宜対応することにより、暗号方式が異なる2つの電気機器との間で認証を行うことが可能となる。
従って、相異なる暗号方式に適宜対応することにより、暗号方式が異なる2つの電気機器との間で認証を行うことが可能となる。
以下、本発明をその実施の形態を示す図面に基づいて詳述する。
図1は、本発明の実施の形態に係るパック電池の構成例を示すブロック図である。図中10はパック電池であり、パック電池10は、パーソナルコンピュータ(PC)、携帯端末等の電気機器20に着脱可能に装着される。パック電池10は、例えばリチウムイオン電池からなる電池セル111,112,113,121,122,123,131,132,133を3個ずつ順に並列接続してなる電池ブロック11,12,13を、この順番に直列接続してなる二次電池1を備える。二次電池1は、電池ブロック13の正極及び電池ブロック11の負極が夫々正極端子及び負極端子となるようにしてある。
図1は、本発明の実施の形態に係るパック電池の構成例を示すブロック図である。図中10はパック電池であり、パック電池10は、パーソナルコンピュータ(PC)、携帯端末等の電気機器20に着脱可能に装着される。パック電池10は、例えばリチウムイオン電池からなる電池セル111,112,113,121,122,123,131,132,133を3個ずつ順に並列接続してなる電池ブロック11,12,13を、この順番に直列接続してなる二次電池1を備える。二次電池1は、電池ブロック13の正極及び電池ブロック11の負極が夫々正極端子及び負極端子となるようにしてある。
電池ブロック11,12,13の電圧は、夫々独立してA/D変換部4のアナログ入力端子に与えられ、デジタルの電圧値に変換されてA/D変換部4のデジタル出力端子から、マイクロコンピュータからなる制御部(通信制御部)5に与えられる。A/D変換部4のアナログ入力端子には、二次電池1に密接して配置されており、サーミスタを含む回路によって二次電池1の電池温度を検出する温度検出器3の検出出力と、二次電池1の負極端子側の充放電路に介装されており、二次電池1の充電電流及び放電電流を検出する抵抗器からなる電流検出器2の検出出力とが与えられている。これらの検出出力は、デジタルの検出値に変換されてA/D変換部4のデジタル出力端子から制御部5に与えられる。
二次電池1の正極端子側の充放電路には、充電電流及び放電電流を夫々遮断するPチャネル型のMOSFET71,72からなる遮断器7が介装されている。MOSFET71,72は、ドレイン電極同士を突き合わせて直列に接続してある。MOSFET71,72夫々のドレイン電極及びソース電極間に並列接続されているダイオードは、寄生ダイオード(ボディダイオード)である。MOSFET71,72は、Nチャネル型であってもよい。
制御部5は、CPU51を有し、CPU51は、プログラム等の情報を記憶するROM52、一時的に発生した情報を記憶するRAM53、各種時間を並列的に計時するタイマ54、及びパック電池10内の各部に対して入出力を行うI/Oポート55と互いにバス接続されている。I/Oポート55は、A/D変換部4のデジタル出力端子、MOSFET71,72夫々のゲート電極、電気機器20が有する制御・電源部21と通信する通信部9、及び電気機器20との間で認証を行う認証IC(認証部)6に接続されている。I/Oポート55及び認証IC6間は、例えば1−WIRE(登録商標)プロトコルによる1線式のシリアル通信線で接続されている。ROM52は、フラッシュメモリからなる不揮発性メモリである。ROM52には、プログラムの他に、例えば満充電容量の学習値、設定電圧、設定電流及び各種設定データが記憶される。
CPU51は、ROM52に予め格納されている制御プログラムに従って、演算及び入出力等の処理を実行する。例えば、CPU51は、250ms周期で電池ブロック11,12,13の電圧値と、二次電池1の充放電電流の検出値とを取り込み、取り込んだ電圧値及び検出値に基づいて二次電池1の残容量を積算してRAM53に記憶させる。また例えば、CPU51は、残容量のデータを生成すると共に、認証に係るデータを生成及び中継し、これらのデータを通信部9から電気機器20に送信する。
遮断器7は、通常の充放電時にI/Oポート55からMOSFET71,72のゲート電極にL(ロウ)レベルのオン信号が与えられることにより、MOSFET71,72夫々のドレイン電極及びソース電極間が導通するようになっている。二次電池1の充電電流を遮断する場合、I/Oポート55からMOSFET71のゲート電極にH(ハイ)レベルのオフ信号が与えられることにより、MOSFET71のドレイン電極及びソース電極間の導通が遮断される。同様に二次電池1の放電電流を遮断する場合、I/Oポート55からMOSFET72のゲート電極にH(ハイ)レベルのオフ信号が与えられることにより、MOSFET72のドレイン電極及びソース電極間の導通が遮断される。MOSFET71,72をNチャネル型とした場合は、上記のL/Hレベルを反転させたH/Lレベルのオン信号/オフ信号をゲート電極に与えればよい。二次電池1が適当に充電された状態にある場合、遮断器7のMOSFET71,72は共にオンしており、二次電池1は放電及び充電が可能な状態となっている。
電気機器20は、制御・電源部21に接続された端末部22を備える。制御・電源部21は、図示しない商用電源より電力を供給されて端末部22を駆動すると共に、二次電池1の充放電路に充電電流を供給する。制御・電源部21は、また、商用電源から電力の供給が絶たれた場合、二次電池1の充放電路から供給される放電電流により、端末部22を駆動する。制御・電源部21が充電する二次電池1がリチウムイオン電池の場合は、例えば、定電流(MAX電流0.5〜1C程度)・定電圧(MAX4.2〜4.4V/電池セル程度)にて充電が行われ、二次電池1の電池電圧が満充電検出開始電圧以上、且つ充電電流が所定値以下の状態が一定時間以上継続したときに、二次電池1が満充電状態にあると判定する。
制御・電源部21及び通信部9間では、制御・電源部21をマスタに、通信部9を含む制御部5をスレーブにしてSMBus(System Management Bus )方式等の通信方式による通信が行われる。SMBus方式の場合、シリアルクロック(SCL)は制御・電源部21から供給され、シリアルデータ(SDA)は制御・電源部21及び通信部9間で双方向に授受される。本実施の形態では、制御・電源部21が通信部9を2秒周期でポーリングして通信部9が送信しようとするデータの内容を読み出す。ポーリング周期の2秒は、制御・電源部21側の設定による。
このポーリングにより、例えば、二次電池1の残容量のデータが、通信部9から制御・電源部21に2秒周期で受け渡され、電気機器20が有する図示しない表示器に残容量の値(%)として表示される。また、制御部5にて生成及び中継された認証に係るデータは、残容量のデータと同様に通信部9を介して制御・電源部21に送信される。制御・電源部21は、制御部5から送信された認証に係るデータに基づいて、パック電池10を認証する。
次に、本実施の形態で用いるSMBusのデータ送受信コマンドについて説明する。
図2は、SMBusにおけるブロックライトコマンドの構成を例示する説明図であり、図3は、SMBusにおけるブロックリードコマンドの構成を例示する説明図である。図2,3において太枠で囲まれた構成部分は、スレーブ側から送信される部分であることを示す。また、枠外に表示された数字は、枠内の構成部分のビット長を表す。「S」及び「P」の夫々は、コマンドの開始(Start Condition )及び終了(Stop Condition )を表すビットである。また、「Wr」及び「Rd」の夫々は、後続するコマンドとデータとが、スレーブに対して書き込み及び読み出しされるものであることを表すビットである。
図2は、SMBusにおけるブロックライトコマンドの構成を例示する説明図であり、図3は、SMBusにおけるブロックリードコマンドの構成を例示する説明図である。図2,3において太枠で囲まれた構成部分は、スレーブ側から送信される部分であることを示す。また、枠外に表示された数字は、枠内の構成部分のビット長を表す。「S」及び「P」の夫々は、コマンドの開始(Start Condition )及び終了(Stop Condition )を表すビットである。また、「Wr」及び「Rd」の夫々は、後続するコマンドとデータとが、スレーブに対して書き込み及び読み出しされるものであることを表すビットである。
図2のブロックライトコマンドでは、「スレーブアドレス」で指定されたパック電池10に対して「コマンドコード」でブロックライトが指示された後、「データバイト数(N)」で示されるNバイトのデータが順次送信される。この間、スレーブのパック電池10は、マスタの制御・電源部21から、スレーブアドレス、Wrビット、コマンドコード、データバイト数及びデータバイトからなる8ビットのデータを受信する都度、「A」(Acknowledge )で表される応答ビットを返送する。
一方、図3のブロックリードコマンドでは、「スレーブアドレス」で指定されたパック電池10に対して「コマンドコード」でブロックリードが指示された後、再度「スレーブアドレス」で指定されたパック電池10に対して「Rd」ビットでデータの読み出しが指示される。この間、スレーブのパック電池10は、マスタの制御・電源部21から、スレーブアドレス、Wrビット、コマンドコード及びRdビットからなる8ビットのデータを受信する都度、「A」(Acknowledge )で表される応答ビットを返送する。その後、スレーブのパック電池10が「データバイト数(N)」で示されるNバイトのデータバイトを8ビットずつ送信する都度、これらのデータを受信したマスタの制御・電源部21から「A」で表される応答ビットが返送される。但し、Nバイトの最終データバイトに対しては、「notA」(「A」の応答ビットを反転したもの)が返送される。
次に、上述したブロックライトコマンド及びブロックリードコマンドで送受信される信号に基づいて行われる認証について説明する。パック電池10の認証は、いわゆるチャレンジ・レスポンス方式に従い、制御・電源部21が主体となって試行される。SHA−1をハッシュ関数に用いた認証が行われる場合、CPU51が、制御・電源部21から通信部9を介して受信したチャレンジに基づいてレスポンスを生成し、生成したレスポンスを制御・電源部21に対して返信する。これに対して楕円曲線暗号による暗号方式を用いた認証が行われる場合、認証IC6が、制御部5のI/Oポート55と通信部9とを介して、電気機器20の制御・電源部21との間で認証のための通信を行う。この場合、CPU51は、認証IC6及び制御・電源部21間でチャレンジ及びレスポンスを中継する。CPU51が実行する認証は、SHA−1によるものに限定されない。また、認証IC6が実行する認証は、楕円曲線暗号によるものに限定されない。
SHA−1をハッシュ関数に用いる認証では、制御・電源部21及び制御部5が16バイトの秘密鍵を共有しており、制御・電源部21がチャレンジとして生成した20バイトの乱数が、SMBusのブロックライトコマンドに付随するバイトデータ1〜20としてパック電池10の制御部5に送信される。制御部5のCPU51は、受信したチャレンジに対し、以下の式(1)で示される演算を行って生成したHMACをレスポンスとして制御・電源部21に返送する。但し、レスポンスの生成式は、式(1)に示されるものに限定しない。
HMAC(M)=H[Kd||H(Kd||M)]・・・・・・・・・(1)
ここで、H(||)はSHA−1のハッシュ関数であり、記号「||」は連結を表す。また、Kdは16バイトの秘密鍵であり、Mは20バイトのチャレンジである。
ここで、H(||)はSHA−1のハッシュ関数であり、記号「||」は連結を表す。また、Kdは16バイトの秘密鍵であり、Mは20バイトのチャレンジである。
式(1)による演算では、先ず、KdにMが付加されて連結され、連結されたビット列(ここでは36バイト=288ビット)に対してハッシュ関数H(||)が適用される。演算結果のブロック長は20バイトである。更に、前記演算結果がKdに連結され、連結されたた36バイトのビット列に対して再びハッシュ関数H(||)が適用されて20バイトのレスポンスが生成される。生成されたレスポンスは、SMBusのブロックリードコマンドに付随するデータバイト1〜20として制御・電源部21に送信される。制御・電源部21は、パック電池10から送信されたレスポンスと、別途生成したレスポンスとを照合し、一致した場合にパック電池10を認証する。
一方、楕円曲線暗号による暗号方式を用いた認証では、制御・電源部21が17バイトの乱数をチャレンジとして生成し、生成されたチャレンジがSMBusのブロックライトコマンドに付随するデータバイト1〜17としてパック電池10の制御部5に送信される。制御部5のCPU51は、受信したブロックライトコマンドの一部(データバイト1〜17)をチャレンジとして認証IC6に与える。認証IC6は、与えられたチャレンジを楕円曲線暗号の秘密鍵で暗号化して25バイトのレスポンスを生成する。本実施の形態では、認証IC6がレスポンスを生成するのに要する時間が約50msである。生成されたレスポンスは制御部5にて中継され、SMBusのブロックリードコマンドに付随するデータバイト1〜25として制御・電源部21に送信される。制御・電源部21は、パック電池10から送信されたレスポンスと、別途生成したレスポンスとを照合し、一致した場合にパック電池10を認証する。
次に、制御部5のCPU51が、制御・電源部21から受信したデータの内容によって、認証方式が楕円曲線暗号によるものか、又はSHA−1によるものかを識別する方法について説明する。上述したように、チャレンジの長さは、暗号方式によって17バイト及び20バイトの何れになるかが異なる。従って、SMBusの特定のブロックライトコマンドをチャレンジコマンドとして受信したCPU51は、受信したコマンド(信号)に含まれるデータバイト数で示される数値が20であるか否か(又は17であるか否か)を判定することによって、暗号方式を識別することができる。
以下では、上述したパック電池の制御部5の動作を、それを示すフローチャートを用いて説明する。以下に示す処理は、パック電池10側では、ROM52に予め格納された制御プログラムに従ってCPU51により実行され、制御・電源部21側では、図示しないCPU(以下、単にCPUという)によって実行される。
図4は、制御・電源部21との間で認証を行うパック電池10のCPU51の処理手順を示すフローチャートである。パック電池10側では、マスタからのコマンドが随時受け付けられるように、図4の処理が適宜起動される。制御・電源部21側では、SMBusのポーリングに対する応答によってパック電池10の装着が検知されたときに、図4の処理が起動される。
図4は、制御・電源部21との間で認証を行うパック電池10のCPU51の処理手順を示すフローチャートである。パック電池10側では、マスタからのコマンドが随時受け付けられるように、図4の処理が適宜起動される。制御・電源部21側では、SMBusのポーリングに対する応答によってパック電池10の装着が検知されたときに、図4の処理が起動される。
制御・電源部21側で図4の処理が起動された場合、CPUは、認証に用いられる暗号方式がSHA−1のハッシュ関数又は楕円曲線暗号の何れによるものであるかによって、20バイト又は17バイトの乱数をチャレンジとして生成する(S31)。通常、制御・電源部21は、何れか一方の暗号方式にのみ対応するものとして構成されている。その後、CPUは、生成したチャレンジを含むチャレンジコマンドを、SBMusのブロックライトコマンドの1つとしてパック電池10に送信する(S32)。この場合、図2に示すコマンドの構成では、コマンドコードが0x27であり、データバイト数が20(又は17)であって、後続するデータバイト1,2・・・,20(又は17)にチャレンジが含まれている。
次いで、制御・電源部21のCPUは、後述するパック電池10側の処理と同様の処理によってレスポンスを生成する(S33)。生成されたレスポンスは一旦制御・電源部21のメモリに記憶される。その後、CPUは、パック電池10からレスポンスを受信するために、レスポンスコマンドを、SBMusのブロックリードコマンドの1つとしてパック電池10に送信する(S34)。
一方のパック電池10では、CPU51が、制御・電源部21からのコマンドを受信したか否かを判定して(S11)受信するまで待機しており(S11:NO)、コマンドを受信した場合(S11:YES)、受信したコマンドのコマンドコードが、チャレンジコマンド(0x27)を示しているか否かを判定する(S12)。チャレンジコマンドを示していない場合(S12:NO)、CPU51は、受信したコマンドのコマンドコードが、レスポンスコマンド(0x28)を示しているか否かを判定し(S13)、レスポンスコマンドを示すものでもない場合(S13:NO)、コマンドの受信を待ち続けるためにステップS11に処理を移す。
ステップS12で、コマンドコードがチャレンジコマンドを示している場合(S12:YES)、CPU51は、受信したコマンドに含まれるデータバイト数が示す数値が20であるか否かを判定し(S14)、20の場合(S14:YES)、SHA−1による暗号方式が認証に用いられることを記憶するために、SHA1フラグを1にセットする(S15)。その後、CPU51は、受信したチャレンジに基づいてレスポンスを生成し(S16)、再び制御・電源部21からのコマンドを待ち受けるために、ステップS11に処理を移す。ここでのレスポンスは、ROM52に記憶されたプログラムに含まれるライブラリを用いて生成され、生成されたレスポンスは一旦RAM53に記憶される。
さて、ステップS14でデータバイト数が示す数値が20ではない場合(S14:NO)、即ち、本実施の形態では上記数値が17を示す場合、CPU51は、受信したコマンドに含まれるデータバイト1,2・・・,17からなるチャレンジを、認証IC6に向けて送出する(S17)。その後、CPU51は、認証IC6からレスポンスを受信したか否かを判定して(S18)、受信するまで待機しており(S18:NO)、レスポンスを受信した場合(S18:YES)、再び制御・電源部21からのコマンドを待ち受けるために、ステップS11に処理を移す。ここでも、受信したレスポンスは一旦RAM53に記憶される。
ステップS13で、受信したコマンドのコマンドコードがレスポンスコマンドを示している場合(S13:YES)、CPU51は、チャレンジコマンドによって指定された暗号方式を確認するために、SHA1フラグが1にセットされているか否かを判定する(S21)。1にセットされている場合(S21:YES)、即ちSHA−1による暗号方式が指定されている場合、CPU51は、次の認証フェーズでのコマンドの受信に備えるために、SHA1フラグを0にクリアした(S22)後、ステップS16でチャレンジに基づいて生成されたレスポンスをRAM53から読み出して制御・電源部21に送信する(S23)。
次に、ステップS21でSHA1フラグが1にセットされていない場合(S21:NO)、CPU51は、ステップS18(:YES)で受信してRAM53に記憶した認証IC6からのレスポンスを読み出し(S24)、読み出したレスポンスが認証エラーを示すものであるか否かを判定する(S25)。認証エラーを示すものではない場合(S25:NO)、CPU51は、読み出した25バイトのレスポンス(1)を、レスポンスコマンドに対するレスポンスとして制御・電源部21に送信した(S26)後、図4の処理を終了する。また、認証エラーを示すものである場合(S25:YES)、CPU51は、認証エラーを示す4バイトのレスポンス(2)を、レスポンスコマンドに対するレスポンスとして制御・電源部21に送信した(S27)後、図4の処理を終了する。
他方の制御・電源部21では、CPUが、パック電池10からレスポンスを受信したか否かを判定して(S35)、受信するまで待機しており(S35:NO)、レスポンスを受信した場合(S35:YES)、受信したレスポンスと、メモリに記憶したレスポンスとを照合して一致するか否かを判定し(S36)、一致しない場合(S36:NO)、そのまま図4の処理を終了する。レスポンスを照合して一致した場合(S36:YES)、CPUは、認証に成功した旨をメモリに設定して(S37)、図4の処理を終了する。
以上のフローチャートにおいて、ステップS14が請求項に記載の「判定手段(第2の判定手段を含む)」に対応し、ステップS17が請求項に記載の「受信した信号の一部又は全部を与える手段」に対応し、ステップS12が請求項に記載の「チャレンジの受信指示であるか否かを判定する手段」に対応する。
以上のように本実施の形態によれば、制御部が、外部の電気機器の制御・電源部から認証に係る信号(チャレンジ)を受信した場合、ライブラリを用いて実行する認証とは異なる認証を認証ICに実行させるべきであると判定したときに、認証ICに対して受信した信号の一部(データバイト1〜N)を与える。
これにより、制御部では対応できない認証方式について、認証ICに認証を実行させる。
従って、相異なる暗号方式に適宜対応することにより、暗号方式が異なる電気機器との間で認証を行うことが可能となる。
これにより、制御部では対応できない認証方式について、認証ICに認証を実行させる。
従って、相異なる暗号方式に適宜対応することにより、暗号方式が異なる電気機器との間で認証を行うことが可能となる。
また、制御部が外部の電気機器の制御・電源部をマスタとする通信手順に従うため、パック電池では一般的なSMBus等の通信手順に対して本発明を容易に適用することが可能となる。また、認証ICに認証を実行させた場合であっても、認証ICによる認証の応答タイミングに左右されずに、制御・電源部の要求(ポーリング)に応じて認証の応答を返送することが可能となる。
更に、パック電池では一般的な認証手順であるチャレンジ及びレスポンスを用いて認証を実行するため、本発明を容易に適用することが可能となる。
更にまた、制御部が受信した信号がチャレンジの受信指示であり、且つチャレンジのデータ長が20バイトではない場合、受信指示の一部(データバイト1〜N)を認証ICに与える。
これにより、20バイトのチャレンジのみを処理対象とする制御部が、認証処理を認証ICに委ねることが可能となる。
これにより、20バイトのチャレンジのみを処理対象とする制御部が、認証処理を認証ICに委ねることが可能となる。
更にまた、受信したチャレンジを秘密鍵に連結したビット列にSHA−1のハッシュ関数を2回適用して生成したHMACをレスポンスとするため、パック電池における旧来の認証方式に対応することが可能となる。
更にまた、制御部から認証ICに与えられた17バイトのチャレンジを、認証部が楕円曲線暗号の秘密鍵で暗号化して25バイトのレスポンスを生成するため、SHA−1のハッシュ関数を用いた場合よりも認証を強化することが可能となる。
今回開示された実施の形態は、全ての点で例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上述した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内での全ての変更が含まれることが意図される。
1 二次電池
10 パック電池
2 電流検出器
4 A/D変換部
5 制御部
51 CPU
52 ROM
53 RAM
54 タイマ
55 I/Oポート
6 認証IC
9 通信部
20 電気機器
21 制御・電源部
10 パック電池
2 電流検出器
4 A/D変換部
5 制御部
51 CPU
52 ROM
53 RAM
54 タイマ
55 I/Oポート
6 認証IC
9 通信部
20 電気機器
21 制御・電源部
Claims (6)
- 二次電池と、外部の電気機器との通信を制御する通信制御部とを備え、該通信制御部及び前記電気機器間で認証を行うパック電池において、
前記電気機器との間で前記認証とは異なる認証を行う認証部を備え、
前記通信制御部は、
認証に係る信号を受信した場合、受信した信号を前記認証部に与えるべきか否かを判定する判定手段と、
該判定手段が与えるべきであると判定した場合、前記認証部に受信した信号の一部又は全部を与える手段と
を有することを特徴とするパック電池。 - 前記通信制御部は、前記電気機器をマスタとする通信手順に従うようにしてあることを特徴とする請求項1に記載のパック電池。
- 前記認証は、チャレンジ及びレスポンスを用いる認証であることを特徴とする請求項2に記載のパック電池。
- 前記通信制御部は、
受信した信号がチャレンジの受信指示であるか否かを判定する手段と、
該手段がチャレンジの受信指示であると判定した場合、チャレンジのデータ長が所定長であるか否かを判定する第2の判定手段とを有し、
前記判定手段は、前記第2の判定手段が所定長ではないと判定した場合、前記認証部に与えるべきであると判定するようにしてあること
を特徴とする請求項3に記載のパック電池。 - 前記通信制御部は、受信した信号に含まれるチャレンジに基づいてSHA−1(Secure Hash Algorithm 1)によるハッシュアルゴリズムを用いたHMAC(Keyed-Hashing for Message Authentication Code )を生成してレスポンスとするようにしてあることを特徴とする請求項3又は4に記載のパック電池。
- 前記認証部は、与えられた信号の一部又は全部に含まれるチャレンジを楕円曲線暗号(Elliptic Curve Cryptography )の秘密鍵で暗号化してレスポンスを生成するようにしてあることを特徴とする請求項3から5の何れか1項に記載のパック電池。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012009238A JP2013149487A (ja) | 2012-01-19 | 2012-01-19 | パック電池 |
CN2013100154984A CN103219553A (zh) | 2012-01-19 | 2013-01-16 | 组电池 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012009238A JP2013149487A (ja) | 2012-01-19 | 2012-01-19 | パック電池 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2013149487A true JP2013149487A (ja) | 2013-08-01 |
Family
ID=48817155
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012009238A Pending JP2013149487A (ja) | 2012-01-19 | 2012-01-19 | パック電池 |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2013149487A (ja) |
CN (1) | CN103219553A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9892783B2 (en) | 2016-05-26 | 2018-02-13 | Panasonic Intellectual Property Management Co., Ltd. | Non-volatile memory device including memory cells having variable resistance values |
JP2019088000A (ja) * | 2017-10-30 | 2019-06-06 | メレクシス・テクノロジーズ・ナムローゼフェンノートシャップ | 動的照明用途のためのバスプロトコル |
-
2012
- 2012-01-19 JP JP2012009238A patent/JP2013149487A/ja active Pending
-
2013
- 2013-01-16 CN CN2013100154984A patent/CN103219553A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9892783B2 (en) | 2016-05-26 | 2018-02-13 | Panasonic Intellectual Property Management Co., Ltd. | Non-volatile memory device including memory cells having variable resistance values |
JP2019088000A (ja) * | 2017-10-30 | 2019-06-06 | メレクシス・テクノロジーズ・ナムローゼフェンノートシャップ | 動的照明用途のためのバスプロトコル |
KR102065277B1 (ko) | 2017-10-30 | 2020-01-10 | 멜렉시스 테크놀로지스 엔브이 | 동적 조명 장치용 버스 프로토콜 |
Also Published As
Publication number | Publication date |
---|---|
CN103219553A (zh) | 2013-07-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7554288B2 (en) | Random number generator in a battery pack | |
JP6449086B2 (ja) | バッテリ制御ic、バッテリパック及びその認証方法 | |
US6975092B2 (en) | Encrypted response smart battery | |
JP2009015744A (ja) | 認証システム、及び認証装置 | |
US20070278992A1 (en) | System and method for authenticating a battery | |
US9653761B2 (en) | Secondary battery pack and authentication method | |
EP3635940B1 (en) | Data communication method for wireless power charging and electronic device using the same | |
EP2073292A2 (en) | Battery pack and electronic apparatus | |
US20150127205A1 (en) | Method for starting a battery management system | |
JP2006164547A (ja) | 電池パック、充電制御方法およびアプリケーション機器 | |
US10473722B2 (en) | Method and apparatuses for authenticating measurement data for a battery | |
US10089499B2 (en) | Method and apparatuses for authenticating measurement data relating to a battery | |
US20160171794A1 (en) | Method and Devices for Providing Information for the Purposes of Maintaining and Servicing a Battery | |
JP2006114423A (ja) | 電池認証システム、電池パック並びにアプリケーション機器 | |
US20140181167A1 (en) | Random number generating device | |
JP2013149487A (ja) | パック電池 | |
JP2009240055A (ja) | 電池制御回路、電池パック、及び電池制御用プログラムのアップデートシステム | |
KR102555489B1 (ko) | 배터리 시스템용 제어 유닛 | |
US9653929B2 (en) | Battery charging apparatus and charging method thereof | |
US20120314796A1 (en) | Method of signal exchange, method of bit-sequence transmission, and battery pack | |
JP2006164548A (ja) | 電池パック、充電制御方法およびアプリケーション機器 | |
JP6612957B2 (ja) | バッテリ制御ic、バッテリパック及びその認証方法 | |
JP5378893B2 (ja) | 電気自動車用充電システム | |
JP2009016131A (ja) | 認証システム、電子機器、バッテリパック及び認証方法 | |
JP4943882B2 (ja) | 認証装置、被認証装置、及び電池認証システム |