(57)【要約】【課題】  クラウドサービスを提供するためのエージェントおよびクラウドサービスのためのセキュリティ鍵装置を提供する。【解決手段】  本発明によれば、クラウドサーバーがハッキングを受ける場合でも、個人および企業の重要データは開いてみることができず、また、ファイルのヘッダーに対する暗復号化がセキュリティ鍵装置で処理されるので、個人用ＰＣがハッキングを受ける場合でも、暗号化鍵の流出を防止することができ、ユーザー端末とセキュリティ鍵装置間のセッション形成の際にパスワードで鍵誘導されたランダム値を用いてユーザー認証を行うことにより、従来と比較してセキュリティ性を顕著に向上させることができる。【選択図】  図１
2016046799.tif 000002
【特許請求の範囲】
【請求項１】
ユーザー端末にインストールされ、セキュリティクラウドサービスを提供するためのエージェントにおいて、
前記ユーザー端末から、クラウドサーバーにアップロードすべきファイルを受信すると、受信されたファイルを暗号化するためのランダム値を有するヘッダーを生成するヘッダー生成部と、
前記ユーザー端末に着脱可能に接続されるセキュリティ鍵装置が感知されると、前記セキュリティ鍵装置とのセッション形成のためのセッション鍵を生成するセッション鍵生成部―前記セキュリティ鍵装置は、前記生成されたヘッダーを暗号化し、或いはクラウドサーバーからダウンロードされたファイルのヘッダーを復号化する―と、
前記セキュリティ鍵装置を介してヘッダーが暗号化されると、暗号化されたヘッダーを用いて、前記クラウドサーバーにアップロードされるべきファイルを暗号化し、或いは、前記セキュリティ鍵装置を介してヘッダーが復号化されると、復号化されたヘッダーを用いて、前記クラウドサーバーからダウンロードされたファイルを復号化するファイル暗復号化部とを含むことを特徴とする、セキュリティクラウドサービスを提供するためのエージェント。
【請求項２】
前記ヘッダー生成部は、
前記生成されたヘッダーを前記セッション鍵で暗号化して前記セキュリティ鍵装置へ伝送することを特徴とする、請求項１に記載のセキュリティクラウドサービスを提供するためのエージェント。
【請求項３】
前記セッション鍵生成部は、
前記セキュリティ鍵装置の接続が感知されると、パスワードの入力を受けて前記セキュリティ鍵装置へ公開鍵を要請し、認証のためのランダム値を含む認証値データを生成して公開鍵で暗号化して前記セキュリティ鍵装置へ伝送し、前記セキュリティ鍵装置から応答のためのランダム値を含む応答値データを受信すると、前記認証のためのランダム値および前記応答のためのランダム値を用いてセッション鍵を生成することを特徴とする、請求項１に記載のセキュリティクラウドサービスを提供するためのエージェント。
【請求項４】
セキュリティクラウドサービスのためのセキュリティ鍵装置において、
ユーザー端末に着脱可能に接続され、前記ユーザー端末にインストールされたエージェントとのインターフェースを提供するインターフェース部と、
暗号化されたヘッダーを保存するための保存部―前記ヘッダーは、クラウドサーバーに共有するためのファイルを暗復号化するためにランダム値として生成される暗号化鍵である―と、
前記エージェントから、前記クラウドサーバーへアップロードすべきファイルに対するヘッダーを受信すると、これを暗号化して前記保存部に保存した後、前記エージェントへ伝送し、前記クラウドサーバーからダウンロードされたファイルに対する暗号化されたヘッダーを受信すると、これを保存部に保存した後、前記暗号化されたヘッダーを復号化して前記エージェントへ伝送する暗復号化変換支援コントローラーとを含むことを特徴とする、セキュリティクラウドサービスのためのセキュリティ鍵装置。
【請求項５】
前記エージェントから公開鍵が要請されると、公開鍵を伝送し、認証のためのランダム値を含む認証値データを受信し、応答のためのランダム値を含む応答値データを生成して前記エージェントへ伝送し、前記エージェントからセッション鍵を受信すると、前記エージェントとのセッションを形成するセキュリティ認証チップ―前記セッション鍵は、前記認証のためのランダム値および前記応答のためのランダム値を用いて前記エージェントによって生成される―をさらに含むことを特徴とする、請求項４に記載のセキュリティクラウドサービスのためのセキュリティ鍵装置。
【請求項６】
前記セキュリティ認証チップは、
前記暗号化されたヘッダーまたは前記復号化されたヘッダーを前記セッション鍵で暗号化して前記エージェントへ伝送することを特徴とする、請求項５に記載のセキュリティクラウドサービスのためのセキュリティ鍵装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、セキュリティが強化されたクラウドサービスを提供するためのエージェントおよびセキュリティクラウドサービスのためのセキュリティ鍵装置に係り、特に、ユーザー端末に着脱可能に接続されるハードウェアセキュリティ鍵装置でユーザー認証、ファイルのヘッダー暗復号化を行ってクラウドサーバーに保存することにより、セキュリティを強化させることができるようにする技術に関する。
【背景技術】
【０００２】
最近、ＩＴ資源の効率的な分配およびデータの安全な保存のためにクラウドコンピューティング環境が広く用いられている。クラウドコンピューティングは、既に１９６０年代に米国のコンピューター学者のジョン・マッカーシーによってその概念が主唱されたことがあるが、最近、通信インフラが急速に良くなっており、コンピューティング環境の資源を効率よく分配しようとする要求が増大するにつれて、その発展および開発の速度が増加しつつある。
【０００３】
クラウドコンピューティング環境で、ユーザーは、高仕様の端末機が不要であるため、クライアントレベルでのＩＴ装備投資費用が節減され、使用環境によるＩＴ資源の効率的な分配が可能であるという利点がある。ところが、クラウドコンピューティングにおけるサーバーがハッキングを受けると、データ流出のおそれがあり、クラウドコンピューティングサービスを提供するサービス提供者側の悪意によってユーザーの重要データが流出する可能性が高いというセキュリティ上の問題点がある。
【０００４】
特に、クラウドサービスがＰＣ環境だけでなくスマートフォンなどのモバイル環境でも活性化されるにつれて、クラウドサーバーのハッキングによるセキュリティ問題の解決が至急の課題として台頭している。
【０００５】
このため、韓国登録特許第１０−１１０７０５６号などでは、クライアント端末からクラウドサーバーへ同期化ファイルを伝送する前に、該当ファイルを予め暗号化してクラウドサーバーへ伝送し、クラウドサーバーから暗号化ファイルを受信した後、これをクライアント端末でさらに復号化する方法が使用されている。
【０００６】
従来、このような方式の一部の製品は、ウィンドウズ（登録商標）エージェンシーアプリケーションプログラムで直接暗号化鍵を管理してソフトウェアアルゴリズムモジュールで暗号化する方式と、ハードウェアデバイスに保存された暗号化鍵を持ってきてソフトウェアでファイルを暗号化する方式が採用されている。
【０００７】
このようなクラウドサービスにおけるセキュリティ性を強化するための従来のファイル暗号化方式は、ソフトウェアを介して暗号化が行われる方式であるので、暗号化鍵がウィンドウズ（登録商標）プログラムで管理され、暗号化鍵がハッカーのモニタープログラムによって露出するおそれがあって、セキュリティを保障することができないという問題点がある。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】大韓民国登録特許第１０−１１０７０５６号
【発明の概要】
【発明が解決しようとする課題】
【０００９】
本発明は、かかる従来の問題点を解決するためになされたもので、その目的は、ファイルの暗号化鍵であるヘッダーをランダムに生成し、ファイルはエージェントで暗復号化し、ヘッダーはユーザー端末に接続されるセキュリティ鍵装置で行われるようにして、ハッキングによるセキュリティ鍵の流出を防止することができ、セキュリティ鍵装置がヘッダーのみ暗復号化処理することにより、送受信されるデータ量を軽量化することができることにある。
【００１０】
また、本発明の他の目的は、セキュリティ鍵装置がユーザー端末に接続された場合にのみクラウドファイルを暗復号化して同期化することにより、セキュリティ性がより向上できるようにすることにある。
【００１１】
また、本発明の別の目的は、ユーザー端末にセキュリティ鍵装置を接続するときに、パスワードで鍵誘導されたランダム値を用いてセッション鍵を生成することにより、セキュリティ性がより向上できるようにすることにある。
【課題を解決するための手段】
【００１２】
上記目的を達成するために、本発明の好適な一実施形態に係るユーザー端末にインストールされ、セキュリティクラウドサービスを提供するためのエージェントは、前記ユーザー端末から、クラウドサーバーにアップロードすべきファイルを受信すると、受信されたファイルを暗号化するためのランダム値を有するヘッダーを生成するヘッダー生成部と、前記ユーザー端末に着脱可能に接続されるセキュリティ鍵装置が感知されると、前記セキュリティ鍵装置とのセッション形成のためのセッション鍵を生成するセッション鍵生成部―前記セキュリティ鍵装置は、前記生成されたヘッダーを暗号化し、或いはクラウドサーバーからダウンロードされたファイルのヘッダーを復号化する―と、前記セキュリティ鍵装置を介してヘッダーが暗号化されると、暗号化されたヘッダーを用いて、前記クラウドサーバーにアップロードされるべきファイルを暗号化し、或いは、前記セキュリティ鍵装置を介してヘッダーが復号化されると、復号化されたヘッダーを用いて、前記クラウドサーバーからダウンロードされたファイルを復号化するファイル暗復号化部とを含むことができる。
【００１３】
また、前記ヘッダー生成部は、前記生成されたヘッダーを前記セッション鍵で暗号化して前記セキュリティ鍵装置へ伝送することができる。
【００１４】
また、前記セッション鍵生成部は、前記セキュリティ鍵装置の接続が感知されると、パスワードの入力を受けて前記セキュリティ鍵装置に公開鍵を要請し、認証のためのランダム値を含む認証値データを生成して公開鍵で暗号化して前記セキュリティ鍵装置へ伝送し、前記セキュリティ鍵装置から応答のためのランダム値を含む応答値データを受信すると、前記認証のためのランダム値および前記応答のためのランダム値を用いてセッション鍵を生成することができる。
【００１５】
一方、上記目低を達成するために、本発明の好適な一実施形態に係るセキュリティクラウドサービスのためのセキュリティ鍵装置は、ユーザー端末に着脱可能に接続され、前記ユーザー端末にインストールされたエージェントとのインターフェースを提供するインターフェース部と、暗号化されたヘッダーを保存するための保存部―前記ヘッダーは、クラウドサーバーに共有するためのファイルを暗復号化するためにランダム値として生成される暗号化鍵である―と、前記エージェントから、前記クラウドサーバーにアップロードすべきファイルに対するヘッダーを受信すると、これを暗号化して前記保存部に保存した後、前記エージェントへ伝送し、前記クラウドサーバーからダウンロードされたファイルに対する暗号化されたヘッダーを受信すると、これを保存部に保存した後、前記暗号化されたヘッダーを復号化して前記エージェントへ伝送する暗復号化変換支援コントローラーとを含むことができる。
【００１６】
また、前記エージェントから公開鍵が要請されると、公開鍵を伝送し、認証のためのランダム値を含む認証値データを受信し、応答のためのランダム値を含む応答値データを生成して前記エージェントへ伝送し、前記エージェントからセッション鍵を受信すると、前記エージェントとのセッションを形成するセキュリティ認証チップ―前記セッション鍵は、前記認証のためのランダム値および前記応答のためのランダム値を用いて前記エージェントによって生成される―をさらに含むことができる。
【００１７】
また、前記セキュリティ認証チップは、前記暗号化されたヘッダーまたは前記復号化されたヘッダーを前記セッション鍵で暗号化して前記エージェントへ伝送することができる。
【発明の効果】
【００１８】
本発明によれば、クラウドサーバーがハッキングを受ける場合でも個人および企業の重要データは開いてみることができず、また、ファイルのヘッダー（ランダム値を持つ暗号化鍵）に対する暗復号化がセキュリティ鍵装置で処理されるので、個人用ＰＣがハッキングを受ける場合でも暗号化鍵の流出を防止することができるため、従来と比較してセキュリティ性を顕著に向上させることができるという効果がある。
【００１９】
また、ユーザー端末へのセキュリティ鍵装置の接続時に、パスワードで鍵誘導されたランダム値を用いてセッション鍵を生成し、暗復号化されたヘッダーをセッション鍵で暗号化して伝送することにより、セキュリティ性をより向上させることができるという効果がある。
【図面の簡単な説明】
【００２０】
【図１】本発明に係るセキュリティクラウドサービス提供システムの構成図である。
【図２】図１のユーザー端末のエージェントの詳細構成を示すブロック図である。
【図３】図２のセッション鍵生成部の認証値データ生成を説明するための図である。
【図４】図１のセキュリティ鍵装置の詳細構成を示すブロック図である。
【図５】図４のセキュリティ認証チップの応答値データ生成を説明するための図である。
【図６】ＰＣ環境でセキュリティ鍵装置の使用のための事前過程を示す流れ図である。
【図７】ＰＣ環境でセキュリティ鍵装置を用いてファイルを暗号化してクラウドサーバーへ伝送する過程を示す流れ図である。
【図８】モバイル環境でクラウドサービスを用いてファイルを復号化する過程を示す流れ図である。
【図９】ユーザー端末にセキュリティ鍵装置が接続されるときのユーザー認証過程を示す流れ図である。
【図１０】ファイルアップロード時にセキュリティ鍵装置でファイルのヘッダーを暗号化する過程を示す図である。
【図１１】ファイルダウンロード時にセキュリティ鍵装置でファイルのヘッダーを復号化する過程を示す図である。
【発明を実施するための形態】
【００２１】
本発明は、様々な変更を加えることができ、様々な実施形態を有することができるので、以下、特定の実施形態を図面に例示し、詳細な説明に詳細に説明する。ところが、これらの実施形態は、本発明を特定の実施形態に限定しようとするものではなく、本発明の思想および技術範囲に含まれる変更、均等物および代替物をいずれも含むものと理解されるべきである。
【００２２】
各図面を説明しながら、類似した参照符号を類似した構成要素に対して使用した。本発明を説明するにあたり、関連した公知の技術についての具体的な説明が本発明の要旨を不明確にする可能性があると判断される場合は、その詳細な説明を省略する。
【００２３】
「第１」、「第２」などの用語は様々な構成要素を説明するために使用できるが、前記構成要素はこれらの用語により限定されてはならない。これらの用語は、ある構成要素を他の構成要素と区別する目的でのみ使用される。
【００２４】
例えば、本発明の権利範囲を逸脱しない範疇内で、第１構成要素は第２構成要素と命名することができ、同様に、第２構成要素も第１構成要素と命名することができる。
【００２５】
「および／または」という用語は、複数の関連した記載項目の組み合わせ、または複数の関連した記載項目のいずれかを含む。
【００２６】
ある構成要素が他の構成要素に「連結」または「接続」されていると言及されたときは、他の構成要素に直接連結または接続されている可能性もあるが、それらの構成要素の間に別の構成要素が介在することもあると理解すべきである。
【００２７】
これに対して、ある構成要素が他の構成要素に「直接連結」されているか、「直接接続」されていると言及されたときは、それらの構成要素の間に別の構成要素が存在しないと理解すべきである。
【００２８】
本出願において使用した用語は、単に特定の実施形態を説明するために使用されたもので、本発明を限定しようとするものではない。
【００２９】
単数の表現は、文脈上明らかに異なる意味を表さない限り、複数の表現を含む。本出願において、「含む」または「有する」などの用語は、明細書に記載された特徴、数字、段階、動作、構成要素、部品またはそれらの組み合わせが存在することを示すものであり、１つまたはそれ以上の他の特徴、数字、段階、動作、構成要素、部品またはそれらの組み合わせの存在または付加の可能性を予め排除するものではないと理解すべきである。
【００３０】
別途定義されない限り、技術的または科学的な用語を含めてここで使用される全ての用語は、本発明の属する技術分野における通常の知識を有する者に一般的に理解されるものと同様の意味を有する。
【００３１】
一般に使用される辞書に定義されている用語は、関連技術の文脈上持つ意味と同じ意味を持つと解釈されるべきであり、本出願において明らかに定義しない限り、理想的または過度に形式的な意味で解釈されない。
【００３２】
図１は本発明に係るセキュリティクラウドサービス提供システムの構成図、図２は図１のエージェントの詳細構成を示すブロック図、図４は図１のセキュリティ鍵装置の詳細構成を示すブロック図である。
【００３３】
図１に示すように、本発明に係るセキュリティクラウドサービス提供システムは、ユーザー端末１とセキュリティ鍵装置２とクラウドサーバー３とを含んでなる。ユーザー端末１は、ユーザーファイルが保存される装置であって、ファイルの保存、表示機能とインターネットに接続可能な通信環境を備えた各種端末、例えばＰＣ、ノートパソコン、タブレットＰＣ、スマートフォンなどを意味する。図１では、１ＡはＰＣ、１ＢはタブレットＰＣ、１Ｃはスマートフォンをそれぞれ示す。
【００３４】
また、クラウドサーバー３は、ユーザーファイルの共有のためのクラウドサービスを提供する装置であって、映画、写真、音楽などのメディアファイル、文書、住所録などといったユーザーのコンテンツを保存しておき、ユーザーＰＣ、スマートフォン、スマートＴＶを含むユーザー端末からの要請があるとき、ユーザー端末でサーバーに保存されたコンテンツをダウンロードして使用することができるようにする。韓国内のクラウドサービスとしてはＮＡＶＥＲ Ｎドライブ、ＫＴ Ｕクラウド、Ｄａｕｍ クラウドがあり、外国のクラウドサービスとしてはＤｒｏｐｂｏｘ、Ｂｏｘ、Ｓｕｇａｒｓｙｎｃ、Ｇｏｏｇｌｅｄｒｉｖｅ、Ｓｋｙ Ｄｒｉｖｅなどがある。
【００３５】
図２に示すように、ユーザー端末１には、本発明に係るセキュリティクラウドサービスを提供するためのエージェント１００がインストールされている。エージェント１００は、イベント感知部１１０、セッション鍵生成部１２０、ヘッダー生成部１３０およびファイル暗復号化部１４０を含むことができる。
【００３６】
イベント感知部１１０はファイルのイベント発生を感知することができる。ここで、イベントとしては、アップロードすべきファイルおよびダウンロードされたファイルの生成、コピー、削除などである。
【００３７】
ここで、アップロードすべきファイルの生成およびコピーなどのように暗号化が必要なファイルの発生は第１イベントになり、ダウンロードされたファイルの生成および削除などのように復号化が必要なファイルの発生は第２イベントになることができる。
【００３８】
ヘッダー生成部１３０は、ファイルのアップロードおよびコピーなどの第１イベントが感知されると、ランダム値を持つヘッダーを生成してセキュリティ鍵装置２へ伝送することができる。ここで、ヘッダーはファイルを暗復号化するための暗号化鍵であって、第１イベントの発生時ごとにランダムな値として生成できる。
【００３９】
また、ヘッダー生成部１３０は、ファイルのダウンロードおよび削除などの第２イベントが感知されると、クラウドサーバー３からダウンロードされたファイルのヘッダーをセキュリティ鍵装置２へ伝送することができる。
【００４０】
イベント感知部１１０は、ユーザーがクラウドサーバー３へファイルをアップロードしようとする場合およびファイルをコピーしようとする場合、セキュリティ鍵装置２の接続か否かを感知し、セキュリティ鍵装置２が接続されている場合にのみ、セキュリティ鍵装置でアップロード対象ファイルのヘッダーに対する暗号化動作を開始するようにしてセキュリティ性を強化することができる。
【００４１】
また、イベント感知部１１０は、ユーザーがクラウドサーバー３から暗号化ファイルをダウンロードして保存しようとする場合およびファイルを削除しようとする場合、セキュリティ鍵装置２の接続か否かを感知し、セキュリティ鍵装置２が接続されている場合にのみ、セキュリティ鍵装置２で暗号化ファイルのヘッダーに対する復号化動作を開始するようにすることができる。
【００４２】
セッション鍵生成部１２０は、セキュリティ鍵装置２の接続が感知されると、ユーザー認証を介して物理的に接続されたセキュリティ鍵装置２との論理的接続のためのセッションを形成することができる。
【００４３】
セッション鍵生成部１２０は、ユーザー端末１へのセキュリティ鍵装置２の接続時に、パスワードで鍵誘導された認証ランダム値を公開鍵で暗号化した認証値をセキュリティ鍵装置２へ伝送し、セキュリティ鍵装置２から認証値に対する応答値を受信してセッション鍵を生成してセキュリティ鍵装置２へ伝送することにより、セキュリティ鍵装置２とのセッションを形成することができる。
【００４４】
具体的に、セッション鍵生成部１２０は、セキュリティ鍵装置２の物理的接続を感知すると、ユーザーからパスワードの入力を受けることができる。また、セッション鍵生成部１２０は、パスワード入力の際にセキュリティ鍵装置２から公開鍵を要請して受信することができる。一方、認証値の生成については図３を参照して説明することができる。
【００４５】
図３は図２のセッション鍵生成部の認証値データ生成を説明するための図である。
【００４６】
セッション鍵生成部１２０は、パスワードで鍵誘導された認証ランダム値を生成することができる。ここで、認証ランダム値は、ＡＥＳ(Advanced Encryption Standard)アルゴリムを用いて生成でき、ＣＢＣ(Cipher Block Chaining)モードで暗号化できる。
【００４７】
ここで、認証ランダム値(key)は、ＣＢＣモードで次の数式を用いて１６バイトとして生成できる。
【００４８】
【数１】
2016046799.tif 000003
【００４９】
認証ランダム値は、ＩＶ（Initialization Vector：初期化ベクトル）とパスワード平文の最初１ブロックとＸＯＲ演算して暗号化し、平文の次のブロック（ＳＮＯ）は以前に暗号化された結果ブロック（ＳＮＯ−１）とＸＯＲ演算する過程を繰り返し行うことにより得られる。ここで、最終ブロックはパディングされたブロックであってもよい。
【００５０】
セッション鍵生成部１２０は、パスワードで鍵誘導された１６バイトの認証ランダム値が生成されると、前の８バイト（第１ランダム値）２２０と後ろの８バイト（第２ランダム値）２３０に分離し、各ランダム値の前にパスワード文字列２１０を挿入して認証値データの第１ブロックおよび第２ブロックを生成することができる。
【００５１】
例えば、パスワードが「ＳＺＴＧＢＰＷＤ」であり、前記数式で得られた認証ランダム値が０×００ ０１ ０２ ０３ ０４ ０５ ０６ ０７ ０８ ０９ ０Ａ ０Ｂ ０Ｃ ０Ｄ ０Ｅ ０Ｆであれば、第１ブロックは「Ｓ Ｚ Ｔ Ｇ Ｂ Ｐ Ｗ Ｄ ００ ０１ ０２ ０３ ０４ ０５ ０６ ０７」となり、第２ブロックは「Ｓ Ｚ Ｔ Ｇ Ｂ Ｐ Ｗ Ｄ ０８ ０９ ０Ａ ０Ｂ ０Ｃ ０Ｄ ０Ｅ ０Ｆ」となる。ここで、第１ブロックと第２ブロックはパスワードに基づく暗号化の標準ＰＫＣＳ＃５(Public Key Cryptography Standard)に準じて暗号化できる。
【００５２】
図３に示すように、認証値データ２００は、２５６バイトであり、１６バイト列を持つ多数のブロックから構成できる。
【００５３】
第１ブロックは、パスワード文字列２１０の８バイトと、パスワードで鍵誘導された第１ランダム値２２０の８バイトから構成できる。
【００５４】
第２ブロックは、パスワード文字列２１０の８バイトと、パスワードで鍵誘導された第２ランダム値２３０の８バイトから構成できる。
【００５５】
また、第３ブロックは、セキュリティ鍵装置２から受信された公開鍵の検証結果に対する４バイトの検証値２４０を含むことができ、残りの１２バイトはパディングが適用できる。一方、残りのブロックはパディングが適用できる。すなわち、パディング２５０として２２０バイトが適用できる。
【００５６】
セッション鍵生成部１２０は、図３の認証値データ２５６バイトを、セキュリティ鍵装置２から受信された公開鍵としてＲＳＡ暗号化してセキュリティ鍵装置２へ伝送することができる。また、セッション鍵生成部１２０は、暗号化された認証値データに対する応答として、セキュリティ鍵装置２からパスワードで暗号化された応答値データを受信してセッション鍵を生成し、生成されたセッション鍵をセキュリティ鍵装置２へ伝送することにより、セッションを形成することができる。
【００５７】
ヘッダー生成部１３０は、第１イベントが感知されたファイルに対するヘッダーを生成し、生成されたヘッダーを、セッション鍵生成部１２０で生成されたセッション鍵で暗号化してセキュリティ鍵装置２へ伝送することができる。
【００５８】
ここで、アップロードファイルに対して生成されたヘッダーは、セキュリティ鍵装置２で暗号化された後、ファイル暗復号化部１４０へ伝送できる。また、ダウンロードファイルに対するヘッダーは、セキュリティ鍵装置２で復号化された後、ファイル暗復号化部１４０へ伝送できる。
【００５９】
ファイル暗復号化部１４０は、セキュリティ鍵装置２で暗号化されたヘッダーを用いて、第１イベントの感知されたファイルを暗号化し、暗号化されたファイルをクラウドサーバー３へアップロードすることができる。
【００６０】
また、ファイル暗復号化部１４０は、セキュリティ鍵装置２で復号化されたヘッダーを用いて、第２イベントの感知されたファイルを復号化し、ユーザー端末１で実行できるようにする。
【００６１】
セキュリティ鍵装置２は、ユーザー端末１に着脱可能に接続されてユーザー端末１に接続された状態で動作し、イベント感知部１１０でイベント発生が感知されたファイルのヘッダーをヘッダー生成部１３０から受信し、これに対して暗号化または復号化を行ってファイル暗復号化部１４０へ伝送することができる。
【００６２】
具体的に、セキュリティ鍵装置２は、ファイルアップロード作業ではヘッダー生成部１３０から受信されたヘッダーを暗号化してファイル暗復号化部１４０へ伝送し、ファイルダウンロード作業ではクラウドサーバー３からダウンロードされた暗号化ファイルのヘッダーをヘッダー生成部１３０から受信すると、これを復号化してファイル暗復号化部１４０へ伝送する機能を行う。また、ファイルのコピー、削除などのイベントの発生時にも暗復号化過程を行うことができる。
【００６３】
一方、図４はセキュリティ鍵装置２の詳細構成を示す 。図４に示すように、セキュリティ鍵装置２は、インターフェース部１０Ａ、１０Ｂ、暗復号化変換支援コントローラー２０、保存部３０およびセキュリティ認証チップ４０を含んで構成される。
【００６４】
インターフェース部１０Ａ、１０Ｂは、ユーザー端末１に電気的に接続するためのコネクタであって、インターフェースの一例として、ＵＳＢコネクタ１０ＡとマイクロＵＳＢコネクタ１０Ｂが示されているが、その他、各種インターフェース装置が使用できる。
【００６５】
暗復号化変換支援コントローラー２０は、内部に保存されている暗号化鍵と暗復号化エンジンブロックを介してイベント発生ファイルのヘッダーに対する暗号化または復号化を行い、本発明のセキュリティ鍵装置２をバックアップ用メモリとして使用する場合には、データのバックアップのための制御動作を行う。
【００６６】
ここで、暗号化および復号化の遂行の際に、ファイルのヘッダー部分のみ暗号化および復号化することにより、送受信されるデータを軽量化し、処理速度を向上させることができる。
【００６７】
また、暗復号化変換支援コントローラー２０は、セキュリティ鍵装置２がユーザー端末１に接続される場合、セキュリティ認証チップ４０を介してユーザー認証を行い、ユーザー認証が行われる場合にのみ暗号化または復号化動作を行う。ここで、ユーザー認証は、ユーザーによって入力される、パスワードで鍵誘導されたランダム値を公開鍵で暗号化した認証値、および認証値に対する応答値を用いてセッション鍵を確立することにより行われ得る。
【００６８】
保存部３０は、暗号化されたヘッダーを保存するものであって、保存領域を分割し、一部の領域は一般ストレージ領域として使用され、残りの一部の領域は暗号化ヘッダーが保存されるようにすることができる。保存部３０は、一般なＵＳＢメモリとして使用されるフラッシュメモリ、および各種記憶媒体を含む。
【００６９】
セキュリティ認証値４０は、セキュリティ鍵装置２がユーザー端末１に接続される場合、ユーザー認証を行ってセキュリティ機能を提供するチップであって、ユーザー認証手段としてパスワード情報、ユーザー指紋情報、およびＯＴＰ値を生成するＯＴＰ生成モジュールのうち少なくとも一つを保存することができる。
【００７０】
パスワード情報は、ユーザーによって予め設定された暗証番号情報であって、暗号化鍵とは別個の情報である。そして、ユーザー指紋情報によるユーザー認証のためには、セキュリティ鍵装置２の内部または外部に指紋認識装置が設置されていなければならない。
【００７１】
ＯＴＰ生成モジュールは、任意の乱数と増加する値または時間を暗号アルゴリズムの入力値として用いてＯＴＰ値を生成する。生成されたＯＴＰ値を認証サーバーへ送ってユーザーを認証するのである。このような多重認証過程を介してセキュリティ鍵装置のセキュリティを強化することができる。一方、このような多重認証過程を介して、セキュリティ鍵装置のセキュリティ性は向上するが、ユーザーがセキュリティ鍵装置２を紛失する場合には、クラウドサーバー３にアップロードされた暗号化ファイルを開いてみることができないという問題点が発生する。よって、このような点を懸念するユーザーおよび共同作業者のためにセキュリティ鍵装置製品を２つまたはそれ以上使用する企業および団体のため、同一の暗号化鍵を持つ製品を複数個販売提供して紛失に対する対策を提供することができる。
【００７２】
そして、多数の人が共同作業形態で進行するファイルの履歴を管理するためには、別途のエージェンシーサーバーサービスと連動するように管理することも可能である。すなわち、共同ユーザーのための複数のセキュリティ鍵装置は、一つの同じ暗号化鍵を使用するが、セキュリティ鍵装置ごとに各装置を区分することが可能な識別情報を割り当て、共同作業中のファイルをどのユーザーが最後に修正したか、何時コピーをしたかなどの履歴を管理することもできる。
【００７３】
一方、セキュリティ認証チップ４０は、ユーザー認証の際に、エージェント１００のセッション鍵生成部１２０から受信された認証値データに対する応答値データを生成してエージェント１００へ伝送し、これを用いてエージェント１００で生成されたセッション鍵を受信してエージェント１００とのセッションを形成することができる。一方、これについて説明は図５を参照して具体的に行うことができる。
【００７４】
図５は図４のセキュリティ認証チップ４０の応答値データ生成を説明するための図である。
【００７５】
セキュリティ認証チップ４０は、セッション鍵生成部１２０から認証値データを受信すると、パスワードを用いて復号化し、パスワードが一致するか否かを検証することができる。
【００７６】
セキュリティ認証チップ４０は、パスワードが一致すると検証されると、パスワードで鍵誘導された応答ランダム値を生成することができる。ここで、応答ランダム値は、認証ランダム値の生成と同一のアルゴリズムを用いて生成することができる。すなわち、ＡＥＳ(Advanced Encryption Standard)アルゴリズムを用いて生成でき、ＣＢＣ(Cipher Block Chaining)モードで暗号化できる。
【００７７】
ここで、応答ランダム値(key 1)は、ＣＢＳモードで次の数式を用いて１６バイトとして生成できる。
【００７８】
【数２】
2016046799.tif 000004
【００７９】
認証ランダム値は、ＩＶ（Initialization Vector：初期化ベクトル）およびパスワード平文の最初１ブロックとＸＯＲ演算して暗号化し、平文の次のブロック（ＳＮＯ）は以前に暗号化された結果ブロック（ＳＮＯ−１）とＸＯＲ演算する過程を繰り返し行うことにより得られる。
【００８０】
セキュリティ認証値４０は、パスワードで鍵誘導された１６バイトの応答ランダム値が生成されると、前の８バイト（第３ランダム値）３２０と後ろの８バイト（第４ランダム値）３３０に分離し、各ランダム値の前にパスワード文字列３１０を挿入して応答値データ３００の第１ブロックおよび第２ブロックを生成することができる。
【００８１】
図５に示すように、応答値データ３００は、３２バイトであり、１６バイト列を持つ第１ブロックおよび第２ブロックから構成できる。
【００８２】
第１ブロックは、パスワード文字列３１０の８バイトと、パスワードで鍵誘導された第３ランダム値３２０の８バイトから構成できる。
【００８３】
第２ブロックは、パスワード文字列３１０の８バイトと、パスワードで鍵誘導された第４ランダム値３３０の８バイトから構成できる。
【００８４】
セキュリティ認証チップ４０は、図５の応答値データ３２バイトをパスワードで暗号化してセッション鍵生成部１２０へ伝送することができる。
【００８５】
セキュリティ認証チップ４０は、セッション鍵生成部１２０からセッション鍵を受信すると、セッションを形成することができる。
【００８６】
ここで、セッション鍵は、セッション鍵生成部１２０で生成した認証ランダム値、およびセキュリティ鍵装置２から受信した応答値データに含まれた応答ランダム値を用いてセッション鍵生成部１２０によって生成できる。
【００８７】
図６はＰＣ環境でセキュリティ鍵装置の使用のための事前過程を示す流れ図である。
【００８８】
セキュリティ鍵装置２がユーザーＰＣに接続されると（Ｓ１００）、ユーザーＰＣに搭載されているエージェント１００が駆動される（Ｓ１１０）。エージェント１００は、セキュリティ鍵装置２と連動してセキュリティクラウドサービスを提供するためのものであって、クラウド同期化の際に暗号化対象ファイルが認識されると、ヘッダー生成部１３０で生成した暗号化対象ファイルのヘッダーをセキュリティ鍵装置２へ送ってハードウェア的にヘッダーが暗号化されるようにし、クラウドサーバー３からダウンロードされた暗号化ファイルのヘッダーをセキュリティ鍵装置２を介して復号化し、セキュリティ鍵装置２の接続か否かに応じて自動暗号化および自動暗号化解除動作を行うように製作されたプログラムである。
【００８９】
エージェント１００が駆動されると、セキュリティ鍵装置２の製造社のホームページに接続され、該当ホームページでユーザー登録および会員加入をするように誘導した後（Ｓ１２０）、ユーザー認証が行われる（Ｓ１３０）。ユーザー認証は、上述したように、パスワード、指紋情報、ＯＴＰなどの様々な方式で行われてもよく、パスワードで鍵誘導されたランダム値を用いてセッション鍵を生成することにより、セキュリティ性をさらに高めることができる。
【００９０】
その後、エージェント１００は、ユーザーがクラウドサーバー３と同期化すべきクラウド暗号化同期フォルダーを指定または生成するように案内する（Ｓ１４０）。ここで、クラウド暗号化同期フォルダーは、該当フォルダーに保存される全てのファイルが、セキュリティ鍵装置２から伝送された暗号化ヘッダーで暗号化された後、クラウドサーバー３へ伝送できる。
【００９１】
或いは、クラウド暗号化同期フォルダーは、暗号化過程なしでクラウドサーバー３へファイルを伝送するようにする一般同期フォルダーと、ファイルをヘッダーで暗号化してクラウドサーバー３にアップロードするためのセキュリティ同期フォルダーに区分されることもある。この場合、エージェントは、クラウド暗号化同期フォルダーの下位フォルダーとしてセキュリティ同期フォルダーを生成することができ、セキュリティ同期フォルダーに保存されるファイルに対してのみセキュリティクラウドサービス動作を行うことができる（Ｓ１５０）。
【００９２】
図７はＰＣ環境でセキュリティ鍵装置を用いてファイルを暗号化してクラウドサーバーへ伝送する過程を示す流れ図である。
【００９３】
ユーザーＰＣに搭載されたエージェント１００は、セキュリティ鍵装置２がユーザーＰＣに接続されるかを感知し（Ｓ２０１）、セキュリティ鍵装置２の接続が感知される場合、ユーザー認証を行ってセッション鍵を生成することができる（Ｓ２０２）。一方、ユーザー認証についての具体的な説明は図９で説明することができる。
【００９４】
エージェント１００は、クラウドサーバー３にアップロードされるべきファイルの生成およびコピーなどの第１イベントを感知し（Ｓ２０３）、第１イベントが感知される場合、該当ファイルに対するヘッダーを生成することができる（Ｓ２０４）。ここで、ヘッダーは、第１イベントが感知されたファイルを暗号化するための暗号化鍵値であって、ランダムな値として生成できる。
【００９５】
次に、生成されたヘッダーを、Ｓ２０２段階で生成されたセッション鍵で暗号化し、セキュリティ鍵装置へ伝送することができる（Ｓ２０５）。エージェント１００は、セキュリティ鍵装置２によって伝送されたヘッダーが暗号化されて受信されると（Ｓ２０６）、暗号化されたヘッダーを用いて第１イベントの感知されたファイルを暗号化することができる（Ｓ２０７）。
【００９６】
エージェント１００は、アップロードされるべきファイルが暗号化されると、暗号化ファイルを該当フォルダーに保存する（Ｓ２０８）。暗号化ファイルは暗号化対象範囲に応じてクラウド暗号化同期フォルダーまたはその下位のセキュリティ同期フォルダーに保存され、各場合に該当フォルダーに保存されたファイルはクラウドアプリケーションの実行によってクラウドサーバー３へ伝送される。
【００９７】
もし、このような自動暗号化動作が行われる間、セキュリティ鍵装置２の除去、すなわち接続解除が感知されると（Ｓ２０９）、エージェント１００は、自動暗号化を解除し（Ｓ２１０）、該当フォルダー内のファイルを除去してクラウドサーバー３との同期化を防止する。
【００９８】
図８はモバイル環境でクラウドサービスを用いてファイルを復号化する過程を示す流れ図である。
【００９９】
まず、クラウドサービスを提供するためのクラウドアプリケーションが実行され（Ｓ３０１）、暗号化ファイルがクラウドサーバー３からモバイル端末にダウンロードされると、第２イベントが発生したと感知することができる（Ｓ３０２）。
【０１００】
暗号化ファイルが受信されると、セキュリティクラウドサービスのためのエージェント１００が駆動され、セキュリティ鍵装置２の接続か否かをモニタリングする。
【０１０１】
セキュリティ鍵装置２がモバイル端末に接続されると（Ｓ３０３）、ユーザー認証を介してセッション鍵を生成してエージェント１００とのセッションを形成し（Ｓ３０４）、ユーザー認証が完了すると、エージェントは、受信された暗号化ファイルのヘッダーを、Ｓ３０４段階で生成されたセッション鍵で暗号化してセキュリティ鍵装置２へ伝送することができる（Ｓ３０５）。
【０１０２】
エージェント１００は、セキュリティ鍵装置２を介してヘッダーが復号化されて（Ｓ３０６）伝送されると、復号化されたヘッダーを用いてファイルを復号化することができる（Ｓ３０７）。
【０１０３】
ユーザー端末１は、復号化されたファイルを実行して画面上に表示することができる。
【０１０４】
もし、このようなダウンロードファイル実行動作が行われる間、セキュリティ鍵装置２の除去、すなわち接続解除が感知されると（Ｓ３０８）、エージェント１００は、自動復号化を解除し、該当フォルダー内の復号化されたキャッシュファイルを除去して該当ファイルの実行を防止する（Ｓ３０９）。
【０１０５】
図９はユーザー端末にセキュリティ鍵装置が接続されるときのユーザー認証過程を示す流れ図である。一方、図９の説明のために、図２〜図５を参照して説明することができる。
【０１０６】
エージェント１００のインストールされたユーザー端末１に対するセキュリティ鍵装置２の物理的接続が感知されると、エージェント１００はユーザーからパスワードの入力を受けることができる（Ｓ４１０）。
【０１０７】
エージェント１００は、ユーザーからパスワードが入力されると、セキュリティ鍵装置２に公開鍵を要請することができる（Ｓ４２０）。セキュリティ鍵装置２が公開鍵の要請に応答して公開鍵を伝送すると（Ｓ４３０）、エージェント１００は公開鍵を受信して保存することができる（Ｓ４４０）。
【０１０８】
次に、エージェント１００のセッション鍵生成部１２０は、入力されたパスワードで鍵誘導された認証ランダム値を生成することができる（Ｓ４５０）。ここで、認証ランダム値は、ＡＥＳ(Advanced Encryption Standard)アルゴリズムを用いて生成でき、ＣＢＣ(Cipher Block Chaining)モードで暗号化できる。
【０１０９】
ここで、認証ランダム値は、１６バイトであって、前の８バイトを第１ランダム値、後ろの８バイトを第２ランダム値に分離して認証値データの生成に利用することができる。
【０１１０】
次に、エージェント１００のセッション鍵生成部１２０は、生成された認証ランダム値を用いて認証値データを生成し、これをセキュリティ鍵装置２から受信した公開鍵で暗号化し（Ｓ４６０）、セキュリティ鍵装置２へ伝送することができる。
【０１１１】
ここで、認証値データは、２５６バイトであって、パスワード、認証ランダム値、公開鍵検証値およびパディングなどから構成できる。一方、認証ランダム値および認証値データの生成についての説明は、図３の説明で上述したので、以下では省略する。
【０１１２】
セキュリティ鍵装置２は、エージェント１００から受信した暗号化認証値データをパスワードを用いて復号化することにより、パスワードを検証することができる（Ｓ４７０）。
【０１１３】
次に、セキュリティ鍵装置２は、パスワードで鍵誘導された応答ランダム値を生成することができる（Ｓ４８０）。ここで、応答ランダム値は、ＡＥＳ(Advanced Encryption Standard)アルゴリズムを用いて生成でき、ＣＢＣ(Cipher Block Chaining)モードで暗号化できる。
【０１１４】
ここで、応答ランダム値は、１６バイトであって、前の８バイト（第３ランダム値）と後ろの８バイト（第４ランダム値）に分離して応答値データの生成に利用することができる。
【０１１５】
次に、セキュリティ鍵装置２は、生成された応答ランダム値を用いて応答値データを生成し（Ｓ４９０）、これをパスワードで暗号化し（Ｓ５００）、エージェント１００へ伝送することができる。
【０１１６】
その後、エージェント１００は、Ｓ４５０段階で生成した認証ランダム値、およびセキュリティ鍵装置２から受信した応答値データ内に含まれた応答ランダム値を用いてセッション鍵を生成し（Ｓ５１０）、生成されたセッション鍵をセキュリティ鍵装置２へ伝送することができる。
【０１１７】
次いで、セキュリティ鍵装置２は、セッション鍵が受信されると、エージェント１００と論理的に接続するセッションを形成することにより、ログインさせることができる（Ｓ５２０）。
【０１１８】
図１０はファイルアップロード時にセキュリティ鍵装置でファイルのヘッダーを暗号化する過程を示す図、図１１はファイルダウンロード時にセキュリティ鍵装置でファイルのヘッダーを復号化する過程を示す図である。図１０および図１１ではＵＳＢコネクタ１０Ａにユーザー端末１が接続された場合が例示的に説明されている。
【０１１９】
まず、図１０を参照すると、ファイルアップロード時のエージェント１００からセキュリティ鍵装置２へのデータ流れは実線の矢印、逆の場合は破線の矢印で表示されている。
【０１２０】
エージェント１００から、アップロードすべき原本ファイルを暗号化するためのヘッダーが入力されると（Ｓ１）、暗復号化変換支援コントローラー２０は受信された原本ファイルのヘッダーを暗号化し（Ｓ２）、暗号化されたヘッダーを保存部３０に保存した後（Ｓ３）、保存部３０に保存された暗号化ヘッダーをエージェント１００へ移動させる（Ｓ４）。
【０１２１】
エージェント１００は、暗号化されたヘッダーを受信し、アップロードすべき原本ファイルを暗号化してクラウドサーバー３にアップロードすることができる。
【０１２２】
次に、図１１を参照すると、ファイルダウンロード時のエージェント１００からセキュリティ鍵装置２へのデータ流れは実線の矢印、逆の場合は破線の矢印で表示されている。エージェント１００から、クラウドサーバー３からダウンロードされた暗号化ファイルのヘッダーが入力されると（Ｓ１１）、暗復号化変換支援コントローラー２０は、受信された暗号化ヘッダーを通過(Pass Through)させて保存部３０に保存し（Ｓ１２）、保存部３０に保存された暗号化ヘッダーを復号化した後（Ｓ１３）、復号化されたヘッダーをエージェント１００へ移動させる（Ｓ１４）。
【０１２３】
エージェント１００は、復号化されたヘッダーを受信し、ダウンロードされた暗号化ファイルを復号化してユーザー端末１で実行できるようにする。一方、ファイルのアップロードおよびダウンロードのようなファイルの生成の他に、コピー、削除などのイベントの発生時にも図１０および図１１のようなデータ流れに従って暗復号化を行うことができる。
【０１２４】
前述した本発明の好適な実施形態は、例示の目的のために開示されたものであり、本発明について通常の知識を有する当業者であれば、本発明の思想および範囲内において様々な修正、変更、付加が可能であり、それらの修正、変更および付加も特許請求の範囲に属すると理解すべきであろう。
【符号の説明】
【０１２５】
１    ユーザー端末
２    セキュリティ鍵装置
３    クラウドサーバー
１０    インターフェース部
２０    暗復号化変換支援コントローラー
３０    保存部
４０    セキュリティ認証チップ
１００    エージェント
１１０    イベント感知部
１２０    セッション鍵生成部
１３０    ヘッダー生成部
１４０    ファイル暗復号化部
【図１】
2016046799.tif 000005
【図２】
2016046799.tif 000006
【図３】
2016046799.tif 000007
【図４】
2016046799.tif 000008
【図５】
2016046799.tif 000009
【図６】
2016046799.tif 000010
【図７】
2016046799.tif 000011
【図８】
2016046799.tif 000012
【図９】
2016046799.tif 000013
【図１０】
2016046799.tif 000014
【図１１】
2016046799.tif 000015