JP2012063809A - シンクライアント端末、オペレーティングシステム更新方法、およびプログラム - Google Patents
シンクライアント端末、オペレーティングシステム更新方法、およびプログラム Download PDFInfo
- Publication number
- JP2012063809A JP2012063809A JP2010205152A JP2010205152A JP2012063809A JP 2012063809 A JP2012063809 A JP 2012063809A JP 2010205152 A JP2010205152 A JP 2010205152A JP 2010205152 A JP2010205152 A JP 2010205152A JP 2012063809 A JP2012063809 A JP 2012063809A
- Authority
- JP
- Japan
- Prior art keywords
- file
- patch
- thin client
- area
- operating system
- 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
Landscapes
- Stored Programmes (AREA)
Abstract
【課題】携帯型記憶デバイスに記憶されたシンクライアントOSを容易に更新することが可能なシンクライアントシステム等を提供する。
【解決手段】USBデバイス20の所定領域には、シンクライアントOSの変更部分のパッチが記憶されている。このパッチは、更新対象のパッチファイルと、そのパッチファイルをインストールするためのパッチスクリプトファイルで構成されている。クライアント端末10は、マウントされたUSBデバイス20に記憶されているシンクライアントOSのイメージファイルを読み出して、RAMにファイルディレクトリを展開し、USBデバイス20に記憶されているパッチを、RAMに展開されたファイルディレクトリ内に配置し、パッチスクリプトファイルを実行する。
【選択図】図1
【解決手段】USBデバイス20の所定領域には、シンクライアントOSの変更部分のパッチが記憶されている。このパッチは、更新対象のパッチファイルと、そのパッチファイルをインストールするためのパッチスクリプトファイルで構成されている。クライアント端末10は、マウントされたUSBデバイス20に記憶されているシンクライアントOSのイメージファイルを読み出して、RAMにファイルディレクトリを展開し、USBデバイス20に記憶されているパッチを、RAMに展開されたファイルディレクトリ内に配置し、パッチスクリプトファイルを実行する。
【選択図】図1
Description
本発明は、シンクライアント端末に関し、特に、携帯型記憶デバイスに記憶されたシンクライアントオペレーティングシステムを容易に更新することが可能なシンクライアント端末等に関するものである。
近年、クライアント端末に必要最小限の機能のみを持たせ、アプリケーションの処理などの機能をサーバに集約させたシンクライアントシステムの導入が増えてきている。
また、専用のクライアント端末を利用しなくても、既存の端末を利用してシンクライアント環境を実現することも可能である。これは、例えば、シンクライアントシステム専用のシンクライアントOS(Operating System)やアプリケーションを格納したUSB(Universal Serial Bus)メモリのような携帯型記憶デバイスを既存の端末に装着した状態で端末を起動させることにより、既存の端末を専用のクライアント端末と同じ状態にすることができる。
このような、シンクライアントOSが格納されたUSBデバイスを利用して端末をシンクライアント化させ、シンクライアントサーバにリモートアクセスするシステムをUSBシンクライアントシステムと呼ぶ。
携帯型記憶デバイスに記憶される専用のシンクライアントOSは、最低限の機能のみ実装されており、また毎回同じOSイメージが起動されることを前提としている。従って、基本的に、携帯型記憶デバイス配布後にシンクライアントOSイメージを変更することはないが、機能の追加や脆弱性対策等の理由により、シンクライアントOSイメージを更新させたい場合がある。
そこで、例えば、特許文献1には、シンクライアントOSの更新処理を容易に行うようにすることができる技術が提案されている。
USBシンクライアントシステムやLinux(登録商標)ベースの組み込みシステムでは、シンクライアントの基本機能の改変防止や容量抑制、フラッシュメモリへの書き込み多発による劣化防止のため、squashfsやcloopファイルシステムといったリードオンリーな圧縮ファイルシステムが用いられることがある。
Squashfsは、Linux(登録商標)向けの圧縮された読込専用ファイルシステムである。cloopファイルシステムは、KNOPPIX(CD1枚で利用可能なLinux(登録商標)ディストリビューション)に採用されたファイルシステムであり、Cloopは、ファイルをハードディスクドライブのように扱う機能で、ファイルをファイルシステムとしてマウントできる仮想デバイス(ループバックデバイス)に、圧縮機能を追加したものである。
これらのファイルシステムは、上に述べたメリットがある反面、一旦システムを構成した後に個々のファイル単位での変更操作が想定されておらず、変更または更新したい場合には、以下の操作が必要となる。
1.圧縮されたファイルシステムの展開
2.変更作業の適用(ファイル追加・削除、編集など)
3.ファイルシステムの再圧縮
1.圧縮されたファイルシステムの展開
2.変更作業の適用(ファイル追加・削除、編集など)
3.ファイルシステムの再圧縮
これらの操作によって、以下のような運用上の課題がある。
A.システムに脆弱性が発見されたときやデバイスドライバの更新などの際に、ファイル単位の置き換えが必要となるが、これが出来ないため、たとえファイル一つの変更で済むような軽微な変更であってもシステム全体の再構成と同等の作業を要する。
B.特別な知識が必要となるため、エンドユーザ側での作業が困難となり、軽微な変更であっても製造側へのセンドバックとならざるを得ない。
C.顧客ごとのカスタマイズなど、システムのわずかな差異に関しても、それぞれファイルシステム全体を構成し直す必要があり、管理が大変となる。
A.システムに脆弱性が発見されたときやデバイスドライバの更新などの際に、ファイル単位の置き換えが必要となるが、これが出来ないため、たとえファイル一つの変更で済むような軽微な変更であってもシステム全体の再構成と同等の作業を要する。
B.特別な知識が必要となるため、エンドユーザ側での作業が困難となり、軽微な変更であっても製造側へのセンドバックとならざるを得ない。
C.顧客ごとのカスタマイズなど、システムのわずかな差異に関しても、それぞれファイルシステム全体を構成し直す必要があり、管理が大変となる。
また、特許文献1では、OS更新作業をファイル配布の観点から効率化を図っているが、ここでやり取りされるデータは圧縮ファイルシステム全体であり、容量が大きく、通信効率が低下する課題があった。
本発明は、前述した問題点に鑑みてなされたもので、その目的とすることは、携帯型記憶デバイスに記憶されたシンクライアントオペレーティングシステムを容易に更新することが可能なシンクライアント端末、オペレーティングシステム更新方法、およびプログラムを提供することである。
前述した目的を達成するために、第1の発明は、ネットワークを介してシンクライアントサーバに接続されるクライアント端末において、シンクライアントオペレーティングシステムのイメージファイルを、装着された携帯型記憶デバイスの第1の領域に記憶する第1の記憶手段と、前記シンクライアントオペレーティングシステムの更新のためのパッチスクリプトファイル及び更新対象のパッチファイルを、前記携帯型記憶デバイスの第2の領域に記憶する第2の記憶手段と、前記第1の領域に記憶されているシンクライアントオペレーティングシステムのイメージファイルを読み出して、揮発性メモリにファイルディレクトリを展開する展開手段と、前記第2の領域に記憶されている前記パッチスクリプトファイル及び前記パッチファイルを前記ファイルディレクトリ内に配置する配置手段と、前記パッチスクリプトファイルを実行する実行手段とを備えることを特徴とするクライアント端末である。
第1の発明によって、一度配布したUSBデバイスに記憶されているシンクライアントOSの更新の仕組みを容易に導入することが可能となる。
第1の発明によって、一度配布したUSBデバイスに記憶されているシンクライアントOSの更新の仕組みを容易に導入することが可能となる。
前記配置手段は、前記第2の領域に記憶されている前記パッチスクリプトファイルを、前記シンクライアントオペレーティングシステムの起動スクリプトファイルが配置される実行ディレクトリに配置し、前記実行手段は、前記実行ディレクトリに配置されているスクリプトファイルを全て実行する。
これにより、パッチスクリプトファイルを実行ディレクトリに配置し、実行ディレクトリに配置されているスクリプトファイルを実行するプログラムを作成するだけで、OS更新の仕組みを容易に導入することができる。
これにより、パッチスクリプトファイルを実行ディレクトリに配置し、実行ディレクトリに配置されているスクリプトファイルを実行するプログラムを作成するだけで、OS更新の仕組みを容易に導入することができる。
前記第2の領域に記憶されている前記パッチスクリプトファイル及び前記更新対象のパッチファイルのデータ検証を行うデータ検証手段をさらに備え、前記配置手段は、前記データ検証手段による検証が成功した前記パッチスクリプトファイル及び前記更新対象のパッチファイルのみを配置する。
これにより、不正なパッチが誤って適用されてしまうことを防止することができる。
これにより、不正なパッチが誤って適用されてしまうことを防止することができる。
前記第2の領域に記憶されている前記パッチスクリプトファイル及び前記更新対象のパッチファイルは、暗号化されており、前記パッチスクリプトファイル及び前記更新対象のパッチファイルを復号する復号手段をさらに備える。
これにより、パッチが不正に取得されたり、改竄されたりしてしまうことを防止することができる。
これにより、パッチが不正に取得されたり、改竄されたりしてしまうことを防止することができる。
第2の発明は、ネットワークを介してシンクライアントサーバに対し、アプリケーションの実行を要求するクライアント端末のオペレーティングシステム更新方法において、シンクライアントオペレーティングシステムのイメージファイルを、装着された携帯型記憶デバイスの第1の領域に記憶する第1の記憶ステップと、前記シンクライアントオペレーティングシステムの更新のためのパッチスクリプトファイル及び更新対象のパッチファイルを、前記携帯型記憶デバイスの第2の領域に記憶する第2の記憶ステップと、前記第1の領域に記憶されているシンクライアントオペレーティングシステムのイメージファイルを読み出して、揮発性メモリにファイルディレクトリを展開する展開ステップと、前記第2の領域に記憶されている前記パッチスクリプトファイル及び前記更新対象のパッチファイルを前記ファイルディレクトリ内に配置する配置ステップと、前記パッチスクリプトファイルを実行する実行ステップとを含むことを特徴とするオペレーティングシステム更新方法である。
第3の発明は、ネットワークを介してシンクライアントサーバに対し、アプリケーションの実行を要求するコンピュータにより読み取り可能な形式で記述されたプログラムであって、シンクライアントオペレーティングシステムのイメージファイルを、装着された携帯型記憶デバイスの第1の領域に記憶する第1の記憶ステップと、前記シンクライアントオペレーティングシステムの更新のためのパッチスクリプトファイル及び更新対象のパッチファイルを、前記携帯型記憶デバイスの第2の領域に記憶する第2の記憶ステップと、前記第1の領域に記憶されているシンクライアントオペレーティングシステムのイメージファイルを読み出して、揮発性メモリにファイルディレクトリを展開する展開ステップと、前記第2の領域に記憶されている前記パッチスクリプトファイル及び前記更新対象のパッチファイルを前記ファイルディレクトリ内に配置する配置ステップと、前記パッチスクリプトファイルを実行する実行ステップとを含む処理をコンピュータに実行させるためのプログラムである。
本発明により、シンクライアントシステムにおいて、携帯型記憶デバイスに記憶されたシンクライアントオペレーティングシステムを容易に更新することが可能なシンクライアントシステム、オペレーティングシステム更新方法、およびプログラムを提供することができる。
以下、図面に基づいて、本発明の実施形態を詳細に説明する。
[本発明の実施の形態]
図1は、本発明の実施の形態としてのUSB(Universal Serial Bus)シンクライアントシステムの構成例を示す図である。
図1は、本発明の実施の形態としてのUSB(Universal Serial Bus)シンクライアントシステムの構成例を示す図である。
図1に示すように、USBシンクライアントシステムは、クライアント端末10、クライアント端末10と接続されるUSBデバイス20およびICカードリーダ・ライタ30、クライアント端末10とネットワーク40を介して接続されるVPN(Virtual Private Network)サーバ50、VPNサーバ50と接続される完全性検証サーバ60、完全性検証サーバ60と接続されるシンクライアントサーバ70、VPNサーバ50と接続される更新サーバ80とから構成される。なお、クライアント端末10の数は、任意であり、図1に示されるように1つに限られるものではない。
USBシンクライアントシステムとは、シンクライアントOS(Operation System)が格納されたUSBデバイス20をクライアント端末10にマウント(装着)し、このクライアント端末10をシンクライアント化させてシンクライアントサーバ70にリモートアクセスするシステムのことである。シンクライアントOSとしては、例えば、Linux(登録商標)があるが、これに限定されるものではない。
クライアント端末10は、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)、およびHDD(Hard Disc Drive)などを実装したコンピュータシステムである。クライアント端末10は、ユーザによって、シンクライアントOSの変更(更新)部分のパッチの取得が指示された場合、ネットワーク40およびVPNサーバ50を介して更新サーバ80にアクセスし、シンクライアントOSのパッチをダウンロードし、USBデバイス20の所定領域に記憶させる。
パッチとは、更新対象のパッチファイルと、そのパッチファイルをインストールするためのパッチスクリプトファイルで構成されている。パッチスクリプトファイルは、例えば、シェルスクリプト(実行形式のファイル)であり、下記に示すように、更新対象のパッチファイル名(コピー元、コピー先)、およびパッチファイルのコピーコマンドが記述されている。
cp /home/patch/fileA /・・・/fileA
cp /home/patch/fileA /・・・/fileA
また、パッチの内容から、システム内部処理が推測されるのを防ぐため、パッチは暗号化される。パッチの内容としては、デバイスドライバ(無線LAN(Local Area Network)機器などのドライバなど)、セキュリティ対策などが考えられる。デバイスドライバをパッチとして適用する理由は、出荷時のシンクライアントOSのイメージファイルのサイズを出来る限り小さくする為である。そして、USBデバイス20からシンクライアントOSのイメージファイルをRAMに展開する時間を短くする為である。つまり、全メーカのデバイスドライバをUSBデバイス20に入れると膨大なサイズとなってしまうが、利用するデバイスドライバが予め決まっている場合、そのデバイスドライバだけをパッチとして適用することで、ファイルサイズの小容量化および展開時間の短縮化を図ることができる。
さらに、不適切なパッチが誤って適用されるのを防ぐため、パッチに検証コードが付与される。そして、ICカード31等の耐タンパデバイスを用いて、上述の暗号化および検証コードに用いられる暗号鍵が格納される。耐タンパデバイスとは、タンパ(情報不正取得、改竄)に対して耐性のあるデバイス(装置、素子)のことである。
クライアント端末10は、マウントされたUSBデバイス20の所定領域に記憶されているシンクライアントOSの変更(更新)部分のパッチを取得し、パッチのデータ検証を行う。クライアント端末10は、パッチのデータ検証に成功すると、そのパッチを適用してシンクライアントOSの起動処理を行う。
クライアント端末10は、シンクライアントOSを起動した後、ネットワーク40を介してVPNサーバ50との認証を行う。クライアント端末10は、VPNサーバ50との認証に成功すると、ネットワーク40およびVPNサーバ50を介して完全性検証サーバ60との認証を行う。
クライアント端末10は、完全性検証サーバ60との認証に成功すると、ネットワーク40、VPNサーバ50、および完全性検証サーバ60を介してシンクライアントサーバ70との認証を行う。クライアント端末10は、シンクライアントサーバ70との認証に成功すると、シンクライアントサーバ70で管理されているアプリケーションを遠隔で実行させる。
USBデバイス20は、クライアント端末10と着脱可能になされており、クライアント端末10で実行するためのシンクライアントOS等を記憶する携帯型記憶デバイスである。本実施の形態では、携帯型記憶デバイスとしてUSBメモリを適用するが、これに限らず、他の記憶媒体を用いることも可能である。
ICカードリーダ・ライタ30は、ICカード31が装着(近接)されると、ICカード31に記憶されているデータを読み出して、クライアント端末10に送信したり、クライアント端末10から受信したデータを、ICカード31に書き込んだりする。ICカード31には、後述するプラットフォーム完全性検証に利用するデバイスID、デジタル署名コマンド、デジタル署名秘密鍵、MAC鍵等が記憶されている。また、ICカード31には、パッチ復号のための復号鍵、検証コード検証のための検証鍵、デジタル署名のための署名鍵、およびPIN(Personal identification number)認証用のアプレット等が記憶されている。PINとは、利用者本人であることを識別するための暗証番号である。
尚、USBデバイス20が、セキュアな記憶媒体(例えば、SIMカード、SDカード等)とのインターフェイスを備える場合、ICカード31に記憶されているデータは、そのセキュアな記憶媒体に記憶させるようにしても良い。この場合、ICカードリーダ・ライタ30およびICカード31は不要となる。
尚、USBデバイス20が、セキュアな記憶媒体(例えば、SIMカード、SDカード等)とのインターフェイスを備える場合、ICカード31に記憶されているデータは、そのセキュアな記憶媒体に記憶させるようにしても良い。この場合、ICカードリーダ・ライタ30およびICカード31は不要となる。
ネットワーク40は、公衆回線網、ローカルエリアネットワーク、またはインターネットなどのネットワーク、デジタル衛星放送といった、有線または無線のいずれのものでもよい。
VPNサーバ50は、CPU、ROM、RAM、およびHDDなどを実装したコンピュータシステムであり、Ipsec(Security Architecture for Internet Protocol)またはSSL(Secure Sockets Layer)を利用して、ネットワーク40を介してクライアント端末10と送受信するデータを暗号化することで、VPNを構築するために設置される機器である。
完全性検証サーバ60は、CPU、ROM、RAM、およびHDDなどを実装したコンピュータシステムであり、ハッシュ値を含む構成証明メッセージ等を用いて、プラットフォーム完全性を検証するための認証サーバである。プラットフォーム完全性検証とは、シンクライアントOSが改竄されてしまうと、個人データなどの機密データが漏洩する可能性があるため、クライアント端末10に展開されるシンクライアントOSが改竄されているか否かを検証することである。なお、完全性検証に関する詳細な技術については、特開2009−175923号公報等に記載されている。
シンクライアントサーバ70は、CPU、ROM、RAM、およびHDDなどを実装したコンピュータシステムであり、さまざまなアプリケーションを一括管理し、クライアント端末10からの要求に応じて、アプリケーションを実行する。
なお、完全性検証サーバ60が行うプラットフォーム完全性を検証する機能をシンクライアントサーバ70に搭載するようにしてもよい。
更新サーバ80は、CPU、ROM、RAM、およびHDDなどを実装したコンピュータシステムであり、シンクライアントOSの変更(更新)部分をパッチとして所有(記憶)しており、クライアント端末10からの要求に応じて、そのパッチを転送する。また更新サーバ80は、シンクライアントOSのパッチを記憶メディアに格納してクライアント端末10に配布したり、あるいは、電子メールの添付ファイルとして配布したりするようにしてもよく、本実施の形態では、シンクライアントOSのパッチの提供方法は特に問わない。
図2は、図1に示すクライアント端末10の構成例を示す図である。このクライアント端末1は、CPU11、ROM12、RAM13、および入出力インターフェイス14が、バス15を介して接続されている。入出力インターフェイス14には、入力部16、表示部17、記憶部18、および通信部19が接続されている。また入出力インターフェイス14には、USBデバイス20やICカードリーダ・ライタ30が着脱可能になっている。
CPU11は、入力部16からの入力信号に基づいてクライアント端末10を起動するためのブートプログラムをROM12から読み出して実行し、記憶部18に格納されている各種オペレーティングシステムを読み出す。
CPU11は、マウントされたUSBデバイス20に記憶されているシンクライアントOSのイメージファイルを読み出して、揮発性メモリのRAM13にファイルディレクトリを展開する展開手段として機能する。またCPU11は、USBデバイス20に記憶されている更新対象のパッチファイルおよびパッチスクリプトファイルを、RAM13に展開されたファイルディレクトリ内に配置する配置手段としても機能し、そのパッチスクリプトファイルを実行する実行手段としても機能する。
さらにCPU11は、入力部16からの入力信号に基づいて各種の制御を行ったり、ROM12や記憶部18に記憶されたプログラムおよびデータを読み出してRAM13にロードしたり、あるいはRAM13から読み出されたプログラムのコマンドに基づいて、データ演算または加工などの一連の処理を実行する。
入力部16は、クライアント端末10の操作者が各種の操作を入力するキーボードやマウスなどの入力デバイスにより構成されており、操作者の操作に基づいて入力信号を生成し、入出力インターフェイス14およびバス15を介してCPU11に送信する。
表示部17は、例えば液晶ディスプレイであり、CPU11からバス15および入出力インターフェイス14を介して受信した信号に基づいて、CPU11の処理結果などを表示する。
記憶部18は、半導体メモリや磁気ディスクなどで構成されており、CPU11で実行されるプログラムやデータを記憶する。記憶部18には、CPU11が実行するプログラムとして、例えば、各サーバとの認証を行うための認証アプリケーション等が用意される。
通信部19は、LANカードやモデムなどで構成されており、クライアント端末10をローカルエリアネットワークやインターネットといった通信媒体であるネットワーク40に接続することを可能にする。すなわち通信部19は、通信媒体から受信したデータを、入出力インターフェイス14およびバス15を介してCPU11に送信し、CPU11からバス15および入出力インターフェイス14を介して受信したデータを、ネットワーク40に送信する。
USBデバイス20には、シンクライアントOSや起動プログラム等が記憶されており、CPU11からの要求に応じて、それらの情報が、入出力インターフェイス14およびバス15を介してCPU11に送信される。
ICカードリーダ・ライタ30は、ICカード31に記憶されているデータを読み出して、入出力インターフェイス14およびバス15を介してCPU11に送信したり、CPU11からバス15および入出力インターフェイス14を介して受信したデータを、ICカード31に書き込んだりする。
図3は、USBデバイス20の構成例を示す図である。
図3に示すように、USBデバイス20は、フラッシュメモリ部21等から構成されている。
フラッシュメモリ部21は、起動用パーティション211、パッチ格納用パーティション212、データ設定パーティション213、およびOS用パーティション214の領域から構成されている。またOS用パーティション214には、クライアント端末10上で動作するシンクライアントOS215のイメージ(バイトコード)が格納されている。
起動用パーティション211は、初期RAMディスクやブートローダが格納される領域である。初期RAMディスクとは、クライアント端末10の起動時にクライアント端末10のRAM13上にロードされる暫定的なルートファイルシステムのイメージで、初期スクリプトを含む。初期スクリプトは、クライアント端末10のRAM13上に仮想的なハードディスク領域であるRAMディスク領域を作成し、マウントする機能を実現する。ブートローダとは、クライアント端末10の起動直後に実行され、特定の領域に配置されるOSを起動するための基本プログラムで、OSの基本機能を実装したソフトウェアであるカーネルおよび初期RAMイメージをクライアント端末10のRAM13にロードする機能を実現する。ルートファイルシステムには、例えば、Linux(登録商標)で主流のext3(third
extended file system)やext2(second
extended file system)などがある。
extended file system)やext2(second
extended file system)などがある。
パッチ格納用パーティション212は、シンクライアントOS215の更新のためのパッチ(パッチスクリプトファイルおよび更新対象のパッチファイルを含む)を記憶する第2の記憶手段として機能する。
データ設定パーティション213は、リモートアクセス接続用ネットワーク設定ファイルが格納される領域である。リモートアクセス接続用ネットワーク設定ファイルは、暗号化されており、シンクライアントOS215の起動時に復号される。
OS用パーティション214は、シンクライアントOS215のイメージファイルを記憶する第1の記憶手段として機能する。シンクライアントOS215のイメージファイルは、暗号化されており、シンクライアントOS215の起動時に復号される。
シンクライアントOS215には、接続・送受信機能215A、OS更新用アプリケーション215B、計測ソフトウェア215C、およびMAC鍵215Dが含まれる。
接続・送受信機能215Aは、各サーバに接続し、各サーバとデータの送受信を行う機能である。OS更新用アプリケーション215Bは、パッチ格納用パーティション212に格納されているパッチを適用してシンクライアントOS215の更新を行うためのアプリケーションである。計測ソフトウェア215Cは、シンクライアントOS215のイメージのハッシュ値を演算する機能を備えたコンピュータプログラムである。MAC鍵215Dは、クライアント端末10のプラットフォーム完全性検証で利用する暗号鍵としてハードコードされている。
図4は、ICカード31の構成例を示す図である。
ICカード31には、ICカード31を一意に識別することが可能な情報であるデバイスID311、デジタル署名コマンド312、デジタル署名秘密鍵313、MAC鍵314、パッチ復号のための復号鍵315、検証コード検証のための検証鍵316、デジタル署名のための署名鍵317、およびPIN認証用のアプレット318等が格納されている。
ICカード31には、ICカード31を一意に識別することが可能な情報であるデバイスID311、デジタル署名コマンド312、デジタル署名秘密鍵313、MAC鍵314、パッチ復号のための復号鍵315、検証コード検証のための検証鍵316、デジタル署名のための署名鍵317、およびPIN認証用のアプレット318等が格納されている。
デジタル署名秘密鍵313、MAC鍵314は、クライアント端末10のプラットフォーム完全性検証で利用する暗号鍵である。デジタル署名コマンド312は、MAC鍵314を用いて、クライアント端末10が生成する構成証明メッセージのMACを検証し、構成証明メッセージの検証に成功すると、デジタル署名秘密鍵313を用いて、構成証明メッセージのデジタル署名を生成するためのコマンドである。
復号鍵315、検証鍵316、およびPIN認証用のアプレット318は、システム起動・パッチ適用処理に用いられる。署名鍵317は、必要に応じて記憶され、例えば、更新サーバ80からのパッチダウンロード処理に用いられる。
次に、図5のフローチャートを参照して、シンクライアントシステムのクライアント端末10が実行する、システム起動・パッチ適用処理について説明する。この処理を開始するにあたり、USBデバイス20のパッチ格納用パーティション212には、予め何らかの方法(ダウンロード、記憶媒体での配布、メール添付等)によってパッチが取得され、格納されているものとする。
ステップS1において、クライアント端末10のCPU11は、後段の起動処理のため、さまざまなデバイスを初期化し、RAM13にファイルディレクトリを展開する。これにより、例えば、RAM13には、図6に示すようなファイルディレクトリ構成が展開される。図6の例において、home-patchは、更新対象のパッチファイルが展開されるディレクトリであり、etc-scriptは、パッチスクリプトファイルが展開されるディレクトリである。
図5の説明に戻る。ユーザは、クライアント端末10の入力部16を用いて暗証番号を入力し、ICカード31に対し、パッチ復号および検証コード検証鍵取得のためのPIN認証を要求する。
ステップS2において、クライアント端末10のCPU11は、ユーザから入力された暗証番号から、ICカードリーダ・ライタ30を介してICカード31に対してPIN認証を要求する。ICカード31は、クライアント端末10からの要求に応じて、PIN認証用のアプレット318を起動してPIN認証を行い、PIN認証の結果をクライアント端末10に送信する。
ステップS3において、クライアント端末10のCPU11は、PIN認証に成功したか否かを判定し、PIN認証に成功したと判定した場合、ステップS4に進む。ステップS4において、クライアント端末10のCPU11は、ICカードリーダ・ライタ30を介してICカード31から復号鍵315および検証鍵316を取得する。この復号鍵315は、ユーザがファイルの中身をみることができないようにするための鍵であり、検証鍵316は、ユーザが勝手に置いたファイルを展開しないようにするための鍵である。
ステップS5において、クライアント端末10のCPU11は、USBデバイス20のパッチ格納用パーティション212からパッチを取得する。ステップS6において、クライアント端末10のCPU11は、ステップS4の処理で取得した復号鍵315および検証鍵316を用いて、ステップS5の処理で取得したパッチの復号および検証コードの検証を行う。
ステップS7において、クライアント端末10のCPU11は、ステップS6の処理で検証に成功したパッチのみをファイルディレクトリにコピーする。すなわち、クライアント端末10のCPU11は、パッチに含まれる更新対象のパッチファイルを図6のhome-patchにコピーし、パッチスクリプトファイルを図6のetc-scriptにコピーする。ステップS8において、クライアント端末10のCPU11は、RAM13の実行ディレクトリ(etc-script)のスクリプトファイルを順次実行する。この実行ディレクトリには、パッチスクリプトファイルだけでなく、シンクライアントOSの通常の起動スクリプトファイルも含まれる。
ステップS9において、クライアント端末10のCPU11は、全てのスクリプトを実行したか否かを判定し、まだ実行していないスクリプトがあると判定した場合、ステップS8に戻り、上述した処理を繰り返し実行する。
そして、ステップS8において、クライアント端末10のCPU11は、全てのスクリプトを実行したと判定した場合、または、ステップS3において、PIN認証に失敗したと判定した場合、処理を終了する。なお、全てのスクリプトが実行された場合には、システムが運用ランレベルに移行し、起動完了することになる。
[発明の実施の形態における効果]
1.以上のように、シンクライアントOSの起動時に変更部分のパッチを適用することで、一度配布したUSBデバイス20に記憶されているシンクライアントOS215の更新の仕組みを容易に導入することが可能となる。
1.以上のように、シンクライアントOSの起動時に変更部分のパッチを適用することで、一度配布したUSBデバイス20に記憶されているシンクライアントOS215の更新の仕組みを容易に導入することが可能となる。
2.パッチを暗号化し、かつ、パッチに検証コードを付与するようにしたので、パッチが不正に取得されたり、改竄されたりしてしまうことを防止することができる。
3.パッチのデータ検証を行い、データ検証に成功したパッチのみ適用するようにしたので、不正なパッチが誤って適用されてしまうことを防止することができる。
以上、添付図面を参照しながら、本発明に係るシンクライアントシステム等の好適な実施形態について説明したが、本発明はかかる例に限定されない。当業者であれば、本願で開示した技術的思想の範疇内において、各種の変更例又は修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
10………クライアント端末
11………CPU
20………USBデバイス
40………ネットワーク
212………パッチ格納用パーティション
215………シンクライアントOS
11………CPU
20………USBデバイス
40………ネットワーク
212………パッチ格納用パーティション
215………シンクライアントOS
Claims (6)
- ネットワークを介してシンクライアントサーバに接続されるクライアント端末において、
シンクライアントオペレーティングシステムのイメージファイルを、装着された携帯型記憶デバイスの第1の領域に記憶する第1の記憶手段と、
前記シンクライアントオペレーティングシステムの更新のためのパッチスクリプトファイル及び更新対象のパッチファイルを、前記携帯型記憶デバイスの第2の領域に記憶する第2の記憶手段と、
前記第1の領域に記憶されているシンクライアントオペレーティングシステムのイメージファイルを読み出して、揮発性メモリにファイルディレクトリを展開する展開手段と、
前記第2の領域に記憶されている前記パッチスクリプトファイル及び前記更新対象のパッチファイルを前記ファイルディレクトリ内に配置する配置手段と、
前記パッチスクリプトファイルを実行する実行手段と
を備えることを特徴とするクライアント端末。 - 前記配置手段は、前記第2の領域に記憶されている前記パッチスクリプトファイルを、前記シンクライアントオペレーティングシステムの起動スクリプトファイルが配置される実行ディレクトリに配置し、
前記実行手段は、前記実行ディレクトリに配置されているスクリプトファイルを全て実行する
ことを特徴とする請求項1に記載のクライアント端末。 - 前記第2の領域に記憶されている前記パッチスクリプトファイル及び前記更新対象のパッチファイルのデータ検証を行うデータ検証手段をさらに備え、
前記配置手段は、前記データ検証手段による検証が成功した前記パッチスクリプトファイル及び前記更新対象のパッチファイルのみを配置する
ことを特徴とする請求項1または請求項2に記載のクライアント端末。 - 前記第2の領域に記憶されている前記パッチスクリプトファイル及び前記更新対象のパッチファイルは、暗号化されており、
前記パッチスクリプトファイル及び前記更新対象のパッチファイルを復号する復号手段をさらに備える
ことを特徴とする請求項1乃至請求項3のいずれかに記載のクライアント端末。 - ネットワークを介してシンクライアントサーバに対し、アプリケーションの実行を要求するクライアント端末のオペレーティングシステム更新方法において、
シンクライアントオペレーティングシステムのイメージファイルを、装着された携帯型記憶デバイスの第1の領域に記憶する第1の記憶ステップと、
前記シンクライアントオペレーティングシステムの更新のためのパッチスクリプトファイル及び更新対象のパッチファイルを、前記携帯型記憶デバイスの第2の領域に記憶する第2の記憶ステップと、
前記第1の領域に記憶されているシンクライアントオペレーティングシステムのイメージファイルを読み出して、揮発性メモリにファイルディレクトリを展開する展開ステップと、
前記第2の領域に記憶されている前記パッチスクリプトファイル及び前記更新対象のパッチファイルを前記ファイルディレクトリ内に配置する配置ステップと、
前記パッチスクリプトファイルを実行する実行ステップと
を含むことを特徴とするオペレーティングシステム更新方法。 - ネットワークを介してシンクライアントサーバに対し、アプリケーションの実行を要求するコンピュータにより読み取り可能な形式で記述されたプログラムであって、
シンクライアントオペレーティングシステムのイメージファイルを、装着された携帯型記憶デバイスの第1の領域に記憶する第1の記憶ステップと、
前記シンクライアントオペレーティングシステムの更新のためのパッチスクリプトファイル及び更新対象のパッチファイルを、前記携帯型記憶デバイスの第2の領域に記憶する第2の記憶ステップと、
前記第1の領域に記憶されているシンクライアントオペレーティングシステムのイメージファイルを読み出して、揮発性メモリにファイルディレクトリを展開する展開ステップと、
前記第2の領域に記憶されている前記パッチスクリプトファイル及び前記更新対象のパッチファイルを前記ファイルディレクトリ内に配置する配置ステップと、
前記パッチスクリプトファイルを実行する実行ステップと
を含む処理をコンピュータに実行させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010205152A JP2012063809A (ja) | 2010-09-14 | 2010-09-14 | シンクライアント端末、オペレーティングシステム更新方法、およびプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010205152A JP2012063809A (ja) | 2010-09-14 | 2010-09-14 | シンクライアント端末、オペレーティングシステム更新方法、およびプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2012063809A true JP2012063809A (ja) | 2012-03-29 |
Family
ID=46059497
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010205152A Pending JP2012063809A (ja) | 2010-09-14 | 2010-09-14 | シンクライアント端末、オペレーティングシステム更新方法、およびプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2012063809A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017028590A (ja) * | 2015-07-25 | 2017-02-02 | 滋春 神山 | 関連付けられた複数のsimカードを挿入した各々の携帯電話やスマートフォンを使い、電池切れの際電池交換や携帯充電器の使用を不要にした通信システム |
-
2010
- 2010-09-14 JP JP2010205152A patent/JP2012063809A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017028590A (ja) * | 2015-07-25 | 2017-02-02 | 滋春 神山 | 関連付けられた複数のsimカードを挿入した各々の携帯電話やスマートフォンを使い、電池切れの際電池交換や携帯充電器の使用を不要にした通信システム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2837523T3 (es) | Aprovisionamiento seguro de sistemas operativos | |
US8560823B1 (en) | Trusted modular firmware update using digital certificate | |
JP6226709B2 (ja) | 画像形成装置及びその制御方法、並びにプログラム | |
JP5565040B2 (ja) | 記憶装置、データ処理装置、登録方法、及びコンピュータプログラム | |
US20020157010A1 (en) | Secure system and method for updating a protected partition of a hard drive | |
US20080022380A1 (en) | Method of patching applications on small resource-constrained secure devices | |
JP2015052996A (ja) | 画像形成装置、及び画像形成装置の制御方法 | |
US9690944B2 (en) | System and method updating disk encryption software and performing pre-boot compatibility verification | |
KR101695639B1 (ko) | 클라우드 기반의 애플리케이션 보안 서비스 제공 방법 및 시스템 | |
JP2010086370A (ja) | 画像形成装置、配信サーバーおよびファームウェアアップデート方法 | |
US20140025954A1 (en) | Information processing device, information processing method, and computer program product | |
US7409575B2 (en) | Recovery of computer systems | |
CN114296873B (zh) | 一种虚拟机镜像保护方法、相关器件、芯片及电子设备 | |
JP5309709B2 (ja) | ソフトウェア改ざん検知方法及び機器 | |
JP2011150499A (ja) | シンクライアントシステム、シンクライアント端末およびシンクライアントプログラム | |
CN112613011A (zh) | U盘系统认证方法、装置、电子设备及存储介质 | |
CN110196741B (zh) | 基本输入输出系统的设置方法、终端及计算机存储介质 | |
JP2019008592A (ja) | セキュアエレメント、コンピュータプログラム、デバイス、os起動システム及びos起動方法 | |
JP2012058803A (ja) | シンクライアントシステム、およびオペレーティングシステム更新方法 | |
JP2012063809A (ja) | シンクライアント端末、オペレーティングシステム更新方法、およびプログラム | |
US11330129B2 (en) | Image forming system, image forming apparatus, and storing medium storing application control program | |
CN116724309A (zh) | 设备和通信方法 | |
JP2018097888A (ja) | 画像形成装置、及び画像形成装置の制御方法 | |
US11971991B2 (en) | Information processing apparatus, control method for controlling the same and storage medium | |
JP5574007B2 (ja) | 情報処理装置及び情報保護方法 |