(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024080605
(43)【公開日】2024-06-13
(54)【発明の名称】データファイルを保護するシステムおよび方法
(51)【国際特許分類】
G06F 21/56 20130101AFI20240606BHJP
【FI】
G06F21/56 320
【審査請求】有
【請求項の数】14
【出願形態】OL
(21)【出願番号】P 2023166560
(22)【出願日】2023-09-27
(31)【優先権主張番号】10202260284Y
(32)【優先日】2022-12-01
(33)【優先権主張国・地域又は機関】SG
(71)【出願人】
【識別番号】521354226
【氏名又は名称】フレックソン ピーティーイー エルティーディー
【氏名又は名称原語表記】FLEXXON PTE. LTD.
(74)【代理人】
【識別番号】100226861
【弁理士】
【氏名又は名称】池上 廣
(72)【発明者】
【氏名】チャン・メイ・リン
(72)【発明者】
【氏名】パラマシヴァム・ラジャモハン
(72)【発明者】
【氏名】タン・ホン・チュアン
(57)【要約】 (修正有)
【課題】一連のデータファイルから選択されたデータファイルを保護するためのシステム及び方法を提供する。
【解決手段】変換モジュール122、人工ニューラルネットワーク(ANN124)、クラスタリングモジュール128およびバックプロパゲーションモジュール126を含み、これらのモジュールが、マルウェアまたは異常を含むデータファイルを識別するシステム120であって、ホストマシン110からのマルウェア又は異常を含むデータファイル111を検出すると、検出したマルウェアに同様に感染している可能性のある他のデータファイルを検出するための一連の処理を開始し、これらのデータファイルを、マルウェアがホストマシンおよび/またはホストマシンに接続されたストレージ/周辺機器に影響を与えないように保護する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
一連のデータファイルを保護するためのシステムであって、前記システムは以下を含む:
一連のデータファイルから変換された簡約化行列(RREF)のセットを含む変換モジュール、ここで前記一連のファイルはRREFのセットにマッピングされ、前記変換モジュールは以下より構成される:
システムより変換されたデータファイルを取得し、前記変更されたデータファイルを変更されたRREFのセットに変換し、前記変換されたデータファイルを、変換されたRREFのセットにマッピングし、前記変換されたRREFのセットを訓練された人工ニューラルネットワーク(ANN)モジュールに供給する;
ここで前記訓練されたANNモジュールは、以下より構成される:
変換されたRREFのセットが悪質な動作を含むかどうかを識別し、変換されたRREFのセットが悪質な動作を含むと識別された場合、変換されたRREFのセットおよび変換されたデータファイルをシステムのメモリ内の仮想の安全な領域へ移す;
以下より構成されるクラスタリングモジュール:バックプロパゲーションモジュールを用いて、前記RREFのセットより、変換された種々のRREFのセットを取得し;前記取得された変換されたRREFのセット、および変換されたRREFのセットをクラスタリングして、悪質な動作を含むRREFのセットを識別する;悪質な動作を含む識別されたRREFのセットを訓練されたANNモジュールに供給する、ここで訓練されたANNモジュールは、識別されたRREFのセットに関連する悪質な動作のタイプを識別するように構成される;および
訓練されたANNモジュールによって識別された、データファイルに関連する悪質な動作のタイプに従って、悪質な動作を含む識別されたRREFのセットにマッピングされた安全なデータファイル。
【請求項2】
請求項1に記載のシステムにおいて、前記変換モジュールによる、前記変換されたデータファイルの前記変換されたRREFのセットへの変換は、前記変換モジュールが以下のように構成されることを特徴とする:
前記変換されたデータファイルを中間データフレームに変換する、ここで前記中間データフレームは、マルチメディアデータフレームまたは文字ベースのデータフレームを含む;
前記中間データフレームを、1次関数を用いて行列のセットに変換する;及び行列のセットを変換されたRREFのセットに変換する。
【請求項3】
前記クラスタリングモジュールが、悪質な動作を含まないRREFのセットを変換モジュールに供給するように構成され、変換モジュールが、供給されたRREFのセットをデータファイルに変換し、データファイルを供給されたRREFのセットにマッピングするようにさらに構成される、請求項1に記載のシステム。
【請求項4】
前記変換されたRREFのセットのバリエーションが、異なるタイムスタンプを有するRREFのセットを含む、請求項1に記載のシステム。
【請求項5】
請求項1に記載のシステムにおいて、一連のデータファイルのRREFのセットへのマッピング、および変換されたデータファイルの変換されたRREFのセットへのマッピングは、各データファイルまたは各変換されたデータファイルに対して、データファイルのアドレスおよびデータファイルのメタデータ補足レイヤーにハッシュ関数を適用し、このハッシュ関数の結果を用いて各データファイルをRREFのセットに結び付けることによって行われることを特徴とするシステム。
【請求項6】
訓練されたANNモジュールが、悪質な動作を含むRREFのセットに基づいて、ANNモジュール内のニューラルネットワークをさらに訓練するよう構成される、請求項1に記載のシステム。
【請求項7】
請求項1に記載のシステムにおいて、変換モジュールによる一連のデータファイルのRREFのセットへの変換において、変換モジュールが以下のように構成されることを特徴とするシステム:
前記データファイルの各々を中間データフレームに変換する、ここで前記中間データフレームは、マルチメディアデータフレームまたは文字ベースのデータフレームを含む;
前記中間データフレームを、1次関数を用いて行列のセットに変換する;及び行列のセットを変換されたRREFのセットに変換する。
【請求項8】
一連のデータファイルから変換された簡約化行列(RREF)のセットを含む変換モジュールを含むシステムを用いて一連のデータファイルを保護する方法であって、一連のデータファイルがRREFのセットにマッピングされ、当該方法は以下のステップを含む:
変換モジュールを用いて、システムから変換されたデータファイルを取得し、変換されたデータファイルを変換されたRREFのセットに変換するステップ;
変換モジュールを用いて、変換されたデータファイルを、変換されたRREFのセットにマッピングし、前記変換されたRREFのセットを訓練された人工ニューラルネットワーク(ANN)モジュールに供給するステップ;
訓練されたANNモジュールを用いて、変換されたRREFのセットが悪質な動作を含むかどうかを識別するステップであって、変換されたRREFのセットが悪質な動作を含むと識別された場合、変換されたRREFのセットおよび変換されたデータファイルを、システムのメモリ内の仮想安全な領域に移動させるステップ;
バックプロパゲーションモジュールを用いて、RREFのセットから、変換された種々のRREFのセットを取得するステップ;
クラスタリングモジュールを用いて、取得されたRREFの変換されたセットのバリエーションとRREFの変換されたセットとをクラスタリングし、悪質な動作を含むRREFのセットを識別するステップ;
クラスタリングモジュールを用いて、悪質な動作を含むと識別されたRREFのセットを、訓練されたANNモジュールに供給するステップ、ここで訓練されたANNモジュールは、識別されたRREFのセットに関連する悪質な動作のタイプを識別するように構成される、
クラスタリングモジュールを用いて、訓練済みのANNモジュールによって識別されたデータファイルに関連する悪質な動作のタイプに従って、悪質な動作を含む識別されたRREFのセットにマッピングされたデータファイルを保護するステップ。
【請求項9】
請求項8に記載の方法であって、前記変換されたデータファイルを前記変換されたRREFのセットに変換することは、以下を含む方法:
前記変換モジュールを用いて、前記変換されたデータファイルを中間データフレームに変換すること、なおここで前記中間データフレームは、マルチメディアデータフレームまたは文字ベースのデータフレームを含む;
前記変換モジュールを用いて、中間データフレームを1次関数により行列のセットに変換し、変換モジュールを用いて、行列のセットを変換されたRREFのセットに変換すること。
【請求項10】
クラスタリングモジュールを用いて、悪質な動作を含まないRREFのセットを変換モジュールに供給する;ここで変換モジュールは、供給されたRREFのセットをデータファイルに変換し、データファイルをRREFのセットにマッピングするよう構成される、請求項8に記載の方法。
【請求項11】
変換された種々のRREFのセットが、異なるタイムスタンプを有するRREFのセットを含む、請求項8に記載の方法。
【請求項12】
請求項8に記載の方法において、一連のデータファイルのRREFのセットへのマッピング、および変換されたデータファイルの変換されたRREFのセットへのマッピングは、各データファイルまたは変換された各データファイルに対して、データファイルのアドレスおよびデータファイルのメタデータ補足レイヤーにハッシュ関数を適用し、このハッシュ関数の結果を用いて各データファイルをRREFのセットに結び付けることによって行われることを特徴とする方法。
【請求項13】
請求項8に記載の方法において、前記方法は、悪質な動作を含むRREFのセットに基づいて、ANNモジュール内のニューラルネットワークを訓練するステップをさらに含むことを特徴とする方法。
【請求項14】
請求項8に記載の方法において、前記変換モジュールによって一連のデータファイルをRREFのセットに変換することは、以下のステップを含む:
前記変換モジュールを用いて、前記変換されたデータファイルを中間データフレームに変換するステップ、ここで前記中間データフレームは、マルチメディアデータフレームまたは文字ベースのデータフレームを含み:
前記変換モジュールを用いて、中間データフレームを、1次関数を用いて行列のセットに変換するステップ;及び変換モジュールを用いて、行列のセットを、変換されたRREFのセットに変換するステップ。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、選択された一連のデータファイルから選択されたデータファイルを保護するシステムおよび方法に関する。本発明のシステムは、変換モジュール、人工ニューラルネットワーク(ANN)、クラスタリングモジュール、およびバックプロパゲーションモジュールを含み、それらのモジュールは、マルウェアまたは異常なデータファイルを検出するように構成される。このようなデータファイルが検出されると、システムは、検出されたマルウェアに感染している可能性のある他のデータファイルを検出するための一連の検査を開始する。これらのデータファイルは、マルウェアがホストマシンおよび/またはホストマシンと接続されるストレージ/周辺機器に影響を与えないように保護される。
【背景技術】
【0002】
マルウェアは、現代のコンピュータ環境において常に脅威となっている。より多くのデバイスが無線または有線のネットワークを通じて繋がるようになると、マルウェアはネットワークを通じて容易に拡散され、接続されるすべてのデバイスに感染する可能性がある。感染したコンピュータは、個人や組織の生産性を低下させ、さらに取り返しのつかない被害をもたらす可能性がある。例えば、感染したコンピュータは、オペレーティングシステムが損傷したり、データが破損することによって、動作が遅くなったり、完全に機能しなくなったりする可能性がある。最悪の場合、貴重なデータや情報が悪用され、乗っ取られ、他人によって使用されたり、身代金を要求されたりする可能性がある。加えて感染したシステムは、ネットワーク外の他のデバイスにマルウェアを拡散し続ける可能性がある。
【0003】
従来のマルウェア対策ソフトウェアは、既知のマルウェアのシグネチャを検出し、また、他の既知のマルウェアに関連するプログラム内のパターンを検出して、既知のマルウェアを識別および検出を試みる場合がある。このようなマルウェアへの対策手法は、シグネチャベースの検出システムであって、ファイルやデータを既知のマルウェアのパターンと比較する。しかし、ゼロデイ攻撃は通常、既知のマルウェアとは大きく異なるため、既知のマルウェアのパターンには当てはまらず、ゼロデイ攻撃を検出できない可能性がある。
【0004】
前記のように、貴重なデータや情報がマルウェアによって悪用される可能性がある。そこで、データのバックアップを頻繁に行い、また、暗号化されたデータを安全な環境に保管するなどの対策が取られることが多い。
【0005】
しかし、このような対策は多くの問題を抱えている。バックアップされたデータがハッキングされたり、破損したり、ハードウェアが故障/偶発的に損傷したり、ランサムウェアやマルウェアへ感染したり、データが偶発的に削除される等が起こる可能性がある。ランサムウェアの場合、攻撃者は、ユーザーのファイルを暗号化し、データへのアクセスを可能にするために被害者へ身代金を要求する。このような攻撃で最も一般的なものは、フィッシング・スパムである。フィッシング・スパムでは、何も知らないユーザーによって不正な添付ファイルがダウンロードされ、実行される。これらのファイルが実行されると、関連するスクリプトをセルフインストールし、そこに含まれるデータを破壊することで、デバイスのオペレーティングシステムを支配する。
【0006】
悪質なスクリプトの中には、ユーザーにより実行される必要のないものもある。このようなスクリプトは、オペレーティングシステムにおけるセキュリティの脆弱性につけ込み、そこに含まれるファイルやデータを感染させることで、デバイスに損害を与える可能性がある。さらに、リークウェアやドックスウェアと呼ばれるサイバー攻撃もある。このような攻撃では、デバイスにアクセスした悪質な第三者が、デバイスの記憶媒体に含まれる機密データを公開すると脅迫する。
【0007】
また、悪質な第三者は、トロイの木馬の攻撃を利用して、ユーザーのデータに損害を加えたり、データを盗んだりする。トロイの木馬は、ウイルス、ワーム、スパイウェア、ゾンビ、ボットネット、ロジック爆弾、トラップドアをも生じさせる。一般的に、これらの悪質なサイバー攻撃はすべて、ユーザーデータのセキュリティを侵すことが唯一の目的である。これらの攻撃は通常、データが格納されているアドレス・ポインタとともに、オペレーティングシステム及びオペレーティングシステムのカーネルを破壊し、結果的にデータそのものを破壊する。
【0008】
上記の理由から、当業者は、マルウェアを含む可能性のあるデータファイルを識別および検出することによって、デバイス内のファイルを保護することができるシステムおよび方法を作り出すため鋭意努力している。
【発明の概要】
【0009】
本発明のシステムおよび方法によって上記及びその他の課題は解決され、技術の進展がもたらされる。
【0010】
本発明のシステムおよび方法における第一の利点は、ファイルが実行可能か否かに関わらず、すべての形式のファイルを保護するようにシステムが構成されていることにある。
【0011】
本発明のシステムおよび方法における第二の利点は、たとえもしホストデバイスのオペレーティングシステムが侵された場合であっても、権限のないユーザーによる操作および再構築が困難なフォーマットでデータファイルを保存するように構成されていることにある。
【0012】
本発明のシステムおよび方法の第三の利点は、本発明の実施態様に従ってファイルが一旦保存されると、システムは、RREFを保存されたファイルにマッピングするために用いられる関数によって、破損したファイルを簡単かつ効率的に回復できることにある。
【0013】
本発明のシステムおよび方法の第四の利点は、ファイルが訓練されたニューラルネットワークを用いて分析される前に数値表現に変換されるため、システムがデータファイル内に含まれるマルウェアおよびゼロデイ型のマルウェアを検出するように構成されていることにある。
【0014】
本発明のシステムおよび方法の第五の利点は、マルウェアを含むと識別されたファイルをメモリ内の仮想の安全な領域に格納するように構成され、当該格納されたファイルは許可されたユーザーによってのみ取得できることにある。
【0015】
上述の利点は、以下に示す本発明のシステムおよび/または方法によって実現可能である。
【0016】
本発明の第一の実施態様によれば、一連のデータファイルを保護するためのシステムであって、前記システムは以下を含む:一連のデータファイルから変換された簡約化行列(RREF)のセットを含む変換モジュール、ここで前記一連のファイルはRREFのセットにマッピングされ、前記変換モジュールは以下より構成される:
システムより変換されたデータファイルを取得し、前記変更されたデータファイルを変更されたRREFのセットに変換し、前記変換されたデータファイルを、変換されたRREFのセットにマッピングし、前記変換されたRREFのセットを訓練された人工ニューラルネットワーク(ANN)モジュールに供給する;
ここで前記訓練されたANNモジュールは、以下より構成される:
変換されたRREFのセットが悪質な動作を含むかどうかを識別し、変換されたRREFのセットが悪質な動作を含むと識別された場合、変換されたRREFのセットおよび変換されたデータファイルをシステムのメモリ内の仮想の安全な領域へ移す;
以下より構成されるクラスタリングモジュール:バックプロパゲーションモジュールを用いて、前記RREFのセットより、変換された種々のRREFのセットを取得し;前記取得された変換されたRREFのセットおよび変換されたRREFのセットをクラスタリングして、悪質な動作を含むRREFのセットを識別する;悪質な動作を含む識別されたRREFのセットを訓練されたANNモジュールに供給する、ここで訓練されたANNモジュールは、識別されたRREFのセットに関連する悪質な動作のタイプを識別するように構成される;および
訓練されたANNモジュールによって識別された、データファイルに関連する悪質な動作のタイプに従って、悪質な動作を含む識別されたRREFのセットにマッピングされた安全なデータファイル。
【0017】
本発明の第一の実施態様によれば、変換モジュールによって変換されたデータファイルのRREFへの変換は、以下の変換モジュールを含む:データファイルを中間データフレームに変換し、ここで中間データフレームは、マルチメディアデータフレームまたは文字ベースのデータフレームを含む;
中間データフレームを、1次関数を用いて行列のセットに変換する;及び行列のセットを変換されたRREFのセットに変換する。
【0018】
本発明の第一の実施態様によれば、クラスタリングモジュールは、悪質な動作を含まないRREFのセットを変換モジュールに供給するように構成され、ここで変換モジュールは、供給されたRREFのセットをデータファイルに変換し、データファイルをRREFのセットにマッピングするように構成される。
【0019】
本発明の第一の実施態様によれば、変換された種々のRREFのセットは、異なるタイムスタンプを有するRREFのセットを含む。
【0020】
本発明の第一の実施態様によれば、データファイルのRREFのセットへのマッピング、および変換されたデータファイルのRREFのセットへのマッピングは、各データファイルまたは各変換されたデータファイルに対して、データファイルのアドレスおよびデータファイルのメタデータ補足レイヤーにハッシュ関数を適用し、このハッシュ関数の結果を用いて各データファイルをRREFのセットに結び付けることによって行われる。
【0021】
本発明の第一の実施態様によれば、訓練されたANNモジュールは、悪質な動作を含むRREFの特定のセットに基づいて、ANNモジュール内のニューラルネットワークをさらに訓練するように構成される。
【0022】
本発明の第一の実施態様によれば、変換モジュールによってデータファイルはRREFのセットへ変換される。前記変換モジュールは、以下の構成を含む:前記データファイルの各々を中間データフレームに変換する、ここで前記中間データフレームは、マルチメディアデータフレームまたは文字ベースのデータフレームを含む;前記中間データフレームを、1次関数を用いて行列のセットに変換する;及び行列のセットを変換されたRREFのセットに変換する。
【0023】
一連のデータファイルから変換された簡約化行列(RREF)のセットを含む変換モジュールを含むシステムを用いて一連のデータファイルを保護する方法であって、一連のデータファイルがRREFのセットにマッピングされ、当該方法は以下のステップを含む:変換モジュールを用いて、システムから変換されたデータファイルを取得し、変換されたデータファイルを変換されたRREFのセットに変換するステップ;変換モジュールを用いて、変換されたデータファイルを、変換されたRREFのセットにマッピングし、前記変換されたRREFのセットを訓練された人工ニューラルネットワーク(ANN)モジュールに供給するステップ;訓練されたANNモジュールを用いて、変換されたRREFのセットが悪質な動作を含むかどうかを識別するステップであって、変換されたRREFのセットが悪質な動作を含むと識別された場合、変換されたRREFのセットおよび変換されたデータファイルを、システムのメモリ内の仮想の安全な領域に移動させるステップ;バックプロパゲーションモジュールを用いて、RREFのセットから、変換された種々のRREFのセットを取得するステップ;クラスタリングモジュールを用いて、取得されたRREFの変換されたセットのバリエーションとRREFの変換されたセットとをクラスタリングし、悪質な動作を含むRREFのセットを識別するステップ;クラスタリングモジュールを用いて、悪質な動作を含むと識別されたRREFのセットを、訓練されたANNモジュールに供給するステップ、ここで訓練されたANNモジュールは、識別されたRREFのセットに関連する悪質な動作のタイプを識別するように構成される、クラスタリングモジュールを用いて、訓練済みのANNモジュールによって識別されたデータファイルに関連する悪質な動作のタイプに従って、悪質な動作を含む識別されたRREFのセットにマッピングされたデータファイルを保護するステップ。
【0024】
本発明の第二の実施態様によれば、変換されたデータファイルを変換されたRREFのセットに変換することは以下を含む:変換モジュールを用いて、データファイルを中間データフレームに変換すること、なおここで前記中間データフレームはマルチメディアデータフレームまたは文字ベースのデータフレームを含む:変換モジュールを用いて、中間データフレームを1次関数により、行列のセットに変換し、変換モジュールを用いて、行列のセットを変換されたRREFのセットに変換すること。
【0025】
本発明の第二の実施態様によれば、本発明の方法は以下のステップをさらに含む:クラスタリングモジュールを用いて、悪質な動作を含まないRREFのセットを変換モジュールに供給し、ここで変換モジュールは、供給されたRREFのセットをデータファイルに変換し、データファイルをRREFのセットにマッピングする。
【0026】
本発明の第二の実施態様によれば、変換された種々のRREFのセットは、異なるタイムスタンプを有するRREFのセットを含む。
【0027】
本発明の第二の実施態様によれば、一連のデータファイルのRREFのセットへのマッピング、および変換されたデータファイルの変換されたRREFのセットへのマッピングは、各データファイル又は変換された各データファイルに対して、データファイルのアドレスおよびデータファイルのコンテキストメタデータレイヤーにハッシュ関数を適用し、ハッシュ関数の結果を用いて各データファイルをRREFのセットに結び付けることで行われる。
【0028】
本発明の第二の実施態様によれば、本方法は、悪質な動作を含むRREFのセットに基づいて、ANNモジュール内のニューラルネットワークをさらに訓練するステップ含む。
【0029】
本発明の第二の実施態様によれば、変換モジュールを用いた一連のデータファイルのRREFのセットへの変換は以下のステップを含む:前記変換モジュールを用いて、前記変換されたデータファイルを中間データフレームに変換するステップ、ここで前記中間データフレームは、マルチメディアデータフレームまたは文字ベースのデータフレームを含み:前記変換モジュールを用いて、中間データフレームを、1次関数を用いて行列のセットに変換するステップ;及び変換モジュールを用いて、行列のセットを、変換されたRREFのセットに変換するステップ
【図面の簡単な説明】
【0030】
上記及びその他の解決すべき課題は、発明の詳細な説明及び以下の図面に記載される本発明のシステムおよび方法によって解決される。
【0031】
【
図1】は、本発明の実施態様に従って、ホストマシン内のデータファイルを保護するためのシステムを示したブロック図である。
【0032】
【
図2】は、本発明の実施態様を実行するためのモジュールまたはデバイスの構成要素を示したブロック図である。
【0033】
【
図3】は、本発明の実施態様に従って、一連のデータファイルを簡約化行列(RREF)のセットに変換するフロー図を示す。
【0034】
【
図4】は、本発明の実施態様に従って、データファイルを保護するフロー図を示す。
【0035】
【
図5】は、本発明の実施態様に従って、データファイルから中間データフレームへの変換を示す図である。
【0036】
【
図6】は、本発明の実施態様に従って、中間ファイルから簡約化行列への変換を示す図である。
【発明を実施するための形態】
【0037】
本発明は、一連のデータファイルから選択されたデータファイルを保護するシステムおよび方法に関する。前記システムは、変換モジュール、人工ニューラルネットワーク(ANN)、クラスタリングモジュール、およびバックプロパゲーションモジュールを含み、これらのモジュールは、マルウェアまたは異常を含むデータファイルを識別するように構成される。このようなデータファイルが検出されると、システムは、検出されたマルウェアと同様に感染している可能性のある他のデータファイルを検出するための一連の測定を開始する。これらのデータファイルは、マルウェアがホストマシンおよび/またはホストマシンに接続されているストレージ/周辺機器に影響を与えないように保護される。
【0038】
特に、一連のデータファイルから変換された簡約化行列(RREF)を含む変換モジュールであって、一連のデータファイルがRREFにマッピングされた変換モジュールは、以下のように構成される:システムから変換されたデータファイルを取得し、変換されたデータファイルをRREFに変換する。変換されたデータファイルは、変換されたRREFのセットにマッピングされ、訓練された人工ニューラルネットワーク(ANN)モジュールに供給される。変換されたRREFのセットを受け取ると、訓練されたANNモジュールは、変換されたRREFのセットが悪質な動作を含むかどうかを識別し、変換されたRREFのセットが悪質な動作を含むと識別されると、変換されたRREFのセットと変換されたデータファイルは、システムのメモリ内の仮想の安全な領域へ移される。クラスタリングモジュールは、バックプロパゲーションモジュールを用いて、RREFのセットから種々の変換されたRREFのセットを取得し、取得された種々のRREFのセットと安全な領域内の変換されたRREFのセットをクラスタリングして、悪質な動作を含むRREFのセットを識別する。悪質な動作を含むRREFのセットは、訓練されたANNモジュールに供給され、悪質な動作を含むRREFのセットにマッピングされたデータファイルが保護される。
【0039】
以下、本発明を、添付の図面に示された実施態様を用いて詳細に説明する。以下の説明では、本発明の実施態様の十分な理解を与えるために、多数の具体的な態様を示す。しかしながら、当業者であれば、具体的態様の一部または全部が記載されていなくとも当該具体的な態様を実施することができることは明らかである。そのような実施態様も本発明の範囲内に含まれる。さらに、以下の特定のプロセス、ステップおよび/または構造は、本明細書に詳細に記載されていない場合があるが、この場合、対応する引用文献を参照することで実施可能である。
【0040】
加えて当業者であれば、本明細書中の多くの機能ユニットが、モジュールとして記載されていることを理解するであろう。また当業者であれば、モジュールは、回路、ロジックチップ、または任意の構成要素であることを認識するであろう。さらに、当業者であれば、モジュールは、様々なプロセッサアーキテクチャによって実行することができるソフトウェアであることも認識するであろう。本発明の実施態様によれば、モジュールは、コンピュータ命令、ファームウェア、または受け取った命令に基づいて一連のイベントを実行するようコンピュータプロセッサに指示する実行可能なコードを含む。モジュールの選択は、設計上の選択として当業者に委ねられており、本発明の範囲を何ら限定するものではない。
【0041】
本発明の実施態様に従ってデータファイルを保護するための例示的なプロセスまたは方法を、以下のステップで説明する。
【0042】
ステップ1:変換モジュールを用いて、システムから変換されたデータファイルを取得し、当該データファイルをRREFのセットに変換する;変換されたデータファイルを変換されたRREFのセットにマッピングし、変換されたRREFのセットを学習済み人工ニューラルネットワーク(ANN)に供給する、ここで変換モジュールは、一連のデータファイルから変換された簡約化行列(RREF)のセットを含み、加えて一連のデータファイルがRREFのセットにマッピングされる。
【0043】
ステップ2:訓練されたANNモジュールを用いて、変換されたRREFのセットが悪質な動作を含むかどうかを識別し、これにより、変換されたRREFのセットが悪質な動作を含むと識別された場合、変換されたRREFのセットと変換されたデータファイルは、システムのメモリ内の仮想の安全な領域に移される。
【0044】
ステップ3:バックプロパゲーションモジュールを用いて、RREFのセットから、変換された種々のRREFのセットを取得する。
【0045】
ステップ4:クラスタリングモジュールを用いて、取得された種々の変換されたRREFのセット及び変換されたRREFのセットをクラスタリングし、悪質な動作を含むRREFのセットを検出する。
【0046】
ステップ5:クラスタリングモジュールを用いて、悪質な動作を含むと検出されたRREFのセットを訓練されたANNモジュールに供給し、悪質な動作を含むと検出されたRREFのセットにマッピングされたデータファイルを保護する。
【0047】
本発明の実施態様によれば、上記のステップは、ホストマシンに通信可能に接続されたシステムまたはハードウェアモジュール(サブモジュールを含む)によって実行されてもよい。また、上記のステップは、ホストマシンおよび/または接続された周辺装置のいずれかに設けられたソフトウェアモジュールによって実行されてもよい。
【0048】
図1に、本発明の実施態様におけるホストマシン内のデータファイルを保護するシステムのブロックを示す。
【0049】
図1は、一般的にCPU102、キャッシュ104、メモリ106および/またはストレージ108を有する任意のハードウェアデバイスを含むホストマシン110を示す。ホストマシンには、コンピュータ、パーソナル電子デバイス、シンクライアント、および多機能デバイスが含まれるが、これらに限定されない。特に、集中管理型のメインフレーム、サーバ、またはデスクトップ型パーソナルコンピュータ(PC)を含むほぼあらゆる種類のコンピュータがホストマシンに含まれる。
【0050】
CPU102は、命令を処理することができる任意のデバイスまたは構成要素を含んでいてもよく、マイクロプロセッサ、マイクロコントローラ(MCU)、プログラマブルロジックデバイス、または他の計算装置を含んでいてもよい。CPU102は、入力信号を受信し、メモリ106に格納された命令に従って処理し、出力するための任意の適切な論理回路を有していてもよく、メモリアドレス空間を有するシングルコアまたはマルチコアプロセッサを含んでいていてもよい。さらに、メモリ106は、揮発性メモリおよび不揮発性メモリを含んでいてもよく、ストレージ108は、ソリッドステートデバイス(SSD)、ハードディスクドライブ(HDD)、光学ドライブ、または磁気ディスクドライブを含んでいてもよい。
【0051】
ホストマシン110は、CPU102とホストマシン110内の様々な電子部品との間のデータ通信を管理し、ホストマシン110とシステム120との間で交換されるデータを管理するために用いられる任意のマイクロチップを含んでいてもよいI/Oハブ(図示せず)を介して、システム120に通信可能に接続される。
【0052】
システム120は、データファイルを簡約化行列(RREF)に変換し、RREFをデータファイルに再構築するように構成された変換モジュール122と、訓練されたニューラルネットワークを構成する人工ニューラルネットワーク(ANN)モジュール124と、安全および安全でない揮発性メモリおよび不揮発性メモリを含むメモリ130と、データファイルおよび/または種々のRREFのセットを識別するように構成されるバックプロパゲーションモジュール126と、悪質な動作を含む可能性のあるRREFのクラスタを識別するためにRREFのクラスタを生成するように構成されるクラスタリングモジュール128を含む。当業者であれば、システム120は、本発明から逸脱することなく、追加の他のタイプのモジュールおよび/または構成要素を含むことが理解できる。
【0053】
本発明の実施態様によれば、初期設定の段階において、システム120は、ホストマシン110からデータファイル111の一部または全体、もしくは選択された部分を取得し、更にデータファイル111は、メモリ106またはストレージ108内に格納することができる任意のファイル、またはホストマシン110のモジュール間で内部通信されるか、またはホストマシン110のモジュールによって実行可能な任意のファイルを含んでいてもよい。チェックサムは、チェックサムを有するデータファイルから抽出され、この情報は、将来の使用のためにシステム120のメモリ130に格納される。
【0054】
一連のデータファイル111がホストマシン110より取得されるという想定の下、システム120は、各々のデータファイル111に、各種許可およびユーザー設定を関連付ける。データファイルの各々に関連付けられたメタデータが、関連付けられたファイルの真正性に関連する情報を含むことができるため、これらの設定は不可欠である。さらに、当該メタデータは、内部検証プロセスのための認証手段、例えば、PEMファイルのような証明書として使用することができる。
【0055】
次に、変換モジュール122は、各々のデータファイル(許可とユーザー設定により関連付けられたデータファイルを含む場合もあれば、関連付けられていないデータファイルを含む場合もある)の変換を行う。各データファイルは、最初に中間データフレームに変換され、その後、行列のセットへ変換される。本発明の実施態様によれば、中間データフレームは、画像ファイル形式を有するフレームを含むマルチメディアデータフレームを含んでいてもよく、文字ベースのデータフレームを含んでいてもよい。マルチメディアデータフレームの赤緑青(RGB)の性質を考慮すれば、それらを数値へ変換することは容易である。本発明の他の実施態様によれば、中間データフレームは、代わりに文字ベースのデータフレームで構成されてもよい。本発明のさらなる実施態様によれば、中間データフレームは、マルチメディアデータフレーム及びキャラクタベースデータフレームの両方を含んでいてもよい。
【0056】
中間データフレームは、それがマルチメディアであるか文字ベースのデータフレームであるかに関係なく、行列のセットに変換される。これは、データファイル502が変換プロセス506を通して行列のスナップショット504に変換される
図5に示されている。
図6は、行列のスナップショット604から数値の行列表現602への変換を示す。本発明の実施態様によれば、この変換は、所定のルックアップテーブルを用いて行われてもよく、それによって、中間データフレーム内の各英数字記号および/または文字および/または画素および/または色が、一意の番号および/または記号によって表されてもよい。次に、所定の行列生成アルゴリズムまたは関数が、ルックアップテーブルと共に使用されて、中間データフレームを行列のセットに変換することができる。本発明の他の実施態様によれば、中間データフレームを数値データフレームに変換するために、より複雑な数学関数を用いてもよく、当該数学関数は、シャッフル、回転、順序変換などの関数を含んでいてもよい。
【0057】
本発明のさらなる実施態様では、偏微分方程式関数を数値のルックアップテーブルと共に用いて、データを導出し、従量引数を用いてデータを暗号化することができる。従量引数は、データがパラメータ化およびセグメント化されるハッシュまたは暗号化キーを含んでいてもよい。
【0058】
各々の中間データフレームが行列のセットへ変換されると、変換モジュール122は、行列のセット(線形方程式で表すことができる)を簡約化行列(RREF)のセットにさらに変換する。行列のセットをRREFのセットに変換するこのステップは、変換プロセスがシステム120のみが知っている線形方程式の使用を含むため、データに暗号化のレイヤーを追加する。それにより、これらの線形方程式は、システム120のためのユニークな暗号化アルゴリズムとして機能することができる。
【0059】
一連のデータファイル111が変換モジュール122によって対応するRREFのセットに変換されると、各々のデータファイルはRREFのセットにマッピングされる。これはキー/値のペアリング関数またはキー/値のハッシュ関数を用いて行われるが、これに限定されない。ペアリングを生成するために使用された関数と作成されたマッピングは、RREFのセットとともにメモリ130に安全に格納される。
【0060】
本発明の別の実施態様では、データファイルのメタデータおよび/またはデータファイルのアドレスにハッシュ関数を適用することができる。ハッシュ関数の結果は、データファイルを対応するRREFのセットにマッピングするために使用される。ハッシュ関数でデータファイルのメタデータ補足レイヤーを使用することにより、データファイルのアドレスが検証されるだけでなく、参照されるメタデータも検証されるため、マッピング関数にユニークな特性が追加される。
【0061】
本発明の実施態様によれば、ハッシュ関数は、自然言語処理(NLP)アルゴリズム及びキー/値のバインド関数の組み合わせを含んでいてもよい。NLPアルゴリズムは、文脈メタデータを処理し、情報を半構造化し、特定のキーアドレスに格納するように構成される。これにより、(マッピング関数の)検索アルゴリズムが改善され、データフレームの位置を特定するタスクがデータファイルのチェックサムの検証とともに生成される可能性のある適切なキーをシステムが検索するため、複雑性の値が0(1)に設定される。その結果、このキーはシステム内で一意に定義される。
【0062】
従来のオペレーティングシステムにおいては、データファイルは単にホストマシンの16進数のメモリアドレスに格納され、データファイルの場所を特定するためにポインタが使用されるため、このステップは重要である。当該ポインタがマルウェアによって破損された場合、データファイルはホストマシンから取得できなくなるため、事実上使用できなくなる。システム120は、一連のデータファイル111の変換においてホストマシン110を継続的に監視する。
【0063】
本発明の実施態様では、システム120がホストマシン110内の改ざんされたデータファイルを検出すると、システム120はホストマシン110から改ざんされたデータファイルを取得するように動作する。本発明の実施態様によれば、システム120は、改ざんされたデータファイルのチェックサムを検証して、改ざんされたデータファイルが不正なユーザーによって改ざんされたかどうかを識別する。改ざんされたデータファイルに、破損したチェックサムまたは不一致のチェックサムが含まれている場合、当該改ざんされたデータファイルは安全な領域に移される。しかし、悪質な第三者は、チェックサムが変換されないようにしながらデータファイルを変換する方法を発見する。したがって、変換されたデータファイルはシステム120によってさらに処理される必要がある。
【0064】
変換モジュール122を用いて取得された変換されたデータファイルは、RREFの変換されたセットに変換される。本発明の実施態様においては、最初に変換されたデータファイルを中間データフレームへ変換してから、行列のセットに変換することによって行うことができる。次に、当該行列のセットは、数学的演算を用いて、対応する変換されたRREFのセットに変換される。変換モジュール122は次に、変換されたデータファイルを変換されたRREFのセットにマッピングし、このマッピングをメモリ130に安全に格納する。変換されたRREFのセットは、次に、訓練された人工ニューラルネットワーク(ANN)モジュール124に供給される。
【0065】
本発明の他の実施態様では、データファイルが修正または変換された時、変換されたデータファイルを変換されたRREFのセットに変換するために使用された多項式の平方根を用いて、変換されたRREFのセットを変換および/または変換された数値を識別することができる。変換されたRREFのセットの数字が多項式のルートの乗数を構成する場合、それはデータファイルが破損していないことを意味する。逆に、変換されたRREFのセットの数字が多項式のルートの乗数を構成していない場合、それはデータファイルが破損していることを意味する。
【0066】
本発明の実施態様において、ANNは、66から200の間の隠れ層を有するニューラルネットワークを含んでいてもよい。ANNは、教師なし学習方法を用いて初期訓練され、訓練のデータセットは、既知のマルウェア、侵害、および/またはサイバー攻撃に関連するRREFのセット、および/またはマルウェアに関連しないRREFのセットを含む。RREFのセットは、リード/ライト操作、メタデータ、アクセスレベルスレッド、ハードウェア固有の識別ID、消費されたメモリ、I/Oバースト、物理アドレスまたはソフトウェアチェックサムなどのそれぞれの特性に従って、それぞれのタイムフレームと共にラベル付けされることがあるが、これらに限定されない。ANNは教師なし学習方法を用いて訓練されるため、訓練されたANNは、脅威が検出される度に、新しい訓練を行う。本発明のさらなる実施態様において、ANNは、特定のタイプの悪意ある攻撃によってばらばらになっているRREFのセットのパラメータを検出するように訓練されることがある。これらのパラメータが検出され、悪質な攻撃と関連付けられると、訓練されたANNは、将来そのような攻撃を検出できるようになる。
【0067】
本発明のさらなる実施態様では、ANNのニューラルアーキテクチャは、既知のウイルスタイプの100の重要なカテゴリーの訓練サンプルデータを用いて設計される。影響を受ける特徴は、入力ノードの数、隠れ層の数、および各々の隠れ層のノードの数に基づいて特定される。ANNの訓練率は、開始時に0.01の値でパラメトリック化され、その後バッチサイズを1000として徐々に増加させた。エポック数は500から開始し、バッチサイズ800、エポック数250で最適な結果が得られることが判明した。
【0068】
次に、訓練済みのANNモジュール124は、訓練済みのANNを用いて、変換されたRREFのセットに悪質な動作が含まれているかどうかを識別する。訓練済みのANNが、変換されたRREFのセットにマルウェアが含まれていないと判別した場合、ANNモジュール124は、次に、変換モジュール122に、変換されたRREFのセットを元のデータファイルに再構成させ、それを安全なファイルとしてマークさせる。これらの安全なデータファイルは、データファイル112としてホストマシン110に戻され、マッピングはメモリ130に格納される。
【0069】
本発明の実施態様では、訓練済みのANNが、変換されたRREFのセットが悪質な動作から構成されると判定した場合、変換されたRREFのセットは、そのマッピングされた変換データファイルとともに、メモリ130内の仮想の安全な領域に移される。本発明の実施態様では、この仮想の安全な領域は、メモリ130内の仮想のサンドボックスであってもよい。
【0070】
クラスタリングモジュール128は、次に、バックプロパゲーションモジュール126を用いて、メモリ130から種々の変換されたRREFのセットを取得するように構成される。本発明の実施態様では、これらのバリエーションは、一連の過去のタイムフレームにわたる変換されたRREFのセット、または非常に類似した値および/または数値配置を有するRREFのセットを含んでいてもよい。
【0071】
クラスタリングモジュール128は次に、変換されたRREFの種々のセットを、メモリ130内の仮想の安全な領域に追加する。次に、種々の変換されたRREFのセットが、変換されたRREFのセットとともにクラスタリングされる。本発明の実施態様では、k平均クラスタリング関数を用いて、これらのRREFをクラスタリングする。
【0072】
クラスタリングモジュール128は、次に、悪質な動作を有すると識別されたRREFの変換されたセットに関連するRREFのセットを特定する。以前に識別されなかったこれらRREFのセットは、潜在的に悪質な動作を構成する可能性のあるRREFのセットとしてフラグが立てられ、その後、ホストマシン110によって不用意にインストールまたは実行されないように、システム120によって保護される。変換されたRREFのセットに関連しないRREFのセットは、対応するマッピングされたデータファイルとともに、安全なファイルとして分類される。
【0073】
本発明の実施態様によれば、悪質な動作を有すると識別されたRREFのセットは、クラスタリングモジュール128によって訓練済みのANNモジュール124に供給される。本発明の実施態様によれば、この情報は、ANNモジュール124の訓練済みのANNをさらに訓練するために利用され、将来、このような類似のマルウェアをよりよく理解し、識別できるようにする。本発明の別の実施態様によれば、訓練済みのANNモジュール124は、RREFのセットに関連する悪質な動作および/またはマルウェアのタイプを識別するために使用される。この情報は、次にクラスタリングモジュール128に供給され、モジュール128は、これらのRREFのセットに対応するデータファイルを保護するために、そのアプローチを調整する。例えば、訓練されたANNモジュール124が、バックドア攻撃の以前に発見されていないクRREFラスタを識別した場合、訓練されたANNモジュール124は、この情報をクラスタリングモジュール128に供給する。この情報を受け取ると、クラスタリングモジュール128は(それ自体で、またはシステム120の他のモジュールと共に)、RREFのクラスタに関連するデータファイルに関連するすべての着信データ送信を無効にして、バックドア攻撃が行われるのを防ぐことができる。
【0074】
本発明の別の実施態様によれば、ANNモジュール124は、悪質な動作に関連していることが判明したRREFの最下位ビットを保護するロック/キー機構を誘導して、これらのRREFが悪質な第三者によって容易に変換されないようにし、対応するデータファイルの脆弱性を無効にする。
【0075】
本発明の実施態様を実施するためのモジュールのいずれかの中に供給され得る処理システム200の構成要素の代表的なブロックを
図2に示す。当業者であれば、これらのモジュール内に供給される各処理システムの厳密な構成は異なってもよく、
図2は例示としてのみ供給されることが当然理解できる。
【0076】
本発明の実施態様によれば、各モジュールは、コントローラ201およびユーザインターフェース202を含んでいてもよい。ユーザインターフェース202は、必要に応じて、ユーザーとこれらのモジュールとの間に手動の指令を可能にするように配置され、ユーザーがこれらのモジュールの各々に指示を入力するために必要な入出力の構成を含む。当業者であれば、ユーザインターフェース202の構成は、実施態様によって異なるが、典型的には、ディスプレイ240、キーボード235、およびトラックパッド236のうちの1つ以上を含むか、あるいは逆に、これらの構成のいずれも含まなくてもよいと当然理解できる。
【0077】
コントローラ201は、バス215を介してユーザインターフェース202とデータ通信を行い、メモリ220と、本実施態様の方法を実行するための命令およびデータを処理する回路基板上に組み込まれたプロセッサ205と、オペレーティングシステム206と、ユーザインターフェース202と通信するための入出力(I/O)インターフェース230と、ネットワークカード250の形態の通信インターフェースとを含む。ネットワークカード250は、例えば、有線または無線ネットワークを介してこれらのモジュールから他の処理装置へデータを送信するため、または有線または無線ネットワークを介してデータを受信するために利用することができる。ネットワークカード250によって利用可能な無線ネットワークには、ワイヤレスフィデリティ(Wi-Fi)、ブルートゥース(登録商標)、近距離無線通信(NFC)、セルラーネットワーク、衛星ネットワーク、電気通信ネットワーク、広域ネットワーク(WAN)等が含まれるが、これらに限定されない。
【0078】
メモリ220およびオペレーティングシステム206は、バス210を介してCPU205とデータ通信を行う。メモリは、揮発性メモリと不揮発性メモリの両方を含み、ランダムアクセスメモリ(RAM)223、リードオンリメモリ(ROM)225、およびストレージメモリ(図示せず)を含む各タイプのメモリを1つ以上含み、最後のものは1つ以上のソリッドステートドライブ(SSD)で構成される。メモリ220は、秘密鍵(プライベート鍵)を安全に格納するための安全なストレージ246も含む。当業者であれば、上述したメモリは、非一過性のコンピュータ可読媒体を含み、一過性の伝搬信号を除くすべてのコンピュータ可読媒体を含むものと認識することができる。典型的に命令は、メモリにプログラムコードとして格納されるが、ハードワイヤードすることもできる。メモリ220は、揮発性メモリまたは不揮発性メモリのいずれかに格納可能なソフトウェアアプリケーションのようなカーネルおよび/またはプログラミングモジュールを含んでいてもよい。
【0079】
ここで、「プロセッサ」という用語は、そのような命令を処理することができる任意のデバイスまたは構成要素を一般的に指すために使用され、マイクロプロセッサ、マイクロコントローラ、プログラマブルロジックデバイス、または他の計算装置を含んでいてもよい。すなわち、プロセッサ205は、入力信号を受信し、メモリに記憶された命令に従って処理され、(例えば、メモリまたはディスプレイ240上への)出力を生成するための任意の適切なロジック回路によって供給されてもよい。本実施態様によれば、プロセッサ205は、メモリアドレス可能空間を有するシングルコアまたはマルチコアプロセッサであってよい。ある実施態様によれば、プロセッサ205は、例えば8コアCPUを含むマルチコアであってもよい。別の実施態様では、計算を加速するために並列に動作するCPUコアのクラスタであってもよい。
【0080】
図3は、本発明の実施態様に従って、ホストマシンより取得された一連のデータファイルを、対応するRREFのセットにマッピングするためのプロセス300を示し、プロセス300はシステム120に組み込まれていてもよい。システム120はホストマシン110に通信可能に接続され、システム120がホストマシン110のバスシステム上で伝送される、またはホストマシン110のメモリに格納されるすべてのデータを捕捉できると仮定する。
【0081】
プロセス300は、ステップ302において、ホストマシン内に格納されている、またはホストマシンにより送信/受信されている一連のデータファイルからデータファイルを選択することから始まる。次に、プロセス300は、ステップ304において、データファイルをRREFのセットに変換する。ステップ306において、プロセス300は、RREFのセットを記憶し、RREFのセットをデータファイルにマッピングする。
【0082】
プロセス300は次に、ステップ308で別のデータファイルを選択する。次に、ステップ310において、データファイルは、RREFの別のセットに変換される。ステップ312において、プロセス300は、RREFの別のセットを記憶し、RREFのセットを別のデータファイルにマッピングする。その後、プロセス300はステップ308に進む。別のデータファイルを選択し、データファイルを変換し、データファイルをマッピングする工程314は、一連のデータファイルのすべてのデータファイルが工程300によって処理されるまで繰り返される。その後、プロセス300は終了する。
【0083】
図4は、プロセス400がシステム120内のモジュールにより実施される、本発明の実施態様に従ってホストマシンから取得されたデータファイルを保護するためのプロセス400を示す。プロセス400はステップ402から始まり、プロセス400によって変換されたデータファイル、すなわち最初のデータファイルがホストマシンより取得される。この変換されたデータファイルは、(
図3で説明したように)プロセス300によって以前に記憶され処理された種々のデータファイルを含んでいてもよい。次に、プロセス400は、ステップ404において、第一のデータファイルを第一のRREFのセットに変換する。ステップ406において、プロセス400は、RREFの最初のセットがマルウェアまたは悪質な動作含むかどうかを検出する。プロセス400が、RREFの最初のセットがマルウェアを含まないと検出した場合、プロセス400はステップ408へ進み、第一のデータファイルとそれに対応するRREFのセットが、対応するマッピングとともに格納される。
【0084】
逆に、ステップ406において、プロセス400は、RREFの最初のセットが悪質な動作に関連していると判定した場合、ステップ410に進む。ステップ410において、RREFの最初のセットは、そのマッピングされた最初のデータファイルとともに、仮想の安全な領域に移される。プロセス400は次に、ステップ412で、メモリから種々のRREFの最初のセットを取得する。次に、プロセス400によって、RREFの最初のセットとともに、種々のRREFの最初のセットがクラスタリングされる。これはステップ414で行われる。ステップ414で行われたクラスタリングの結果に基づき、ステップ416において、プロセス400は、悪質な動作を含む種々のRREFの最初のセット(以前は安全であると考えられていた)を検出し、また、悪質な動作を含まない種々のRREFの最初のセットバリエーションを検出する。次に、ステップ418で、プロセス400によって、悪質な動作を含まないRREFの最初のセットに基づいて、最初のデータファイルが復元される。ステップ420で、悪質な動作を含む種々のRREFの最初のセットは、前記において説明したように、さらなる処理のために、プロセス400によって訓練されたANNに供給される。
【0085】
当業者が実施可能な範囲で、本明細書に具体的に開示された実施態様の一部を変換、置換、変形および修正することはすべて、添付の特許請求の範囲に含まれるものとする。