(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-10-11
(45)【発行日】2024-10-22
(54)【発明の名称】情報処理装置、情報処理方法、プログラム、及び、情報処理システム
(51)【国際特許分類】
G06F 21/44 20130101AFI20241015BHJP
【FI】
G06F21/44 350
(21)【出願番号】P 2021539204
(86)(22)【出願日】2020-07-31
(86)【国際出願番号】 JP2020029381
(87)【国際公開番号】W WO2021029232
(87)【国際公開日】2021-02-18
【審査請求日】2023-06-07
(31)【優先権主張番号】P 2019149163
(32)【優先日】2019-08-15
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】504134520
【氏名又は名称】フェリカネットワークス株式会社
(74)【代理人】
【識別番号】100121131
【氏名又は名称】西川 孝
(74)【代理人】
【氏名又は名称】稲本 義雄
(74)【代理人】
【識別番号】100168686
【氏名又は名称】三浦 勇介
(72)【発明者】
【氏名】宮崎 望心
(72)【発明者】
【氏名】河村 征治
(72)【発明者】
【氏名】中津川 泰正
【審査官】松平 英
(56)【参考文献】
【文献】特開2007-041694(JP,A)
【文献】特表2007-515092(JP,A)
【文献】特開2002-049434(JP,A)
【文献】特開2008-158801(JP,A)
【文献】特開2012-212380(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F12/14
21/00-21/88
G09C 1/00-5/00
H04K 1/00-3/00
H04L 9/00-9/40
(57)【特許請求の範囲】
【請求項1】
第1のソフトウエア、第2のソフトウエア、及び、第3のソフトウエアを実行する制御部を
備え、
前記第1のソフトウエアと前記第2のソフトウエアとの間の第1の認証が成功した場合、前記第1のソフトウエアのデータを前記第2のソフトウエアにバックアップし、
前記第2のソフトウエアと前記第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データを前記第3のソフトウエアに移
し、
前記第1のソフトウエアは、前記第1の認証が成功した後、全ての有効な外部コマンドを受け付ける第1の状態から、一部の外部コマンドのみを受け付ける第2の状態に遷移し、前記第2のソフトウエアへの前記データのバックアップが完了した後、前記第2の状態から、全ての外部コマンドを受け付けない第3の状態に遷移する
情報処理装置。
【請求項2】
第1のソフトウエア、第2のソフトウエア、及び、第3のソフトウエアを実行する制御部を
備え、
前記第1のソフトウエアと前記第2のソフトウエアとの間の第1の認証が成功した場合、前記第1のソフトウエアのデータを前記第2のソフトウエアにバックアップし、
前記第2のソフトウエアと前記第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データを前記第3のソフトウエアに移し、
前記第1のソフトウエアは、前記第1の認証が成功した後、第1の状態から第2の状態に遷移し、前記第2の状態において、実行中の処理と異なる他の処理が指示されたとき、前記他の処理を優先し、前記第2のソフトウエアへの前記データのバックアップが完了した後、前記第2の状態から第3の状態に遷移し、前記第3の状態において、前記実行中の処理と異なる前記他の処理が指示されたとき、前記実行中の処理を優先する
情報処理装置。
【請求項3】
前記第1のソフトウエアは、前記第2の状態において、前記他の処理が指示された場合、前記第1の状態に戻り、前記他の処理を実行し、
前記第2のソフトウエアは、前記第1のソフトウエアが、前記第1の状態に戻り、前記他の処理を実行する場合、バックアップしている前記データを削除する
請求項
2に記載の情報処理装置。
【請求項4】
前記実行中の処理は、前記第1のソフトウエアを前記第3のソフトウエアに更新する処理である
請求項
2に記載の情報処理装置。
【請求項5】
第1のソフトウエア、第2のソフトウエア、及び、第3のソフトウエアを実行する制御部を
備え、
前記第1のソフトウエアと前記第2のソフトウエアとの間の第1の認証が成功した場合、前記第1のソフトウエアのデータを前記第2のソフトウエアにバックアップし、
前記第2のソフトウエアと前記第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データを前記第3のソフトウエアに移し、
前記第3のソフトウエアは、前記第2のソフトウエアにバックアップされている前記データを全て取得した後、全ての外部コマンドを受け付けない第1の状態から、全ての有効な外部コマンドを受け付ける第2の状態に遷移する
情報処理装置。
【請求項6】
前記第3のソフトウエアは、前記第2のソフトウエアにバックアップされている前記データを全て取得した後、前記第2のソフトウエアから前記データが削除されてから、前記第1の状態から前記第2の状態に遷移する
請求項
5に記載の情報処理装置。
【請求項7】
前記第3のソフトウエアは、前記第1の状態において、実行中の処理と異なる他の処理が指示されたとき、前記実行中の処理を優先する
請求項
5に記載の情報処理装置。
【請求項8】
前記実行中の処理は、前記第1のソフトウエアを前記第3のソフトウエアに更新する処理である
請求項
7に記載の情報処理装置。
【請求項9】
第1のソフトウエア、第2のソフトウエア、及び、第3のソフトウエアを実行する制御部を
備え、
前記第1のソフトウエアと前記第2のソフトウエアとの間の第1の認証が成功した場合、前記第1のソフトウエアのデータを前記第2のソフトウエアにバックアップし、
前記第2のソフトウエアと前記第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データを前記第3のソフトウエアに移し、
前記第1のソフトウエアは、前記第2のソフトウエアから提供される送信用のプログラムを用いて、前記第2のソフトウエアに前記データを送信する
情報処理装置。
【請求項10】
前記第2のソフトウエアは、前記第1の認証が成功した場合、前記送信用のプログラムを前記第1のソフトウエアに提供する
請求項
9に記載の情報処理装置。
【請求項11】
前記第3のソフトウエアは、前記第2のソフトウエアから提供される取得用のプログラムを用いて、前記第2のソフトウエアから前記データを取得する
請求項1
~10のいずれかに記載の情報処理装置。
【請求項12】
前記第2のソフトウエアは、前記第2の認証が成功した場合、前記取得用のプログラムを前記第3のソフトウエアに提供する
請求項
11に記載の情報処理装置。
【請求項13】
前記第1のソフトウエアは、前記第3のソフトウエアにより更新される
請求項1
~12のいずれかに記載の情報処理装置。
【請求項14】
前記第1のソフトウエア及び前記第3のソフトウエアは、アプリケーションである
請求項1
~13のいずれかに記載の情報処理装置。
【請求項15】
情報処理装置が、第1のソフトウエアと第2のソフトウエアとの間の第1の認証が成功した場合、前記第1のソフトウエアのデータを前記第2のソフトウエアにバックアップし
、前記第2のソフトウエアと第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データを前記第3のソフトウエアに移
し、
前記第1のソフトウエアは、前記第1の認証が成功した後、全ての有効な外部コマンドを受け付ける第1の状態から、一部の外部コマンドのみを受け付ける第2の状態に遷移し、前記第2のソフトウエアへの前記データのバックアップが完了した後、前記第2の状態から、全ての外部コマンドを受け付けない第3の状態に遷移する
情報処理方法。
【請求項16】
情報処理装置が、第1のソフトウエアと第2のソフトウエアとの間の第1の認証が成功した場合、前記第1のソフトウエアのデータを前記第2のソフトウエアにバックアップし、前記第2のソフトウエアと第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データを前記第3のソフトウエアに移し、
前記第1のソフトウエアは、前記第1の認証が成功した後、第1の状態から第2の状態に遷移し、前記第2の状態において、実行中の処理と異なる他の処理が指示されたとき、前記他の処理を優先し、前記第2のソフトウエアへの前記データのバックアップが完了した後、前記第2の状態から第3の状態に遷移し、前記第3の状態において、前記実行中の処理と異なる前記他の処理が指示されたとき、前記実行中の処理を優先する
情報処理方法。
【請求項17】
情報処理装置が、第1のソフトウエアと第2のソフトウエアとの間の第1の認証が成功した場合、前記第1のソフトウエアのデータを前記第2のソフトウエアにバックアップし、前記第2のソフトウエアと第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データを前記第3のソフトウエアに移し、
前記第3のソフトウエアは、前記第2のソフトウエアにバックアップされている前記データを全て取得した後、全ての外部コマンドを受け付けない第1の状態から、全ての有効な外部コマンドを受け付ける第2の状態に遷移する
情報処理方法。
【請求項18】
情報処理装置が、第1のソフトウエアと第2のソフトウエアとの間の第1の認証が成功した場合、前記第1のソフトウエアのデータを前記第2のソフトウエアにバックアップし、前記第2のソフトウエアと第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データを前記第3のソフトウエアに移し、
前記第1のソフトウエアは、前記第2のソフトウエアから提供される送信用のプログラムを用いて、前記第2のソフトウエアに前記データを送信する
情報処理方法。
【請求項19】
第1のソフトウエアと第2のソフトウエアとの間の第1の認証が成功した場合、前記第1のソフトウエアのデータを前記第2のソフトウエアにバックアップし、
前記第2のソフトウエアと第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データを前記第3のソフトウエアに移
し、
前記第1のソフトウエアは、前記第1の認証が成功した後、全ての有効な外部コマンドを受け付ける第1の状態から、一部の外部コマンドのみを受け付ける第2の状態に遷移し、前記第2のソフトウエアへの前記データのバックアップが完了した後、前記第2の状態から、全ての外部コマンドを受け付けない第3の状態に遷移する
処理をコンピュータに実行させるためのプログラム。
【請求項20】
第1のソフトウエアと第2のソフトウエアとの間の第1の認証が成功した場合、前記第1のソフトウエアのデータを前記第2のソフトウエアにバックアップし、
前記第2のソフトウエアと第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データを前記第3のソフトウエアに移し、
前記第1のソフトウエアは、前記第1の認証が成功した後、第1の状態から第2の状態に遷移し、前記第2の状態において、実行中の処理と異なる他の処理が指示されたとき、前記他の処理を優先し、前記第2のソフトウエアへの前記データのバックアップが完了した後、前記第2の状態から第3の状態に遷移し、前記第3の状態において、前記実行中の処理と異なる前記他の処理が指示されたとき、前記実行中の処理を優先する
処理をコンピュータに実行させるためのプログラム。
【請求項21】
第1のソフトウエアと第2のソフトウエアとの間の第1の認証が成功した場合、前記第1のソフトウエアのデータを前記第2のソフトウエアにバックアップし、
前記第2のソフトウエアと第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データを前記第3のソフトウエアに移し、
前記第3のソフトウエアは、前記第2のソフトウエアにバックアップされている前記データを全て取得した後、全ての外部コマンドを受け付けない第1の状態から、全ての有効な外部コマンドを受け付ける第2の状態に遷移する
処理をコンピュータに実行させるためのプログラム。
【請求項22】
第1のソフトウエアと第2のソフトウエアとの間の第1の認証が成功した場合、前記第1のソフトウエアのデータを前記第2のソフトウエアにバックアップし、
前記第2のソフトウエアと第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データを前記第3のソフトウエアに移し、
前記第1のソフトウエアは、前記第2のソフトウエアから提供される送信用のプログラムを用いて、前記第2のソフトウエアに前記データを送信する
処理をコンピュータに実行させるためのプログラム。
【請求項23】
第1の情報処理装置と、
第2の情報処理装置と
を備え、
前記第1の情報処理装置は、第1のソフトウエアと第2のソフトウエアとの間の第1の認証が成功したとき、前記第1のソフトウエアのデータを前記第2のソフトウエアにバックアップし、前記第2のソフトウエアと、前記第2の情報処理装置から取得した第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データを前記第3のソフトウエアに移
し、
前記第1のソフトウエアは、前記第1の認証が成功した後、全ての有効な外部コマンドを受け付ける第1の状態から、一部の外部コマンドのみを受け付ける第2の状態に遷移し、前記第2のソフトウエアへの前記データのバックアップが完了した後、前記第2の状態から、全ての外部コマンドを受け付けない第3の状態に遷移する
情報処理システム。
【請求項24】
第1の情報処理装置と、
第2の情報処理装置と
を備え、
前記第1の情報処理装置は、第1のソフトウエアと第2のソフトウエアとの間の第1の認証が成功したとき、前記第1のソフトウエアのデータを前記第2のソフトウエアにバックアップし、前記第2のソフトウエアと、前記第2の情報処理装置から取得した第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データを前記第3のソフトウエアに移し、
前記第1のソフトウエアは、前記第1の認証が成功した後、第1の状態から第2の状態に遷移し、前記第2の状態において、実行中の処理と異なる他の処理が指示されたとき、前記他の処理を優先し、前記第2のソフトウエアへの前記データのバックアップが完了した後、前記第2の状態から第3の状態に遷移し、前記第3の状態において、前記実行中の処理と異なる前記他の処理が指示されたとき、前記実行中の処理を優先する
情報処理システム。
【請求項25】
第1の情報処理装置と、
第2の情報処理装置と
を備え、
前記第1の情報処理装置は、第1のソフトウエアと第2のソフトウエアとの間の第1の認証が成功したとき、前記第1のソフトウエアのデータを前記第2のソフトウエアにバックアップし、前記第2のソフトウエアと、前記第2の情報処理装置から取得した第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データを前記第3のソフトウエアに移し、
前記第3のソフトウエアは、前記第2のソフトウエアにバックアップされている前記データを全て取得した後、全ての外部コマンドを受け付けない第1の状態から、全ての有効な外部コマンドを受け付ける第2の状態に遷移する
情報処理システム。
【請求項26】
第1の情報処理装置と、
第2の情報処理装置と
を備え、
前記第1の情報処理装置は、第1のソフトウエアと第2のソフトウエアとの間の第1の認証が成功したとき、前記第1のソフトウエアのデータを前記第2のソフトウエアにバックアップし、前記第2のソフトウエアと、前記第2の情報処理装置から取得した第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データを前記第3のソフトウエアに移し、
前記第1のソフトウエアは、前記第2のソフトウエアから提供される送信用のプログラムを用いて、前記第2のソフトウエアに前記データを送信する
情報処理システム。
【発明の詳細な説明】
【技術分野】
【0001】
本技術は、情報処理装置、情報処理方法、プログラム、及び、情報処理システムに関し、特に、ソフトウエアのデータを安全に移すことができるようにした情報処理装置、情報処理方法、プログラム、及び、情報処理システムに関する。
【背景技術】
【0002】
従来、オペレーティングシステムの更新を行う場合、アップデータデバイスの認証を行い、認証に成功したとき、アップデータデバイスから新規のオペレーティングシステムを取得し、インストールすることが提案されている(例えば、特許文献1参照)。
【0003】
また、例えば、ソフトウエアの更新を行う場合、更新前のソフトウエアのデータを更新後のソフトウエアに移すために、バックアップ用のソフトウエアが用いられる場合がある。例えば、バックアップ用のソフトウエアは、更新前のソフトウエアのデータをバックアップし、ソフトウエアの更新が終わった後、バックアップしているデータを更新後のソフトウエアに移す。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、バックアップ用のソフトウエアが悪意のある偽のソフトウエアである場合、データの盗聴や改ざんが行われる危険性がある。
【0006】
本技術は、このような状況に鑑みてなされたものであり、ソフトウエアのデータを安全に移すことができるようにするものである。
【課題を解決するための手段】
【0007】
本技術の第1の側面の情報処理装置は、第1のソフトウエア、第2のソフトウエア、及び、第3のソフトウエアを実行する制御部を備え、前記第1のソフトウエアと前記第2のソフトウエアとの間の第1の認証が成功した場合、前記第1のソフトウエアのデータを前記第2のソフトウエアにバックアップし、前記第2のソフトウエアと前記第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データを前記第3のソフトウエアに移し、前記第1のソフトウエアは、前記第1の認証が成功した後、全ての有効な外部コマンドを受け付ける第1の状態から、一部の外部コマンドのみを受け付ける第2の状態に遷移し、前記第2のソフトウエアへの前記データのバックアップが完了した後、前記第2の状態から、全ての外部コマンドを受け付けない第3の状態に遷移する。
本技術の第2の側面の情報処理装置は、第1のソフトウエア、第2のソフトウエア、及び、第3のソフトウエアを実行する制御部を備え、前記第1のソフトウエアと前記第2のソフトウエアとの間の第1の認証が成功した場合、前記第1のソフトウエアのデータを前記第2のソフトウエアにバックアップし、前記第2のソフトウエアと前記第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データを前記第3のソフトウエアに移し、前記第1のソフトウエアは、前記第1の認証が成功した後、第1の状態から第2の状態に遷移し、前記第2の状態において、実行中の処理と異なる他の処理が指示されたとき、前記他の処理を優先し、前記第2のソフトウエアへの前記データのバックアップが完了した後、前記第2の状態から第3の状態に遷移し、前記第3の状態において、前記実行中の処理と異なる前記他の処理が指示されたとき、前記実行中の処理を優先する。
本技術の第3の側面の情報処理装置は、第1のソフトウエア、第2のソフトウエア、及び、第3のソフトウエアを実行する制御部を備え、前記第1のソフトウエアと前記第2のソフトウエアとの間の第1の認証が成功した場合、前記第1のソフトウエアのデータを前記第2のソフトウエアにバックアップし、前記第2のソフトウエアと前記第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データを前記第3のソフトウエアに移し、前記第3のソフトウエアは、前記第2のソフトウエアにバックアップされている前記データを全て取得した後、全ての外部コマンドを受け付けない第1の状態から、全ての有効な外部コマンドを受け付ける第2の状態に遷移する。
本技術の第4の側面の情報処理装置は、第1のソフトウエア、第2のソフトウエア、及び、第3のソフトウエアを実行する制御部を備え、前記第1のソフトウエアと前記第2のソフトウエアとの間の第1の認証が成功した場合、前記第1のソフトウエアのデータを前記第2のソフトウエアにバックアップし、前記第2のソフトウエアと前記第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データを前記第3のソフトウエアに移し、前記第1のソフトウエアは、前記第2のソフトウエアから提供される送信用のプログラムを用いて、前記第2のソフトウエアに前記データを送信する。
【0008】
本技術の第1の側面の情報処理方法は、情報処理装置が、第1のソフトウエアと第2のソフトウエアとの間の第1の認証が成功した場合、前記第1のソフトウエアのデータを前記第2のソフトウエアにバックアップし、前記第2のソフトウエアと第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データを前記第3のソフトウエアに移し、前記第1のソフトウエアは、前記第1の認証が成功した後、全ての有効な外部コマンドを受け付ける第1の状態から、一部の外部コマンドのみを受け付ける第2の状態に遷移し、前記第2のソフトウエアへの前記データのバックアップが完了した後、前記第2の状態から、全ての外部コマンドを受け付けない第3の状態に遷移する。
本技術の第2の側面の情報処理方法は、情報処理装置が、第1のソフトウエアと第2のソフトウエアとの間の第1の認証が成功した場合、前記第1のソフトウエアのデータを前記第2のソフトウエアにバックアップし、前記第2のソフトウエアと第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データを前記第3のソフトウエアに移し、前記第1のソフトウエアは、前記第1の認証が成功した後、第1の状態から第2の状態に遷移し、前記第2の状態において、実行中の処理と異なる他の処理が指示されたとき、前記他の処理を優先し、前記第2のソフトウエアへの前記データのバックアップが完了した後、前記第2の状態から第3の状態に遷移し、前記第3の状態において、前記実行中の処理と異なる前記他の処理が指示されたとき、前記実行中の処理を優先する。
本技術の第3の側面の情報処理方法は、情報処理装置が、第1のソフトウエアと第2のソフトウエアとの間の第1の認証が成功した場合、前記第1のソフトウエアのデータを前記第2のソフトウエアにバックアップし、前記第2のソフトウエアと第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データを前記第3のソフトウエアに移し、前記第3のソフトウエアは、前記第2のソフトウエアにバックアップされている前記データを全て取得した後、全ての外部コマンドを受け付けない第1の状態から、全ての有効な外部コマンドを受け付ける第2の状態に遷移する。
本技術の第4の側面の情報処理方法は、情報処理装置が、第1のソフトウエアと第2のソフトウエアとの間の第1の認証が成功した場合、前記第1のソフトウエアのデータを前記第2のソフトウエアにバックアップし、前記第2のソフトウエアと第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データを前記第3のソフトウエアに移し、前記第1のソフトウエアは、前記第2のソフトウエアから提供される送信用のプログラムを用いて、前記第2のソフトウエアに前記データを送信する。
【0009】
本技術の第1の側面のプログラムは、第1のソフトウエアと第2のソフトウエアとの間の第1の認証が成功した場合、前記第1のソフトウエアのデータを前記第2のソフトウエアにバックアップし、前記第2のソフトウエアと第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データを前記第3のソフトウエアに移し、前記第1のソフトウエアは、前記第1の認証が成功した後、全ての有効な外部コマンドを受け付ける第1の状態から、一部の外部コマンドのみを受け付ける第2の状態に遷移し、前記第2のソフトウエアへの前記データのバックアップが完了した後、前記第2の状態から、全ての外部コマンドを受け付けない第3の状態に遷移する処理をコンピュータに実行させる。
本技術の第2の側面のプログラムは、第1のソフトウエアと第2のソフトウエアとの間の第1の認証が成功した場合、前記第1のソフトウエアのデータを前記第2のソフトウエアにバックアップし、前記第2のソフトウエアと第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データを前記第3のソフトウエアに移し、前記第1のソフトウエアは、前記第1の認証が成功した後、第1の状態から第2の状態に遷移し、前記第2の状態において、実行中の処理と異なる他の処理が指示されたとき、前記他の処理を優先し、前記第2のソフトウエアへの前記データのバックアップが完了した後、前記第2の状態から第3の状態に遷移し、前記第3の状態において、前記実行中の処理と異なる前記他の処理が指示されたとき、前記実行中の処理を優先する処理をコンピュータに実行させる。
本技術の第3の側面のプログラムは、第1のソフトウエアと第2のソフトウエアとの間の第1の認証が成功した場合、前記第1のソフトウエアのデータを前記第2のソフトウエアにバックアップし、前記第2のソフトウエアと第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データを前記第3のソフトウエアに移し、前記第3のソフトウエアは、前記第2のソフトウエアにバックアップされている前記データを全て取得した後、全ての外部コマンドを受け付けない第1の状態から、全ての有効な外部コマンドを受け付ける第2の状態に遷移する処理をコンピュータに実行させる。
本技術の第4の側面のプログラムは、第1のソフトウエアと第2のソフトウエアとの間の第1の認証が成功した場合、前記第1のソフトウエアのデータを前記第2のソフトウエアにバックアップし、前記第2のソフトウエアと第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データを前記第3のソフトウエアに移し、前記第1のソフトウエアは、前記第2のソフトウエアから提供される送信用のプログラムを用いて、前記第2のソフトウエアに前記データを送信する処理をコンピュータに実行させる。
【0010】
本技術の第5の側面の情報処理システムは、第1の情報処理装置と、第2の情報処理装置とを備え、前記第1の情報処理装置は、第1のソフトウエア、第2のソフトウエア、及び、第3のソフトウエアを実行する制御部を備え、前記第2の情報処理装置の指令により、前記第1のソフトウエアを前記第3のソフトウエアに更新する場合、前記第1のソフトウエアと前記第2のソフトウエアとの間の第1の認証が成功したとき、前記第1のソフトウエアのデータを前記第2のソフトウエアにバックアップし、前記第2のソフトウエアと前記第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データを前記第3のソフトウエアに移し、前記第1のソフトウエアは、前記第1の認証が成功した後、全ての有効な外部コマンドを受け付ける第1の状態から、一部の外部コマンドのみを受け付ける第2の状態に遷移し、前記第2のソフトウエアへの前記データのバックアップが完了した後、前記第2の状態から、全ての外部コマンドを受け付けない第3の状態に遷移する。
本技術の第6の側面の情報処理システムは、第1の情報処理装置と、第2の情報処理装置とを備え、前記第1の情報処理装置は、第1のソフトウエアと第2のソフトウエアとの間の第1の認証が成功したとき、前記第1のソフトウエアのデータを前記第2のソフトウエアにバックアップし、前記第2のソフトウエアと、前記第2の情報処理装置から取得した第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データを前記第3のソフトウエアに移し、前記第1のソフトウエアは、前記第1の認証が成功した後、第1の状態から第2の状態に遷移し、前記第2の状態において、実行中の処理と異なる他の処理が指示されたとき、前記他の処理を優先し、前記第2のソフトウエアへの前記データのバックアップが完了した後、前記第2の状態から第3の状態に遷移し、前記第3の状態において、前記実行中の処理と異なる前記他の処理が指示されたとき、前記実行中の処理を優先する。
本技術の第7の側面の情報処理システムは、第1の情報処理装置と、第2の情報処理装置とを備え、前記第1の情報処理装置は、第1のソフトウエアと第2のソフトウエアとの間の第1の認証が成功したとき、前記第1のソフトウエアのデータを前記第2のソフトウエアにバックアップし、前記第2のソフトウエアと、前記第2の情報処理装置から取得した第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データを前記第3のソフトウエアに移し、前記第3のソフトウエアは、前記第2のソフトウエアにバックアップされている前記データを全て取得した後、全ての外部コマンドを受け付けない第1の状態から、全ての有効な外部コマンドを受け付ける第2の状態に遷移する。
本技術の第8の側面の情報処理システムは、第1の情報処理装置と、第2の情報処理装置とを備え、前記第1の情報処理装置は、第1のソフトウエアと第2のソフトウエアとの間の第1の認証が成功したとき、前記第1のソフトウエアのデータを前記第2のソフトウエアにバックアップし、前記第2のソフトウエアと、前記第2の情報処理装置から取得した第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データを前記第3のソフトウエアに移し、前記第1のソフトウエアは、前記第2のソフトウエアから提供される送信用のプログラムを用いて、前記第2のソフトウエアに前記データを送信する。
【0011】
本技術の第1の側面においては、第1のソフトウエアと第2のソフトウエアとの間の第1の認証が成功した場合、前記第1のソフトウエアのデータが前記第2のソフトウエアにバックアップされ、前記第2のソフトウエアと第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データが前記第3のソフトウエアに移され、前記第1のソフトウエアが、前記第1の認証が成功した後、全ての有効な外部コマンドを受け付ける第1の状態から、一部の外部コマンドのみを受け付ける第2の状態に遷移され、前記第2のソフトウエアへの前記データのバックアップが完了した後、前記第2の状態から、全ての外部コマンドを受け付けない第3の状態に遷移される。
本技術の第2の側面においては、第1のソフトウエアと第2のソフトウエアとの間の第1の認証が成功した場合、前記第1のソフトウエアのデータが前記第2のソフトウエアにバックアップされ、前記第2のソフトウエアと第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データが前記第3のソフトウエアに移され、前記第1のソフトウエアが、前記第1の認証が成功した後、第1の状態から第2の状態に遷移され、前記第2の状態において、実行中の処理と異なる他の処理が指示されたとき、前記他の処理が優先され、前記第2のソフトウエアへの前記データのバックアップが完了した後、前記第2の状態から第3の状態に遷移され、前記第3の状態において、前記実行中の処理と異なる前記他の処理が指示されたとき、前記実行中の処理が優先される。
本技術の第3の側面においては、第1のソフトウエアと第2のソフトウエアとの間の第1の認証が成功した場合、前記第1のソフトウエアのデータが前記第2のソフトウエアにバックアップされ、前記第2のソフトウエアと第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データが前記第3のソフトウエアに移され、前記第3のソフトウエアが、前記第2のソフトウエアにバックアップされている前記データを全て取得した後、全ての外部コマンドを受け付けない第1の状態から、全ての有効な外部コマンドを受け付ける第2の状態に遷移される。
本技術の第4の側面においては、第1のソフトウエアと第2のソフトウエアとの間の第1の認証が成功した場合、前記第1のソフトウエアのデータが前記第2のソフトウエアにバックアップされ、記第2のソフトウエアと第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データが前記第3のソフトウエアに移され、前記第2のソフトウエアから提供される送信用のプログラムを用いて、前記第2のソフトウエアに前記データが送信される。
【0012】
本技術の第5の側面においては、第2の情報処理装置の指令により、前記第1のソフトウエアを前記第3のソフトウエアに更新する場合、前記第1のソフトウエアと前記第2のソフトウエアとの間の第1の認証が成功したとき、前記第1のソフトウエアのデータが前記第2のソフトウエアにバックアップされ、前記第2のソフトウエアと前記第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データが前記第3のソフトウエアに移され、前記第1のソフトウエアが、前記第1の認証が成功した後、全ての有効な外部コマンドを受け付ける第1の状態から、一部の外部コマンドのみを受け付ける第2の状態に遷移され、前記第2のソフトウエアへの前記データのバックアップが完了した後、前記第2の状態から、全ての外部コマンドを受け付けない第3の状態に遷移される。
本技術の第6の側面においては、第2の情報処理装置の指令により、前記第1のソフトウエアを前記第3のソフトウエアに更新する場合、前記第1のソフトウエアと前記第2のソフトウエアとの間の第1の認証が成功したとき、前記第1のソフトウエアのデータが前記第2のソフトウエアにバックアップされ、前記第2のソフトウエアと前記第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データが前記第3のソフトウエアに移され、前記第1のソフトウエアが、前記第1の認証が成功した後、第1の状態から第2の状態に遷移され、前記第2の状態において、実行中の処理と異なる他の処理が指示されたとき、前記他の処理が優先され、前記第2のソフトウエアへの前記データのバックアップが完了した後、前記第2の状態から第3の状態に遷移され、前記第3の状態において、前記実行中の処理と異なる前記他の処理が指示されたとき、前記実行中の処理が優先される。
本技術の第7の側面においては、第2の情報処理装置の指令により、前記第1のソフトウエアを前記第3のソフトウエアに更新する場合、前記第1のソフトウエアと前記第2のソフトウエアとの間の第1の認証が成功したとき、前記第1のソフトウエアのデータが前記第2のソフトウエアにバックアップされ、前記第2のソフトウエアと前記第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データが前記第3のソフトウエアに移され、前記第3のソフトウエアが、前記第2のソフトウエアにバックアップされている前記データを全て取得した後、全ての外部コマンドを受け付けない第1の状態から、全ての有効な外部コマンドを受け付ける第2の状態に遷移される。
本技術の第8の側面においては、第2の情報処理装置の指令により、前記第1のソフトウエアを前記第3のソフトウエアに更新する場合、前記第1のソフトウエアと前記第2のソフトウエアとの間の第1の認証が成功したとき、前記第1のソフトウエアのデータが前記第2のソフトウエアにバックアップされ、前記第2のソフトウエアと前記第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データが前記第3のソフトウエアに移され、前記第2のソフトウエアから提供される送信用のプログラムを用いて、前記第2のソフトウエアに前記データが送信される。
【図面の簡単な説明】
【0013】
【
図1】本技術を適用した情報処理システムの構成例を示すブロック図である。
【
図2】アプレットの更新処理を説明するためのシーケンス図である。
【
図3】バックアップ認証の詳細を説明するためのシーケンス図である。
【
図4】リストア認証の詳細を説明するためのシーケンス図である。
【発明を実施するための形態】
【0014】
以下、本技術を実施するための形態について説明する。説明は以下の順序で行う。
1.実施の形態
2.変形例
3.その他
【0015】
<<1.実施の形態>>
図1乃至
図5を参照して、本技術の実施の形態について説明する。
【0016】
<情報処理システム1の構成例>
図1は、本技術を適用した情報処理システム1の構成例を示すブロック図である。
【0017】
情報処理システム1は、情報処理装置11及びサーバ12を備える。
【0018】
情報処理装置11は、例えば、スマートフォン、タブレット端末、パーソナルコンピュータ、携帯電話機等からなり、サーバ12等の他の情報処理装置と通信を行ったり、各種の情報処理を行ったりする。
【0019】
情報処理装置11は、デバイスホスト21、eSE(embedded Secure Element)チップ22、及び、CLF(Contactless Front-End)チップ23を備える。
【0020】
デバイスホスト21は、CPU(Central Processing Unit)等のプロセッサ、メモリ等を備え、情報処理装置11全体の制御、各種の処理の実行、及び、サーバ12との通信等を行う。
【0021】
eSEチップ22は、耐タンパ性を備えた埋め込み型のチップであり、例えば、機密性の高いデータを保持する。また、eSEチップ22は、アプレット31及びアップグレードアプレット32等のソフトウエアを実行する。
【0022】
アプレット31は、所定の機能を備えるアプリケーションソフトウエアである。
【0023】
アップグレードアプレット32は、アプレット31の更新(アップグレード)時に更新前のアプレット31が内部に保持するデータ(以下、内部データと称する)をバックアップし、更新後のアプレット31に移す機能を備えるアプリケーションソフトウエアである。
【0024】
なお、以下、更新前のアプレット31と更新後のアプレット31とを区別する場合、前者を旧アプレット31aと称し、後者を新アプレット31bと称する。また、以下、アプレット31及びアップグレードアプレット32のインスタンス(実体)を、それぞれ同じ符号を用いて、アプレットインスタンス31及びアップグレードアプレットインスタンス32と称する。同様に、旧アプレット31a及び新アプレット31bのインスタンスを、それぞれ同じ符号を用いて、旧アプレットインスタンス31a及び新アプレットインスタンス31bと称する。
【0025】
CLFチップ23は、NFC(Near Field Communication,近距離無線通信)の機能を備えるチップである。CLFチップ23は、他の情報処理装置と近距離無線通信を行い、各種のソフトウエア、データ、コマンド等の授受を行う。CLFチップ23は、受信したソフトウエア、データ、コマンド等をeSEチップ22に供給したり、送信するソフトウエア、データ、コマンド等をeSEチップ22から取得したりする。
【0026】
サーバ12は、図示せぬネットワーク等を介して、情報処理装置11のデバイスホスト21と通信を行い、各種のソフトウエア、データ、コマンド等の授受を行う。例えば、サーバ12は、アプレット31の更新用のパッケージをデバイスホスト21に送信したり、デバイスホスト21、eSEチップ22、及び、CLFチップ23に各種のコマンドを送信したりする。
【0027】
<アプレット31の更新処理>
次に、
図2のシーケンス図を参照して、情報処理システム1により実行されるアプレット31の更新処理について説明する。
【0028】
なお、更新処理の実行前に、旧アプレット31aの内部状態は、通常状態に設定され、アップグレードアプレット32の内部状態は、初期状態に設定されているものとする。旧アプレット31a、新アプレット31b、及び、アップグレードアプレット32の内部状態については、
図5を参照して後述する。
【0029】
また、旧アプレットインスタンス31a、新アプレットインスタンス31b、及び、アップグレードアプレットインスタンス32が、予め共通鍵を保持しているものとする。
【0030】
ステップS1において、サーバ12又はデバイスホスト21は、アップグレードアプレットインスタンス32にバックアップ開始トリガを送信する。
【0031】
なお、サーバ12又はデバイスホスト21からアップグレードアプレットインスタンス32にバックアップ開始トリガ等の指令を与える方法は、任意である。
【0032】
例えば、サーバ12が、アップグレードアプレットインスタンス32に指令を与えるためのコマンドをデバイスホスト21に送信し、デバイスホスト21がアップグレードアプレットインスタンス32にコマンドを転送するようにしてもよい。例えば、サーバ12が、アップグレードアプレットインスタンス32に指令を与えるためのスクリプト(プログラム)をデバイスホスト21に送信し、デバイスホスト21がスクリプトを実行することにより、アップグレードアプレットインスタンス32にコマンドを供給するようにしてもよい。例えば、デバイスホスト21が、予め格納されているスクリプト(プログラム)を実行することにより、アップグレードアプレットインスタンス32にコマンドを供給するようにしてもよい。
【0033】
ステップS2において、旧アプレットインスタンス31aとアップグレードアプレットインスタンス32とは、バックアップ処理に先立ち、バックアップ認証を行う。バックアップ認証の詳細は
図3を参照して後述するが、ここでは、バックアップ認証の概要について説明する。
【0034】
まず、アップグレードアプレットインスタンス32は、旧アプレットインスタンス31aにチャレンジメッセージを送信する。
【0035】
旧アプレットインスタンス31aは、受信したチャレンジメッセージ、及び、内部に保持する共通鍵を用いて認証値を生成し、アップグレードアプレットインスタンス32に送信する。
【0036】
アップグレードアプレットインスタンス32は、内部に保持する共通鍵を用いて、旧アプレットインスタンス31aから受信した認証値を検証する。
【0037】
認証値が正常でないと判定された場合、バックアップ認証はエラーとなり、バックアップ認証は中止される。
【0038】
一方、認証値が正常であると判定された場合、アップグレードアプレットインスタンス32は、旧アプレットインスタンス31aから受信した認証値、及び、内部に保持する共通鍵を用いて認証値を生成し、旧アプレットインスタンス31aに送信する。
【0039】
旧アプレットインスタンス31aは、内部に保持する共通鍵を用いて、アップグレードアプレットインスタンス32から受信した認証値を検証する。
【0040】
認証値が正常でないと判定された場合、バックアップ認証はエラーとなり、バックアップ認証は中止される。
【0041】
一方、認証値が正常であると判定された場合、すなわち、バックアップ認証が成功した場合、処理はステップS3に進む。また、旧アプレット31aの内部状態は、通常状態からバックアップ中状態に遷移し、アップグレードアプレット32の内部状態は、初期状態からバックアップ中状態に遷移する。
【0042】
ステップS3において、旧アプレットインスタンス31aとアップグレードアプレットインスタンス32は、バックアップを実施する。具体的には、旧アプレットインスタンス31aは、新アプレットインスタンス31bに移管する内部データ(以下、バックアップデータと称する)を暗号化し、暗号化したバックアップデータをアップグレードアプレットインスタンス32に送信する。アップグレードアプレットインスタンス32は、受信したバックアップデータを内部に蓄積する。
【0043】
そして、バックアップデータのバックアップが完了した後、旧アプレット31aの内部状態は、バックアップ中状態からバックアップ完了状態に遷移する。また、アップグレードアプレット32の内部状態は、バックアップ中状態からリストア中状態に遷移する。また、アップグレードアプレットインスタンス32は、バックアップの完了をサーバ12又はデバイスホスト21に通知する。
【0044】
ステップS4において、サーバ12又はデバイスホスト21は、旧アプレットインスタンス31aをeSEチップ22から削除する。eSEチップ22は、旧アプレットインスタンス31aの削除の完了をサーバ12又はデバイスホスト21に通知する。
【0045】
ステップS5において、サーバ12又はデバイスホスト21は、パッケージの入れ替えを行う。具体的には、サーバ12又はデバイスホスト21は、旧アプレット31a用のパッケージをeSEチップ22から削除し、新アプレット31b用のパッケージをeSEチップ22にロードする。eSEチップ22は、パッケージの入れ替えの完了をサーバ12又はデバイスホスト21に通知する。
【0046】
ステップS6において、サーバ12又はデバイスホスト21は、eSEチップ22にロードした新アプレット31b用のパッケージを用いて、新アプレット31bのインストールを行う。これにより、新アプレットインスタンス31bが生成される。また、新アプレット31bの内部状態は、リストア中状態に設定される。
【0047】
ステップS7において、新アプレットインスタンス31bとアップグレードアプレットインスタンス32は、リストア処理に先立ち、リストア認証を行う。リストア認証の詳細は
図4を参照して後述するが、ここでは、リストア認証の概要について説明する。
【0048】
具体的には、リストア認証では、バックアップ認証と異なり、まず、アップグレードアプレットインスタンス32から新アプレットインスタンス31bにチャレンジメッセージが送信される。そして、新アプレットインスタンス31bとアップグレードアプレットインスタンス32とが、バックアップ認証における旧アプレットインスタンス31aとアップグレードアプレットインスタンス32とは逆の立場で、認証処理を行う。
【0049】
そして、エラーが発生した場合、リストア認証は中止される。
【0050】
一方、リストア認証が成功した場合、処理はステップS8に進む。
【0051】
ステップS8において、新アプレットインスタンス31bとアップグレードアプレットインスタンス32は、リストアを実施する。すなわち、アップグレードアプレットインスタンス32は、蓄積しているバックアップデータを新アプレットインスタンス31bに移す。これにより、旧アプレットインスタンス31aの内部データが、新アプレットインスタンス31bに復元される。
【0052】
ステップS9において、サーバ12又はデバイスホスト21は、アップグレードアプレットインスタンス32に蓄積されているバックアップデータを削除する。その後、アップグレードアプレット32の内部状態は、リストア中状態から初期状態に遷移し、新アプレット31bの内部状態は、リストア中状態から通常状態に遷移する。また、アップグレードアプレットインスタンス32は、バックアップデータの削除の完了をサーバ12又はデバイスホスト21に通知する。
【0053】
その後、アプレット31の更新処理は終了する。
【0054】
<バックアップ認証及びバックアップ処理の詳細>
次に、
図3のシーケンス図を参照して、
図2のステップS2のバックアップ認証及びS3のバックアップ処理の詳細について説明する。
【0055】
バックアップ認証は、例えば、ISO/IEC 9798-2 Three pass authenticationに準拠した手順で行われる。
【0056】
具体的には、アップグレードアプレットインスタンス32は、サーバ12又はデバイスホスト21からバックアップリクエストを受信することをトリガとして、バックアップ認証を開始する。バックアップリクエストは、更新対象となるアプレット31の識別子、並びに、新しいアプレット31のバージョンを示す情報を含む。
【0057】
これに対して、アップグレードアプレットインスタンス32は、旧アプレットインスタンス31aにチャレンジメッセージを送信する。
【0058】
なお、旧アプレットインスタンス31aは、モード0乃至モード2の3段階の内部モードを有している。この内部モードは、上述した内部状態とは独立して設定される。
【0059】
そして、旧アプレットインスタンス31aは、各内部モードにおいて、それぞれ以下のメッセージのみを受け付け、それ以外のメッセージを受信したとき、エラーを返し、バックアップ認証を中止する。
【0060】
モード0:チャレンジメッセージ
モード1:トークンBA
【0061】
なお、メッセージは、主にeSEチップ22内で授受されるコマンド等であり、後述する外部コマンドは、主にeSEチップ22の外部から与えられるコマンドである。
【0062】
さらに、アップグレードアプレットインスタンス32は、内部モードがモード2の場合のみ、バックアップ処理を実行する。
【0063】
従って、旧アプレットインスタンス31aは、内部モードがモード0以外の場合、チャレンジメッセージを受け付けず、エラーをアップグレードアプレットインスタンス32に返す。これにより、バックアップ認証は中止される。
【0064】
一方、旧アプレットインスタンス31aは、内部モードがモード0の場合、チャレンジメッセージを受け付ける。これにより、旧アプレットインスタンス31aは、モード0からモード1に遷移する。
【0065】
旧アプレットインスタンス31aは、受信したチャレンジメッセージ、及び、内部に保持する共通鍵を用いて、AES(Advanced Encryption Standard)アルゴリズムによりCMAC(Cipher-based MAC)の値(以下、CMAC値と称する)を算出する。旧アプレットインスタンス31aは、CMAC値、及び、旧アプレット31aのバージョン(すなわち、現在のアプレット31のバージョン)を示す情報を含むトークンABを生成し、アップグレードアプレットインスタンス32に送信する。
【0066】
アップグレードアプレットインスタンス32は、トークンABを検証する。例えば、アップグレードアプレットインスタンス32は、内部に保持する共通鍵を用いて、トークンABに含まれるCMAC値の整合性を検証する。
【0067】
また、アップグレードアプレットインスタンス32は、トークンABに含まれる旧アプレット31aのバージョンと、バックアップリクエストに含まれる新しいアプレット31のバージョンとの整合性を検証する。すなわち、アップグレードアプレットインスタンス32は、新しいアプレット31のバージョンが、旧アプレット31aのバージョンより新しいか否かを検証する。
【0068】
アップグレードアプレットインスタンス32は、検証の結果、トークンABが正常でない、又は、新しいアプレット31のバージョンが正常でない(旧アプレット31aのバージョンより古い、又は、旧アプレット31aのバージョンと同じ)と判定した場合、バックアップ認証を中止する。
【0069】
一方、アップグレードアプレットインスタンス32は、トークンABが正常、かつ、新しいアプレット31のバージョンが正常である(旧アプレット31aのバージョンより新しい)と判定した場合、トークンABに含まれるCMAC値、及び、内部に保持する共通鍵を用いて、AESアルゴリズムによりCMAC値を算出する。アップグレードアプレットインスタンス32は、算出したCMAC値、及び、バックアップリクエストに含まれる新しいアプレット31のバージョンを示す情報を含むトークンBAを生成し、旧アプレットインスタンス31aに送信する。また、アップグレードアプレットインスタンス32は、バックアップデータ送信用オブジェクトを旧アプレットインスタンス31aに送信する。バックアップデータ送信用オブジェクトは、バックアップデータを送信するためのプログラムである。
【0070】
旧アプレットインスタンス31aは、内部モードがモード1以外の場合、トークンBAを受け付けず、エラーをアップグレードアプレットインスタンス32に返す。これにより、バックアップ認証は中止される。
【0071】
一方、旧アプレットインスタンス31aは、内部モードがモード1の場合、トークンBAを受け付ける。そして、旧アプレットインスタンス31aは、トークンBAを検証する。例えば、旧アプレットインスタンス31aは、内部に保持する共通鍵を用いて、トークンBAに含まれるCMAC値の整合性を検証する。
【0072】
また、旧アプレットインスタンス31aは、自身のバージョンと、トークンBAに含まれる新しいアプレット31のバージョンとの整合性を検証する。すなわち、旧アプレットインスタンス31aは、新しいアプレット31のバージョンが、自身のバージョンより新しいか否かを検証する。
【0073】
旧アプレットインスタンス31aは、検証の結果、トークンBAが正常でない、又は、新しいアプレット31のバージョンが正常でないと判定した場合、バックアップ認証を中止する。
【0074】
一方、旧アプレットインスタンス31aは、トークンBAが正常、かつ、新しいアプレット31のバージョンが正常であると判定した場合、モード1からモード2に遷移し、バックアップ認証が完了する。
【0075】
そして、旧アプレットインスタンス31aは、アップグレードアプレットインスタンス32から提供されたバックアップデータ送信用オブジェクトを用いて、バックアップ処理を行う。すなわち、旧アプレットインスタンス31aは、バックアップデータを暗号化して、アップグレードアプレットインスタンス32に送信する。アップグレードアプレットインスタンス32は、受信したバックアップデータを暗号化したまま内部に蓄積するとともに、応答メッセージを旧アプレットインスタンス31aに送信する。旧アプレットインスタンス31aは、全てのバックアップデータのバックアップが完了した後、モード2からモード0に戻る。
【0076】
このように、所定の手順に従ってバックアップ認証が行われないと、旧アプレットインスタンス31aの内部モードが正常に遷移しないため、バックアップ認証が成功しない。また、バックアップ認証が成功した場合のみ、アップグレードアプレットインスタンス32から提供されるバックアップデータ送信用オブジェクトを用いて、バックアップ処理が行われる。従って、旧アプレットインスタンス31aの内部データをアップグレードアプレットインスタンス32に安全にバックアップすることができる。
【0077】
<リストア認証及びリストア処理の詳細>
次に、
図4のシーケンス図を参照して、
図2のステップS7のリストア認証及びステップS8のリストア処理の詳細について説明する。
【0078】
リストア認証は、例えば、バックアップ認証と同様に、ISO/IEC 9798-2 Three pass authenticationに準拠した手順で行われる。
【0079】
リストア認証は、アップグレードアプレットインスタンス32が、バックアップデータを蓄積した状態で、新アプレット31bがeSEチップ22にインストールされ、新アプレットインスタンス31bが生成されることをトリガに開始される。
【0080】
新アプレットインスタンス31bは、アップグレードアプレットインスタンス32にチャレンジメッセージを送信する。
【0081】
なお、アップグレードアプレットインスタンス32は、旧アプレットインスタンス31aと同様に、モード0乃至モード2の3段階の内部モードを有している。この内部モードは、上述した内部状態とは独立して設定される。
【0082】
そして、アップグレードアプレットインスタンス32は、各内部モードにおいて、それぞれ以下のメッセージのみを受け付け、それ以外のメッセージを受信したとき、エラーを返し、リストア認証を終了する。
【0083】
モード0:チャレンジメッセージ
モード1:トークンBA
モード2:リストアデータ取得リクエスト
【0084】
従って、アップグレードアプレットインスタンス32は、内部モードがモード0以外の場合、チャレンジメッセージを受け付けず、エラーを新アプレットインスタンス31bに返す。これにより、リストア認証は中止される。
【0085】
一方、アップグレードアプレットインスタンス32は、内部モードがモード0の場合、チャレンジメッセージを受け付け、モード0からモード1に遷移する。
【0086】
アップグレードアプレットインスタンス32は、受信したチャレンジメッセージ、及び、内部に保持する共通鍵を用いて、AESアルゴリズムによりCMAC値を算出する。アップグレードアプレットインスタンス32は、算出したCMAC値、並びに、バックアップ認証時に受信したバックアップリクエストに含まれる新しいアプレット31のバージョンを示す情報を含むトークンABを生成し、新アプレットインスタンス31bに送信する。
【0087】
新アプレットインスタンス31bは、トークンABを検証する。例えば、新アプレットインスタンス31bは、内部に保持する共通鍵を用いて、トークンABに含まれるCMAC値の整合性を検証する。
【0088】
また、新アプレットインスタンス31bは、トークンABに含まれる新しいアプレット31のバージョンと、自身のバージョンとの整合性を検証する。すなわち、アップグレードアプレットインスタンス32は、新しいアプレット31のバージョンと自身のバージョンとが一致するか否かを検証する。
【0089】
新アプレットインスタンス31bは、検証の結果、トークンABが正常でない、又は、新しいアプレット31のバージョンが正常でない(新アプレット31bのバージョンと一致しない)と判定した場合、リストア認証を中止する。
【0090】
一方、新アプレットインスタンス31bは、トークンABが正常、かつ、新しいアプレット31のバージョンが正常である(新アプレット31bのバージョンと一致する)と判定した場合、トークンABに含まれるCMAC値、及び、内部に保持する共通鍵を用いて、AESアルゴリズムによりCMAC値を算出する。新アプレットインスタンス31bは、算出したCMAC値、及び、自身のバージョンを示す情報を含むトークンBAを生成し、アップグレードアプレットインスタンス32に送信する。
【0091】
アップグレードアプレットインスタンス32は、内部モードがモード1以外の場合、トークンBAを受け付けず、エラーを新アプレットインスタンス31bに返す。これにより、リストア認証は中止される。
【0092】
一方、アップグレードアプレットインスタンス32は、内部モードがモード1の場合、トークンBAを受け付ける。そして、アップグレードアプレットインスタンス32は、トークンBAを検証する。例えば、アップグレードアプレットインスタンス32は、内部に保持する共通鍵を用いて、トークンBAに含まれるCMAC値の整合性を検証する。
【0093】
また、アップグレードアプレットインスタンス32は、トークンBAに含まれる新アプレット31bのバージョンと、バックアップリクエストに含まれる新しいアプレット31のバージョンとの整合性を検証する。すなわち、アップグレードアプレットインスタンス32は、新アプレット31bのバージョンと、バックアップリクエストに含まれる新しいアプレット31のバージョンとが一致するか否かを検証する。
【0094】
アップグレードアプレットインスタンス32は、検証の結果、トークンBAが正常でない、又は、新しいアプレット31のバージョンが正常でないと判定した場合、リストア認証を中止する。
【0095】
一方、アップグレードアプレットインスタンス32は、トークンBAが正常、かつ、新しいアプレット31のバージョンが正常であると判定した場合、モード1からモード2に遷移し、リストア認証が完了する。また、アップグレードアプレットインスタンス32は、リストアデータ取得用オブジェクトを新アプレットインスタンス31bに送信する。リストアデータ取得用オブジェクトは、アップグレードアプレットインスタンス32に蓄積されているバックアップデータ(リストアデータ)を取得するためのプログラムである。
【0096】
これに対して、新アプレットインスタンス31bは、リストアデータ取得用オブジェクトを受信する。そして、新アプレットインスタンス31bは、アップグレードアプレットインスタンス32から提供されたリストアデータ取得用オブジェクトを用いて、リストアデータ取得リクエストをアップグレードアプレットインスタンス32に送信する。
【0097】
これに対して、アップグレードアプレットインスタンス32は、内部モードがモード2以外である場合、リストアデータ取得用オブジェクトを受け付けず、リストア処理を行わない。
【0098】
一方、アップグレードアプレットインスタンス32は、内部モードがモード2である場合、リストアデータ取得リクエストを受け付け、内部に蓄積している暗号化されたバックアップデータ(リストアデータ)を新アプレットインスタンス31bに送信する。
【0099】
このリストアデータ取得リクエストと、それに対するバックアップデータ(リストアデータ)の授受が、アップグレードアプレットインスタンス32に蓄積されているバックアップデータが全て新アプレットインスタンス31bに送信されるまで繰り返される。
【0100】
そして、アップグレードアプレットインスタンス32は、全てのバックアップデータの送信が完了し、蓄積されているバックアップデータが削除された後、モード2からモード0に戻る。
【0101】
このように、所定の手順に従ってリストア認証が行われないと、アップグレードアプレットインスタンス32の内部モードが正常に遷移しないため、リストア認証が成功しない。また、リストア認証が成功した場合のみ、アップグレードアプレットインスタンス32から提供されるリストアデータ取得用オブジェクトを用いて、リストア処理が実行される。従って、アップグレードアプレットインスタンス32に蓄積されているバックアップデータを新アプレットインスタンス31bに安全に移すことができる。
【0102】
<各アプレットの状態遷移>
次に、
図5を参照して、アプレット31の更新処理中の旧アプレット31a、新アプレット31b、及び、アップグレードアプレット32の状態遷移について説明する。
【0103】
アプレット31の更新処理の開始時に、旧アプレット31aの内部状態は、通常状態に設定されている。通常状態において、旧アプレットインスタンス31aは、通常の処理を行うことが可能である。例えば、旧アプレットインスタンス31aは、全ての有効な外部コマンドを受け付け、受け付けた外部コマンドに対応する処理を行う。
【0104】
また、アプレット31の更新処理の開始時に、アップグレードアプレット32の内部状態は、初期状態に設定されている。初期状態において、アップグレードアプレットインスタンス32は、バックアップデータを蓄積していない状態(データ未存在の状態)である。
【0105】
次に、旧アプレットインスタンス31aとアップグレードアプレットインスタンス32との間のバックアップ認証が成功した後、バックアップ処理の開始時に、旧アプレット31aの内部状態は、通常状態からバックアップ中状態に遷移する。バックアップ中状態において、旧アプレットインスタンス31aは、アップグレードアプレットインスタンス32とバックアップ処理を行うとともに、外部コマンドによる処理を制限する。具体的には、旧アプレットインスタンス31aは、セレクトコマンドのみを受け付け、セレクトコマンドに対応する処理を行い、その他の外部コマンドを受け付けない。セレクトコマンドは、新たなセッション(新たな処理)の開始時に、必ず送信される外部コマンドである。
【0106】
また、アップグレードアプレットインスタンス32が旧アプレットインスタンス31aからのバックアップデータの受信を開始したとき、アップグレードアプレット32の内部状態は、初期状態からバックアップ中状態に遷移する。バックアップ中状態において、アップグレードアプレットインスタンス32は、旧アプレット31aとバックアップ処理を行う。
【0107】
次に、旧アプレット31aとアップグレードアプレット32との間のバックアップ処理が完了した後、旧アプレット31aは、バックアップ中状態からバックアップ完了状態に遷移する。バックアップ完了状態において、旧アプレットインスタンス31aは、外部コマンドを一切受け付けず、外部コマンドによる処理を行わない。すなわち、旧アプレットインスタンス31aは、アプレット31の更新処理を優先し、他の処理を実行しない。これにより、例えば、旧アプレットインスタンス31aが、他の処理を実行することにより、内部データが更新され、アップグレードアプレット32にバックアップされているデータとの不一致が発生することが防止される。
【0108】
また、旧アプレットインスタンス31aとアップグレードアプレットインスタンス32との間のバックアップ処理が完了した後、アップグレードアプレット32の内部状態は、バックアップ中状態からリストア中状態に遷移する。
【0109】
一方、バックアップ中状態において、旧アプレットインスタンス31aは、セレクトコマンドを受信した場合、アプレット31の更新処理をキャンセルし、アップグレードアプレットインスタンス32に、データ削除を指示するメッセージを送信する。また、旧アプレット31aの内部状態は、バックアップ中状態から通常状態に戻り、旧アプレットインスタンス31aは、セレクトコマンドに対応したセッションを開始する。すなわち、バックアップ中状態において、旧アプレットインスタンス31aは、新たなセッションの開始が指示された場合、アプレット31の更新処理よりも、新たなセッションに対応する処理を優先する。
【0110】
また、アップグレードアプレットインスタンス32は、旧アプレットインスタンス31aからデータ削除のメッセージを受信した場合、内部に蓄積されているバックアップデータを削除し、アプレット31の更新処理を中止する。そして、アップグレードアプレット32の内部状態は、初期状態に戻る。これにより、旧アプレットインスタンス31aが、新たなセッションに対応する処理を行い、内部データが更新されても、旧アプレットインスタンス31aの内部データとバックアップデータとの不一致が発生することが防止される。
【0111】
また、バックアップ完了状態において、旧アプレットインスタンス31a及び旧アプレット31aのパッケージが、eSEチップ22から削除される。さらに、新アプレット31bのパッケージがSEチップ22にロードされる。このとき、新アプレット31bの内部状態は、初期状態に設定される。初期状態において、新アプレット31bは、インスタンス化前であり、内部データの更新等の処理を実行することはできない。
【0112】
そして、新アプレット31bがインスタンス化され、アップグレードアプレット32にデータが存在する場合、すなわち、アップグレードアプレット32が旧アプレット31aの内部データをバックアップしている場合、新アプレット31bの内部状態は、初期状態からリストア中状態に遷移する。リストア中状態において、新アプレットインスタンス31bは、外部コマンドを一切受け付けず、外部コマンドによる処理を行わない。すなわち、新アプレットインスタンス31bは、アプレット31の更新処理を優先し、他の処理を実行しない。これにより、例えば、新アプレットインスタンス31bが、他の処理を実行することにより、内部データが更新され、アップグレードアプレットインスタンス32にバックアップされているデータに存在しないデータが、新アプレットインスタンス31bに蓄積されることが防止される。
【0113】
また、リストア中状態において、リストア認証のエラー等により、アプレット31の更新処理にエラーが発生した場合、新アプレット31bの内部状態はエラー状態に遷移する。エラー状態において、新アプレットインスタンス31bは、リストア状態の場合と同様に、外部コマンドを一切受け付けず、外部コマンドによる処理を行わない。
【0114】
そして、エラー状態において、新アプレットインスタンス31b及び新アプレット31bのパッケージが、eSEチップ22から削除される。また、新たな新アプレット31bのパッケージがSEチップ22にロードされる。そして、新アプレット31bのインスタンス化から処理がやり直される。
【0115】
一方、アップグレードアプレット32と新アプレット31bとのリストア処理が完了した後、アップグレードアプレットインスタンス32のバックアップデータが削除され、アップグレードアプレット32の内部状態は、リストア中状態から初期状態に戻る。また、アップグレードアプレット32のバックアップデータが削除され、内部データが未存在の状態になった後、新アプレット31bの内部状態は、リストア中状態から、上述した旧アプレット31aと同様の通常状態に遷移する。
【0116】
このように、旧アプレット31a、新アプレット31b、及び、アップグレードアプレット32の状態が連動して管理され、アプレット31の更新処理中に、旧アプレットインスタンス31a又は新アプレットインスタンス31bが、更新処理以外の処理を行い、内部データが更新されることが防止される。すなわち、アップグレードアプレットインスタンス32がバックアップデータを蓄積している状態で、旧アプレットインスタンス31a又は新アプレットインスタンス31bの内部データが更新されることが防止される。これにより、アプレット31を更新する前と更新した後でのデータの整合性が失われることが防止される。
【0117】
<<2.変形例>>
以下、上述した本技術の実施の形態の変形例について説明する。
【0118】
本技術は、上述した例に限定されず、オペレーティングシステムやアプリケーションソフトウエア等の各種のソフトウエアの更新を行う場合に適用することができる。
【0119】
また、本技術は、ソフトウエアの更新を行う場合だけでなく、例えば、異なるソフトウエア間でデータの移管を行う場合、すなわち、あるソフトウエアから他のソフトウエアにデータを移す場合にも適用することができる。なお、この場合、移管元のソフトウエアのデータは、移管後に削除してもされなくてもよい。
【0120】
さらに、バックアップ認証及びリストア認証の方法は、上述した方法に限定されず、他の方法を適用することも可能である。
【0121】
<<3.その他>>
<コンピュータの構成例>
上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウェアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
【0122】
図6は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
【0123】
コンピュータ1000において、CPU(Central Processing Unit)1001,ROM(Read Only Memory)1002,RAM(Random Access Memory)1003は、バス1004により相互に接続されている。
【0124】
バス1004には、さらに、入出力インターフェース1005が接続されている。入出力インターフェース1005には、入力部1006、出力部1007、記録部1008、通信部1009、及びドライブ1010が接続されている。
【0125】
入力部1006は、入力スイッチ、ボタン、マイクロフォン、撮像素子などよりなる。出力部1007は、ディスプレイ、スピーカなどよりなる。記録部1008は、ハードディスクや不揮発性のメモリなどよりなる。通信部1009は、ネットワークインターフェースなどよりなる。ドライブ1010は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどのリムーバブルメディア1011を駆動する。
【0126】
以上のように構成されるコンピュータ1000では、CPU1001が、例えば、記録部1008に記録されているプログラムを、入出力インターフェース1005及びバス1004を介して、RAM1003にロードして実行することにより、上述した一連の処理が行われる。
【0127】
コンピュータ1000(CPU1001)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア1011に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
【0128】
コンピュータ1000では、プログラムは、リムーバブルメディア1011をドライブ1010に装着することにより、入出力インターフェース1005を介して、記録部1008にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部1009で受信し、記録部1008にインストールすることができる。その他、プログラムは、ROM1002や記録部1008に、あらかじめインストールしておくことができる。
【0129】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【0130】
また、本明細書において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、すべての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれも、システムである。
【0131】
さらに、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
【0132】
例えば、本技術は、1つの機能をネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
【0133】
また、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。
【0134】
さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
【0135】
<構成の組み合わせ例>
本技術は、以下のような構成をとることもできる。
【0136】
(1)
第1のソフトウエア、第2のソフトウエア、及び、第3のソフトウエアを実行する制御部を
備え、
前記第1のソフトウエアと前記第2のソフトウエアとの間の第1の認証が成功した場合、前記第1のソフトウエアのデータを前記第2のソフトウエアにバックアップし、
前記第2のソフトウエアと前記第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データを前記第3のソフトウエアに移す
情報処理装置。
(2)
前記第1のソフトウエアは、前記第1の認証が成功した後、第1の状態から第2の状態に遷移し、前記第2のソフトウエアへの前記データのバックアップが完了した後、前記第2の状態から第3の状態に遷移する
前記(1)に記載の情報処理装置。
(3)
前記第1の状態は、全ての有効な外部コマンドを受け付ける状態であり、
前記第2の状態は、一部の外部コマンドのみを受け付ける状態であり、
前記第3の状態は、全ての外部コマンドを受け付けない状態である
前記(2)に記載の情報処理装置。
(4)
前記第1のソフトウエアは、前記第2の状態において、実行中の処理と異なる他の処理が指示されたとき、前記他の処理を優先し、前記第3の状態において、前記実行中の処理と異なる前記他の処理が指示されたとき、前記実行中の処理を優先する
前記(2)又は(3)に記載の情報処理装置。
(5)
前記第1のソフトウエアは、前記第2の状態において、前記他の処理が指示された場合、前記第1の状態に戻り、前記他の処理を実行し、
前記第2のソフトウエアは、前記第1のソフトウエアが、前記第1の状態に戻り、前記他の処理を実行する場合、バックアップしている前記データを削除する
前記(4)に記載の情報処理装置。
(6)
前記実行中の処理は、前記第1のソフトウエアを前記第3のソフトウエアに更新する処理である
前記(4)又は(5)に記載の情報処理装置。
(7)
前記第3のソフトウエアは、前記第2のソフトウエアにバックアップされている前記データを全て取得した後、第1の状態から第2の状態に遷移する
前記(1)乃至(6)のいずれかに記載の情報処理装置。
(8)
前記第3のソフトウエアは、前記第2のソフトウエアにバックアップされている前記データを全て取得した後、前記第2のソフトウエアから前記データが削除されてから、前記第1の状態から前記第2の状態に遷移する
前記(7)に記載の情報処理装置。
(9)
前記第1の状態は、全ての外部コマンドを受け付けない状態であり、
前記第2の状態は、全ての有効な外部コマンドを受け付ける状態である
前記(7)又は(8)に記載の情報処理装置。
(10)
前記第3のソフトウエアは、前記第1の状態において、実行中の処理と異なる他の処理が指示されたとき、前記実行中の処理を優先する
前記(7)乃至(9)のいずれかに記載の情報処理装置。
(11)
前記実行中の処理は、前記第1のソフトウエアを前記第3のソフトウエアに更新する処理である
前記(10)に記載の情報処理装置。
(12)
前記第1のソフトウエアは、前記第2のソフトウエアから提供される送信用のプログラムを用いて、前記第2のソフトウエアに前記データを送信する
前記(1)乃至(11)のいずれかに記載の情報処理装置。
(13)
前記第2のソフトウエアは、前記第1の認証が成功した場合、前記送信用のプログラムを前記第1のソフトウエアに提供する
前記(12)に記載の情報処理装置。
(14)
前記第3のソフトウエアは、前記第2のソフトウエアから提供される取得用のプログラムを用いて、前記第2のソフトウエアから前記データを取得する
前記(1)乃至(13)のいずれかに記載の情報処理装置。
(15)
前記第2のソフトウエアは、前記第2の認証が成功した場合、前記取得用のプログラムを前記第3のソフトウエアに提供する
前記(14)に記載の情報処理装置。
(16)
前記第1のソフトウエアは、前記第3のソフトウエアにより更新される
前記(1)乃至(15)のいずれかに記載の情報処理装置。
(17)
前記第1のソフトウエア及び前記第3のソフトウエアは、アプリケーションである
前記(1)乃至(16)のいずれかに記載の情報処理装置。
(18)
第1のソフトウエアと第2のソフトウエアとの間の第1の認証が成功した場合、前記第1のソフトウエアのデータを前記第2のソフトウエアにバックアップし、
前記第2のソフトウエアと第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データを前記第3のソフトウエアに移す
情報処理方法。
(19)
第1のソフトウエアと第2のソフトウエアとの間の第1の認証が成功した場合、前記第1のソフトウエアのデータを前記第2のソフトウエアにバックアップし、
前記第2のソフトウエアと第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データを前記第3のソフトウエアに移す
処理をコンピュータに実行させるためのプログラム。
(20)
第1の情報処理装置と、
第2の情報処理装置と
を備え、
前記第1の情報処理装置は、第1のソフトウエアと第2のソフトウエアとの間の第1の認証が成功したとき、前記第1のソフトウエアのデータを前記第2のソフトウエアにバックアップし、前記第2のソフトウエアと、前記第2の情報処理装置から取得した第3のソフトウエアとの間の第2の認証が成功した場合、前記第2のソフトウエアにバックアップされている前記データを前記第3のソフトウエアに移す
情報処理システム。
【0137】
なお、本明細書に記載された効果はあくまで例示であって限定されるものではなく、他の効果があってもよい。
【符号の説明】
【0138】
11 情報処理装置, 12 サーバ, 21 デバイスホスト, 22 eSEチップ, 23 CLFチップ, 31 アプレット,アプレットインスタンス, 31a 旧アプレット,旧アプレットインスタンス, 31b 新アプレット,新アプレットインスタンス, 32 アップグレードアプレット,アップグレードアプレットインスタンス