"入力データを、記憶装置から読み込んだデータを利用して変換する第1の変換及び第2の変換を経て暗号化するとともに、前記第2の変換は前記第1の変換より多く同一のデータを読み出すデータ変換装置において、前記第1の変換前のデータと第1のマスク値との排他論理和の演算結果を前記第1の変換の変換対象とし、前記第1の変換後かつ前記第2の変換前のデータと第2のマスク値との排他論理和の演算結果を前記第2の変換の変換対象とし、前記第2のマスク値を前記第1のマスク値より高い頻度で更新するデータ変換装置。請求項1に記載のデータ変換装置において、前記第1の変換であるSubBytesと、前記第2の変換であるShiftRows及びMixColumnsとを順に行うAES暗号方式を採用するデータ変換装置。上記特許文献1においては、AESAdvancedEncryptionStandardと呼ばれる共通暗号方式が採用されている。AES暗号方式では、入力データはS層変換及びP層変換される。S層変換とはSubBytesバイト置換によるデータ変換をいい、P層変換とは、ShiftRows行シフト及びMixColumns列ミックスによるデータ変換をいう。上記特許文献1に記載の構成においては、入力データにマスク値をXOR排他論理和した後に、SSubstitution層変換及びPPermutation層変換を行う。ここで、S層変換は非線形変換であって、P層変換は線形変換である。詳しくは、図6aに示すように、線形変換において、第1の入力はデータAXORマスク値Maであって、第2の入力はデータBXORマスク値Mbであるとする。本例では、第1の出力は、第1及び第2の入力がXORされた値、すなわちデータAXORデータBXORマスク値MaXORマスク値Mbとなる。また、第2の出力は、第2の入力と同一のデータBXORマスク値Mbとなる。よって、第1の出力のマスク値はマスク値MaXORマスク値Mbとなって、第1の出力のマスク値はMbとなる。このように、線形変換前のマスク値Ma,Mbから線形変換後のマスク値を算出することができる。よって、P層変換線形変換におけるマスク値の更新は容易である。一方、図6bに示すように、非線形変換においては、入力データAXORマスク値Maの場合にマスク値Maを更新すると、何らかの出力は得られるものの、その出力のマスク値を算出することができない。よって、マスク値を更新する際には、非線形変換後のマスク値を所望の値例えばマスク値Mbとするべく、非線形変換に係る変換テーブルを生成し直す必要がある。よって、S層変換非線形変換におけるマスク値の更新はP層変換と比較して処理負担が大きい。また、P層変換においては、同一データの参照頻度が高い。具体的には、P層変換においては、ShiftRows行シフト及びMixColumns列ミックスと呼ばれる処理が実行される。図7には、MixColumnsの処理が行列式の乗算として示されている。サブバイトS0~S15は、S層変換におけるSubBytesバイト置換において生成されるものであって、ShiftRows行シフトによって、サブバイトS0~S15の昇降順が並び替えられている。この行列式の乗算においては、各サブバイトS0~S15が4回ずつ読み出される。また、サブバイトS0~S15に乗算される行列には1のみならず、2又は3が設定されている。よって、この行列式を計算するときには、各サブバイトS0~S15を2倍又は3倍する必要があるため、さらにサブバイトS0~S15の読み出し回数が増大する。サブバイトS0~S15の読み出し回数が多いと、消費電流と情報との相関を導出しやすく、上記サイドチャンネル攻撃を通じた不正なデータ取得を防止できないおそれがある。よって、P層変換に係るマスク値の更新は、S層変換に係るマスク値に比べて頻繁に行うことが望ましい。しかし、上記特許文献1に記載の構成においては、P層変換及びS層変換において共通のマスク値が使用されていた。従って、P層変換及びS層変換に係るマスク値の更新は同時に行われていた。例えば、P層変換に合わせた頻度でマスク値を更新すると、S層変換に関してはマスク値の更新が過剰となって、上述のように処理負担が問題となる。逆に、S層変換に合わせた頻度でマスク値を更新すると、P層変換に関してセキュリティ性を十分に確保できないおそれがある。この発明は、こうした実情に鑑みてなされたものであり、その目的は、マスク値の更新回数を減らしつつセキュリティ性を確保したデータ変換装置を提供することにある。以下、上記目的を達成するための手段及びその作用効果について説明する。請求項1に記載の発明は、入力データを、記憶装置から読み込んだデータを利用して変換する第1の変換及び第2の変換を経て暗号化するとともに、前記第2の変換は前記第1の変換より多く同一のデータを読み出すデータ変換装置において、前記第1の変換前のデータと第1のマスク値との排他論理和の演算結果を前記第1の変換の変換対象とし、前記第1の変換後かつ前記第2の変換前のデータと第2のマスク値との排他論理和の演算結果を前記第2の変換の変換対象とし、前記第2のマスク値を前記第1のマスク値より高い頻度で更新することをその要旨としている。同構成によれば、第1のマスク値と、第2のマスク値とを独立して更新することができる。また、第2のマスク値は、第1のマスク値より高い頻度で更新される。第2の変換においては、第1の変換に比して、同一のデータがより多く読み出されるため、セキュリティ性の低下が懸念されるものの、高頻度で第2のマスク値が更新されることでセキュリティ性が確保される。また、第2のマスク値のみを更新可能とすることで、第1のマスク値の更新回数を減らすことができる。請求項2に記載の発明は、請求項1に記載のデータ変換装置において、前記第1の変換であるSubBytesと、前記第2の変換であるShiftRows及びMixColumnsとを順に行うAES暗号方式を採用することをその要旨としている。同構成によれば、暗号方式として、AES暗号方式AdvancedEncryptionStandardが採用されている。この方式においても、マスク値の更新回数を減らしつつ通信のセキュリティ性を確保することができる。本発明によれば、データ変換装置において、マスク値の更新回数を減らしつつセキュリティ性を確保することができる。以下、本発明を車両の電子キーシステムに具体化した一実施形態を図1~図5を参照しつつ説明する。この電子キーシステムは、ユーザにより所持される電子キーと車両との間の無線通信を通じてドアの施解錠及びエンジンの始動を行うものである。<電子キーシステムの概要>まず、電子キーシステムの概要を説明する。図1に示すように、電子キーシステム11は、ユーザに所持される電子キー12と、車両10に搭載される車載機13とを備えてなる。電子キー12の制御回路21には、LF帯の無線信号を受信するLF受信回路22と、当該制御回路21からの指令に従いUHF帯の無線信号を送信するUHF送信回路23とが接続されている。LF受信回路22は、受信したLF信号を復調するとともに、その復調後の信号を受信データとして制御回路21に出力する。また、UHF送信回路23は、制御回路21からの指令に従い、電子キーに固有の識別コードを乗せたUHF帯の応答信号Srepを送信する。車載機13は、電子キー12との間の相互無線通信を通じて当該電子キー12の妥当性を判断する照合制御装置31を備えてなる。この照合制御装置31には、車室外へLF帯の無線信号を送信する車室外LF送信機32と、車室内へLF帯の無線信号を送信する車室内LF送信機33と、UHF帯の無線信号を受信するUHF受信機34とが接続されている。また、照合制御装置31には、ドア錠を施解錠するべくドアロックモータMを駆動制御するドア制御装置35と、ユーザによるプッシュスイッチSWの操作に応じて車両10の電源位置を切換制御する電源制御装置36と、エンジンEの駆動制御を行うエンジン制御装置37とが、バス多重通信線Bを介して接続されている。照合制御装置31は、エンジンEが停止状態且つドアが施錠状態である車両10の駐車状態において、電子キー12に応答を要求する車室外照合用のLF帯の応答要求信号Sreqを所定の制御周期で車室外LF送信機32を通じて車室外に送信する。これにより、車両10のドアの周辺には、電子キー12の図示しない検知領域が形成される。そして、ユーザが電子キー12を所持して車両10に接近して前記検知領域内に入ると、電子キー12の制御回路21は、応答要求信号Sreqを受けて自身の記憶装置21aに記憶された識別コードを含む応答信号Srepを、UHF送信回路23を通じて送信する。照合制御装置31は、UHF受信機34を通じて電子キー12からの応答信号Srepを受信すると、当該応答信号Srepに含まれる電子キー12に固有の識別コードと、自身の記憶装置31aに記憶された識別コードとを比較する車室外照合を行う。そして、照合制御装置31は、この車室外照合が成立した場合には、図示しないドアハンドルノブに内蔵されたタッチセンサを起動し、当該センサを通じてユーザによるドアハンドルノブのタッチ操作を検出すると、ドア制御装置35にドアアンロック要求信号を出力する。ドア制御装置35は、照合制御装置31からのドアアンロック要求信号を受けて、ドアロックモータMを駆動して車両10のドアを解錠する。この後、電子キー12を所持するユーザが車両10に乗り込んだとき、ドア制御装置35は図示しないカーテシスイッチを通じてこれを検出して当該検出信号を照合制御装置31へ出力する。照合制御装置31は、ドア制御装置35からユーザが乗車した旨を示す検出信号が入力されると、車室内LF送信機33を通じて車室内照合用の応答要求信号Sreqを送信する。これにより、車室内に電子キー12の検知領域が形成される。電子キー12の制御回路21は、前記検知領域内に入って、LF受信回路22を通じて車室内照合用の応答要求信号Sreqを受信すると、UHF送信回路23を通じて識別コードを含む応答信号Srepを送信する。照合制御装置31は、UHF受信機34を通じて電子キー12からの応答信号Srepを受信すると、当該応答信号Srepに含まれる電子キー12に固有の識別コードと、自身の記憶装置31aに記憶された識別コードとを比較する車室内照合を行う。そして、照合制御装置31は、この車室外照合の照合結果を記憶装置31aに記憶し、当該照合結果を各種の車載システムの実行機能に応じてこれらシステムの制御装置、例えば電源制御装置36及びエンジン制御装置37へ送信する。電源制御装置36は、シフトレバーが駐車位置に保持されるとともに、図示しないブレーキペダルが踏み込まれた状態で、プッシュスイッチSWがオン操作された旨検出すると、照合制御装置31に対して車室内照合の照合結果を確認する。電源制御装置36は、照合制御装置31を通じて取得した車室内照合の照合結果が照合成立を示すものであった場合には、図示しないアクセサリリレー及びイグニッションリレーをオン動作させて、車両10の各部に動作電力を供給する。そして、電源制御装置36は、エンジンEの始動を要求する始動要求信号を、バスBを通じてエンジン制御装置37へ出力する。エンジン制御装置37は、電源制御装置36からの始動要求信号を受けると、照合制御装置31に対して車室内照合の照合結果を確認するとともに、互いが対を成す制御装置同士であるか否かの確認ペアリングを行う。エンジン制御装置37は、車室内照合及びペアリングの双方が成立している場合にのみ、エンジンEを始動させる。そして、ユーザが降車するべくプッシュスイッチSWの操作を通じてエンジンEを停止した後に、解錠状態のドアを開けて車室外に出て、前記ドアハンドルノブに設けられる図示しないロックスイッチをオン操作した場合には、これが照合制御装置31により検出される。すると、照合制御装置31は、車室外LF送信機32を通じて車室外照合用の検知領域を再度形成して車室外照合を行い、当該車室外照合が成立したときには、ドアロック要求信号をドア制御装置35へ出力する。ドア制御装置35は、照合制御装置31からのドアロック要求信号を受けると、ドアロックモータMを駆動してドアを施錠する。<電子キー及び車載機の相互認証>ここで、前述した電子キーシステム11においては、電子キー12と車載機13との相互認証が無線通信により行われることから、これら電子キー12と車載機13との間で送受信される情報電子キー12に固有の識別情報等が傍受され、この情報を使用して車両10が不正に使用されることが特に懸念される。このため、電子キー12と車載機13との間では、これらの間で授受する情報を所定の暗号アルゴリズムにより暗号化して送受信する暗号化通信を利用した認証が行われる。本実施形態では、認証を実施する装置間、すなわち電子キー12と車載機との間で互いに共通の暗号鍵を持ち合い、乱数データチャレンジコードを暗号鍵で暗号化した結果を交換することにより認証を行う、いわゆるチャレンジレスポンス認証方式が採用されている。以下、電子キーシステム11におけるチャレンジレスポンス認証方式の暗号化通信について、図2に示される動作シーケンスに従って説明する。なお、ここでは、乗車時等に行われる車室外照合が行われるものとする。また、車載機13と電子キー12とは、同じ暗号鍵Kを持っている。車両10の駐車状態にあっては、車載機13は、応答要求信号Sreqとして、電子キー12を起動させるWAKEコードを含む起動信号Swakeを所定の制御周期で送信する。これにより、車両10のドアの周辺には、電子キー12の検知領域が形成される。そして、ユーザが電子キー12を携帯して前記検知領域に入った際、当該電子キー12が車両10からの起動信号Swakeを受信すると、当該電子キー12は、まず起動信号Swakeに含まれるWAKEコードの妥当性、すなわち、当該WAKEコードが登録された正規の信号パターンかどうかを判定する。次に、電子キー12は、前記WAKEコードが正規の信号パターンである旨判定したときには、自身の動作が安定するのを待って、正常に認識した旨の応答信号であるACK信号Sackを車両側へ返信する。車載機13は、電子キー12からのACK信号Sackを受信することにより、電子キー12が前記検知領域内にあると判断し、登録された自身の車両コードを含む車両識別信号Scarを発信する。そして、電子キー12は、車載機13からの車両識別信号Scarを受信すると、それに含まれる車両コードと自身に登録された車両コードとの照合を行う。そして、その照合が成立した場合には、電子キー12は、UHF送信回路23を通じてACK信号Sackを車両側へ再び返信する。<チャレンジレスポンス認証>車載機13は、電子キー12からのACK信号Sackを再度受信すると、電子キー12との間でチャレンジレスポンス認証を行う。<S-1>すなわち、車載機13は、自身の内部乱数生成器31bを通じて乱数を生成し、この乱数を電子キー12に対するチャレンジコードRaとする。そして、車載機13は、このチャレンジコードRaに特定の識別コードを付加した情報を含む認証信号Schaを送信する。ここで、チャレンジコードRaは、128ビットの情報量を有してなる。また、識別コードは、当該車載機13に予め登録された電子キー12に固有の情報である。<S-2>電子キー12は、車載機13からの認証信号Schaを受信すると、これに含まれる識別コードと自身に登録された識別コードとの照合を行う。電子キー12は、当該照合が成立した場合には、自身の識別コードが当該車両10に登録されたコードである旨判断する。そして、電子キー12は、受信した認証信号Schaに含まれるチャレンジコードRaを自分の持つ暗号鍵Kにより暗号化する。この暗号化結果をEKRaと示す。また、電子キー12は、自身の内部乱数生成器21bを通じて、車載機13に対するチャレンジコードRbとして乱数を生成する。そして、電子キー12は、これら暗号化結果EKRa及びチャレンジコードRbを含む暗号化信号Scip-keyを車載機13に送信する。<S-3>車載機13では、自らが生成したチャレンジコードRaを自分の持つ暗号鍵Kで暗号化した結果と、受信した暗号化信号Scip-keyに含まれる暗号化結果EKRaとを比較し、その値が一致すれば電子キー12が正常に認証されたと判断する。また、車載機13は、受信した暗号化信号Scip-keyに含まれるチャレンジコードRbを自分の持つ暗号鍵Kにより暗号化し、その暗号化結果を含む暗号化信号Scip-carを電子キー12に送信する。なお、チャレンジコードRbの暗号化結果をEKRbと示す。<S-4>電子キー12では、自らが生成したチャレンジコードRbを自分の持つ暗号鍵Kで暗号化した結果と、受信した暗号化信号Scip-carに含まれる暗号化結果EKRbとを比較し、その値が一致すれば車載機13が正常に認証されたと判断する。以上で、車載機13と電子キー12との間のチャレンジレスポンス認証は完了となる。そして、このチャレンジレスポンス認証が完了、すなわち前記<S-4>において、電子キー12が車載機13を正常に認証した場合には、電子キー12は、前記応答信号Srepとして、自身に固有の識別コードを含む識別信号Sidを車載機13に送信する。車載機13は、電子キー12からの識別信号Sidに含まれる識別コードと自身に登録された識別コードとの照合を行い、当該照合が成立したことをもって電子キー12との間の車室外照合が成立した旨判断する。この後、車両のドアが解錠されて、電子キー12を所持するユーザが乗車した際には、前述した車室外照合と同様にして車載機13と電子キー12との相互認証を行うべく車室内照合が行われる。<AES暗号化処理>本実施形態では、前述したチャレンジレスポンス認証方式の暗号化通信における暗号化方式として、AESAdvancedEncryptionStandard暗号方式を採用している。また、上記背景技術で説明したサイドチャンネル攻撃を通じた暗号化処理の途中の中間値の漏洩を防ぐべく、この中間値にマスク値がXOR排他論理和される。このマスク値は、マスク値がXORされたデータに対して、再び同一のマスク値をXORすることで外すことができる。電子キー12の記憶装置21aには、AES暗号方式を使用して車載機13へ送信する情報を暗号化する処理を制御回路21に実行させるためのデータ変換プログラムと、前記データ変換プログラムが実行された際に使用される暗号鍵Kと、暗号化処理の途中の中間値の漏洩を防止するためのマスク値M1~M3とが記憶されている。また、車載機13の記憶装置31aには、AES暗号方式を使用して電子キー12へ送信する情報を暗号化する処理を照合制御装置31に実行させるためのデータ変換プログラムと、データ変換プログラムが実行された際に使用される暗号鍵Kと、暗号化処理の途中の中間値の漏洩を防止するためのマスク値M1~M3とが記憶されている。マスク値は、後述するS層変換に係るマスク値M1,M2と、同じく後述するP層変換に係るマスク値M3とからなる。制御回路21又は照合制御装置31は、マスク値M1,M2,M3を内部乱数生成器21b,31bを通じて生成する。そして、制御回路21又は照合制御装置31は、マスク値M1,M2に基づき、上記背景技術において図6bを参照しつつ説明したように、非線形変換に係る変換テーブルを算出し、そのテーブルをマスク値M1,M2,M3とともに記憶装置21a,31aに記憶させる。制御回路21又は照合制御装置31は、例えば暗号化処理が終了したタイミングで、必要があればS層変換に係るマスク値M1,M2及びP層変換に係るマスク値M3を更新する。マスク値M3の更新頻度は、マスク値M1,M2のそれより高く設定される。次に、前述したチャレンジレスポンス認証の実行中におけるAES暗号方式による暗号化処理について、図3に示すフローチャートに従って詳細に説明する。このフローチャートは、チャレンジレスポンス認証の実行中において、暗号化されていない平文データであるチャレンジコードRa,Rbを通信対象へ送信する場合に、電子キー12の制御回路21又は車載機13の照合制御装置31によって、上記記憶されたデータ変換プログラムに従い実行される。なお、当該暗号化処理は、電子キー12と車載機13とで同様の手順で実行されることから、ここでは、電子キー12を例にとって説明する。まず、制御回路21は、平文データであるチャレンジコードRaと、記憶装置21aに記憶されるマスク値M1とのXORをとるS101。これにより、データA1が生成される。そして、制御回路21は、自身の記憶装置21aに記憶される暗号鍵Kを使用してRoundKeyを生成するS102。すなわち、制御回路21は、元の暗号鍵Kを特定の拡張アルゴリズムに従って拡張し、その拡張した鍵を平文データであるチャレンジコードRaのデータ長ここでは、128ビットで順番に区切ることにより、AddRoundKeyの回数分ラウンド数Nr1回分だけRoundKeyを生成する。そして、制御回路21は、この生成した複数のRoundKeyを記憶装置21a正確には、その一時記憶領域に記憶する。このRoundKeyは、後述のAddRoundKeyで使用される。次に、制御回路21は、チャレンジコードRaをマスク値M1でマスクしたデータA1に対して、AddRoundKeyを1回だけ行うS103。AddRoundKeyとは、データA1とRoundKeyとのXOR排他論理和をとることをいう。XORは、ビット単位で行われる。これにより、データA2が生成される。<RoundFunction>次に、制御回路21は、RoundFunctionを行うS104。RoundFunctionは、SubBytes、ShiftRows、MixColumns及びAddRoundKeyからなる処理である。このRoundFunctionについては後で詳述する。制御回路21は、RoundFunctionの処理の後、RoundFunctionの処理をNr-1回だけ行ったか否かを判定するS105。ここで、Nrは、予め定められたラウンド数である。そして、制御回路21は、RoundFunctionの処理をNr-1回だけ行っていないと判定した場合S105でNOには、ステップS104へ処理を移行する。一方、制御回路21は、RoundFunctionの処理をNr-1回だけ行ったと判定した場合S105でYESには、FinalRoundFunctionを行うS106。FinalRoundFunctionは、上記RoundFunctionからMixColumnsが省略された処理、すなわちSubBytes、ShiftRows及びAddRoundKeyからなる処理である。このFinalRoundFunctionについては後で詳述する。FinalRoundFunctionの処理が終了すると、必要があればマスク値を更新するS107。上記のように、マスク値M3の更新頻度は、マスク値M1,M2より高いため、マスク値M3のみ更新されることもある。例えば、ステップS107においては、マスク値M1~M3を更新しない、マスク値M1~M3を更新する及びマスク値M3のみ更新の何れかの処理を実行する。そして、暗号化処理は完了となる。次に、上述したRoundFunctionの処理手順について図4のフローチャートを参照しつつ詳細に説明する。なお、制御回路21は、事前に記憶装置21aに記憶されるマスク値M1~M3に基づき、以下の3つの式からマスク値M4~M6を算出する。M4=M2XORM31M5=ShiftRowsM32M6=MixColumnsM5XORM13まず、制御回路21は、SubBytesを行うS201。このSubBytesは、8ビットのバイナリ情報を、他の8ビットの並びに変換して、その8ビットからなる複数のサブバイトS0~S15を生成することをいう。これにより、データA2からデータA2 ́に変換される。このとき、マスク値は、マスク値M1からマスク値M2に変化する。制御回路21は、データA2 ́と、上記式1を通じて算出したマスク値M4とのXORをとるS202。これにより、データA3が生成される。このデータA3のマスク値は、マスク値M2とマスク値M4とをXORしたマスク値となる。ここで、M2XORM4に対して、上記式1を代入すると、M2XORM2XORM3となる。従って、データA3のマスク値はマスク値M3となる。そして、制御回路21は、ShiftRowsを行うS203。ShiftRowsでは、4×4行列の各行のデータをバイト単位で特定回数だけ循環左シフトする。次に、制御回路21は、MixColumnsを行うS204。MixColumnsでは、前述したShiftRowsによる変換後のブロックデータにおける各列に対して、多項式を掛け算する。ShiftRows及びMixColumnsによって、データA3からデータA3 ́に変換される。このとき、マスク値は、マスク値M3からマスク値Mcに変化する。このマスク値Mcは、以下の式から導出される。Mc=MixColumnsShiftRowsM34この式4に上記式2を代入することで、以下の式となる。Mc=MixColumnsM55そして、制御回路21は、データA3 ́に対して、上記同様のAddRoundKeyを行うS205。これにより、データA4が生成される。このとき、マスク値は変化しない。次に、制御回路21は、データA4と、上記式3を通じて算出したマスク値M6とのXORをとるS206。これにより、データA5が生成される。このデータA5のマスク値は、マスク値Mcとマスク値M6とをXORしたマスク値となる。ここで、McXORM6に対して、上記式3及び5を代入すると、MixColumnsM5XORMixColumnsM5XORM1となる。従って、データA5のマスク値は、マスク値M1となる。以上で、RoundFunctionの処理が終了する。<FinalRoundFunction>次に、上述したFinalRoundFunctionの処理手順について図5のフローチャートを参照しつつ詳細に説明する。FinalRoundFunctionにおいては、MixColumnsが省略されている点、及びAddRoundKeyの後に、XORされるマスク値が異なる点を除き、上記RoundFunctionと同様である。なお、本例では図3のステップS105でYESのときには、データA10が生成され、そのデータA10のマスク値はマスク値M1であるとする。具体的には、図5に示すように、制御回路21はSubBytesを行うS301。これにより、データA10からデータA10 ́に変換される。このとき、マスク値は、マスク値M1からマスク値M2に変化する。制御回路21は、データA10 ́と、上記式1を通じて算出したマスク値M4とのXORをとるS302。これにより、データA11が生成される。このデータA11のマスク値は、上記同様に、マスク値M2とマスク値M4とをXORしたマスク値M3となる。そして、制御回路21は、ShiftRowsを行うS303。これにより、データA11からデータA11 ́に変換される。このとき、マスク値は、上記式3に示すように、マスク値M3からマスク値M5に変化する。そして、制御回路21は、データA11 ́に対して、上記同様のAddRoundKeyを行うS304。これにより、データA12が生成される。このとき、マスク値は変化しない。次に、制御回路21は、データA12と、上記式2を通じて算出したマスク値M5とのXORをとるS305。これにより、データA13が生成される。このデータA13のマスク値は、マスク値M5とマスク値M5との演算結果、すなわちゼロとなりマスクが除去される。以上のFinalRoundFunctionの処理によりデータA13をAESの暗号文として出力する。なお、マスク値M1,M2は第1のマスク値に相当し、マスク値M3は第2のマスク値に相当する。以上、説明した実施形態によれば、以下の効果を奏することができる。1S層変換SubBytesに係るマスク値M1,M2と、P層変換ShiftRows及びMixColumnsに係るマスク値M3とを独立して更新することができる。なお、本実施形態では、マスク値M3は、マスク値M2とXORされたマスク値M4として使用される。マスク値M3は、マスク値M1,M2より高い頻度で更新される。上記背景技術で図7を参照して説明したように、P層変換においては、S層変換に比して、同一のデータサブバイトS0~S15がより多く読み出されるものの、高頻度でマスク値M3が更新されることで、通信のセキュリティ性が確保される。また、マスク値M3のみを更新可能とすることで、マスク値M1,M2の更新回数を減らすことができ、その更新に要する消費電力を低減することができる。2暗号方式として、AES暗号方式AdvancedEncryptionStandardが採用されている。AES暗号方式において、P層変換SubBytesは線形変換であって、S層変換ShiftRows及びMixColumnsは非線形変換である。ここで、上記背景技術において説明したように、S層変換に係るマスク値M1,M2の更新は、P層変換に係るマスク値M3の更新より処理負担が大きい。このため、上記効果1に記載のように、マスク値M1,M2の更新回数を減らすことで、制御回路21又は車載機13の処理負担を低減することができる。なお、上記実施形態は、これを適宜変更した以下の形態にて実施することができる。上記実施形態においては、電子キー12と車載機13との間の認証方式としてチャレンジレスポンス認証方式を採用し、電子キー12と車載機13との間で相互に認証するようにしたが、いずれか一方が他方の認証を行うのみとしてもよい。この場合にも、上記実施形態と同様に、電子キー12と車載機13との間で共通の暗号鍵を持ち合う。そして例えば車載機13側で電子キー12を認証するようにした場合、車載機13は電子キー12の認証を行うに際して、チャレンジコードを電子キー12へ送信する。電子キー12では、車載機13から送られてきたチャレンジコードを自身の暗号鍵で暗号化し、その暗号化結果を車載機13へ返信する。車載機13は、自身の暗号鍵で元のチャレンジコードを暗号化し、その暗号化結果と電子キー12から送信されてきた暗号化結果とを比較する。車載機13は自身が演算した暗号化結果と電子キー12からの暗号化結果とが一致した旨判定したときには認証成立、すなわち当該電子キー12を正当な通信相手である旨判断する。なお、電子キー12側で車載機13を認証するようにした場合も前述と同様にして認証が行われる。上記実施形態においては、電子キー12と車載機13との間の認証方式として、チャレンジレスポンス認証方式を採用したが、他の認証方式を採用することも可能である。上記実施形態においては、電子キー12と車載機13との間の暗号化通信について説明したが、車載される各種の電子制御装置間の暗号化通信にも適用可能である。また、暗号化通信であれば、有線通信及び無線通信を問わず、通信機器全般について本発明を適用することができる。上記実施形態においては、電子キー12と車載機13との相互無線通信を通じて特定の車両機能を作動制御する電子キーシステム11に本発明を具体化したが、例えば特定の情報を暗号化して特定の通信対象へ一方的に送信する単方向通信を行う通信システムに具体化することも可能である。例えば、電子キーに設けられる施解錠スイッチの操作を通じて施解錠要求信号を車両に送信することによりドアを施解錠する、いわゆるリモートキーシステムに本発明を具体化することもできる。この場合には、情報を暗号化して送信する側の電子機器である電子キーのみに前述のデータ変換機能を持たせればよい。このように、双方向通信及び単方向通信のいずれを行う場合であれ、本発明を適用することができる。上記実施形態においては、暗号化処理のみを行うチャレンジレスポンス認証方式の暗号化処理に係る暗号アルゴリズムとして、AES暗号方式を採用した例について説明したが、復号化処理を必要とする認証方式に適用することも可能である。復号化処理は、暗号化処理と逆の処理が実行されることで成立する。上記実施形態においては、暗号方式としてAES暗号方式を採用したが、上記背景技術において説明したように同一のデータ上記例ではサブバイトを複数回読み出すような暗号方式であれば、AES暗号方式に限らず、例えばDESDataEncryptionStandard暗号方式であってもよい。また、P層変換のようなガロア体上の線形変換においてデータとマスク値をXORする場合に限らず、剰余算術乗算の線形変換においてデータとマスク値を剰余算術加算する場合や、べき乗演算においてマスク値を乗算する場合のような、マスク値変化の計算が容易である暗号処理であってもよい。上記実施形態におけるステップS107のマスク値更新の処理は、車載機13及び電子キー12間の通信の完了後、例えば、車室内照合又は車室外照合成立後であってもよい。上記実施形態においては、制御回路21は、図4のフローチャートを実行する前に記憶装置21aに記憶されるマスク値M1~M3に基づき、式1~3からマスク値M4~M6を算出していた。しかし、制御回路21は、マスク値M4~M6をマスク値M1~M3の更新時に算出し、それを記憶装置21aに記憶しておいてもよい。"