(57)【要約】【課題】  ユーザ端末、メッセージを送受信する方法及びコンピュータプログラムを提供すること。【解決手段】  一実施例は、コンピュータを利用して、第１添付ファイルを含む第１メッセージが入力されるように制御する段階と、第１添付ファイルの種類を考慮し、第１メッセージを暗号化する暗号化キーを生成する段階と、暗号化キーを利用して、第１メッセージの第１添付ファイルを暗号化する段階と、第１メッセージに、第１メッセージの発信者情報を含めてメッセージサーバに伝送する段階と、を含む方法を実行させるために、媒体に保存されたコンピュータプログラムである。【選択図】      図３
2017085567.tif 000002
【特許請求の範囲】
【請求項１】
メモリ及びプロセッサを含むユーザ端末の動作方法において、
前記プロセッサが、
第１添付ファイルを含む第１メッセージが入力されるように動作し、
前記第１添付ファイルの種類を考慮し、前記第１メッセージを暗号化する暗号化キーを生成し、
前記暗号化キーを利用して、前記第１メッセージの第１添付ファイルを暗号化し、
前記第１メッセージに、前記第１メッセージの発信者情報を含めてメッセージサーバに伝送するユーザ端末の動作方法。
【請求項２】
前記暗号化キーの生成は、
前記第１添付ファイルの大きさが、既設定の臨界値以上である場合、前記第１添付ファイルのハッシュ値を、前記第１添付ファイルの暗号化キーとして生成することを特徴とする請求項１に記載のユーザ端末の動作方法。
【請求項３】
前記暗号化キーの生成は、
前記第１添付ファイルの種類が動画である場合、前記第１添付ファイルのハッシュ値を、前記第１添付ファイルの暗号化キーとして生成することを特徴とする請求項１に記載のユーザ端末の動作方法。
【請求項４】
前記暗号化キーの生成は、
複数のユーザに伝送されるように設定されたメッセージの場合、前記メッセージの受信者情報によって、前記メッセージの暗号化キーを複数個生成することを特徴とする請求項１に記載のユーザ端末の動作方法。
【請求項５】
前記プロセッサは、さらに、
前記メッセージサーバから、第２ユーザ端末機からの第２添付ファイルを含む第２メッセージを受信し、
前記第２添付ファイルに係わるインデックスを抽出し、前記インデックスと対応するデータを呼び出し、
前記第２ユーザ端末機から受信した復号キーを利用して、前記データを復号することを特徴とする請求項１に記載のユーザ端末の動作方法。
【請求項６】
前記プロセッサは、さらに、
第３ユーザ端末機を介して、メッセージを確認し、前記第３ユーザ端末機によって出力された認証キーが入力されるように動作することを特徴とする請求項１に記載のユーザ端末の動作方法。
【請求項７】
前記認証キーが入力されるように制御することは、
前記認証キーを前記メッセージサーバに伝送し、
前記認証キーに対する応答として、前記認証キーの有効性を受信し、前記認証キーの有効性によって、前記第３ユーザ端末機に、前記第１メッセージ及び第２メッセージを伝送するように制御することを特徴とする請求項６に記載のユーザ端末の動作方法。
【請求項８】
前記認証キーが入力されるように動作することは、
前記認証キーを利用して、前記暗号化キーを暗号化し、前記暗号化された暗号化キーを、前記第３ユーザ端末機に伝送することを特徴とする請求項６に記載のユーザ端末の動作方法。
【請求項９】
制御部、通信部及びメモリを含むユーザ端末において、
第１添付ファイルを含む第１メッセージが入力されるように動作する入力部と、
前記第１添付ファイルの種類を考慮し、前記第１メッセージを暗号化する暗号化キーを生成するキー生成部と、
前記暗号化キーを利用して、前記第１メッセージの第１添付ファイルを暗号化する暗号化部と、
前記第１メッセージに、前記第１メッセージの発信者情報を含めてメッセージサーバに伝送するメッセージ伝送部と、を含むユーザ端末。
【請求項１０】
前記キー生成部は、
前記第１添付ファイルの大きさが、既設定の臨界値以上である場合、前記第１添付ファイルのハッシュ値を、前記第１添付ファイルの暗号化キーとして生成することを特徴とする請求項９に記載のユーザ端末。
【請求項１１】
前記キー生成部は、
前記第１添付ファイルの種類が動画である場合、前記第１添付ファイルのハッシュ値を、前記第１添付ファイルの暗号化キーとして生成することを特徴とする請求項９に記載のユーザ端末。
【請求項１２】
前記キー生成部は、
複数のユーザに伝送されるように設定されたメッセージの場合、前記メッセージの受信者情報によって、前記メッセージの暗号化キーを複数個生成することを特徴とする請求項９に記載のユーザ端末。
【請求項１３】
前記メッセージサーバから、第２ユーザ端末機からの第２添付ファイルを含む第２メッセージを受信するメッセージ受信部と、
前記第２添付ファイルに係わるインデックスを抽出し、前記インデックスと対応するデータを呼び出すデータ呼び出し部と、
前記第２ユーザ端末機から受信した復号キーを利用して、前記データを復号する復号部と、を含むことを特徴とする請求項９に記載のユーザ端末。
【請求項１４】
第３ユーザ端末機を介して、メッセージを確認し、前記第３ユーザ端末機によって出力された認証キーが入力されるように動作する認証管理部をさらに含むことを特徴とする請求項９に記載のユーザ端末。
【請求項１５】
前記認証管理部は、
前記認証キーを前記メッセージサーバに伝送し、
前記認証キーに対する応答として、前記認証キーの有効性を受信し、前記認証キーの有効性によって、前記第３ユーザ端末機に、前記第１メッセージ及び第２メッセージを伝送するように制御することを特徴とする請求項１４に記載のユーザ端末。
【請求項１６】
前記認証管理部は、
前記認証キーを利用して、前記暗号化キーを暗号化し、前記暗号化された暗号化キーを、前記第３ユーザ端末機に伝送することを特徴とする請求項１４に記載のユーザ端末。
【請求項１７】
請求項１ないし８のうちの何れか一項に記載の動作方法を、ユーザ端末のコンピュータに実行させるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザ端末、メッセージを送受信する方法及びコンピュータプログラムに係り、さらに具体的には、メッセージを暗号化したり復号したりするのに利用されるキー情報をメッセージサーバと共有しないように制御するユーザ端末、その方法及びそのコンピュータプログラムに関する。
【背景技術】
【０００２】
メッセンジャーを介したコミュニケーションは、端末機、サーバ、端末機の形態で、メッセージの発信／受信が進められる。第１ユーザが、端末機に搭載されたメッセージアプリケーションに文章を入力すれば、当該メッセンジャーサービス企業のサーバを経て、第２ユーザの端末機に搭載されたメッセージアプリケーションに伝達される。ほとんどのメッセージアプリケーションは、スマートフォンとサーバとの間に暗号化装置を適用するが、サーバに到着したメッセージは、サーバによって復号、すなわち、暗号が解読されるのが一般的であった。
【０００３】
従来の方式によれば、サーバによって復号が可能になり、それは、サーバをハッキングすれば、ユーザ間メッセージが公開される危険があるということを意味する。
【０００４】
かような従来技術の問題点を解決するために、ユーザの端末機でのみ復号されるようにする終端間暗号化（end  to  end  encryption）技術を適用し始めた。
【０００５】
しかし、終端間暗号化技術を適用する場合、受信者または発信者によって、同一メッセージを異なって暗号化しなければならず、サーバは、ユーザ間メッセージをいずれも個別的に管理することにより、そのために、さらに多くのリソースが必要となる問題点があった。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特許第５６２５６０８号公報
【特許文献２】特許第４０５７００９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明が解決しようとする課題は、暗号化キーを利用して第１メッセージを暗号化し、発信者である第２ユーザ端末機に伝送し、第２ユーザ端末機から受信した第２メッセージを、前記暗号化キーと対をなす復号キーを利用して復号するユーザ端末機、その方法及びそのコンピュータプログラムを提供することである。
【０００８】
また、本発明が解決しようとする課題は、ユーザが保有したさらに他の端末機である第３ユーザ端末機に対する認証を行い、該認証が完了すれば、前記第３ユーザ端末機ともメッセージを共有するように制御するユーザ端末機、その方法及びそのコンピュータプログラムを提供することである。
【０００９】
また、本発明が解決しようとする課題は、１以上のユーザ端末機間のメッセージを送受信するように制御するメッセージサーバでは解読することができないように、暗号化または復号された情報をメッセージサーバと共有しないユーザ端末、その方法及びそのコンピュータプログラムを提供することである。
【課題を解決するための手段】
【００１０】
本発明の実施形態による記録媒体に保存されたコンピュータプログラムは、コンピュータを利用して、第１添付ファイルを含む第１メッセージを入力されるように制御する段階と、前記第１添付ファイルの種類を考慮し、前記第１メッセージを暗号化する暗号化キーを生成する段階と、前記暗号化キーを利用して、前記第１メッセージの第１添付ファイルを暗号化する段階と、前記第１メッセージに、前記第１メッセージの発信者情報を含めてメッセージサーバに伝送する段階と、を含む方法を実行させることができる。
【００１１】
前記暗号化キーを生成する段階は、前記第１添付ファイルの大きさが、既設定の臨界値以上である場合、前記第１添付ファイルのハッシュ値を、前記第１添付ファイルの暗号化キーとして生成する方法を実行させることができる。
【００１２】
前記暗号化キーを生成する段階は、前記第１添付ファイルの種類が動画である場合、前記第１添付ファイルのハッシュ値を、前記第１添付ファイルの暗号化キーとして生成する方法を実行させることができる。
【００１３】
前記暗号化キーを生成する段階は、複数のユーザに伝送されるように設定されたメッセージの場合、前記メッセージの受信者情報によって、前記メッセージの暗号化キーを複数個生成する方法を実行させることができる。
【００１４】
前記コンピュータプログラムは、前記メッセージサーバから、第２ユーザ端末機からの第２添付ファイルを含む第２メッセージを受信する段階と、前記第２添付ファイルに係わるインデックスを抽出し、前記インデックスと対応するデータを呼び出す段階と、前記第２ユーザ端末機から受信した復号キーを利用して、前記データを復号する段階と、をさらに含む方法を実行させることができる。
【００１５】
前記コンピュータプログラムは、第３ユーザ端末機を介して、前記メッセージを確認するように、前記第３ユーザ端末機によって出力された認証キーを入力されるように制御する段階をさらに含む方法を実行させることができる。
【００１６】
前記認証キーが入力されるように制御する段階は、前記認証キーを前記メッセージサーバに伝送し、前記認証キーに対する応答として、前記認証キーの有効性を受信し、前記認証キーの有効性によって、前記第３ユーザ端末機に、前記第１メッセージ及び前記第２メッセージを伝送するように制御する方法を実行させることができる。
【００１７】
前記認証キーが入力されるように制御する段階は、前記認証キーを利用して、前記暗号化キーを暗号化し、前記暗号化された暗号化キーを、前記第３ユーザ端末機に伝送する方法を実行させることができる。
【００１８】
本発明の実施形態によるユーザ端末は、制御部、通信部及びメモリを含み、第１添付ファイルを含む第１メッセージが入力されるように制御する入力制御部と、前記第１添付ファイルの種類を考慮し、前記第１メッセージを暗号化する暗号化キーを生成するキー生成部と、前記暗号化キーを利用して、前記第１メッセージの第１添付ファイルを暗号化する暗号化部と、前記第１メッセージに、前記第１メッセージの発信者情報を含めてメッセージサーバに伝送するメッセージ伝送部と、を含んでもよい。
【００１９】
前記キー生成部は、前記第１添付ファイルの大きさが、既設定の臨界値以上である場合、前記第１添付ファイルのハッシュ値を、前記第１添付ファイルの暗号化キーとして生成することができる。
【００２０】
前記キー生成部は、前記第１添付ファイルの種類が動画である場合、前記第１添付ファイルのハッシュ値を、前記第１添付ファイルの暗号化キーとして生成することができる。
【００２１】
前記キー生成部は、複数のユーザに伝送されるように設定されたメッセージの場合、前記メッセージの受信者情報によって、前記メッセージの暗号化キーを複数個生成することができる。
【００２２】
本発明の実施形態によるユーザ端末は、前記メッセージサーバから、第２ユーザ端末機からの第２添付ファイルを含む第２メッセージを受信するメッセージ受信部と、前記第２添付ファイルに係わるインデックスを抽出し、前記インデックスと対応するデータを呼び出すデータ呼び出し部と、前記第２ユーザ端末機から受信した前記復号キーを利用して、前記データを復号する復号部と、をさらに含んでもよい。
【００２３】
本実施形態によれば、ユーザ端末は、第３ユーザ端末機を介して、前記メッセージを確認するように、前記第３ユーザ端末機によって出力された認証キーが入力されるように制御する認証管理部をさらに含んでもよい。
【００２４】
前記認証管理部は、前記認証キーを前記メッセージサーバに伝送し、前記認証キーに対する応答として、前記認証キーの有効性を受信し、前記認証キーの有効性によって、前記第３ユーザ端末機に、前記第１メッセージ及び前記第２メッセージを伝送するように制御することができる。
【００２５】
前記認証管理部は、前記認証キーを利用して、前記暗号化キーを暗号化し、前記暗号化された暗号化キーを、前記第３ユーザ端末機に伝送することができる。
【００２６】
それ以外にも、本発明を具現するための他の方法、他のシステム、及び前記方法を実行するためのコンピュータプログラムを記録するコンピュータ判読可能な記録媒体がさらに提供される。
【００２７】
前述のところ以外の他の側面、特徴、利点は、以下の図面、特許請求の範囲、及び発明の詳細な説明から明確になるであろう。
【発明の効果】
【００２８】
本発明は、暗号化キーを利用して第１メッセージを暗号化し、発信者である第２ユーザ端末機に伝送し、第２ユーザ端末機から受信した第２メッセージを、前記暗号化キーと対をなす復号キーを利用して復号することができる。
【００２９】
また、本発明は、ユーザが保有したさらに他の端末機である第３ユーザ端末機に対する認証を行い、認証が完了すれば、前記第３ユーザ端末機ともメッセージを共有するように制御することができる。
【００３０】
また、本発明は、１以上のユーザ端末機間のメッセージを送受信するように制御するメッセージサーバでは解読することができないように、暗号化または復号された情報をメッセージサーバと共有しない。
【図面の簡単な説明】
【００３１】
【図１】本発明の実施形態によるメッセージ送受信システムを示すブロック図である。
【図２】本発明の実施形態によるメッセージサーバの構造を示すブロック図である。
【図３】メッセージサーバの制御部の構造を示すブロック図である。
【図４】本発明の実施形態によるユーザ端末機の構造を示すブロック図である。
【図５】ユーザ端末機の制御部の構造を示すブロック図である。
【図６】ユーザ端末機の認証管理部の構造を示すブロック図である。
【図７】本発明の実施形態によるメッセージ送受信方法を示すフローチャートである。
【図８】本発明の実施形態によるメッセージ送受信方法を示すフローチャートである。
【図９】ユーザ端末機及びメッセージサーバ間のデータ送受信を示すフローチャートである。
【図１０】ユーザ端末機及びメッセージサーバ間のデータ送受信を示すフローチャートである。
【図１１】本発明の実施形態によって提供されるユーザインターフェースの一例を示す図面である。
【図１２】本発明の実施形態によって提供されるユーザインターフェースの一例を示す図面である。
【図１３】本発明の実施形態によって提供されるユーザインターフェースの一例を示す図面である。
【図１４】本発明の実施形態によって提供されるユーザインターフェースの一例を示す図面である。
【図１５Ａ】暗号化過程についてさらに具体的に説明するための図面である。
【図１５Ｂ】暗号化過程についてさらに具体的に説明するための図面である。
【発明を実施するための形態】
【００３２】
本発明は、多様な変換を加えることができ、さまざまな実施形態を有することができるが、特定実施形態を図面に例示し、詳細な説明によって詳細に説明する。本発明の効果、特徴、及びそれらを達成する方法は、図面と共に詳細に説明する実施形態を参照すれば、明確になるであろう。しかし、本発明は、以下で開示される実施形態に限定されるものではなく、多様な形態によって具現されるのである。
【００３３】
以下、添付された図面を参照し、本発明の実施形態について詳細に説明するが、図面を参照して説明するとき、同一であるか、あるいは対応する構成要素は、同一図面符号を付し、それに係わる重複説明は省略する。
【００３４】
以下の実施形態において、第１、第２のような用語は、限定的な意味ではなく、１つの構成要素を他の構成要素と区別する目的に使用された。
【００３５】
以下の実施形態において、単数の表現は、文章脈上明白に異なって意味しない限り、複数の表現を含む。
【００３６】
以下の実施形態において、「含む」または「有する」というような用語は、明細書上に記載された特徴または構成要素が存在するということを意味するものであり、１以上の他の特徴または構成要素が付加される可能性をあらかじめ排除するものではない。
【００３７】
ある実施形態が他に具現可能な場合、特定の工程順序は、説明される順序と異なって遂行されもする。例えば、連続して説明される２つの工程が実質的に同時に遂行されもし、説明される順序と反対の順序にも進められる。
【００３８】
以下の実施形態において、「回路」は、例えば、プログラム可能な回路によって実行されるインストラクションを保存するハードワイヤード回路、プログラム可能な回路、状態マシン回路、及び／またはファームウエアを単独、または任意の組み合わせで含んでもよい。アプリケーションは、ホストプロセッサ、または他のプログラム可能な回路のようなプログラム可能な回路上で実行されるコードまたはインストラクションとしても具現される。本願の任意の実施形態において使用されるようなモジュールは、回路としても具現される。該回路は、集積回路チップのような集積回路としても具現される。
【００３９】
以下の実施形態において、ある部分がある構成要素を「含む」とするとき、それは、特別に反対となる記載がない限り、他の構成要素を除くものではなく、他の構成要素をさらに含んでもよいということを意味する。また、明細書に記載された「…部」、「…器」、「モジュール」というような用語は、少なくとも１つの機能や動作を処理する単位を意味し、それは、ハードウェアやソフトウェア、またはハードウェア及びソフトウェアの結合によっても具現される。
【００４０】
図１は、本発明の実施形態によるメッセージ送受信システム１０を示す図面である。図１を参照すれば、本発明の実施形態によるメッセージ送受信システム１０は、メッセージサーバ１００、ユーザ端末機２００，３００、通信網４００を含んでもよい。
【００４１】
メッセージサーバ１００は、ユーザ端末機２００，３００から受信されたメッセージを他のユーザ端末機２００，３００に伝送するものであり、複数のユーザ端末機間のメッセージを送受信する機能を遂行する。メッセージサーバ１００は、会員加入、ログインなどの手続きを経た複数のユーザ端末機２００，３００間のメッセージを発信／受信する機能を提供することができる。メッセージサーバ１００は、複数のユーザ端末機２００，３００間の対話（chatting，talk）を可能にするチャットルームを提供する機能を提供することができる。メッセージサーバ１００は、チャットルームに入場した各ユーザによって入力または受信された対話がチャットルームを介して、チャットルームにある複数のユーザと共有されるように制御することができる。
【００４２】
メッセージサーバ１００は、会員加入、ログインなどの手続きを経ていないユーザ端末機２００，３００に、チャットルーム招待メッセージを伝送することもできる。
【００４３】
メッセージサーバ１００は、ユーザ端末機２００，３００間のメッセージまたは対話を暗号化または復号することができるように制御することができる。特に、メッセージサーバ１００は、終端間暗号化技術を活用して、メッセージを発信／受信したりチャットルームの対話を処理したりする機能を提供することができる。さらに具体的には、メッセージサーバ１００は、暗号化されたメッセージを、各発信者のユーザ端末機にそのまま伝達するのみであり、各暗号化されたメッセージを解読したり、復号と係わる情報を保存管理したりするものではない。
【００４４】
また、メッセージサーバ１００は、第１ユーザ端末機２０１に伝送されるように設定されたメッセージを、第１ユーザ端末機２０１と連繋された第２ユーザ端末機２０２に伝送するように制御することができる。メッセージサーバ１００は、第１ユーザ端末機２０１及び第２ユーザ端末機２０２間の同一性を確認するために、認証過程を遂行するように制御することができる。また、メッセージサーバ１００は、第１ユーザ端末機２０１がメッセージを送受信するのに利用する暗号キーを、第１ユーザ端末機２０１と連結された第２ユーザ端末機２０２に伝送するように制御することができる。そのとき、暗号キーは、第１ユーザ端末機２０１及び第２ユーザ端末機２０２間の認証に利用された認証キーを利用して、暗号化された状態で送受信される。
【００４５】
また、メッセージサーバ１００は、メッセージ送受信が可能であるように具現されたアプリケーションを、ユーザ端末機２００，３００に配布する機能を遂行することができる。
【００４６】
ユーザは、ユーザ端末機２００，３００を介して、メッセージサーバ１００に接続することができる。ユーザ端末機２００，３００は、メッセージ送受信に係わるアプリケーション（または、コンピュータプログラム）を搭載し、前記アプリケーションを利用して、他のユーザ端末機２００，３００にメッセージを伝送し、他のユーザ端末機２００，３００からメッセージを受信する。
【００４７】
また、ユーザ端末機２００，３００は、公開したくないメッセージを暗号化して伝送することができる、暗号化関連情報をメッセージサーバ１００と共有しない。
【００４８】
複数個のユーザ端末機２００，３００は、有無線通信環境において、ウェブサービスを利用することができる通信端末機を意味する。ここで、ユーザ端末機２００，３００は、ユーザのパーソナルコンピュータ（ＰＣ）２０１，３０１であってもよく、またはユーザの携帯用端末２０２，３０２であってもよい。図１では、携帯用端末機２０２，３０２がスマートフォンとして図示されているが、本発明の思想は、それに制限されるものではなく、前述のように、ウェブブラウジングが可能なアプリケーションを搭載した端末であるならば、制限なしに適用されてよい。ユーザ端末機２０１，２０２，３０１，３０２は、互いを区別するために、第１ユーザ端末機ないし第３ユーザ端末機のうち一つに命名される。以下の説明で登場する第１ユーザ端末機ないし第３ユーザ端末機は、ユーザ端末機２００，３００に含まれる概念であり、それらを区別するために、第１ないし第３の修飾語を付加したものである。
【００４９】
それについてさらに詳細に説明すれば、ユーザ端末機２００，３００は、コンピュータ（例えば、デスクトップ、ラップトップ、タブレットなど）、メディアコンピュータプラットホーム（例えば、ケーブル、衛星セットトップボックス、デジタルビデオレコーダ）、ハンドヘルドコンピュータデバイス（例えば、ＰＤＡ（personal  digital  assistant）、電子メールクライアントなど）、携帯電話の任意の形態、他種のコンピュータ、またはコミュニケーションプラットホームの任意形態を含んでもよいが、本発明は、それらに限定されるものではない。
【００５０】
一方、通信網４００は、複数個のユーザ端末機２００，３００と、メッセージサーバ１００とを連結する役割を行う。すなわち、通信網４００は、ユーザ端末機２００，３００がメッセージサーバ１００に接続した後、データを送受信することができるように接続経路を提供する通信網を意味する。通信網４００は、例えばＬＡＮｓ（local  area  networks）、ＷＡＮｓ（wide  area  networks）、ＭＡＮｓ（metropolitan  area  networks）、ＩＳＤＮｓ（integrated  service  digital  networks）などの有線ネットワーク；無線ＬＡＮｓ、ＣＤＭＡ（code  division  multiple  access）、ブルートゥース（Bluetooth）、衛星通信などの無線ネットワークを網羅することができるが、本発明の範囲は、それらに限定されるものではない。
【００５１】
図２は、本発明の実施形態によるメッセージサーバの構造を示すブロック図である。図２を参照すれば、本発明の実施形態によるメッセージサーバ１００は、通信部１１０、制御部１２０、データベース１３０を含んでもよい。
【００５２】
通信部１１０は、メッセージサーバ１００と、少なくとも１つのユーザ端末機２００，３００との通信を可能にする１以上の構成要素を含んでもよい。
【００５３】
ここで、通信部１１０は、他のネットワーク装置と、有無線連結を介して、制御信号またはデータ信号のような信号を送受信するために必要なハードウェア及びソフトウェアを含む装置でもある。
【００５４】
制御部１２０は、一般的に、メッセージサーバ１００の全般的な動作を制御する。例えば、制御部１２０は、データベース１３０に保存されたプログラムを実行することにより、通信部１１０、データベース１３０などを全般的に制御することができる。
【００５５】
ここで、制御部１２０は、プロセッサのように、データを処理することができる任意の装置を含んでもよい。ここで、「プロセッサ」は、例えば、プログラム内に含まれたコードまたは命令によって表現された機能を遂行するために、物理的に構造化された回路を有する、ハードウェアに内蔵されたデータ処理装置を意味する。そのように、ハードウェアに内蔵されたデータ処理装置の一例としては、マイクロプロセッサ（microprocessor）、中央処理装置（ＣＰＵ：central  processing  unit）、プロセッサコア（processor  core）、マルチプロセッサ（multiprocessor）、ＡＳＩＣ（application-specific  integrated  circuit）、ＦＰＧＡ（field  programmable  gate  array）のような処理装置を挙げることができるが、本発明の範囲は、それらに限定されるものではない。
【００５６】
データベース１３０は、制御部１２０の処理及び制御のためのプログラムを保存することもでき、入出力されるデータ（例えば、複数のメニュー、複数のメニューそれぞれに対応する複数の第１階層サブメニュー、複数の第１階層サブメニューそれぞれに対応する複数の第２階層サブメニューなど）を保存することもできる。
【００５７】
データベース１３０は、フラッシュメモリタイプ、ハードディスクタイプ、マルチメディアカードマイクロタイプ、カードタイプのメモリ（例えば、ＳＤメモリまたはＸＤメモリなど）、ＲＡＭ（random  access  memory）、ＳＲＡＭ（static  random  access  memory）、ＲＯＭ（read  only  memory）、ＥＥＰＲＯＭ（electrically  erasable  and  programmable  read  only  memory）、ＰＲＯＭ（programmable  read  only  memory）、磁気メモリ、磁気ディスク、光ディスクのうち少なくとも１つのタイプの記録媒体を含んでもよい。また、知識共有サービス提供装置１００は、インターネット上において、データベース１３０の保存機能を遂行するウェブストレージ（web  storage）またはクラウドサーバを運用することもできる。
【００５８】
データベース１３０に保存されたプログラムは、その機能によって、複数個のモジュールに分類することができるのに、例えば、ＵＩ（user  interface）モジュール、タッチスクリーンモジュール、通知モジュールなどに分類される。
【００５９】
メッセージサーバ１００は、短文メッセージ、インスタントメッセージ、電子メールなどのメッセージを、ユーザ端末機２００，３００に伝送する機能を遂行することができる。メッセージサーバ１００が送受信するメッセージの種類は多様であり、一種類に限定されるものではない。
【００６０】
図３は、メッセージサーバ１００の制御部１２０の構造を示すブロック図である。図３を参照すれば、メッセージサーバ１００の制御部１２０は、メッセージ受信部１２１、メッセージ処理部１２２、インデックス生成部１２３を含んでもよい。
【００６１】
メッセージ受信部１２１は、ユーザ端末機２００，３００からメッセージを受信するように制御する。ここで、メッセージは、メッセージの題目（又は件名又はタイトル）、内容、発信者情報、受信者情報、添付ファイルを含んでもよい。前記メッセージの発信者関連情報及び受信者関連情報は、ユーザのＩＤ（identification）情報、電子メールアドレス、電話番号などを含んでもよい。添付ファイルは、イメージ、動画、音声ファイル、リンク情報などを含んでもよい。メッセージサーバ１００は、所定の会員加入過程を経て会員として登録されたユーザのユーザ端末機２００，３００間のメッセージを送受信するように制御することができる。
【００６２】
メッセージ処理部１２２は、ユーザ端末機２００，３００から受信した１以上のメッセージを、各メッセージの発信者のユーザ端末機２００，３００に伝送するように制御することができる。そのとき、添付ファイルを含んでいるメッセージの場合、メッセージ処理部１２２は、添付ファイルを伝送せず、添付ファイルのインデックスのみをユーザ端末機２００，３００に伝送することができる。特に、１つの添付ファイルが、多くのユーザによって伝送または共有される場合、メッセージ処理部１２２は、伝送されたり共有されたりするほど、添付ファイル、または添付ファイルのインデックスを保存管理せず、１つのインデックスでもって、添付ファイルが伝送または共有されるように処理することができる。例えば、人気がある動画の場合、同一動画を、非常に多くの、例えば、１０，０００人以上のユーザ間で送受信するイベントが発生するような場合、メッセージサーバ１００が、ユーザによって生成されたイベント（メッセージ送受信など）ごとに、動画、または動画と対応するインデックスを生成することは、リソースを非常に浪費してします。そのような場合、メッセージ処理部１２２は、受信されたメッセージの添付ファイルが、既存に伝送された履歴（history）があるか否かということを判断し、添付ファイルに係わるメタデータを新たに生成するか否かということを判断することができる。
【００６３】
また、メッセージ処理部１２２は、メッセージの受信者情報によって、メッセージを受信する他のサーバに伝送したり、直接ユーザ端末機２００，３００にメッセージを伝送することができる。
【００６４】
インデックス生成部１２３は、メッセージが添付ファイルを含んでいる場合、添付ファイルを識別することができるインデックスを生成し、前記インデックスと前記添付ファイルとが互いに対応するようにテーブルを生成することができる。インデックス生成部１２３は、添付ファイルまたはメッセージと対応するインデックスをそれぞれ生成することもできる。
【００６５】
図４は、本発明の実施形態によるユーザ端末機２００，３００の構造を示すブロック図である。図４を参照すれば、本発明の一実施形態によるユーザ端末機２００，３００は、概して、通信部２１０、制御部２５０及びメモリ２６０を含み、選択的に、出力部２３０、ユーザ入力部２４０をさらに含んでもよい。
【００６６】
通信部２１０は、ユーザ端末機２００，３００間の通信、またはユーザ端末機２００，３００とメッセージサーバ１００との通信を可能にする１以上の構成要素を含んでもよい。例えば、通信部２１０は、近距離通信部（short-range  wireless  communication  nunit）２１１、移動通信部２１２を含んでもよい。
【００６７】
近距離通信部２１１は、ブルートゥース（Bluetooth（登録商標））通信部、ＢＬＥ（Bluetooth  low  energy）通信部、近距離無線通信部（near  field  communication  unit）、ＷＬＡＮ（wireless  local  area  network）（Ｗｉ−Ｆｉ（wireless  fidelity））通信部、ジグビー（Zigbee（登録商標））通信部、赤外線（ＩｒＤＡ：infrared  data  association）通信部、ＷＦＤ（Ｗｉ−Ｆｉ  direct）通信部、ＵＷＢ（ultra  wideband）通信部、Ａｎｔ＋通信部などを含んでもよいが、それらに限定されるものではない。
【００６８】
移動通信部２１２は、移動通信網上で、基地局、外部の端末、サーバのうち少なくとも一つと無線信号を送受信する。ここで、該無線信号は、音声コール信号、画像通話コール信号、または文字／マルチメディアメッセージ送受信による多様な形態のデータを含んでもよい。
【００６９】
通信部２１０は、メッセージサーバ１００、または他のユーザ端末機２００，３００からのメッセージを獲得する。
【００７０】
出力部２３０には、ディスプレイ部２３１、音響出力部２３２、振動モータ２３３などが含まれてもよい。
【００７１】
ディスプレイ部２３１は、ユーザ端末機２００，３００で処理される情報を出力する。例えば、ディスプレイ部２３１は、メッセージ送受信アプリケーション実行時に提供されるユーザインターフェースを出力することができる。ディスプレイ部２３１は、搭載されたメッセージ送受信アプリケーションによって、メッセージ生成またはメッセージ受信と係わるユーザインターフェースを表示することができる。ディスプレイ部２３１は、搭載されたメッセージ送受信アプリケーションのバージョンによって変更されたユーザインターフェースを表示することができる。ディスプレイ部２３１は、受信されたメッセージが暗号化されたメッセージである場合、ユーザ認証などの過程が必要であるという画面を表示することができる。ディスプレイ部２３１は、ユーザから入力されたユーザ入力によって、ユーザインターフェースを変更して提供することができる。
【００７２】
一方、ディスプレイ部２３１とタッチパッドがとレイヤ構造をなしてタッチスクリーンとして構成される場合、ディスプレイ部２３１は、出力装置以外に、入力装置としても使用される。ディスプレイ部２３１は、液晶ディスプレイ（ＬＣＤ）、薄膜トランジスタ液晶ディスプレイ（thin  film  transistor-ＬＣＤ）、有機発光ダイオード（ＯＬＥＤ）、フレキシブルディスプレイ（flexible  display）、三次元ディスプレイ（３Ｄ  display）、電気泳動ディスプレイ（electrophoretic  display）のうち少なくとも一つを含んでもよい。そして、デバイスの具現形態によって、該デバイスは、ディスプレイ部２３１を２個以上含んでもよい。そのとき、２個以上のディスプレイ部２３１は、ヒンジを利用して、対面するようにも配置される。
【００７３】
音響出力部２３２は、通信部２１０から受信されるか、あるいはメモリ２６０に保存されたオーディオデータを出力する。また、音響出力部２３２は、ユーザ端末機２００，３００で遂行される機能（例えば、メッセージアプリケーションの実行時に出力される背景音、メッセージアプリケーションにおいて、動作を遂行するたびに発生する効果音）と係わる音響信号を出力する。かような音響出力部２３２には、スピーカ、ブザーなどが含まれてもよい。
【００７４】
振動モータ２３３は、振動信号を出力することができる。例えば、振動モータ２３３は、オーディオデータまたはイメージデータ（例えば、ゲームアプリケーションにおいて、動作を遂行するたびに発生する効果音、ゲームアプリケーションにおいて、動作を遂行した結果として変更されるイメージ）の出力に対応する振動信号を出力することができる。また、振動モータ２３３は、タッチスクリーンにタッチが入力される場合、振動信号を出力することもできる。
【００７５】
制御部２５０は、一般的に、ユーザ端末機２００，３００の全般的な動作を制御する。例えば、制御部２５０は、メモリ２６０に保存されたプログラムを実行することにより、センシング部（図示せず）、通信部２１０、出力部２３０、ユーザ入力部２４０、Ａ／Ｖ入力部（図示せず）、メモリ２６０などを全般的に制御することができる。
【００７６】
制御部２５０は、メモリ２６０にあらかじめ保存されたメッセージ送受信アプリケーションに係わるメタデータを利用して、ユーザ入力、及びユーザ端末機２００，３００の状態情報に対応する動作を決定することができる。
【００７７】
ユーザ入力部２４０は、ユーザが、ユーザ端末機２００，３００を制御するためのデータを入力する手段を意味する。例えば、ユーザ入力部２４０には、キーパッド（key  pad）、ドームスイッチ（dome  switch）、タッチパッド（接触式静電容量方式、圧力式抵抗膜方式、赤外線感知方式、表面超音波伝導方式、積分式張力測定方式、ピエゾ効果方式など）、ジョグホイール、ジョグスイッチなどがあるが、それらに限定されるものではない。
【００７８】
メモリ２６０は、制御部２５０の処理及び制御のためのプログラムを保存することもでき、入出力されるデータ（例えば、複数のメニュー、複数のメニューそれぞれに対応する複数の第１階層サブメニュー、複数の第１階層サブメニューそれぞれに対応する複数の第２階層サブメニューなど）を保存することもできる。
【００７９】
メモリ２６０は、メッセージ送受信アプリケーションに係わるメタデータをあらかじめ保存することができる。
【００８０】
メモリ２６０は、フラッシュメモリタイプ、ハードディスクタイプ、マルチメディアカードマイクロタイプ、カードタイプのメモリ（例えば、ＳＤメモリまたはＸＤメモリなど）、ＲＡＭ、ＳＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＰＲＯＭ、磁気メモリ、磁気ディスク、光ディスクのうち少なくとも１つのタイプの記録媒体を含んでもよい。また、ユーザ端末機２００，３００は、インターネット上でメモリ２６０の保存機能を遂行するウェブストレージまたはクラウドサーバを運用することもできる。
【００８１】
図５は、ユーザ端末機２００，３００の制御部２５０の構造を示すブロック図である。
【００８２】
図５を参照すれば、ユーザ端末機２００，３００の制御部２５０は、入力制御部２５１、メッセージ受信部２５２、メッセージ伝送部２５３、データ呼び出し部２５４、暗号化部２５５、復号部２５６、キー生成部２５７、認証管理部２５８を含んでもよい。まず、メッセージ伝送と係わる実施形態を中心に、ユーザ端末機２００，３００の構造について説明する。
【００８３】
入力制御部２５１は、第１メッセージを入力するように制御する。入力制御部２５１は、ユーザ入力部２４０によって入力された入力信号によって、第１メッセージが生成されるように制御する。入力制御部２５１は、ユーザによって入力された入力信号と対応し、第１メッセージの題目、内容、発信者情報、受信者情報、添付ファイルなどを含む第１メッセージを生成することができる。
【００８４】
メッセージ伝送部２５３は、第１メッセージを、第１メッセージの受信者の第２ユーザ端末機３００に伝送するように制御する。メッセージ伝送部２５３は、第１メッセージと係わるプロトコルによって、第１メッセージのフォーマットを変更する機能を遂行することができる。例えば、第１メッセージが、ＴＣＰ／ＩＰまたはＮＦＣなどの通信網を介して送受信される場合、メッセージ伝送部２５３は、伝送される通信規約に合うように、第１メッセージの構造を変更することができる。また、ユーザによって入力された設定情報によって、メッセージ伝送部２５３は、第１メッセージの各パラメータを暗号化する過程をさらに遂行するように制御することができる。すなわち、ユーザによって入力された保安関連設定によって、メッセージ伝送部２５３は、メッセージを暗号化したり、メッセージをそのまま伝送したりすることができる。
【００８５】
キー生成部２５７は、第１メッセージを暗号化する暗号化キーを生成することができる。キー生成部２５７は、第１メッセージを暗号化する暗号化キー、及び前記暗号化キーと対応する復号キーを生成することができる。ここで、暗号化キー及び復号キーの関係は、対称キーまたは非対称キーのうち一つであってもよい。一例として、暗号キーが秘密キー(private  key)であり、復号キーが公開キー(public  key)であってもよい。
【００８６】
キー生成部２５７は、メッセージの内容及び添付ファイルを暗号化するキーをそれぞれ生成することができる。まず、添付ファイルの暗号化キーを生成する過程について説明すれば、キー生成部２５７は、メッセージの添付ファイルの大きさを考慮し、メッセージの添付ファイルの暗号化キーを生成することができる。
【００８７】
例えば、メッセージの添付ファイルの容量が、既設定の臨界大きさより小さい場合、キー生成部２５７は、添付ファイルと関係なく、ランダム値を添付ファイルの暗号化キーとして生成することができる。
【００８８】
メッセージの添付ファイルの容量が、前記臨界大きさより大きい場合、キー生成部２５７は、添付ファイルのハッシュ値を、添付ファイルの暗号化キーとして生成することができる。ランダム値を添付ファイルの暗号化キーとして生成する場合、ユーザ端末機２００，３００を介して、メッセージ発信／受信を提供するメッセージサーバ１００は、同一内容の添付ファイルを、互いに異なる内容に暗号化し、各添付ファイルを管理するためのリソースを多く必要とする。それに比べ、ハッシュ値を添付ファイルの暗号化キーとして生成する場合、本発明の実施形態によるユーザ端末機２００，３００を介してメッセージ発信／受信するように制御するメッセージサーバ１００は、同一ファイルについては、１つの原本のみを管理すればよい。
【００８９】
キー生成部２５７は、メッセージの添付ファイルの種類を考慮し、メッセージの添付ファイルの暗号化キーを生成することができる。例えば、メッセージの添付ファイルが動画である場合、キー生成部２５７は、添付ファイルのハッシュ値を、添付ファイルの暗号化キーとして生成することができる。メッセージの添付ファイルが音声ファイルまたはイメージである場合、キー生成部２５７は、添付ファイルと関係なく、ランダム値を添付ファイルの暗号化キーとして生成することができる。
【００９０】
選択的実施形態において、キー生成部２５７は、メッセージの受信者の数、または共有される数を考慮し、メッセージの添付ファイルの暗号化キーを生成することができる。例えば、１つのメッセージが多くのユーザに伝送されるように入力される場合、すなわち、メッセージの受信者の数が、所定の臨界数量以上である場合、キー生成部２５７は、メッセージの受信者情報によって、それぞれ添付ファイルを暗号化するキーを生成するよりは、添付ファイルのハッシュ値を、メッセージの受信者のための添付ファイルの暗号化キーとして生成することができる。また、１つのメッセージが多くのユーザによって他のユーザに共有されるように入力される場合、メッセージが共有される数が、所定の臨界数量以上である場合、キー生成部２５７は、メッセージの発信者または受信者と無関係に、添付ファイルのハッシュ値を、添付ファイルの暗号化キーとして生成することができる。それを介して、受信者別に添付ファイルが暗号化され、暗号化されたデータを個別的に保存するのに必要な資源が節約される。容量が大きい添付ファイルを送受信する発信者と受信者との間の当該添付ファイルを、暗号化してそのまま送受信する野ではなく、前記添付ファイルにアクセスすることができるインデックス情報のみを送受信するので、添付ファイルの送受信に必要な保存空間、通信容量が小さくなり、前記保存空間、通信容量を利用して、当該添付ファイルを送受信することができる。多くのユーザに伝送されるメッセージに含まれる添付ファイルを受信者別に暗号化せずに、暗号化された添付ファイルと対応するインデックスを送受信することにより、添付ファイルの送受信に必要な保存空間、通信容量が小さくなり、前記保存空間、通信容量を利用して、当該添付ファイルを送受信することができる。次に、メッセージの内容を暗号化する暗号化キーを生成する過程について説明すれば、キー生成部２５７は、メッセージの内容を暗号化する暗号化キーをランダムに生成することができる。そのとき、暗号化キーは、受信者情報、発信者情報、発信時間、発信日付などを考慮し、ランダムに生成される。
【００９１】
他の実施形態において、キー生成部２５７は、複数の受信者のユーザ端末機２００，３００に伝送するように生成された第１メッセージの場合、各受信者別に、異なる暗号化キーを生成することができる。第２ユーザ端末機３０１及び第３ユーザ端末機３０２に伝送されなければならない第１メッセージの場合、キー生成部２５７は、第２ユーザ端末機３０１に伝送されるのに利用される第１暗号化キー、及び第３ユーザ端末機３０２に伝送されるのに利用される第２暗号化キーをそれぞれ生成することができる。
【００９２】
ここで、ハッシュ値に対してさらに具体的に説明すれば、ファイルのハッシュ値は、ファイルのデータを、ハッシュ関数（hash  function）またはハッシュアルゴリズム（hash  algorithm）を介して計算して算出された値であり、当該ファイルの固有値である。ハッシュ値は、ファイルの固有値であるために、互いに異なる２つのファイルのハッシュ値が同じであるということは、２つのファイルがほぼ一致する同一ファイルであるということを意味する。ハッシュ関数の種類としては、ＣＲＣ３２、ｍｄ５、ＳＨＡ−１、ＲＩＰＥＭＤ−１２８、Tigerなどがある。
【００９３】
暗号化方法についてさらに具体的に説明すれば、本発明の実施形態によるユーザ端末機２００，３００は、メッセージ送受信において、送信者及び受信者以外の第３者による解読を防止するために、非対称キーを活用した暗号化方法を利用することができる。すなわち、本発明の実施形態によるユーザ端末機２００，３００は、メッセージを伝送する第１ユーザ端末機２００、またはメッセージを受信する第２ユーザ端末機３００によってメッセージを暗号化する個人キー、またはメッセージを復号する公開キーを生成することができる。第１個人キーとして暗号化されたメッセージは、第１個人キーと対応する第１公開キーを利用して復号され、第１公開キーによって暗号化されたメッセージは、第１個人キーを利用しても復号される。すなわち、個人キー、及び前記個人キーと対応する公開キーは、互いに対応する関係を有し、復号または暗号化の機能をそれぞれ遂行する。対称キー暗号アルゴリズム（symmetric  cryptography）の場合、暗号化したり復号したりするのにおいて、同一暗号キー（個人キー）を使用する。これに対し、非対称キー暗号アルゴリズム（asymmetric  cryptography）は、暗号化の個人キー、及び復号の公開キーが、互いに鍵（key）及び錠（lock）の関係でありながら、個人キーから公開キーを解読することができないという長所がある。すなわち、個人キーを有するとしても、ユーザは、前記個人キーを利用して、公開キーを獲得することができない。対称キー暗号アルゴリズムの例としては、ＤＥＳ、二重ＤＥＳ、三重ＤＥＳ、ＡＥＳ、ＩＤＥＡ、ＳＥＥＤ、Blowfish、ＡＲＩＡなどがあり、非対称キー暗号アルゴリズムの例としては、ＲＳＡ、ＤＳＡ、ＥＣＣ、ＥＩＧａｍａｌ、Rabinなどがある。また、本発明の実施形態によるユーザ端末機２００，３００は、メッセージを、対称キーアルゴリズムを利用して暗号化することができる。
【００９４】
暗号化部２５５は、キー生成部２５７によって生成された暗号化キーを利用して、第１メッセージの内容及び添付ファイルをそれぞれ暗号化する機能を遂行する。暗号化部２５５は、１以上の暗号化キーを利用して、第１メッセージの内容及び添付ファイルを暗号化することができる。暗号化部２５５は、複数の受信人に伝送されるように設定された第１メッセージを、受信人別に生成された暗号化キーを利用して、それぞれ暗号化することができる。
【００９５】
暗号化部２５５は、添付ファイルの大きさ及び種類を考慮し、添付ファイルの暗号化方式を選択してもよい。添付ファイルの大きさが臨界大きさ以上であるか、添付ファイルの種類が動画である場合であるならば、暗号化部２５５は、添付ファイルのハッシュ値を暗号化キーとして生成し、そうではない場合、暗号化部２５５は、ランダム暗号キーを生成することができる。暗号化部２５５は、ハッシュ値または暗号キーを、受信者のユーザ端末機３００に伝送することができるが、そのとき、ハッシュ値または暗号キーを他の暗号化キーに暗号化することによって生成されたキーを伝送することができる。そのとき、他の暗号化キーは、あらかじめ受信者と共有される。
【００９６】
本発明の実施形態によるユーザ端末機２００，３００は、メッセージの内容が公開されないようにするために、メッセージの内容を、ランダムに生成された暗号化キーを利用して暗号化して伝送するように制御することができる。本発明の実施形態によるユーザ端末機２００，３００は、メッセージの添付ファイルの大きさがやや大きい、例えば、１０ＭＢ以上であるか、メッセージの添付ファイルの種類が動画、イメージである場合、メッセージの受信者または発信者を考慮し、個別的に添付ファイルを暗号化し、それを個別的に保存する行為を介して、さらに多くの資源が必要となることを防止するために、同一動画、同一イメージなどに対する暗号化方式を、受信者または発信者を考慮せずに統一させることができる。
【００９７】
次に、メッセージ受信と係わる実施形態を中心に、ユーザ端末機２００，３００の構造について説明する。
【００９８】
メッセージ受信部２５２は、メッセージサーバ１００から、第２ユーザ端末機２００，３００からの第２メッセージ、または第２メッセージと対応するインデックスを受信するように制御する。メッセージ受信部２５２は、第２メッセージ、または第２メッセージと対応するインデックスと共に、第２メッセージ復号のための復号キーを受信するように制御することができる。本発明の実施形態によるユーザ端末機２００，３００は、第２メッセージに対する応答メッセージ伝送するにおいて、前記復号キーを活用することができる。ここで、インデックスは、本発明の実施形態によるメッセージサーバ２００によって生成されて管理される情報であり、メッセージを送受信するよりは、インデックスを送受信する方がさらに少ないリソースを活用するために、メッセージ自体を送受信せずに、メッセージと対応するインデックスを、受信者の端末機に伝送することができる。ここで、受信者の端末機には、メッセージと対応するインデックスを利用して獲得されたメッセージが表示されるということは言うまでもない。
【００９９】
メッセージ自体を送受信する場合には、データ呼び出しが必要ではない。それに対し、メッセージ自体を送受信せずに、メッセージ及び添付ファイルと対応するインデックスを送受信する場合には、データ呼び出し部２５４は、第２メッセージに含まれた添付ファイルと対応するインデックスを利用して、メッセージの添付ファイルを呼び出すことができる。データ呼び出し部２５４は、メッセージの内容と係わりがあっても、すぐにメッセージ内容を伝達されない場合、メッセージと対応するインデックスを利用して、メッセージの内容を呼び出すことができる。データ呼び出し部２５４は、メッセージに含まれた１以上の項目を、インデックスを利用して呼び出すことができる。
【０１００】
復号部２５６は、受信したインデックス、メッセージの内容及び添付ファイルなどを、復号キーを利用して復号することができる。
【０１０１】
最後に、同一ユーザが保有または使用する複数の端末機、すなわち、第１ユーザ端末機２０１及び第３ユーザ端末機２０２を利用して、メッセージ送受信サービスを利用する方法と係わる構成について説明する。
【０１０２】
認証管理部２５８（図６）は、第１ユーザ端末機２０１を介したメッセージ送受信を行うユーザが、第１ユーザ端末機２０１を介した送受信内訳を、第３ユーザ端末機２０２を介して共有するように、第３ユーザ端末機２０２に対する認証過程を遂行することができる。
【０１０３】
認証管理部２５８は、図６に図示されているように、認証キー受信部２５８１、認証キー処理部２５８２、暗号化部２５８３、キー伝送部２５８４を含んでもよい。
【０１０４】
まず、ユーザが、第３ユーザ端末機２０２を利用して、メッセージ送受信を行うためには、メッセージ送受信アプリケーションを介して、ログイン過程を経なければならない。ログイン過程を介して、ユーザＩＤ及びパスワードが、第１ユーザ端末機２０１を介したユーザ情報と一致する場合、メッセージサーバ１００は、第１ユーザ端末機及び第３ユーザ端末機を介して、メッセージ送受信が可能になるように制御することができる。
【０１０５】
第１ユーザ端末機２０１を介してメッセージ送受信を行う場合、前記第１ユーザ端末機と異なる第３ユーザ端末機２０２の認証キー受信部２５８１は、メッセージ共有及び送受信のための第１認証キーを、メッセージサーバ１００から受信する。すなわち、認証過程については、メッセージサーバ１００が主導的に処理する。
【０１０６】
第３ユーザ端末機２０２は、受信した認証キーを入力するように制御される認証キー処理部２５８２を含んでもよい。認証キー処理部２５８２は、第１ユーザ端末機２０１を介して受信された認証キーが入力されるように制御する。認証キー処理部２５８２は、入力された第２認証キーを、メッセージサーバ１００に伝送する機能を遂行する。認証キー処理部２５８２は、認証キー伝送の応答として、第２認証キーの有効性判断結果を受信される。すなわち、第１認証キー及び第２認証キーが同一である場合、認証キー処理部２５８２は、認証が完了したというメッセージを受信し、それにより、第１ユーザ端末機２０１を介して送受信された１以上のメッセージを共有する。
【０１０７】
また、認証キー処理部２５８２は、認証キーを利用して、暗号化キーまたは復号キーを、第１ユーザ端末機２０１から受信するように制御する。認証過程を介してメッセージ送受信が可能になれば、認証キー処理部２５８２は、暗号化キーまたは復号キーを共有するように制御することにより、メッセージの解読及び暗号化を可能にする。そのとき、暗号化キーまたは復号キーの認証キーを利用して暗号化され、第１ユーザ端末機２０１から第３ユーザ端末機２０２に送受信される。
【０１０８】
暗号化部２５８３は、認証キー処理部２５８２を介して受信した暗号化キーを利用して、メッセージを暗号化する。
【０１０９】
それを介して、ユーザは、第１ユーザ端末機２０１だけでなく、第３ユーザ端末機２０２を利用して、メッセージを送受信することができる、第１ユーザ端末機２０１を介して送受信されたメッセージを、第３ユーザ端末機２０２を介して確認することができる。
【０１１０】
それを介して、受信者別に添付ファイルが暗号化され、暗号化されたデータを個別的に保存するのに必要な資源が節約される。容量が大きい添付ファイルを送受信する、発信者と受信者との間の当該添付ファイルがそのまま送受信されるよりは、前記添付ファイルにアクセスすることができるインデックス情報のみを送受信するために、添付ファイルの送受信に必要な保存空間、通信容量が小さくなり、前記保存空間、通信容量を利用して、当該添付ファイルを送受信することができる。さらに多くのユーザに伝送されるメッセージに含まれる添付ファイルを受信者別に暗号化せず、暗号化された添付ファイルと対応するインデックスを送受信することにより、添付ファイルの送受信に必要な保存空間、通信容量が小さくなり、前記保存空間、通信容量を利用して、当該添付ファイルを送受信することができる。
【０１１１】
図７及び図８は、本発明の実施形態によるメッセージ送受信方法を示すフローチャートである。
【０１１２】
図７に図示されているように、本発明の実施形態によるメッセージ送受信方法は、メッセージ入力段階（Ｓ１１０）、キー生成段階（Ｓ１２０）、暗号化段階（Ｓ１３０）、伝送段階（Ｓ１４０）を含んでもよい。
【０１１３】
Ｓ１１０においては、第１ユーザ端末機２０１は、第１メッセージを入力するように制御する。第１ユーザ端末機２０１は、ユーザ入力部２４０によって入力された入力信号によって、第１メッセージが生成されるように制御する。第１ユーザ端末機２０１は、ユーザによって入力された入力信号と対応し、第１メッセージの題目、内容、発信者情報、受信者情報、添付ファイルなどを含む第１メッセージを生成することができる。
【０１１４】
Ｓ１２０においては、第１ユーザ端末機２０１は、第１メッセージを暗号化する暗号化キーを生成することができる。第１ユーザ端末機２０１は、第１メッセージを暗号化する暗号化キー、及び前記暗号化キーと対応する復号キーを生成することができる。
【０１１５】
第１ユーザ端末機２０１は、メッセージの内容及び添付ファイルを暗号化するキーをそれぞれ生成することができる。まず、添付ファイルの暗号化キーを生成する過程について説明すれば、第１ユーザ端末機２０１は、メッセージの添付ファイルの大きさを考慮し、メッセージの添付ファイルの暗号化キーを生成することができる。例えば、メッセージの添付ファイルの容量が既設定の臨界大きさより小さい場合、第１ユーザ端末機２０１は、添付ファイルと関係なく、ランダム値を添付ファイルの暗号化キーとして生成することができる。メッセージの添付ファイルの容量が、前記臨界大きさより大きい場合、第１ユーザ端末機２０１は、添付ファイルのハッシュ値を、添付ファイルの暗号化キーとして生成することができる。
【０１１６】
第１ユーザ端末機２０１は、メッセージの添付ファイルの種類を考慮し、メッセージの添付ファイルの暗号化キーを生成することができる。例えば、メッセージの添付ファイルが動画である場合、暗号化キーの管理を容易にするために、第１ユーザ端末機２０１は、添付ファイルのハッシュ値を、添付ファイルの暗号化キーとして生成することができる。メッセージの添付ファイルが、音声ファイルまたはイメージである場合、第１ユーザ端末機２０１は、添付ファイルと関係なく、ランダム値を添付ファイルの暗号化キーとして生成することができる。
【０１１７】
次に、メッセージの内容を暗号化する暗号化キーを生成する過程について説明すれば、第１ユーザ端末機２０１は、メッセージの内容を暗号化する暗号化キーを、ランダムに生成することができる。そのとき、暗号化キーは、受信者情報、発信者情報、発信時間、発信日付などを考慮してランダムに生成される。
【０１１８】
他の実施形態において、第１ユーザ端末機２０１は、複数の受信者のユーザ端末機２００，３００に伝送するように生成された第１メッセージの場合、各受信者別に、異なる暗号化キーを生成することができる。第２ユーザ端末機３０１及び第３ユーザ端末機３０２に伝送されなければならない第１メッセージの場合、第１ユーザ端末機２０１は、第２ユーザ端末機３０１に伝送されるのに利用される第１暗号化キー、及び第３ユーザ端末機３０２に伝送されるのに利用される第２暗号化キーをそれぞれ生成することができる。
【０１１９】
Ｓ１３０においては、第１ユーザ端末機２０１は、キー生成部２５７によって生成された暗号化キーを利用して、第１メッセージの内容及び添付ファイルをそれぞれ暗号化する機能を遂行する。第１ユーザ端末機２０１は、１以上の暗号キー（または、暗号化キー）を利用して、第１メッセージの内容及び添付ファイルを暗号化することができる。第１ユーザ端末機２０１は、複数のユーザに伝送されるように設定された第１メッセージを、ユーザ別に生成された暗号化キーを利用して、それぞれ暗号化することができる。
【０１２０】
Ｓ１４０においては、第１ユーザ端末機２０１は、暗号化された第１メッセージを、第１メッセージの受信者である第２ユーザ端末機に伝送するように、メッセージサーバ１００に伝送する。さらには、第１ユーザ端末機２０１は、第１メッセージを暗号化するのに利用された複数の暗号化キーを、他の暗号化キーを利用してさらに暗号化して伝送することもできる。
【０１２１】
図８に図示されているように、本発明の実施形態によるメッセージ送受信方法は、メッセージ受信段階（Ｓ２１０）、データ呼び出し段階（Ｓ２２０）、データ復号段階（Ｓ２３０）を含んでもよい。
【０１２２】
Ｓ２１０においては、第１ユーザ端末機２０１は、メッセージサーバ１００から、第２ユーザ端末機２００，３００からの第２メッセージ、または第２メッセージと対応するインデックスを受信するように制御する。第１ユーザ端末機２０１は、第２メッセージ、または第２メッセージと対応するインデックスと共に、第２メッセージの復号のための復号キーを受信するように制御することができる。
【０１２３】
Ｓ２２０においては、メッセージ自体を送受信する場合には、データ呼び出しが必要ではないが、そうではなく、メッセージ及び添付ファイルと対応するインデックスを送受信する場合には、第１ユーザ端末機２０１は、第２メッセージに含まれた添付ファイルと対応するインデックスを利用して、前記添付ファイルを呼び出すことができる。第１ユーザ端末機２０１は、メッセージの内容と係わっても、すぐにメッセージの内容を伝達されない場合、メッセージと対応するインデックスを利用して、メッセージの内容を呼び出すことができる。第１ユーザ端末機２０１は、メッセージに含まれた１以上の項目を、インデックスを利用して呼び出すことができる。
【０１２４】
Ｓ２３０においては、第１ユーザ端末機２０１は、受信したインデックス、メッセージの内容及び添付ファイルなどを、復号キーを利用して復号することができる。第１ユーザ端末機２０１は、復号が失敗した場合、当該メッセージに対する保安を要請する内容を含む画面を表示するように制御することができる。復号キー獲得のために、第１ユーザ端末機２０１は、さらに暗号化キーを受信する過程を経るが、そのとき、メッセージまたは添付ファイルを暗号化するのに利用された暗号化キーは、すでに受信して保管している他の暗号化キーを利用して暗号化される。すなわち、第１ユーザ端末機２０１は、暗号化されたキーを復号して暗号化キーを獲得することができる。
【０１２５】
図９は、第１ユーザ端末機及び第２ユーザ端末機間のメッセージ送受信過程について説明するためのフローチャートである。
【０１２６】
第１ユーザ端末機２０１は、入力したメッセージを暗号化するための暗号化キーを生成し、前記暗号化キーと対応する復号キーを生成することができる（Ｓ９０１）。暗号化キー及び復号キーの関係はすでに説明したので、詳細な説明を省略する。ここで、暗号化キーは、メッセージの内容及びメッセージの添付ファイルを暗号化するためにそれぞれ生成される。
【０１２７】
第１ユーザ端末機２０１は、添付ファイルを含むメッセージを生成するユーザ入力を入力される（Ｓ９０２）。第１ユーザ端末機２０１は、前記添付ファイル及びメッセージの内容を、前記暗号化キーを利用して暗号化する（Ｓ９０３）。第１ユーザ端末機２０１は、復号キー、暗号化されたファイル及びメッセージを、メッセージサーバに伝送する（Ｓ９０４，Ｓ９０５）。ここで、復号キーメッセージ、及びメッセージに含まれた添付ファイルそれぞれのために複数個が生成される。メッセージに含まれた受信者の第２ユーザ端末機３００に伝送するように生成されたメッセージは、第２ユーザ端末機３００に伝送される（Ｓ９０５，Ｓ９０６）。復号キー、暗号化されたファイル及びメッセージを受信した第２ユーザ端末機３００は、メッセージ、及びメッセージに含まれたファイルを復号キーで復号する（Ｓ９０８）。
【０１２８】
図１０は、第１ユーザ端末機及び第３ユーザ端末機間のメッセージ共有過程について説明するためのフローチャートである。
【０１２９】
第１ユーザ端末機２０１及び第３ユーザ端末機２０２をいずれも保有または所有しているユーザは、第３ユーザ端末機２０２を介して、メッセージ送受信のためのログイン情報を入力することができる（Ｓ１００１）。第３ユーザ端末機２０２は、ログイン情報を、メッセージサーバ１００に伝送する（Ｓ１００２）。メッセージサーバ１００は、ログイン情報の有効性を判断する（Ｓ１００３）。すなわち、メッセージサーバ１００は、ログイン情報に含まれるＩＤ情報及びパスワード情報が、互いに対応するか否かということを判断する。メッセージサーバ１００は、第１ユーザＩＤ、及び第１ユーザのパスワードが含まれているか否かということを判断する。ログイン情報が有効である場合、メッセージサーバ１００は、ランダムに生成された第１認証番号を、第３ユーザ端末機２０２に伝送する（Ｓ１００４）。その後、ユーザが保有または所有している第１ユーザ端末機２０１に、認証番号を入力させる信号を伝送する。前記信号と対応し、第１ユーザ端末機２０１は、認証番号を入力させるユーザインターフェースを表示する（Ｓ１００５）。前記ユーザインターフェースによって、第１ユーザ端末機２０１は、第２認証番号を入力される（Ｓ１００６）。第１ユーザ端末機２０１は、入力された第２認証番号を、メッセージサーバ１００に伝送する（Ｓ１００７）。メッセージサーバ１００は、第１認証番号及び第２認証番号の間に一致が存在するか否かを判断し（Ｓ１００８）、一致した場合、第３ユーザ端末機に対する認証過程、処理を完了する（Ｓ１００９）。Ｓ１００１段階ないしＳ１００９段階を遂行した後からは、メッセージサーバ１００は、第１ユーザ端末機２０１によって受信されたり送信されたりするメッセージを、第３ユーザ端末機２０２に伝達し、一方、第３ユーザ端末機２０２によって受信されたり送信されたりするメッセージを、第１ユーザ端末機２０１に伝達する。すなわち、第１ユーザ端末機２０１及び第３ユーザ端末機２０２は、同一メッセージ送受信履歴を共有する。
【０１３０】
選択的実施形態において、各メッセージに係わる確認情報は、第１ユーザ端末機２０１及び第３ユーザ端末機２０２の間に差がある。例えば、第１ユーザ端末機２０１を介して確認されたメッセージは、第３ユーザ端末機２０２では、未確認メッセージとしても表示される。
【０１３１】
図１１ないし図１４は、本発明の実施形態によるユーザ端末機に提供されるユーザインターフェースの例示について説明するための図面である。
【０１３２】
図１１に図示された１１０１は、第１ユーザ端末機２０１に表示されるユーザインターフェースであり、第３ユーザ端末機２０２に伝送された認証番号を入力させる画面である。ユーザは、図１１に図示されているように、６桁の認証番号を入力し、本人確認ボタン１１０２をクリックすることにより、第１ユーザ端末機２０１は、認証処理を行う。
【０１３３】
図１２に図示された１２０１は、ユーザ端末機２００，３００にメッセージを表示するユーザインターフェースである。本人認証を経ていないユーザ端末機２００，３００は、メッセージを暗号化された状態で示され（１２０２）、本人確認のためのボタン１２０３をクリックすることにより、別途の本人確認を行わなければならない。
【０１３４】
図１３に図示されているように、ユーザによって生成された１以上のチャットルームをリストとして表示する画面と、各チャットルームからなる対話を表示する画面とを共に表示することができる（１３０１）。相手が、さらなる保安過程を必要とするメッセージ１３０２を伝送した場合、すでに本人確認を行ったユーザであるとしても、前記メッセージを表示せず、ユーザは、前記メッセージの内容を確認するために、別途の認証過程を経るように制御することができる（１３０３）。
【０１３５】
図１４に図示されているように、チャットルームリストを表示することができ（１４０１）、チャットルームリストで暗号化されたメッセージを表示させないこともある（１４０２）。
【０１３６】
図１５Ａ及び図１５Ｂは、暗号化過程についてさらに具体的に説明するための図面である。
【０１３７】
図１５Ａを参照すれば、発信者の第１ユーザ端末機２００は、発信者によって、ファイルを伝送する要請を受信する（Ｓ１５００（send  file））。もしファイルの種類がイメージ（image）であるか、あるいはファイルの大きさが臨界大きさ未満である場合、第１ユーザ端末機２００に搭載されたメッセージアプリケーションは、当該ファイル（file）暗号化のためのランダムな第１暗号化キー（ＳＲＫ）を生成する（Ｓ１５０１（make  SRK））。第１ユーザ端末機２００は、前記生成された第１暗号化キー（ＳＲＫ）を利用してファイルを暗号化し（encrypt）、暗号化されたファイル（ＥＦ）を生成し（Ｓ１５０２）、前記暗号化キー（ＳＲＫ）をメッセージ送受信のために、受信者と共有した第２暗号化キー（ＡＫ）を利用して、前記第１暗号化キー（ＳＲＫ）を暗号化し、暗号化されたキー（ＥＫ）を生成する（Ｓ１５０３）。すなわち、本発明の実施形態によるメッセージ送受信方法は、ファイルを暗号化するために生成された第１暗号化キーの流出を防止するために、第１暗号化キーをメッセージ送受信のための他の暗号化キーに暗号化して伝送する。第１ユーザ端末機２００は、前記暗号化されたファイル（ＥＦ）をメッセージサーバ１００に伝送し（Ｓ１５０４）、前記暗号化されたキー（ＥＫ）をメッセージサーバ１００に伝送する（Ｓ１５０５）。メッセージサーバ１００は、暗号化されたファイル（ＥＦ）及び暗号化されたキー（ＥＫ）を、そのまま第２ユーザ端末機３００に伝送する（Ｓ１５０６，Ｓ１５０７）。受信者の第２ユーザ端末機３００は、搭載されたメッセージアプリケーションを介して暗号化されたファイル（ＥＦ）及び暗号化されたキー（ＥＫ）を受信する。ファイルを復号する前に、暗号化されたキー（ＥＫ）を共有した第２暗号化キー（ＡＫ）を利用して復号することにより、暗号化キー（ＳＲＫ）を獲得する（Ｓ１５０８）。第２ユーザ端末機３００は、前記獲得した暗号化キー（ＳＲＫ）を利用して、暗号化されたファイル（ＥＦ）を復号することにより、発信者が発信した原ファイルを生成する（Ｓ１５０９）。
【０１３８】
図１５Ｂに図示されているように、発信者の第１ユーザ端末機２００によって伝送するファイルの種類が動画であるか、あるいはファイルの大きさが臨界大きさを超える場合、当該ファイルのハッシュ値を暗号化キーとして活用することができる。
【０１３９】
第１ユーザ端末機２００は、発信者によってファイル伝送の入力を受信し（Ｓ１５１０）、ファイルのハッシュ値（ＦＨ）を計算する（Ｓ１５１１）。第１ユーザ端末機２００は、ファイルのハッシュ値（ＦＨ）を利用して前記ファイルを暗号化し、暗号化されたファイル（ＥＦ）を生成する（Ｓ１５１２）。第１ユーザ端末機２００は、前記ハッシュ値（ＦＨ）を、受信者と共有した暗号化キー（ＡＫ）を利用して、前記ハッシュ値（ＦＨ）を暗号化して暗号化されたハッシュ値（ＥＫ）を生成する（Ｓ１５１３）。第１ユーザ端末機２００は、前記暗号化されたファイル（ＥＦ）、及び前記暗号化されたハッシュ値（ＥＫ）をメッセージサーバ１００に伝送し（Ｓ１５１４，Ｓ１５１５）、メッセージサーバ１００は、前記暗号化されたファイル（ＥＦ）、及び前記暗号化されたハッシュ値（ＥＫ）を、受信者の第２ユーザ端末機３００に伝送する（Ｓ１５１６，Ｓ１５１７）。第２ユーザ端末機３００は、まず、ファイルを復号する前に、共有した暗号化キー（ＡＫ）を利用して、前記暗号化されたハッシュ値（ＥＫ）を復号し、ハッシュ値（ＦＨ）を出力し（Ｓ１５１８）、前記ハッシュ値（ＦＨ）を利用して、暗号化されたファイル（ＥＦ）を復号し、原ファイルを出力する（Ｓ１５１９）。
【０１４０】
以上で説明した本発明による実施形態は、コンピュータ上で多様な構成要素を介して実行されるコンピュータプログラムの形態によって具現され、かようなコンピュータプログラムは、コンピュータで判読可能な媒体に記録される。そのとき、該媒体は、ハードディスク、フロッピー（登録商標）ディス及び磁気テープのような磁気媒体；ＣＤ−ＲＯＭ（compact  disc  read  only  memory）及びＤＶＤ（digital  versatile  disc）のような光記録媒体；フロプティカルディスク（floptical  disk）のような磁気・光媒体（magneto-optical  medium）；及びＲＯＭ、ＲＡＭ、フラッシュメモリのような、プログラム命令語を保存して実行するように特別に構成されたハードウェア装置を含んでもよい。さらに、該媒体は、ネットワーク上で伝送可能な形態に具現される無形の媒体を含んでもよく、例えば、ソフトウェア形態またはアプリケーション形態によって具現され、ネットワークを介して伝送及び流通が可能な形態の媒体でもある。
【０１４１】
一方、前記コンピュータプログラムは、本発明のために特別に設計されて構成されたものでもあり、コンピュータソフトウェア分野の当業者に公知されて使用可能なものでもある。該コンピュータプログラムの例としては、コンパイラによって作われるような機械語コードだけではなく、インタープリタなどを使用して、コンピュータによって実行される高級言語コードも含まれる。
【０１４２】
本発明で説明する特定実行は、一実施形態であり、いかなる方法によっても、本発明の範囲を限定するものではない。明細書の簡潔さのために、従来の電子的な構成、制御システム、ソフトウェア、前記システムの他の機能的な側面の記載は省略する。また、図面に図示された構成要素間の線の連結または連結部材は、機能的な連結及び／または物理的または回路的な連結を例示的に示したものであり、実際の装置では、代替可能であったり追加されたりする多様な機能的な連結、物理的な連結または回路の連結としても示される。また、「必須な」、「重要に」というような具体的な言及がなければ、本発明の適用のために必ずしも必要な構成要素ではないこともある。
【０１４３】
本発明の明細書（特に、特許請求の範囲）において、「前記」の用語、及びそれと類似した指示用語の使用は、単数及び複数のいずれもに該当する。また、本発明において、範囲（range）を記載した場合、前記範囲に属する個別的な値を適用した発明を含むものであり（それに反する記載がなければ）、発明の詳細な説明に、前記範囲を構成する各個別的な値を記載した通りである。最後に、本発明による方法を構成する段階について、明白に順序を記載したり、それに反する記載がなかったりするならば、前記段階は、適当な順序で行われるのである。必ずしも前記段階の記載順序によって、本発明が限定されるものではない。本発明において、全ての例または例示的な用語（例えば、など）の使用は、単に本発明について詳細に説明するためのものであり、特許請求の範囲によって限定されない以上、前記例、または例示的な用語によって、本発明の範囲が限定されるものではない。また、当業者は、多様な修正、組み合わせ及び変更が付加された特許請求の範囲またはその均等物の範疇内で、設計条件及びファクタによって構成されるということが分かるであろう。
【産業上の利用可能性】
【０１４４】
本発明のユーザ端末、メッセージを送受信する方法及びコンピュータプログラムは、例えば、メッセージ保安関連の技術分野に効果的に適用可能である。
【符号の説明】
【０１４５】
１０    メッセージ送受信システム
１００  メッセージサーバ
２００，３００  ユーザ端末機
４００  通信網
【図１】
2017085567.tif 000003
【図２】
2017085567.tif 000004
【図３】
2017085567.tif 000005
【図４】
2017085567.tif 000006
【図５】
2017085567.tif 000007
【図６】
2017085567.tif 000008
【図７】
2017085567.tif 000009
【図８】
2017085567.tif 000010
【図９】
2017085567.tif 000011
【図１０】
2017085567.tif 000012
【図１１】
2017085567.tif 000013
【図１２】
2017085567.tif 000014
【図１３】
2017085567.tif 000015
【図１４】
2017085567.tif 000016
【図１５Ａ】
2017085567.tif 000017
【図１５Ｂ】
2017085567.tif 000018