(57)【特許請求の範囲】
【請求項１】
無線でのファームウェア配信技術に基づいてファームウェアを処理する方法であって、
サーバにより、少なくとも１つのファームウェアアップグレードファイルで検査処理を実行し、第１の検査データを形成するステップ
を有し、
前記サーバにより、少なくとも１つのファームウェアアップグレードファイルで検査処理を実行し、第１の検査データを形成するステップは、
前記サーバにより、前記少なくとも１つのファームウェアアップグレードファイルで巡回冗長検査処理を実行し、前記第１の検査データとして巡回冗長検査データを形成するステップ、又は
前記サーバにより、前記少なくとも１つのファームウェアアップグレードファイルでMD5処理を実行し、前記第１の検査データとしてMD5情報検査データを形成するステップ
を有し、
前記方法は、
前記サーバにより、前記第１の検査データで暗号化処理を実行し、第１の暗号化データを形成するステップ
を有し、
前記第１の検査データが巡回冗長検査データである場合、前記サーバにより、前記第１の検査データで暗号化処理を実行し、第１の暗号化データを形成するステップは、
前記巡回冗長検査データ及び前記ファームウェアアップグレードファイルで秘密鍵暗号化を実行し、前記秘密鍵暗号化を受けたデータを形成するステップであり、前記秘密鍵暗号化を受けた前記データは、前記秘密鍵暗号化を受けた前記巡回冗長検査データ及び前記秘密鍵暗号化を受けたファームウェアアップグレードファイルを有し、前記秘密鍵暗号化を受けた前記巡回冗長検査データは、前記第１の暗号化データであり、ファームウェアアップグレードパッケージに含まれる前記ファームウェアアップグレードファイルは、前記秘密鍵暗号化を受けた前記ファームウェアアップグレードファイルであるステップ、又は
前記巡回冗長検査データで前記MD5処理を実行し、前記巡回冗長検査データに対応するMD5情報を形成し、前記対応するMD5情報で前記秘密鍵暗号化を実行し、前記第１の暗号化データを形成するステップ
を有し、
前記方法は、
前記サーバにより、前記第１の暗号化データと前記第１の検査データと前記ファームウェアアップグレードファイルとをファームウェアアップグレードパッケージに結合し、無線インタフェースを通じて前記ファームウェアアップグレードパッケージを移動端末に送信するステップ
を有し、
前記秘密鍵は、前記サーバに予め格納され、前記移動端末に設定された公開鍵に合致する方法。
【請求項２】
前記第１の検査データで暗号化処理を実行し、第１の暗号化データを形成するステップは、
前記第１の検査データで秘密鍵暗号化を実行し、前記第１の暗号化データとして前記秘密鍵暗号化を受けたデータを使用するステップ
を有する、請求項１に記載の無線でのファームウェア配信技術に基づいてファームウェアを処理する方法。
【請求項３】
前記少なくとも１つのファームウェアアップグレードファイルで検査処理を実行する前に、
複数のファームウェアアップグレードファイルを取得するステップであり、前記ファームウェアアップグレードパッケージは、前記取得された複数のファームウェアアップグレードファイルを有するステップ
を更に有する、請求項１に記載の無線でのファームウェア配信技術に基づいてファームウェアを処理する方法。
【請求項４】
無線でのファームウェア配信技術に基づいてファームウェアをアップグレードする方法であって、
移動端末により、無線インタフェースを通じて、サーバにより送信されたファームウェアアップグレードパッケージを受信し、前記ファームウェアアップグレードパッケージをキャッシュの区画に格納するステップと、
前記移動端末により、前記キャッシュの区画に格納された前記ファームウェアアップグレードパッケージを読み取るステップであり、前記ファームウェアアップグレードパッケージは、第１の暗号化データと第１の検査データとファームウェアアップグレードファイルとを有するステップと
を有し、
前記移動端末により、前記キャッシュの区画に格納された前記ファームウェアアップグレードパッケージを読み取るステップは、
前記キャッシュの区画をトラバースし、前記ファームウェアアップグレードパッケージに対応するファイルヘッダを取得するステップと、
前記ファームウェアアップグレードパッケージに対応する前記ファイルヘッダから、目的のファイルヘッダとして有効なファイルヘッダを選択するステップと、
前記目的のファイルヘッダの識別情報に従って、前記識別情報に対応するデータパケットを読み取り、前記ファームウェアアップグレードパッケージを形成するように、前記識別情報に対応する前記データパケットを構成するステップと
を有し、
前記方法は、
前記移動端末により、前記ファームウェアアップグレードパッケージの前記第１の暗号化データで解読を実行し、第２の検査データを形成するステップと、
前記第２の検査データが前記第１の検査データと整合する場合、前記移動端末により、前記ファームウェアアップグレードパッケージの前記ファームウェアアップグレードファイルに従って対応するファームウェアのアップグレード動作を実行するステップと
を有する方法。
【請求項５】
前記ファームウェアアップグレードパッケージに対応する前記ファイルヘッダから、目的のファイルヘッダとして有効なファイルヘッダを選択するステップは、
前記ファームウェアアップグレードパッケージに対応する有効なファイルヘッダから、最大ブロック番号を有するファイルヘッダを前記目的のファイルヘッダとして選択し、前記最大ブロック番号を有する前記ファイルヘッダが、ブロック番号が同じ複数のファイルヘッダを有する場合、ブロック番号が同じ前記複数のファイルヘッダから、最大のフラッシュアドレスを有するファイルヘッダを前記目的のファイルヘッダとして選択するステップ
を有する、請求項４に記載の無線でのファームウェア配信技術に基づいてファームウェアをアップグレードする方法。
【請求項６】
前記移動端末により、前記ファームウェアアップグレードパッケージの前記第１の暗号化データで解読を実行し、第２の検査データを形成するステップは、
前記移動端末により、前記ファームウェアアップグレードパッケージの前記第１の暗号化データで公開鍵解読を実行し、解読されたデータを前記第２の検査データとして使用するステップ
を有し、
前記公開鍵は、前記移動端末に設定され、前記サーバに予め格納された秘密鍵に合致する、請求項４に記載の無線でのファームウェア配信技術に基づいてファームウェアをアップグレードする方法。
【請求項７】
前記移動端末により、前記ファームウェアアップグレードパッケージの前記第１の暗号化データで解読を実行し、前記第２の検査データを形成した後に、
前記第２の検査データが前記第１の検査データと整合するか否かを判定するステップを更に有し、
前記第２の検査データが前記第１の検査データと整合するか否かを判定するステップは、
前記第１の検査データが巡回冗長検査データであり、前記第１の暗号化データが秘密鍵暗号化が前記巡回冗長検査データで実行された後に取得されたデータである場合、前記第２の検査データと前記第１の検査データとを直接比較し、これらが同じであるか否かを判定するステップ、
前記第１の検査データがMD5情報検査データであり、前記第１の暗号化データが前記秘密鍵暗号化が前記MD5情報検査データで実行された後に取得されたデータである場合、前記第２の検査データと前記第１の検査データとを直接比較し、これらが同じであるか否かを判定するステップ、又は
前記第１の検査データが巡回冗長検査データであり、前記第１の暗号化データが前記秘密鍵暗号化が前記巡回冗長検査データに対応するMD5情報で実行された後に取得されたデータである場合、前記ファームウェアアップグレードパッケージの前記巡回冗長検査データでMD5処理を実行し、第２のMD5情報を形成し、前記第２の検査データが前記第２のMD5情報と整合するか否かを確認するステップであり、前記第２の検査データは、前記ファームウェアアップグレードパッケージの前記第１の暗号化データの解読後に形成されたMD5情報であるステップ
を有する、請求項６に記載の無線でのファームウェア配信技術に基づいてファームウェアをアップグレードする方法。
【請求項８】
前記移動端末により、前記ファームウェアアップグレードパッケージの前記ファームウェアアップグレードファイルに従って対応するファームウェアのアップグレード動作を実行する前に、
前記ファームウェアアップグレードファイルで検査処理を実行し、第３の検査データを形成するステップと、
前記第３の検査データが前記ファームウェアアップグレードパッケージの前記第１の検査データと整合するか否かを確認するステップと、
整合する場合、前記ファームウェアアップグレードパッケージの前記ファームウェアアップグレードファイルに従って前記対応するファームウェアで前記アップグレード動作を実行し、整合しない場合、前記ファームウェアアップグレードファイルに従って前記対応するファームウェアで前記アップグレード動作を実行せずに、前記ファームウェアアップグレードファイルを破棄するステップと
を更に有する、請求項４ないし７のうちいずれか１項に記載の無線でのファームウェア配信技術に基づいてファームウェアをアップグレードする方法。
【請求項９】
少なくとも１つのファームウェアアップグレードファイルで検査処理を実行し、第１の検査データを形成するように構成された検査モジュールを有し、
前記検査モジュールは、
前記少なくとも１つのファームウェアアップグレードファイルで巡回冗長検査処理を実行し、前記第１の検査データとして巡回冗長検査データを形成するように構成された巡回冗長検査ユニット、及び／又は
前記少なくとも１つのファームウェアアップグレードファイルでMD5処理を実行し、前記第１の検査データとしてMD5情報検査データを形成するように構成されたMD5ユニット
を有し、
前記検査モジュールにより形成された前記第１の検査データで暗号化処理を実行し、第１の暗号化データを形成するように構成された暗号化モジュールを有し、
前記暗号化モジュールは、
前記第１の検査データが巡回冗長検査データである場合、前記巡回冗長検査データ及び前記ファームウェアアップグレードファイルで秘密鍵暗号化を実行し、前記秘密鍵暗号化を受けたデータを形成するように構成された第２の暗号化ユニットであり、前記秘密鍵暗号化を受けた前記データは、前記秘密鍵暗号化を受けた前記巡回冗長検査データ及び秘密鍵暗号化を受けたファームウェアアップグレードファイルを有し、前記秘密鍵暗号化を受けた前記巡回冗長検査データは、前記第１の暗号化データであり、前記ファームウェアアップグレードパッケージに含まれる前記ファームウェアアップグレードファイルは、前記秘密鍵暗号化を受けた前記ファームウェアアップグレードファイルである第２の暗号化ユニット、及び／又は
前記第１の検査データが巡回冗長検査データである場合、前記巡回冗長検査データで前記MD5処理を実行し、前記巡回冗長検査データに対応するMD5情報を形成し、前記対応するMD5情報で前記秘密鍵暗号化を実行し、前記第１の暗号化データを形成する第３の暗号化ユニット
を有し、
前記第１の暗号化データと前記第１の検査データと前記ファームウェアアップグレードファイルとをファームウェアアップグレードパッケージに結合し、無線インタフェースを通じて前記ファームウェアアップグレードパッケージを移動端末に送信するように構成された処理モジュールを有し、
前記秘密鍵は、サーバに予め格納され、前記移動端末に設定された公開鍵に合致するサーバ。
【請求項１０】
前記暗号化モジュールは、
前記第１の検査データで秘密鍵暗号化を実行し、前記第１の暗号化データとして前記秘密鍵暗号化を受けたデータを使用するように構成された第１の暗号化ユニット
を有する、請求項９に記載のサーバ。
【請求項１１】
前記検査モジュールが前記少なくとも１つのファームウェアアップグレードファイルで前記検査処理を実行する前に、複数のファームウェアアップグレードファイルを取得する取得モジュールであり、前記ファームウェアアップグレードパッケージは、前記複数のファームウェアアップグレードファイルを有する取得モジュール
を更に有する、請求項９に記載のサーバ。
【請求項１２】
無線インタフェースを通じて、サーバにより送信されたファームウェアアップグレードパッケージを受信し、前記ファームウェアアップグレードパッケージをキャッシュの区画に格納するように構成された受信モジュールと、
前記キャッシュの区画に格納された前記ファームウェアアップグレードパッケージを読み取るように構成された読み取りモジュールであり、前記ファームウェアアップグレードパッケージは、第１の暗号化データと第１の検査データとファームウェアアップグレードファイルとを有する読み取りモジュールと
を有し、
前記読み取りモジュールは、
前記キャッシュの区画をトラバースし、前記ファームウェアアップグレードパッケージに対応するファイルヘッダを取得するトラバースユニットと、
前記ファームウェアアップグレードパッケージに対応する前記ファイルヘッダから、目的のファイルヘッダとして有効なファイルヘッダを選択する選択ユニットと、
前記目的のファイルヘッダの識別情報に従って、前記識別情報に対応するデータパケットを読み取り、前記ファームウェアアップグレードパッケージを形成するように、前記識別情報に対応する前記データパケットを構成する読み取りユニットと
を有し、
前記読み取りモジュールにより読み取られた前記ファームウェアアップグレードパッケージの前記第１の暗号化データを解読し、第２の検査データを形成するように構成された解読モジュールと、
前記第２の検査データが前記第１の検査データと整合する場合、前記ファームウェアアップグレードパッケージの前記ファームウェアアップグレードファイルに従って対応するファームウェアのアップグレード動作を実行するように構成されたアップグレードモジュールと
を有する移動端末。
【請求項１３】
前記選択ユニットは、
前記ファームウェアアップグレードパッケージに対応する有効なファイルヘッダから、最大ブロック番号を有するファイルヘッダを前記目的のファイルヘッダとして選択するように構成された第１の選択サブユニットと、
前記最大ブロック番号を有する前記ファイルヘッダが、ブロック番号が同じ複数のファイルヘッダを有する場合、ブロック番号が同じ前記複数のファイルヘッダから、最大のフラッシュアドレスを有するファイルヘッダを前記目的のファイルヘッダとして選択する第２の選択サブユニットと
を有する、請求項１２に記載の移動端末。
【請求項１４】
前記解読モジュールは、前記ファームウェアアップグレードパッケージの前記第１の暗号化データで公開鍵解読を実行し、解読されたデータを前記第２の検査データとして使用するように特に構成され、
前記公開鍵は、前記移動端末に設定され、前記サーバに予め格納された秘密鍵に合致する、請求項１２に記載の移動端末。
【請求項１５】
前記解読モジュールが前記ファームウェアアップグレードパッケージの前記第１の暗号化データを解読し、前記第２の検査データを形成した後に、前記第２の検査データが前記第１の検査データと整合するか否かを判定する判定モジュールを更に有し、
前記判定モジュールは、
前記第１の検査データが巡回冗長検査データであり、前記第１の暗号化データが秘密鍵暗号化が前記巡回冗長検査データで実行された後に取得されたデータである場合、前記第２の検査データと前記第１の検査データとを直接比較し、これらが同じであるか否かを判定するように構成された第１の比較ユニット、
前記第１の検査データがMD5情報検査データであり、前記第１の暗号化データが前記秘密鍵暗号化が前記MD5情報検査データで実行された後に取得されたデータである場合、前記第２の検査データと前記第１の検査データとを直接比較し、これらが同じであるか否かを判定する第２の比較ユニット、又は
前記第１の検査データが巡回冗長検査データであり、前記第１の暗号化データが前記秘密鍵暗号化が前記巡回冗長検査データに対応するMD5情報で実行された後に取得されたデータである場合、前記ファームウェアアップグレードパッケージの前記巡回冗長検査データでMD5処理を実行し、第２のMD5情報を形成し、前記第２の検査データが前記第２のMD5情報と整合するか否かを確認するように構成された第３の比較ユニットであり、前記第２の検査データは、前記ファームウェアアップグレードパッケージの前記第１の暗号化データの解読後に形成されたMD5情報である第３の比較ユニット
を有する、請求項１４に記載の移動端末。
【請求項１６】
前記アップグレードモジュールが前記ファームウェアアップグレードパッケージの前記ファームウェアアップグレードファイルに従って対応するファームウェアのアップグレード動作を実行する前に、前記ファームウェアアップグレードファイルで検査処理を実行し、第３の検査データを形成するように構成された検査モジュールと、
前記第３の検査データが前記ファームウェアアップグレードパッケージの前記第１の検査データと整合するか否かを確認するように構成された確認モジュールと
を更に有し、
前記アップグレードモジュールは、前記第３の検査データが前記第１の検査データと整合する場合、前記ファームウェアアップグレードパッケージの前記ファームウェアアップグレードファイルに従って前記対応するファームウェアで前記アップグレード動作を実行し、整合しない場合、前記ファームウェアアップグレードファイルに従って前記対応するファームウェアで前記アップグレード動作を実行せずに、前記ファームウェアアップグレードファイルを破棄するように構成される、請求項１２ないし１５のうちいずれか１項に記載の移動端末。
【請求項１７】
請求項９ないし１１のうちいずれか１項に記載のサーバと、
請求項１２ないし１６のうちいずれか１項に記載の移動端末と
を有する、無線でのファームウェア配信技術に基づいてファームウェアをアップグレードするシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、無線通信技術の分野に関し、特に、無線でのファームウェア配信（FOTA：Firmware  Over  The  Air）技術に基づいてファームウェアを処理する方法、装置及びシステムに関する。
【背景技術】
【０００２】
技術の発展により、移動電話のような移動端末の機能は、ますます高機能になっている。移動端末のソフトウェア（ファームウェアとしても知られる）のサイズも増大している。移動端末が市場に出され、そのファームウェアがアップグレードされる必要がある場合、ユーザが広く分布しているため、通常のアップグレード方法（アップグレードのための製造者による移動端末のリコール又はインターネットを通じたアップグレード）は、ほとんど実現不可能である。
【０００３】
従って、FOTA技術を使用することにより、移動端末のファームウェアをアップグレードする技術が適用される。FOTAは、移動端末がコード及びファイルシステムのようなファームウェアを自分でアップグレードできるように、移動端末の無線インタフェース（air  interface）を通じて移動端末にアップグレードパケットを送信する。その動作は簡単であり、ユーザ自身により完了され得るため、FOTAアップグレード方法は、キャリアによりますます好まれている。
【０００４】
一般的な既存のFOTAアップグレード方法は、特定のアルゴリズムを使用することにより、アップグレード前後の２つのバージョンの特定のファームウェアのアップグレードパケットを計算し、移動端末の無線インタフェースを通じてアップグレードパケットをユーザの移動端末にダウンロードし、移動端末でFOTAアップグレード処理を開始し、ファームウェアのアップグレードを完了し、アップグレード後のファームウェアを開始するために移動端末をリスタートすることである。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明の実施中に、発明者は、従来技術が少なくとも以下の問題を有することを見出した。ファームウェアアップグレードのためのアップグレードパケットは、無線インタフェースを通じて移動端末に直接送信され、移動端末を不正コードによる侵入の脅威にさらす。
【０００６】
本発明の実施例は、無線でのファームウェア配信技術に基づいてファームウェアを処理する方法、装置及びシステムを提供する。これらは、移動端末が不正コードの侵入を受けやすいという従来技術の欠点を解決し、複数のファームウェアのアップグレードを迅速に実施し、移動端末のセキュリティを改善するために使用される。
【課題を解決するための手段】
【０００７】
本発明の実施例は、無線でのファームウェア配信技術に基づいてファームウェアを処理する方法を提供し、少なくとも１つのファームウェアアップグレードファイルで検査処理を実行し、第１の検査データを形成するステップと、第１の検査データで暗号化処理を実行し、第１の暗号化データを形成するステップと、第１の暗号化データと第１の検査データとファームウェアアップグレードファイルとをファームウェアアップグレードパッケージに結合し、無線インタフェースを通じてファームウェアアップグレードパッケージを移動端末に送信するステップとを含む。
【０００８】
本発明の実施例は、無線でのファームウェア配信技術に基づいてファームウェアをアップグレードする方法を更に提供し、無線インタフェースを通じて、サーバにより送信されたファームウェアアップグレードパッケージを受信し、ファームウェアアップグレードパッケージをキャッシュの区画に格納するステップと、キャッシュの区画に格納されたファームウェアアップグレードパッケージを読み取るステップであり、ファームウェアアップグレードパッケージは、第１の暗号化データと第１の検査データとファームウェアアップグレードファイルとを含むステップと、ファームウェアアップグレードパッケージの第１の暗号化データを解読し、第２の検査データを形成するステップと、第２の検査データが第１の検査データと整合する場合、ファームウェアアップグレードパッケージのファームウェアアップグレードファイルに従って対応するファームウェアのアップグレード動作を実行するステップとを含む。
【０００９】
本発明は、サーバを提供し、少なくとも１つのファームウェアアップグレードファイルで検査処理を実行し、第１の検査データを形成するように構成された検査モジュールと、検査モジュールにより形成された第１の検査データで暗号化処理を実行し、第１の暗号化データを形成するように構成された暗号化モジュールと、第１の暗号化データと第１の検査データとファームウェアアップグレードファイルとをファームウェアアップグレードパッケージに結合し、無線インタフェースを通じてファームウェアアップグレードパッケージを移動端末に送信するように構成された処理モジュールとを含む。
【００１０】
本発明は、移動端末を更に提供し、無線インタフェースを通じて、サーバにより送信されたファームウェアアップグレードパッケージを受信し、ファームウェアアップグレードパッケージをキャッシュの区画に格納するように構成された受信モジュールと、キャッシュの区画に格納されたファームウェアアップグレードパッケージを読み取るように構成された読み取りモジュールであり、ファームウェアアップグレードパッケージは、第１の暗号化データと第１の検査データとファームウェアアップグレードファイルとを含む読み取りモジュールと、読み取りモジュールにより読み取られたファームウェアアップグレードパッケージの第１の暗号化データを解読し、第２の検査データを形成するように構成された解読モジュールと、第２の検査データが第１の検査データと整合する場合、ファームウェアアップグレードパッケージのファームウェアアップグレードファイルに従って対応するファームウェアのアップグレード動作を実行するように構成されたアップグレードモジュールとを含む。
【００１１】
本発明の実施例は、前述のサーバ及び移動端末を含む、無線でのファームウェア配信技術に基づいてファームウェアをアップグレードするシステムを更に提供する。
【発明の効果】
【００１２】
ファームウェアアップグレードファイルで検査、暗号化及び結合処理を実行することにより、本発明の実施例において、無線でのファームウェア配信技術に基づいてファームウェアを処理する方法、装置及びシステムは、移動端末が不正コードの侵入を受けやすいという従来技術の欠点を解決し、複数のファームウェアのアップグレードを迅速に実施し、移動端末のセキュリティを改善する。
【図面の簡単な説明】
【００１３】
【図１】本発明の実施例による無線でのファームウェア配信技術に基づいてファームウェアを処理する方法のフローチャート
【図２】本発明の実施例による無線でのファームウェア配信技術に基づいてファームウェアをアップグレードする方法のフローチャート
【図３ａ】本発明の他の実施例による無線でのファームウェア配信技術に基づいてファームウェアをアップグレードする方法のフローチャート
【図３ｂ】本発明の他の実施例による無線でのファームウェア配信技術に基づいてファームウェアをアップグレードする方法のフローチャート
【図４】本発明の実施例によるサーバの概略構成図
【図５】本発明の他の実施例によるサーバの概略構成図
【図６】本発明の実施例による移動端末の概略構成図
【図７】本発明の他の実施例による移動端末の概略構成図
【図８】本発明の実施例による無線でのファームウェア配信技術に基づいてファームウェアをアップグレードするシステムのブロック図
【発明を実施するための形態】
【００１４】
本発明又は従来技術の技術的対策を明確に示すために、実施例又は従来技術の説明において使用される必要のある添付図面が以下に簡単に提示される。明らかに、以下の説明における添付図面は本発明の単なるいくつかの実施例である。当業者は、創造的取り組みを行うことなく、これらの添付図面に基づいて他の図面を得ることができる。
【００１５】
本発明の実施例の目的、技術的対策及び利点を明瞭にするために、本発明の実施例について、以下の添付図面を参照して明確且つ完全に説明する。明らかに、説明する実施例は、本発明の実施例の全てではなく、一部である。創造的取り組みを行わずに本発明の実施例に基づいて当業者により得られる全ての他の実施例も、本発明の保護範囲内に入るものとする。
【００１６】
図１は、本発明の実施例による無線でのファームウェア配信技術に基づいてファームウェアを処理する方法のフローチャートである。図１に示すように、本発明のこの実施例は、無線でのファームウェア配信技術に基づいてファームウェアを処理する方法を提供し、以下のステップを含む。
【００１７】
ステップ101：少なくとも１つのファームウェアアップグレードファイルで検査処理を実行し、第１の検査データを形成する。
【００１８】
ステップ102：第１の検査データで暗号化処理を実行し、第１の暗号化データを形成する。
【００１９】
ステップ103：第１の暗号化データと第１の検査データとファームウェアアップグレードファイルとをファームウェアアップグレードパッケージに結合し、無線インタフェースを通じてファームウェアアップグレードパッケージを移動端末に送信する。
【００２０】
この実施例では、前述のステップはサーバにより実行されてもよい。移動端末は、バイナリファイル、ファイルシステム、アップグレード実行スクリプト等のような、アップグレードされる複数のファームウェアを含んでもよい。サーバ側では、アップグレードされる少なくとも１つのファームウェアのファームウェアアップグレードファイルで検査処理を実行し、第１の検査データを形成する。次に、第１の検査データで暗号化処理を実行し、第１の暗号化データを形成する。最後に、第１の暗号化データと第１の検査データとファームウェアアップグレードファイルとを１つのファームウェアアップグレードパッケージに結合し、無線インタフェースを通じてファームウェアアップグレードパッケージを移動端末に送信する。これにより、移動端末が受信したファームウェアアップグレードパッケージに従ってファームウェアアップグレードを実行する。
【００２１】
本発明のこの実施例において無線でのファームウェア配信技術に基づいてファームウェアを処理する方法は、ファームウェアアップグレードファイルで検査、暗号化及び結合処理を実行し、ファームウェアアップグレードパッケージを形成し、移動端末でファームウェアアップグレードパッケージに従ってファームウェアアップグレードを実行することにより、移動端末が不正コードの侵入を受けやすいという従来技術の欠点を解決し、複数のファームウェアのアップグレードを迅速に実施し、移動端末のセキュリティを改善する。
【００２２】
前述の方法の実施例に基づいて、ステップ101は以下のステップを含んでもよい。
【００２３】
a1：少なくとも１つのファームウェアアップグレードファイルで巡回冗長検査（CRC：Cyclic  Redundancy  Check）処理を実行し、第１の検査データとしてCRCデータを形成すること。
【００２４】
a2：又は、少なくとも１つのファームウェアアップグレードファイルでメッセージダイジェストアルゴリズム5（MD5：Message-Digest  Algorithm  5）処理を実行し、第１の検査データとしてMD5情報検査データを形成すること。
【００２５】
ファームウェアアップグレードファイルで検査処理を実行する場合、サーバは、CRC方法を採用してもよく、また、MD5方法を使用してもよい。CRC方法を使用することにより形成された検査データの長さは、ファームウェアアップグレードファイルの長さに比例して増加するが、MD5方法を使用することにより形成された検査データの長さは固定である。次の暗号化手順では、暗号化データが小さいほど、効率が高くなる。従って、MD5方法を使用することにより検査処理を実行することが例示的な対策になる。
【００２６】
前述の技術的対策に基づいて、ステップ102は以下のステップを含んでもよい。
【００２７】
b1：第１の検査データで秘密鍵暗号化を実行し、第１の暗号化データとして暗号化されたデータを使用する。
【００２８】
サーバは、内部に格納された秘密鍵を使用することにより、第１の暗号化データで暗号化処理を実行してもよい。秘密鍵は、工場配送時に移動端末に内部に設定された公開鍵に合致する。
【００２９】
更に、第１の検査データがCRCデータである場合、すなわち、ファームウェアアップグレードファイルがCRC方法を使用することにより処理される場合、ステップ102は以下のステップを含んでもよい。
【００３０】
b2：CRCデータ及びファームウェアアップグレードファイルで秘密鍵暗号化を実行し、暗号化されたデータを形成すること。ただし、暗号化されたデータは、暗号化されたCRCデータ及び暗号化されたファームウェアアップグレードファイルを含み、暗号化されたCRCデータは、第１の暗号化データであり、この時点で、ファームウェアアップグレードパッケージに含まれるファームウェアアップグレードファイルは、暗号化されたファームウェアアップグレードファイルである。
【００３１】
b3：又は、CRCデータでMD5処理を実行し、CRCデータに対応するMD5情報を形成し、対応するMD5情報で秘密鍵暗号化を実行し、第１の暗号化データを形成すること。
【００３２】
一方、第１の検査データがMD5情報検査データである場合、すなわち、ファームウェアアップグレードファイルがMD5方法を使用することにより処理される場合、CRC処理は、まずMD5情報検査データで実行され、CRCデータを形成し、次に、秘密鍵暗号化がCRCデータで実行され、第１の暗号化データを形成する。
【００３３】
すなわち、ファームウェアアップグレードファイルで検査及び暗号化処理を実行する段階で、秘密鍵暗号化を実行するステップの前に、CRC処理若しくはMD5処理又は２つの組み合わせがファームウェアアップグレードファイルで実行されてもよい。この２つの順序は限定されない。
【００３４】
更に、前述のステップ101の前に、この実施例で提供される無線でのファームウェア配信技術に基づいてファームウェアを処理する方法は、更に以下のステップを含んでもよい。
【００３５】
c1：複数のファームウェアアップグレードファイルを取得し、この時点で、ファームウェアアップグレードパッケージは、取得された複数のファームウェアアップグレードファイルを含む。
【００３６】
サーバは、表１のシーケンスに従ってファームウェアアップグレードパッケージを形成してもよい。
【表１】
0005608288.tif 000002
【００３７】
図２は、本発明の実施例による無線でのファームウェア配信技術に基づいてファームウェアを処理する方法のフローチャートである。図２に示すように、本発明のこの実施例は、無線でのファームウェア配信技術に基づいてファームウェアを処理する方法を提供し、以下のステップを含む。
【００３８】
ステップ201：無線インタフェースを通じて、サーバにより送信されたファームウェアアップグレードパッケージを受信し、ファームウェアアップグレードパッケージをキャッシュの区画（cache  partition）に格納する。
【００３９】
ステップ202：キャッシュの区画に格納されたファームウェアアップグレードパッケージを読み取る。ただし、ファームウェアアップグレードパッケージは、第１の暗号化データと第１の検査データとファームウェアアップグレードファイルとを含む。
【００４０】
ステップ203：ファームウェアアップグレードパッケージの第１の暗号化データを解読し、第２の検査データを形成する。
【００４１】
ステップ204：第２の検査データが第１の検査データと整合する場合、ファームウェアアップグレードパッケージのファームウェアアップグレードファイルに従って対応するファームウェアのアップグレード動作を実行する。
【００４２】
この実施例では、前述のステップは、移動端末により実行されてもよい。移動端末は、バイナリファイル、ファイルシステム、アップグレード実行スクリプト等のような、アップグレードされる複数のファームウェアを含んでもよい。サーバ側がアップグレードされる少なくとも１つのファームウェアのファームウェアアップグレードファイルで動作を実行し、無線インタフェースを通じて形成されたファームウェアアップグレードパッケージをファームウェアがアップグレードされる移動端末に送信した場合、移動端末は、受信したファームウェアアップグレードパッケージをキャッシュ（CACHE）の区画に格納する。移動端末は、キャッシュの区画のファームウェアアップグレードパッケージを読み取り、ただし、ファームウェアアップグレードパッケージは、第１の暗号化データと第１の検査データとファームウェアアップグレードファイルとを含み、ファームウェアアップグレードパッケージの第１の暗号化データを解読し、第２の検査データを形成し、第２の検査データが第１の検査データと整合する場合、ファームウェアアップグレードパッケージのファームウェアアップグレードファイルに従って対応するファームウェアのアップグレード動作を実行する。
【００４３】
この実施例において無線でのファームウェア配信技術に基づいてファームウェアをアップグレードする方法では、ファームウェアアップグレードファイルで検査、暗号化及び結合動作を実行することによりサーバによって形成されたファームウェアアップグレードパッケージを受信した後に、移動端末は、ファームウェアアップグレードパッケージで対応する解読動作を実行し、ファームウェアアップグレードを実行する。このことは、移動端末が不正コードの侵入を受けやすいという従来技術の欠点を解決し、複数のファームウェアのアップグレードを迅速に実施し、移動端末のセキュリティを改善する。
【００４４】
図３は、本発明の他の実施例による無線でのファームウェア配信技術に基づいてファームウェアをアップグレードする方法のフローチャートである。図３に示すように、図２に示す前述の実施例に基づいて、本発明は、以下のステップを含む、無線でのファームウェア配信技術に基づいてファームウェアをアップグレードする方法を提案する。
【００４５】
ステップ301：無線インタフェースを通じて、サーバにより送信されたファームウェアアップグレードパッケージを受信し、ファームウェアアップグレードパッケージをキャッシュの区画に格納する。
【００４６】
ステップ302：キャッシュの区画をトラバース（traverse）し、ファームウェアアップグレードパッケージに対応するファイルヘッダを取得する。
【００４７】
ステップ303：ファームウェアアップグレードパッケージに対応するファイルヘッダから、目的のファイルヘッダとして有効なファイルヘッダを選択する。
【００４８】
キャッシュの区画において、特定のファイルが格納されている場合、その識別情報（ID：identity）がID_aであり、ID_aを含むファイルヘッダがキャッシュの区画に書き込まれる必要があることを仮定する。ファイルをアップデートする場合、その対応するファイルヘッダを無効に設定し（すなわち、ファイル名が“リンクなし（unlinked）”であり、IDがID_aであるファイルヘッダをキャッシュの区画に書き込み）、新たなファイルヘッダを再び書き込む（アップデートされたファイルのIDがID_bであることを仮定し、ID_bを含むファイルヘッダをキャッシュの区画に書き込む）。従って、ファームウェアアップグレードパッケージに対応する全てのファイルヘッダの中から、ファイル名が“リンクなし”であるファイルヘッダのIDと同じIDを有するファイルヘッダを削除する。そして、全ての残りのファイルヘッダが有効なファイルヘッダになる。有効なファイルヘッダから１つを目的のファイルヘッダとして選択する。
【００４９】
ステップ304：目的のファイルヘッダのIDに従って、IDに対応するデータパケットを読み取り、ファームウェアアップグレードパッケージを形成するように、これらのデータパケットを順に構成する。
【００５０】
ステップ305：ファームウェアアップグレードパッケージの第１の暗号化データで公開鍵解読を実行し、解読されたデータを第２の検査データとして使用する。
【００５１】
ステップ306：第２の検査データが第１の検査データと整合するか否かを判定する。整合する場合、ステップ307を実行し、そうでない場合、ステップ310を実行する。
【００５２】
ステップ307：ファームウェアアップグレードファイルで検査処理を実行し、第３の検査データを形成する。
【００５３】
この実施例において、ファームウェアアップグレードパッケージのファームウェアアップグレードファイルが秘密鍵暗号化を受けたファームウェアアップグレードファイルである場合、検査処理が実行される前に、公開鍵解読が実行される必要がある。
【００５４】
ステップ308：第３の検査データがファームウェアアップグレードパッケージの第１の検査データと整合するか否かを確認する。整合する場合、ステップ309を実行し、そうでない場合、ステップ310を実行する。
【００５５】
ステップ309：ファームウェアアップグレードパッケージのファームウェアアップグレードファイルに従って対応するファームウェアでアップグレード動作を実行する。
【００５６】
ステップ310：ファームウェアアップグレードファイルに従って対応するファームウェアでアップグレード動作を実行せずに、ファームウェアアップグレードファイルを破棄する。
【００５７】
この実施例では、前述のステップは、移動端末により実行されてもよい。図２に示す前述の方法の実施例に基づいて、移動端末により受信されたファームウェアアップグレードパッケージは、キャッシュの区画に格納される。yaffs2ファイルシステムが使用されてもよい。しかし、移動端末のモジュールOEMSBLは、モジュールがファームウェアアップグレードパッケージを読み取るために使用される場合、yaffs2ファイルシステムをサポートしない。従って、OEMSBLによりキャッシュの区画のファームウェアアップグレードパッケージを読み取る動作は、まず、キャッシュの区画をトラバースし、ファームウェアアップグレードパッケージに対応する全てのファイルヘッダを取得し、（例えば、アップグレードパケットファイル名の要件を満たす全てのファイルヘッダを取得し）、これらのファイルヘッダの中から、ファイル名が“リンクなし”であるファイルヘッダのIDと同じIDである限り、ファイルヘッダを削除し、特定の規則に従って残りのファイルヘッダから目的のファイルヘッダを選択し（例えば、これらの中から、最大ブロック番号（blocknum）を有するファイルヘッダを目的のファイルヘッダとして選択し、ブロック番号が同じ複数のファイルヘッダが存在する場合、最大のフラッシュ（Flash）アドレスを有するファイルヘッダを目的のファイルヘッダとして選択し）、目的のファイルヘッダを選択した後に、目的のファイルヘッダのIDに対応するデータパケットを読み取り、これらのデータパケットを順に構成し、完全なファームウェアアップグレードパッケージを形成することを含んでもよい。
【００５８】
更に、前述のステップ306は、特に以下のステップを含んでもよい。
【００５９】
d1：第１の検査データがCRCデータであり、第１の暗号化データが秘密鍵暗号化がCRCデータで実行された後に取得されたデータである場合、第２の検査データと第１の検査データとを直接比較し、これらが同じであるか否かを判定すること。
【００６０】
d2：又は、第１の検査データがMD5情報検査データであり、第１の暗号化データが秘密鍵暗号化がMD5情報検査データで実行された後に取得されたデータである場合、第２の検査データと第１の検査データとを直接比較し、これらが同じであるか否かを判定すること。
【００６１】
d3：又は、第１の検査データがCRCデータであり、第１の暗号化データが秘密鍵暗号化がCRCデータに対応するMD5情報で実行された後に取得されたデータである場合、ファームウェアアップグレードパッケージのCRCデータでMD5処理を実行し、第２のMD5情報を形成し、第２の検査データが第２のMD5情報と整合するか否かを確認すること。ただし、第２の検査データは、ファームウェアアップグレードパッケージの第１の暗号化データの解読後に形成されたMD5情報である。
【００６２】
移動端末による対応するファームウェアでアップグレードを実行する動作は、OEMSBLにより、バイナリファイルをアップグレードし、関係するフラグを設定し、移動端末の他のモジュール（RECOVERY）により、ファイルシステムでアップグレードを実行し、アップグレード実行スクリプトの処理を実行することを含んでもよい。全てのファームウェアがアップグレードされた後に、移動端末をリスタートすることで、アップグレード後の各ファームウェアが使用されてもよい。
【００６３】
この実施例において無線でのファームウェア配信技術に基づいてファームウェアをアップグレードする方法では、ファームウェアアップグレードファイルで検査、暗号化及び結合動作を実行することによりサーバによって形成されたファームウェアアップグレードパッケージを受信した後に、移動端末は、ファームウェアアップグレードパッケージで対応する解読動作を実行し、ファームウェアアップグレードを実行する。このことは、移動端末が不正コードの侵入を受けやすいという従来技術の欠点を解決し、複数のファームウェアのアップグレードを迅速に実施し、移動端末のセキュリティを改善する。
【００６４】
前述の実施例に記載の技術的対策は、スマートフォンに実装されてもよい。スマートフォンが２つのCPU（ARM9及びARM11）を含み、主にOEMSBL、AMSS、EFS、BOOT及びSYSTEMのモジュール及びファイルシステムを含むことを仮定する。本発明のこの実施例の技術的対策を使用することにより、全てのファームウェアが同時にアップグレードされてもよい。表２は、典型的なファームウェアアップグレードパッケージを示している。
【表２】
0005608288.tif 000003
【００６５】
OEMSBL、AMSS、BOOT及びEFSのアップグレードは、OEMSBLで完了する。SYSTEM及びSCRIPT.ZIPのアップグレード処理は、RECOVERYで完了する。全体のアップグレード手順では、移動電話は、一回のみリスタートされればよい。
【００６６】
このFOTAアップグレード対策は、ファームウェアアップグレードパッケージのダウンロード手順中に再開可能なダウンロードをサポートする。FOTAアップグレードが開始した後に、移動端末（例えば、移動電話）は、移動電話のアップグレードされる全てのファームウェアのアップグレードを完了するために、一回リスタートされる。アップグレード手順中に、FOTAアップグレード対策は、電源オフに対する保護（power-off  protection）をサポートし、SCRIPT.ZIPのアップグレード実行スクリプトの処理と互換性を有する。このことは、良好なユーザ経験を提供する。
【００６７】
図４は、本発明の実施例によるサーバの概略構成図である。図４に示すように、本発明の実施例は、ファームウェアアップグレードパッケージを移動端末に提供するように構成されたサーバを提供する。サーバは、検査モジュール41と、暗号化モジュール42と、処理モジュール43とを含む。検査モジュール41は、少なくとも１つのファームウェアアップグレードファイルで検査処理を実行し、第１の検査データを形成するように構成される。暗号化モジュール42は、検査モジュール41により形成された第１の検査データで暗号化処理を実行し、第１の暗号化データを形成するように構成される。処理モジュール43は、第１の暗号化データと第１の検査データとファームウェアアップグレードファイルとをファームウェアアップグレードパッケージに結合し、無線インタフェースを通じてファームウェアアップグレードパッケージを移動端末に送信するように構成される。
【００６８】
この実施例では、移動端末は、バイナリファイル、ファイルシステム、アップグレード実行スクリプト等のような、アップグレードされる複数のファームウェアを含んでもよい。この実施例で提供されるサーバは、アップグレードされる少なくとも１つのファームウェアのファームウェアアップグレードファイルで検査処理を実行し、第１の検査データを形成する。次に、第１の検査データで暗号化処理を実行し、第１の暗号化データを形成する。最後に、第１の暗号化データと第１の検査データとファームウェアアップグレードファイルとをファームウェアアップグレードパッケージに結合し、無線インタフェースを通じてファームウェアアップグレードパッケージを移動端末に送信する。
【００６９】
本発明のこの実施例のサーバは、ファームウェアアップグレードファイルで検査、暗号化及び結合処理を実行し、ファームウェアアップグレードパッケージを形成し、移動端末でファームウェアアップグレードパッケージに従ってファームウェアアップグレードを実行することにより、移動端末が不正コードの侵入を受けやすいという従来技術の欠点を解決し、複数のファームウェアのアップグレードを迅速に実施し、移動端末のセキュリティを改善する。
【００７０】
図５は、本発明の他の実施例によるサーバの概略構成図である。図５に示すように、前述のサーバの実施例に基づいて、検査モジュール41は、CRCユニット51及び／又はMD5ユニット52を含んでもよい。CRCユニット51は、少なくとも１つのファームウェアアップグレードファイルでCRC処理を実行し、第１の検査データとしてCRCデータを形成するように構成される。MD5ユニット52は、少なくとも１つのファームウェアアップグレードファイルでMD5処理を実行し、第１の検査データとしてMD5情報検査データを形成するように構成される。
【００７１】
ファームウェアアップグレードファイルで検査処理を実行する場合、検査モジュール41は、CRC方法を採用してもよく、MD5方法を使用してもよい。CRC方法を使用することにより形成された検査データの長さは、ファームウェアアップグレードファイルの長さに比例して増加するが、MD5方法を使用することにより形成された検査データの長さは固定である。次の暗号化手順では、暗号化データが小さいほど、効率が高くなる。従って、MD5方法を使用することにより検査処理を実行することが例示的な対策になる。
【００７２】
前述の技術的対策に基づいて、暗号化モジュール42は、第１の暗号化ユニット53を含んでもよい。第１の暗号化ユニット53は、第１の検査データで秘密鍵暗号化を実行し、第１の暗号化データとして暗号化されたデータを使用するように構成されてもよい。
【００７３】
第１の暗号化ユニット53は、内部に格納された秘密鍵を使用することにより、第１の暗号化データで暗号化処理を実行してもよい。秘密鍵は、工場配送時に移動端末に内部に設定された公開鍵に合致する。
【００７４】
更に、暗号化モジュール42は、第２の暗号化ユニット52及び／又は第３の暗号化ユニット55を含んでもよい。第２の暗号化ユニット54は、第１の検査データがCRCデータである場合、CRCデータ及びファームウェアアップグレードファイルで秘密鍵暗号化を実行し、暗号化されたデータを形成するように構成される。ただし、暗号化されたデータは、暗号化されたCRCデータ及び暗号化されたファームウェアアップグレードファイルを含み、暗号化されたCRCデータは、第１の暗号化データであり、ファームウェアアップグレードパッケージに含まれるファームウェアアップグレードファイルは、暗号化されたファームウェアアップグレードファイルである。第３の暗号化ユニット55は、第１の検査データがCRCデータである場合、CRCデータでMD5処理を実行し、CRCデータに対応するMD5情報を形成し、対応するMD5情報で秘密鍵暗号化を実行し、第１の暗号化データを形成するように構成される。
【００７５】
更に、この実施例で提供される移動端末は、取得モジュール56を更に含んでもよい。取得モジュール56は、検査モジュール41が少なくとも１つのファームウェアアップグレードファイルで検査処理を実行する前に、複数のファームウェアアップグレードファイルを取得する。ただし、ファームウェアアップグレードパッケージは、前述の複数のファームウェアアップグレードファイルを含む。
【００７６】
本発明のこの実施例のサーバは、ファームウェアアップグレードファイルで検査、暗号化及び結合処理を実行し、ファームウェアアップグレードパッケージを形成し、移動端末でファームウェアアップグレードパッケージに従ってファームウェアアップグレードを実行することにより、移動端末が不正コードの侵入を受けやすいという従来技術の欠点を解決し、複数のファームウェアのアップグレードを迅速に実施し、移動端末のセキュリティを改善する。
【００７７】
図６は、本発明の実施例による移動端末の概略構成図である。図６に示すように、本発明のこの実施例は、ファームウェアをアップグレードする機能を有する移動端末を提供する。移動端末は、受信モジュール61と、読み取りモジュール62と、解読モジュール63と、アップグレードモジュール64とを含む。受信モジュール61は、無線インタフェースを通じて、サーバにより送信されたファームウェアアップグレードパッケージを受信し、ファームウェアアップグレードパッケージをキャッシュの区画65に格納するように構成される。読み取りモジュール62は、キャッシュの区画65に格納されたファームウェアアップグレードパッケージを読み取るように構成される。ファームウェアアップグレードパッケージは、第１の暗号化データと第１の検査データとファームウェアアップグレードファイルとを含む。解読モジュール63は、読み取りモジュール62により読み取られたファームウェアアップグレードパッケージの第１の暗号化データで解読を実行し、第２の検査データを形成するように構成される。アップグレードモジュール64は、第２の検査データが第１の検査データと整合する場合、ファームウェアアップグレードパッケージのファームウェアアップグレードファイルに従って対応するファームウェアのアップグレード動作を実行するように構成される。
【００７８】
この実施例では、移動端末は、バイナリファイル、ファイルシステム、アップグレード実行スクリプト等のような、アップグレードされる複数のファームウェアを含んでもよい。サーバ側がアップグレードされる少なくとも１つのファームウェアのファームウェアアップグレードファイルで動作を実行し、無線インタフェースを通じて形成されたファームウェアアップグレードパッケージをファームウェアがアップグレードされる移動端末に送信した場合、移動端末の受信モジュール61は、受信したファームウェアアップグレードパッケージをキャッシュ（CACHE）の区画65に格納する。更に、読み取りモジュール62は、キャッシュの区画65のファームウェアアップグレードパッケージを読み取る。ファームウェアアップグレードパッケージは、第１の暗号化データと第１の検査データとファームウェアアップグレードファイルとを含む。解読モジュール63は、ファームウェアアップグレードパッケージの第１の暗号化データで解読を実行し、第２の検査データを形成する。第２の検査データが第１の検査データと整合する場合、アップグレードモジュール64は、ファームウェアアップグレードパッケージのファームウェアアップグレードファイルに従って対応するファームウェアのアップグレード動作を実行する。
【００７９】
本発明のこの実施例の移動端末では、ファームウェアアップグレードファイルで検査、暗号化及び結合動作を実行することによりサーバによって形成されたファームウェアアップグレードパッケージを受信モジュールが受信した後に、検査モジュールは、ファームウェアアップグレードパッケージで対応する解読動作を実行し、ファームウェアアップグレードを実行する。このことは、移動端末が不正コードの侵入を受けやすいという従来技術の欠点を解決し、複数のファームウェアのアップグレードを迅速に実施し、移動端末のセキュリティを改善する。
【００８０】
図７は、本発明の他の実施例による移動端末の概略構成図である。図７に示すように、前述の移動端末の実施例に基づいて、読み取りモジュール62は、トラバースユニット71と、選択ユニット72と、読み取りユニット73とを含んでもよい。トラバースユニット71は、キャッシュの区画65をトラバースし、ファームウェアアップグレードパッケージに対応するファイルヘッダを取得するように構成される。選択ユニット72は、ファームウェアアップグレードパッケージに対応するファイルヘッダから、目的のファイルヘッダとして有効なファイルヘッダを選択するように構成される。読み取りユニット73は、目的のファイルヘッダのIDに従って、IDに対応するデータパケットを読み取り、ファームウェアアップグレードパッケージを形成するように、これらのデータパケットを順に構成するように構成される。
【００８１】
キャッシュの区画65において、特定のファイルが格納されている場合、その識別情報（ID：identity）がID_aであり、ID_aを含むファイルヘッダがキャッシュの区画に書き込まれる必要があることを仮定する。ファイルをアップデートする場合、その対応するファイルヘッダを無効に設定し（すなわち、ファイル名が“リンクなし（unlinked）”であり、IDがID_aであるファイルヘッダをキャッシュの区画に書き込み）、新たなファイルヘッダを再び書き込む（アップデートされたファイルのIDがID_bであることを仮定し、ID_bを含むファイルヘッダをキャッシュの区画に書き込む）。従って、ファームウェアアップグレードパッケージに対応する全てのファイルヘッダの中から、ファイル名が“リンクなし”であるファイルヘッダのIDと同じIDを有するファイルヘッダを削除する。そして、全ての残りのファイルヘッダが有効なファイルヘッダになる。有効なファイルヘッダから１つを目的のファイルヘッダとして選択する。
【００８２】
本発明のこの実施例では、図６に示す技術的対策に基づいて、移動端末により受信されたファームウェアアップグレードパッケージは、キャッシュの区画65に格納される。yaffs2ファイルシステムが使用されてもよい。移動端末内にあり、ファームウェアアップグレードパッケージを読み取るように構成された読み取りモジュール62は、OEMSBLでもよい。OEMSBLは、yaffs2ファイルシステムをサポートしない。従って、トラバースユニット71は、キャッシュの区画をトラバースし、ファームウェアアップグレードパッケージに対応する全てのファイルヘッダを取得し、（例えば、アップグレードパケットファイル名の要件を満たす全てのファイルヘッダを取得し）、これらのファイルヘッダの中から、選択ユニット72は、ファイル名が“リンクなし”であるファイルヘッダのIDと同じIDである限り、ファイルヘッダを削除し、特定の規則に従って残りのファイルヘッダから目的のファイルヘッダを選択する（例えば、選択ユニット72は、ファームウェアアップグレードパッケージに対応する有効なファイルヘッダから、最大ブロック番号（blocknum）を有するファイルヘッダを目的のファイルヘッダとして選択するように構成された第１の選択サブユニットと、ブロック番号が同じ複数のファイルヘッダが存在する場合、ブロック番号が同じ複数のファイルヘッダから、最大のフラッシュ（Flash）アドレスを有するファイルヘッダを目的のファイルヘッダとして選択するように構成された第２の選択サブユニットとを含んでもよい）。目的のファイルヘッダを選択した後に、読み取りユニット73は、目的のファイルヘッダのIDに対応するデータパケットを読み取り、これらのデータパケットを順に構成し、ファームウェアアップグレードパッケージを形成する。
【００８３】
更に、解読モジュール63は、ファームウェアアップグレードパッケージの第１の暗号化データで公開鍵解読を実行し、解読されたデータを第２の検査データとして使用するように特に構成されてもよい。
【００８４】
更に、本発明のこの実施例で提供される移動端末は、判定モジュール74を更に含んでもよい。判定モジュール74は、解読モジュール63がファームウェアアップグレードパッケージの第１の暗号化データで解読を実行し、第２の検査データを形成した後に、第２の検査データが第１の検査データと整合するか否かを判定するように構成される。判定モジュール74は、第１の比較ユニット75、第２の比較ユニット76及び／又は第３の比較ユニット77を含んでもよい。第１の比較ユニット75は、第１の検査データがCRCデータであり、第１の暗号化データが秘密鍵暗号化がCRCデータで実行された後に取得されたデータである場合、第２の検査データと第１の検査データとを直接比較し、これらが同じであるか否かを判定するように構成される。第２の比較ユニット76は、第１の検査データがMD5情報検査データであり、第１の暗号化データが秘密鍵暗号化がMD5情報検査データで実行された後に取得されたデータである場合、第２の検査データと第１の検査データとを直接比較し、これらが同じであるか否かを判定するように構成される。第３の比較ユニット77は、第１の検査データがCRCデータであり、第１の暗号化データが秘密鍵暗号化がCRCデータに対応するMD5情報で実行された後に取得されたデータである場合、ファームウェアアップグレードパッケージのCRCデータでMD5処理を実行し、第２のMD5情報を形成し、第２の検査データが第２のMD5情報と整合するか否かを確認するように構成される。ただし、第２の検査データは、ファームウェアアップグレードパッケージの第１の暗号化データの解読後に形成されたMD5情報である。
【００８５】
更に、本発明のこの実施例の移動端末は、検査モジュール78と、確認モジュール79とを更に含んでもよい。検査モジュール78は、アップグレードモジュール64がファームウェアアップグレードパッケージのファームウェアアップグレードファイルに従って対応するファームウェアでアップグレード動作を実行する前に、ファームウェアアップグレードファイルで検査処理を実行し、第３の検査データを形成するように構成される。確認モジュール79は、第３の検査データがファームウェアアップグレードパッケージの第１の検査データと整合するか否かを確認するように構成される。この時点で、第３の検査データがファームウェアアップグレードパッケージの第１の検査データと整合する場合、アップグレードモジュール64は、ファームウェアアップグレードパッケージのファームウェアアップグレードファイルに従って対応するファームウェアでアップグレード動作を実行するように構成される。そうでない場合、ファームウェアアップグレードファイルに従って対応するファームウェアでアップグレード動作を実行せずに、ファームウェアアップグレードファイルを破棄するように構成される。
【００８６】
この実施例の移動端末では、受信モジュールがファームウェアアップグレードファイルで検査、暗号化及び結合動作を実行することによりサーバによって形成されたファームウェアアップグレードパッケージを受信した後に、検査モジュールは、ファームウェアアップグレードパッケージで検査処理を実行し、アップグレードモジュールは、検査が通過した後にファームウェアアップグレードを実行する。このことは、動作が複雑であり、移動端末が不正コードの侵入を受けやすいという従来技術の欠点を解決し、複数のファームウェアのアップグレードを迅速に実施し、移動端末のセキュリティを改善する。
【００８７】
図８は、本発明の実施例による無線でのファームウェア配信技術に基づいてファームウェアをアップグレードするシステムのブロック図である。図８に示すように、本発明のこの実施例は、サーバ81と移動端末82とを含む、無線でのファームウェア配信技術に基づいてファームウェアをアップグレードするシステムを提供する。
【００８８】
このシステムの実施例のサーバ81の機能については、図４又は図５に示す前述の実施例の具体的な説明に参照が行われてもよく、移動端末82の機能については、図６又は図７に示す前述の実施例の具体的な説明に参照が行われてもよい。ここでは繰り返し説明しない。
【００８９】
この実施例において無線でのファームウェア配信技術に基づいてファームウェアをアップグレードするシステムでは、ファームウェアアップグレードファイルで検査、暗号化及び結合動作を実行することによりサーバによって形成されたファームウェアアップグレードパッケージを受信した後に、移動端末は、ファームウェアアップグレードパッケージで検査処理を実行し、検査が通過した後にファームウェアアップグレードを実行する。このことは、動作が複雑であり、移動端末が不正コードの侵入を受けやすいという従来技術の欠点を解決し、複数のファームウェアのアップグレードを迅速に実施し、移動端末のセキュリティを改善する。
【００９０】
前述の方法の全て又は一部は、関係するハードウェアに命令するプログラムにより完了されてもよいことが、当業者に分かる。プログラムは、コンピュータ可読記憶媒体に格納されてもよい。プログラムが実行された場合、前述の方法の実施例を含むステップが実行される。記憶媒体は、ROM、RAM、磁気ディスク又はコンパクトディスク等のような、プログラムコードを格納してもよい様々な媒体を含む。
【００９１】
最後に、前述の実施例は、単に本発明の技術的対策を例示するものであり、これを限定するものではない点に留意すべきである。依然として当業者が前述の各実施例に示された技術的対策に変更を行ってもよく、或いはその技術的特徴の一部に等価置換を行ってもよいことが、当業者に分かる。これらの変更又は置換は、対応する技術的対策の性質を、本発明の各実施例の技術的対策の要旨及び範囲から逸脱させない。
【００９２】
この出願は、2010年8月27日に“METHOD  FOR  PROCESSING  FIRMWARE  BASED  ON  FIRMWARE  OVER  THE  AIR  TECHNOLOGY,  APPARATUS,  AND  SYSTEM”という題で中国特許庁に出願された中国特許出願第201010268847.X号の優先権を主張し、この全内容を援用する。
【図１】
0005608288.tif 000004
【図２】
0005608288.tif 000005
【図３ａ】
0005608288.tif 000006
【図３ｂ】
0005608288.tif 000007
【図４】
0005608288.tif 000008
【図５】
0005608288.tif 000009
【図６】
0005608288.tif 000010
【図７】
0005608288.tif 000011
【図８】
0005608288.tif 000012