図面 (/)

技術 ソリッドステートドライブ、これに対する重要動作を認証する方法、及び認証システム

出願人 三星電子株式会社
発明者 グネスワラ,マリピディアジット,ヤガティスブラマニャム,バラナシビッシュワナス,マラム
出願日 2017年8月16日 (3年8ヶ月経過) 出願番号 2017-157192
公開日 2018年3月15日 (3年1ヶ月経過) 公開番号 2018-041448
状態 特許登録済
技術分野 外部記憶装置との入出力 記憶装置の機密保護 オンライン・システムの機密保護
主要キーワード 不揮発性ストレージ媒体 装置ドライバー スーパーユーザー 多重サーバ 独立体 動作識別子 管理ユーザー エンコーディングスキーム
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2018年3月15日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (7)

課題

ソリッドステートドライブに対する重要動作を認証するためのシステム及び方法を提供する。

解決手段

方法は、ソリッドステートドライブへの動作命令及び保安資格を受信する段階と、保安資格及び保安資格に基づいてエンコーディングされ、ソリッドステートドライブに格納される保安認証書を含む非同期式イベントをソリッドステートドライブにおいて認証エージェント発行する段階と、保安資格及び保安認証書を認証エージェントから認証サーバーに伝達する段階と、認証サーバーにおいて保安資格に基づいて保安認証書の有効性を確認する段階と、有効性確認応答を認証サーバーから認証エージェントに提供する段階と、有効性確認応答を認証エージェントからソリッドステートドライブに伝達する段階と、有効性確認応答に基づいて動作命令を実行する段階と、を含む。

概要

背景

ソリッドステートドライブ管理目的に使用される命令集合支援する。このような管理命令の中の一部は本質的に破壊的であり(disruptive)、復旧できないデータ損失惹起する。このような破壊的な命令の例示はフォーマット命令ネームスペース削除命令ファームウェアアップデート命令等である。フォーマット命令はソリッドステートドライブ上の論理ブロックアドレス(logical block addresses、LBAs)を解除し、論理ブロックアドレスのコンテンツ消去する。ネームスペース削除命令は命令内の特定のネームスペースと関連された論理ブロックアドレスを解除する。ファームウェアアップデート命令はソリッドステートドライブ上の動作ファームウェアアップデートする。

このような破壊的な管理命令はルート権限(root privileges)を有するユーザーによってのみに実行される。一般的に、ルート権限は管理命令の有効性を確認するために利用可能である唯一保安階層(security layer)である。図1は管理命令を実行するための従来技術の認証スキーム100を図示する。管理命令111は命令ラインユーティリティープログラム(command line utility program)の命令ラインインターフェイス(command line interface、CLI)又はホストオペレーティングシステム(host operating system、host OS)110からのアプリケーションを利用してソリッドステートドライブ130へ発行される。命令ラインユーティリティー又はアプリケーションはホストオペレーティングシステム110のユーザー空間(user space)において実行される。管理命令111はソリッドステートドライブ130の制御及び動作を管理する装置ドライバー120に送られる。装置ドライバー120はホストオペレーティングシステム110のカーネル(kernel)空間又はユーザー空間において実行される。装置ドライバー120はソリッドステートドライブ130のファームウェアに管理命令111を伝達する。ソリッドステートドライブファームウェアは管理命令111によって指示された通りにソリッドステートドライブ130上の実際動作を遂行する。管理命令111が完了すれば、ソリッドステートドライブファームウェアは装置ドライバー120に応答121(例えば、成功又は失敗)を返信する。その次に装置ドライバー120は応答121を管理命令111が発行されたホストオペレーティングシステム110に返信する。

伝統的に、ルート権限があるユーザー(root−privileged user)のみが重要動作命令を開始できる。ルート権限が損傷されれば、このような重要動作命令は復旧できないデータ損失を惹起する。図1の従来技術の認証スキーム100は命令が既に認証され、必要である許可(permissions)を有すると仮定する。このような管理命令は普通‘‘権限がある’’動作として構成される。ホストオペレーティングシステム110の実行環境(runtime environment)は命令を実行するために適切な権限(例えば、スーパーユーザー(super−user))を確認する。従来技術の認証スキーム100は、ユーザー資格(user credentials)が損傷されれば、悪意のある意図(malicious intent)により発行された破壊的な命令を中断する予防メカニズムを有さないので、脆弱である。ソリッドステートドライブ130は発行された命令が意図されたものであることを保障する何らかのメカニズムも有さない。ソリッドステートドライブ130に発行された損傷された管理命令はソリッドステートドライブ130上の永久的で、取り返しのつかないデータ損失を惹起する。

正当な(legitimate)ユーザーがミスによって管理コマンドを思いがけず実行する場合がある。この場合、ソリッドステートドライブ130は破壊的な動作が確実に意図された動作であることを保障する何らかのレベルの確認も有さない。例えば、正当であるが、意図しない管理命令は数多くのソリッドステートドライブがクラスター(cluster)内の多重サーバー上に配置される大きなセットアップ(setups)により思いがけず発行されることがある。

概要

ソリッドステートドライブに対する重要動作を認証するためのシステム及び方法を提供する。方法は、ソリッドステートドライブへの動作命令及び保安資格を受信する段階と、保安資格及び保安資格に基づいてエンコーディングされ、ソリッドステートドライブに格納される保安認証書を含む非同期式イベントをソリッドステートドライブにおいて認証エージェントに発行する段階と、保安資格及び保安認証書を認証エージェントから認証サーバーに伝達する段階と、認証サーバーにおいて保安資格に基づいて保安認証書の有効性を確認する段階と、有効性確認応答を認証サーバーから認証エージェントに提供する段階と、有効性確認応答を認証エージェントからソリッドステートドライブに伝達する段階と、有効性確認応答に基づいて動作命令を実行する段階と、を含む。

目的

本発明は上述した技術的課題を解決するためであって、本発明の目的はソリッドステートドライブに対する重要動作を認証する方法、ソリッドステートドライブ、及び認証システムを提供する

効果

実績

技術文献被引用数
0件
牽制数
0件

この技術が所属する分野

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

ソリッドステートドライブに対する重要動作を認証する方法であって、ソリッドステートドライブへの動作命令及び保安資格(securitycredential)を受信する段階と、前記保安資格及び前記保安資格に基づいてエンコーディングされ、前記ソリッドステートドライブに格納される保安認証書(securitycertificate)を含む非同期式イベントを前記ソリッドステートドライブにおいて認証エージェント(authenticationagent)に発行する段階と、前記保安資格及び前記保安認証書を前記認証エージェントから認証サーバーに伝達する段階と、前記認証サーバーにおいて前記保安資格に基づいて前記保安認証書の有効性を確認する段階と、有効性確認応答を前記認証サーバーから前記認証エージェントに提供する段階と、前記有効性確認応答を前記認証エージェントから前記ソリッドステートドライブに伝達する段階と、前記有効性確認応答に基づいて前記動作命令を実行する段階と、を含むことを特徴とする方法。

請求項2

前記保安資格は、パスフレーズ(passphrase)であることを特徴とする請求項1に記載の方法。

請求項3

前記認証エージェントは、前記ソリッドステートドライブが連結されたホストコンピュータ上において実行されるサービスであることを特徴とする請求項1に記載の方法。

請求項4

前記ホストコンピュータの装置ドライバーは、前記動作命令を受信し、前記ソリッドステートドライブの制御及び動作を管理することを特徴とする請求項3に記載の方法。

請求項5

複数のソリッドステートドライブは、ホストコンピュータに連結され、一連の非同期式イベントを前記複数のソリッドステートドライブから前記認証エージェントに発行する段階をさらに含むことを特徴とする請求項1に記載の方法。

請求項6

保安スキーム(securityscheme)を利用して前記認証エージェント及び前記認証サーバーの間の保安通信チャンネルを設定する段階をさらに含み、前記保安スキームは、保安ソケット階層(securesocketslayer、SSL)又は伝送階層保安(transportlayersecurity、TLS)であることを特徴とする請求項1に記載の方法。

請求項7

前記有効性確認応答は、入出力制御(I/Ocontrol、IOCTL)呼出を通じて前記認証サーバーから前記認証エージェントに提供されることを特徴とする請求項1に記載の方法。

請求項8

前記ソリッドステートドライブは、イーサーネット登録商標ネットワークに直接連結可能なイーサーネット(登録商標)ソリッドステートドライブであることを特徴とする請求項1に記載の方法。

請求項9

前記認証サーバーは、重要動作を前記ソリッドステートドライブに通知し、重要動作検査器は、前記重要動作のみに対して非同期式イベントを前記認証エージェントに発行することを特徴とする請求項1に記載の方法。

請求項10

前記動作命令は、ネットワークに連結されたソリッドステートドライブのネームスペースに対するフォーマット命令削除命令、生成命令、及びサイズ変更命令の中の1つであることを特徴とする請求項1に記載の方法。

請求項11

前記認証サーバーのデータベースにおいて管理者(administrator)から受信された第2番目の保安資格を格納する段階と、初期化の間に前記認証エージェントによって前記ソリッドステートドライブの識別番号(identificationnumber、IDnumber)をスキャンする段階と、前記認証エージェントから前記認証サーバーに前記ソリッドステートドライブの前記識別番号を提供する段階と、前記認証サーバーにおいて前記管理者から受信された前記第2番目の保安資格に基づいて前記保安認証書を生成する段階と、前記保安認証書を前記認証エージェントに提供する段階と、前記保安認証書を前記ソリッドステートドライブに格納する段階と、をさらに含むことを特徴とする請求項1に記載の方法。

請求項12

ユーザーからソリッドステートドライブへの動作命令を受信する段階と、前記ユーザーにチャレンジ質問提示する段階と、前記チャレンジ質問に対するユーザー提供答弁を受信する段階と、前記ユーザー提供答弁と前記ユーザーと連関された前記チャレンジ質問に対する答弁とを比較する段階と、前記ユーザー提供答弁及び前記ユーザーと連関された前記チャレンジ質問に対する前記答弁の間に比較結果に基づいて前記動作命令を実行する段階と、を含むことを特徴とする方法。

請求項13

前記ユーザーに対する識別子を含む非同期式イベントを認証エージェントに発行する段階と、保安資格を前記認証エージェントにおいて認証サーバーに伝達する段階と、前記チャレンジ質問を前記認証サーバーにおいて前記認証エージェント及び前記ソリッドステートドライブに提供する段階と、をさらに含むことを特徴とする請求項12に記載の方法。

請求項14

前記ユーザー提供答弁を含む第2番目の非同期式イベントを前記認証エージェントに発行する段階と、前記ユーザー提供答弁を前記認証エージェントから前記認証サーバーに伝達する段階と、前記ユーザー提供答弁と前記認証サーバーに格納された検証答弁とを比較して前記ユーザー提供答弁の有効性を確認する段階と、有効性確認応答を前記認証サーバーから前記認証エージェントに提供する段階と、前記有効性確認応答を前記認証エージェントから前記ソリッドステートドライブに伝達する段階と、前記有効性確認応答に基づいて前記動作命令を実行する段階と、をさらに含むことを特徴とする請求項13に記載の方法。

請求項15

1つ以上の不揮発性メモリ装置と、ホストコンピュータへのインターフェイスと、ファームウェアドライバーと、を含み、前記ファームウェアドライバーは、前記インターフェイスを通じて動作命令及び保安資格を受信し、前記保安資格及び保安認証書を含む非同期式イベントを認証エージェントに発行し、前記認証エージェントから有効性確認応答を受信し、前記有効性確認応答に基づいて前記動作命令を実行し、前記保安認証書は、前記保安資格に基づいてエンコーディングされ、ソリッドステートドライブに格納されることを特徴とするソリッドステートドライブ。

請求項16

前記認証エージェントは、前記保安資格及び前記保安認証書を認証サーバーに伝達し、前記認証サーバーは、前記認証サーバーのデータベースに格納された第2番目の保安資格に基づいて前記保安認証書の有効性を確認し、前記有効性確認応答を生成することを特徴とする請求項15に記載のソリッドステートドライブ。

請求項17

イーサーネット(登録商標)ネットワークに直接連結可能なイーサーネット(登録商標)ソリッドステートドライブであることを特徴とする請求項15に記載のソリッドステートドライブ。

請求項18

前記動作命令は、ネットワークに連結されたソリッドステートドライブのネームスペースに対するフォーマット命令、削除命令、生成命令、及びサイズ変更命令の中の1つであることを特徴とする請求項15に記載のソリッドステートドライブ。

請求項19

前記ファームウェアドライバーは、前記認証エージェントから初期化要請を受信し、前記初期化要請に応答して識別番号を前記認証エージェントに提供し、前記認証エージェントから前記保安認証書を受信し、メタデータとして前記ソリッドステートドライブに前記保安認証書を格納することを特徴とする請求項15に記載のソリッドステートドライブ。

請求項20

認証サーバーと、認証エージェントが実行されるホストコンピュータと、複数のソリッドステートドライブと、を含み、前記認証エージェントは、初期化の間に前記認証サーバーとの保安通信チャンネルを設定し、前記複数のソリッドステートドライブの各々は、ファームウェアドライバーを含み、前記ファームウェアドライバーは、前記ホストコンピュータにおいて実行される装置ドライバーを通じて動作命令及び保安資格を受信し、前記保安資格及び保安認証書を含む非同期式イベントを前記認証エージェントに発行し、前記保安認証書は、前記保安資格に基づいてエンコーディングされ、前記複数のソリッドステートドライブの各々に格納され、前記認証サーバーは、前記保安認証書の有効性を確認し、前記保安通信チャンネルを通じて有効性確認応答を前記認証エージェントに提供し、前記複数のソリッドステートドライブの各々の前記ファームウェアドライバーは、前記有効性確認応答に基づいて前記動作命令を実行することを特徴とする認証システム

請求項21

前記ファームウェアドライバーは、前記認証エージェントから初期化要請を受信し、前記初期化要請に応答して識別番号を前記認証エージェントに提供し、前記認証エージェントから前記保安認証書を受信し、メタデータとして前記ソリッドステートドライブに前記保安認証書を格納することを特徴とする請求項20に記載の認証システム。

請求項22

前記複数のソリッドステートドライブの各々は、イーサーネット(登録商標)ネットワークに直接連結可能なイーサーネット(登録商標)ソリッドステートドライブであることを特徴とする請求項20に記載の認証システム。

請求項23

前記動作命令は、ネットワークに連結されたソリッドステートドライブのネームスペースに対するフォーマット命令、削除命令、生成命令、及びサイズ変更命令の中の1つであることを特徴とする請求項20に記載の認証システム。

請求項24

前記ソリッドステートドライブは、前記認証サーバーによって提供されるチャレンジ及び応答を処理することを特徴とする請求項20に記載の認証システム。

技術分野

0001

本発明は一般的なソリッドステートドライブ(solid−state drives、SSD)に係り、さらに詳細には、ソリッドステートドライブに対する重要(critical)動作を認証する方法、ソリッドステートドライブ、及び認証システムに関する。

背景技術

0002

ソリッドステートドライブは管理目的に使用される命令集合支援する。このような管理命令の中の一部は本質的に破壊的であり(disruptive)、復旧できないデータ損失惹起する。このような破壊的な命令の例示はフォーマット命令ネームスペース削除命令ファームウェアアップデート命令等である。フォーマット命令はソリッドステートドライブ上の論理ブロックアドレス(logical block addresses、LBAs)を解除し、論理ブロックアドレスのコンテンツ消去する。ネームスペース削除命令は命令内の特定のネームスペースと関連された論理ブロックアドレスを解除する。ファームウェアアップデート命令はソリッドステートドライブ上の動作ファームウェアアップデートする。

0003

このような破壊的な管理命令はルート権限(root privileges)を有するユーザーによってのみに実行される。一般的に、ルート権限は管理命令の有効性を確認するために利用可能である唯一保安階層(security layer)である。図1は管理命令を実行するための従来技術の認証スキーム100を図示する。管理命令111は命令ラインユーティリティープログラム(command line utility program)の命令ラインインターフェイス(command line interface、CLI)又はホストオペレーティングシステム(host operating system、host OS)110からのアプリケーションを利用してソリッドステートドライブ130へ発行される。命令ラインユーティリティー又はアプリケーションはホストオペレーティングシステム110のユーザー空間(user space)において実行される。管理命令111はソリッドステートドライブ130の制御及び動作を管理する装置ドライバー120に送られる。装置ドライバー120はホストオペレーティングシステム110のカーネル(kernel)空間又はユーザー空間において実行される。装置ドライバー120はソリッドステートドライブ130のファームウェアに管理命令111を伝達する。ソリッドステートドライブファームウェアは管理命令111によって指示された通りにソリッドステートドライブ130上の実際動作を遂行する。管理命令111が完了すれば、ソリッドステートドライブファームウェアは装置ドライバー120に応答121(例えば、成功又は失敗)を返信する。その次に装置ドライバー120は応答121を管理命令111が発行されたホストオペレーティングシステム110に返信する。

0004

伝統的に、ルート権限があるユーザー(root−privileged user)のみが重要動作命令を開始できる。ルート権限が損傷されれば、このような重要動作命令は復旧できないデータ損失を惹起する。図1の従来技術の認証スキーム100は命令が既に認証され、必要である許可(permissions)を有すると仮定する。このような管理命令は普通‘‘権限がある’’動作として構成される。ホストオペレーティングシステム110の実行環境(runtime environment)は命令を実行するために適切な権限(例えば、スーパーユーザー(super−user))を確認する。従来技術の認証スキーム100は、ユーザー資格(user credentials)が損傷されれば、悪意のある意図(malicious intent)により発行された破壊的な命令を中断する予防メカニズムを有さないので、脆弱である。ソリッドステートドライブ130は発行された命令が意図されたものであることを保障する何らかのメカニズムも有さない。ソリッドステートドライブ130に発行された損傷された管理命令はソリッドステートドライブ130上の永久的で、取り返しのつかないデータ損失を惹起する。

0005

正当な(legitimate)ユーザーがミスによって管理コマンドを思いがけず実行する場合がある。この場合、ソリッドステートドライブ130は破壊的な動作が確実に意図された動作であることを保障する何らかのレベルの確認も有さない。例えば、正当であるが、意図しない管理命令は数多くのソリッドステートドライブがクラスター(cluster)内の多重サーバー上に配置される大きなセットアップ(setups)により思いがけず発行されることがある。

先行技術

0006

米国特許第7,155,745号公報
米国特許第8,086,839号公報
米国特許第8,590,040号公報
米国特許第9,235,719号公報
米国特許公開第2008/0155680号明細書
米国特許公開第2013/0247222号明細書

発明が解決しようとする課題

0007

本発明は上述した技術的課題を解決するためであって、本発明の目的はソリッドステートドライブに対する重要動作を認証する方法、ソリッドステートドライブ、及び認証システムを提供することにある。

課題を解決するための手段

0008

一実施形態において、方法は、ソリッドステートドライブへの動作命令及び保安資格を受信する段階と、前記保安資格及び前記保安資格に基づいてエンコーディングされ、前記ソリッドステートドライブに格納される保安認証書を含む非同期式イベントを前記ソリッドステートドライブにおいて認証エージェントに発行する段階と、前記保安資格及び前記保安認証書を前記認証エージェントから認証サーバーに伝達する段階と、前記認証サーバーにおいて前記保安資格に基づいて前記保安認証書の有効性を確認する段階と、有効性確認応答を前記認証サーバーから前記認証エージェントに提供する段階と、前記有効性確認応答を前記認証エージェントから前記ソリッドステートドライブに伝達する段階と、前記有効性確認応答に基づいて前記動作命令を実行する段階と、を含む。

0009

他の実施形態において、方法は、ユーザーからソリッドステートドライブへの動作命令を受信する段階と、前記ユーザーにチャレンジ質問提示する段階と、前記チャレンジ質問に対するユーザー提供答弁を受信する段階と、前記ユーザー提供答弁と前記ユーザーと連関された前記チャレンジ質問に対する答弁とを比較する段階と、前記ユーザー提供答弁及び前記ユーザーと連関された前記チャレンジ質問に対する前記答弁の間に比較結果に基づいて前記動作命令を実行する段階と、を含む。

0010

他の実施形態において、ソリッドステートドライブは、1つ以上の不揮発性メモリ装置と、ホストコンピュータへのインターフェイスと、ファームウェアドライバーと、を含む。前記ファームウェアドライバーは、前記インターフェイスを通じて動作命令及び保安資格を受信し、前記保安資格及び保安認証書を含む非同期式イベントを認証エージェントに発行し、前記認証エージェントから有効性確認応答を受信し、前記有効性確認応答に基づいて前記動作命令を実行し、前記保安認証書は、前記保安資格に基づいてエンコーディングされ、ソリッドステートドライブに格納される。

0011

その他の実施形態において、認証システムは、認証サーバーと、認証エージェント(authentication agent)が実行されるホストコンピュータと、複数のソリッドステートドライブを含む。

0012

前記認証エージェントは初期化の間に前記認証サーバーとの保安通信チャンネルを設定する。前記複数のソリッドステートドライブの各々は、ファームウェアドライバーを含み、前記ファームウェアドライバーは、前記ホストコンピュータにおいて実行される装置ドライバーを通じて動作命令及び保安資格を受信し、
前記保安資格及び保安認証書を含む非同期式イベントを前記認証エージェントに発行し、
前記保安認証書は、前記保安資格に基づいてエンコーディングされ、前記複数のソリッドステートドライブの各々に格納され、
前記認証サーバーは、前記保安認証書の有効性を確認し、前記保安通信チャンネルを通じて有効性確認応答を前記認証エージェントに提供し、
前記複数のソリッドステートドライブの各々の前記ファームウェアドライバーは、前記有効性確認応答に基づいて前記動作命令を実行する。

0013

本発明は、具現及びイベントの組合せの多様な新規細部事項を含む上述した説明及び他の望ましい特徴を添付した図面を参照してより具体的に説明し、請求の範囲に記載する。本明細書において記述した特定システム及び方法は単なる例として示し、制限として示さないことが理解されるべきである。当業者が理解できるように、本明細書において説明する原理及び特徴は本発明の範囲を逸脱せずに多様であり、数多くの実施形態に適用できる。

発明の効果

0014

本発明の実施形態に係る方法、ソリッドステートドライブ、及び認証システムはソリッドステートドライブ上の重要動作のための装置レベルの認証を提供する。

図面の簡単な説明

0015

本明細書の一部分として含まれる添付図面は多様な実施形態を図示し、前述した一般的な説明及び後述する多様な実施形態の詳細な説明と共に本明細書において開示する原理を説明し、教示するために提供する。
管理命令を実行するための従来技術の認証スキームを図示する。
一実施形態において、重要動作命令の有効性を確認し、実行するための例示的な認証システムのブロック図を図示する。
一実施形態において、認証システムを初期化する例示的なプロセスを図示する。
一実施形態において、管理命令の有効性を確認するための例示的なプロセスを図示する。
他の実施形態において、管理命令の有効性を確認するための例示的なプロセスを図示する。
他の実施形態において、管理命令の有効性を確認するための例示的なプロセスを図示する。

0016

図面は比率に合うように示さず、類似の構造又は機能の構成要素は図面の全体にわたって例示的な目的のために類似の参照番号により一般的に表示する。図面は単なる本明細書に説明する多様な実施形態の説明を容易にするためであり、本明細書に開示する教示のすべての側面を記述せず、請求範囲を制限しない。

実施例

0017

本明細書において開示する特徴及び教示の各々は本発明のシステム及び方法を提供するために他の特徴及び教示と共に、或いは分離して使用される。このような特徴及び教示を共に、そして分離して利用する実施形態を添付した図面を参照して説明する。本明細書の詳細な説明は本教示の様相を実施するために詳細な技術分野の当業者に示すが、請求範囲を制限しない。したがって、本明細書の詳細な説明により開示する特徴の組合せは本教示の代表的な例示であり、最も広い意味として教示を実施するのに必須ではないこともあり得る。

0018

以下の説明において、説明の目的のみに、特定名称を本発明の完全な理解を提供するために説明する。しかし、このような特定細部事項は本発明の思想を実施するために必要ではないことは当業者に理解される。

0019

詳細な説明の幾つかの部分はアルゴリズム及びコンピュータメモリデータビットに対する動作のシンボル表現により提供する。これらのアルゴリズム説明及び表現は他の分野の当業者に作業の実体を効果的に伝達するために、データ処理分野の当業者によって使用される。ここで、アルゴリズムは一般的に望む結果に至る段階に対する一貫性ある順序である。段階は物理的量物理的操作が必要であるものである。一般的に、必須ではないが、このような量は格納、伝達、結合、比較、及びこれとは異なって操作される電気又は磁気信号の形態を取る。このような信号のビット、値、要素、シンボル、特徴、用語、数等としての指称の共通的使用がしばしば便利である。

0020

しかし、これら及び類似の用語の全ては適切な物理量と連関され、単なるこのような量に適用される便利なラベルであることに留意しなければならない。具体的には以下の説明から明確であるように、説明において、このよう‘‘処理’’、 ‘‘コンピューティング’’、‘‘計算’’、‘‘決定’’、‘‘表示’’等の用語を使用する論議コンピュータシステム又はコンピュータレジスター及びメモリ内において物理的(電気的)量として現れるデータをコンピュータシステムメモリ又はレジスター又は他の情報ストレージ伝送又は表示装置内において物理的量として現れる類似の他のデータに操作及び変形する類似の電子コンピューティング装置の活動及び過程を示すと理解される。

0021

本明細書において説明するアルゴリズムは本質的に任意の特定コンピュータ又は他の装置と関連されない。多様な一般的な目的のシステム、コンピュータサーバー、又は個人用コンピュータは本明細書の教示にしたがうプログラムと共に使用されるか、或いは要求された方法段階を遂行するためのより特殊化された装置を構成することが便利である。このような多様なシステムのために要求される構造を以下の説明において示す。多様なプログラミング言語が本明細書に記載されるように発明の教示を具現するのに使用されてもよいことを理解すべきである。

0022

また、代表的な例に対する多様な特徴及び従属項は本発明の教示に対する有用な追加的な実施形態を提供するために明示的ではない、そして列挙されない方式に結合されることもあり得る。また、すべての値の範囲又は独立体グループ暗示はすべての可能な中間値又は当該発明を制限する目的のみならず、本来の開示目的のための中間独立体を開示することが言及される。また、明示的な基準及び図面に図示された構成要素の形状は本明細書において実施される方式を理解できるよう記載するが、寸法及び実施形態に示した形状に限定されないことに留意する。

0023

本明細書は装置レベル(device level)において重要動作を認証できる内装形ファームウェア(embedded firmware)を有するソリッドステートドライブを説明する。ソリッドステートドライブの内装形ファームウェアは信頼されたエンティティー(entity、例えば、認証サーバー(authentication server))と相互作用し、認証サーバーによって認証された動作のみを実行する。ソリッドステートドライブは外部の信頼されたエンティティーと相互作用することによって認証プロセス(authentication process)に参加する。それだけでなく、本明細書は動作命令と連関された資格(credentials)を検証するためにソリッドステートドライブに対する動作命令の一部として保安資格(security credentials)を伝達するためのプロセスを説明する。

0024

本発明において、重要動作はソリッドステートドライブ内に格納されたデータの意図されない損失を惹起する破壊を避けるためにソリッドステートドライブレベルにおいて安全に有効であるか否かを確認する。

0025

重要動作を認証するための本発明のシステム及び方法はソリッドステートドライブに適用される。本発明のシステム及び方法は問題解決(troubleshooting)のために重要動作に対するデータを記録するソリッドステートドライブに対する監査(auditing)スキームをさらに提供する。例えば、ソリッドステートドライブは重要動作命令を発行するクライアントに対する動作及び応答の結果のみならず、重要動作命令、ユーザー資格(user credentials)、認証サーバーから受信された応答を含み、これに制限されない重要動作要請時間記録(time log)を維持する。ホストコンピュータは問題解決及び監査の目的としてソリッドステートドライブに対する不当な(unwarranted)動作を監視するためにソリッドステートドライブとの適切なプロトコルにしたがって記録情報を獲得(又は検索)する。本発明のシステム及び方法はオペレーターエラーによる意図しないデータ損失の危険及び認証サーバーへのアクセス違反を無くす。

0026

本発明のシステム及び方法はソリッドステートドライブ上の重要動作のための装置レベルの認証を提供する。このような重要動作の例示はフォーマット命令(例えば、保安削除(secure erase))、ネットワークに連結されたソリッドステートドライブ(例えば、NVMe(non−volatile memory express)−互換ソリッドステートドライブ、及びNVMeoF(NVMe over fabrics)−互換ソリッドステートドライブ)上のネームスペース(namespace)に対する削除命令(deletion command)を含むが、これに制限されない。

0027

このような重要動作は復旧できないデータ損失を惹起する。本発明のシステム及び方法は悪意的な意図を防止するためのソリッドステートドライブレベルのメカニズムを提供する。

0028

一実施形態において、ソリッドステートドライブのファームウェアは認証サーバーと相互作用してユーザー発行命令(user−issued command)を認証する。ユーザー発行命令は保安資格を含む。保安資格はユーザー発行命令にしたがってソリッドステートドライブに送られる。ソリッドステートドライブファームウェアは有効性確認(validation)のためにユーザー提供保安資格(user−provided security credentials)及び初期化の間にソリッドステートドライブに格納された認証書を認証サーバーに伝達する。ソリッドステートドライブファームウェアは認証サーバーからの有効性確認応答に基づいてユーザー発行命令を実行する。

0029

図2は一実施形態において、重要動作命令の有効性を確認し、実行するための例示的な認証システムのブロック図を図示する。認証システム200は命令ラインユーティリティー(command line utility、CLT)又は保安機能を備えたアプリケーション211が実行されるホストコンピュータ210、ソリッドステートドライブ220、認証エージェント230、及び認証サーバー(authentication server)240を含む。ソリッドステートドライブ220は1つ以上の不揮発性メモリ装置、ホストコンピュータに対するインターフェイス、及びファームウェアドライバー(本明細書においてはソリッドステートドライブファームウェア221とも称する)を含む。認証された管理ユーザー(例えば、スーパーユーザー)は命令ラインユーティリティー又は保安機能を備えたアプリケーション211を通じて管理命令をソリッドステートドライブ220に発行する。命令ラインユーティリティー又は保安機能を備えたアプリケーション211はホストコンピュータ210において実行されるソリッドステートドライブ220の装置ドライバーを通じてソリッドステートドライブ220と相互作用する。ソリッドステートドライブ220はホストコンピュータ210に物理的に連結させるか、或いは(例えば、SAS(serial attachedSCSI)、SATA(serial AT attachment)、及びPCI(peripheral component interconnect))又はイーサーネット登録商標)ネットワークのようなネットワークを通じてホストコンピュータ210に連結される。ソリッドステートドライブ220の装置ドライバーはホストオペレーティングシステムのカーネル(kernel)空間又はユーザー空間において実行される。管理命令以外にも、命令ラインユーティリティー又は保安機能を備えたアプリケーション211は保安資格(security credentials)を伝達する。一実施形態において、管理ユーザーは管理命令を発行する時、保安資格を入力する。

0030

ソリッドステートドライブ220は命令キュー(command queue)から命令を抽出するソリッドステートドライブファームウェア221を有し、そして抽出された命令を実行する。ソリッドステートドライブ220は重要動作検査器(critical operation checker)222をさらに有する。重要動作検査器222は認証サーバー240と共にホストコンピュータ210から受信された重要動作を処理する。本発明の例示において、重要動作検査器222はソリッドステートドライブファームウェア221の一部でありえるが、重要動作検査器222はソリッドステートドライブ220内の異なるハードウェア又はファームウェアロジックとして具現できる。他の実施形態において、重要動作検査器222はソリッドステートドライブ220の外部に分離されて具現され、重要動作を処理するために1つ以上のソリッドステートドライブと連結される。

0031

命令を実行する前に命令の有効性を確認するために、重要動作検査器222は認証サーバー240と相互作用する。一実施形態において、ソリッドステートドライブファームウェア221は認証能力(authentication capabilities)を有し、認証エージェント230を通じて認証サーバー240と相互作用する。一実施形態において、認証エージェント230はソリッドステートドライブ220が連結されたホストコンピュータ210上において実行される。他の実施形態において、認証エージェント230はネットワークを通じてホストコンピュータ210に連結された他のコンピュータ上において実行される。認証サーバー240はソリッドステートドライブ220が連結されたホストコンピュータ210以外の他のコンピュータであってもよい。認証エージェント230を通じたソリッドステートドライブファームウェア221及び認証サーバー240間の通信強化された保安のために暗号化される。

0032

一実施形態において、ソリッドステートドライブファームウェア221はユーザー発行命令(user−issued command)を認証するために非同期式認証イベント(asynchronous authentication event)を認証エージェント230に生成する。非同期式イベントは命令ラインユーティリティー又は保安機能を備えたアプリケーション211から受信された保安資格及びソリッドステートドライブ220に格納された保安認証書(security certificate)223を含む。ソリッドステートドライブファームウェア221は有効性確認結果のために認証エージェント230から応答を待つ。応答が有効性確認成功を示せば、ソリッドステートドライブファームウェア221はソリッドステートドライブ220において命令を実行する。ソリッドステートドライブファームウェア221は、また装置ドライバーを通じて成功又は失敗の状態を命令ラインユーティリティー又は保安機能を備えたアプリケーション211に返信する。

0033

一実施形態において、認証エージェント230はホストコンピュータにより実行されるサービスである。ソリッドステートドライブ220はSAS、SATA、及びPCIのような多様なインターフェイスプロトコルを通じてホストコンピュータに物理的に連結される。各ホストコンピュータはそれに連結された1つ以上のソリッドステートドライブを有する。ソリッドステートドライブ220がネットワークに連結されたソリッドステートドライブ(例えば、NVMeoF−互換ソリッドステートドライブ)である場合、ソリッドステートドライブ220はネットワークを通じてホストコンピュータに連結され、自体、認証エージェント230として動作する。ネットワークに連結されたソリッドステートドライブ220は自体、認証エージェント230として動作するか、又はネットワークの独立したノード(例えば、コンピュータ又は他のソリッドステートドライブ)が独立認証エージェントとして機能する。初期化の間に、認証エージェント230が実行されるホストコンピュータは相互合意プロトコル(mutually agreed protocol、例えば、NVMeoF)を通じてネットワークに連結されたソリッドステートドライブとの通信を設定する。ホストコンピュータの装置ドライバーは相互合意プロトコル(例えば、NVMeoF)を通じてネットワークを通じて重要動作命令をネットワークに連結されたソリッドステートドライブに伝達する。応答として、ネットワークに連結されたソリッドステートドライブは相互合意プロトコル(例えば、NVMeoF)によりネットワークを通じてホストコンピュータ上において実行される認証エージェント230と通信する。この場合、認証エージェント230はソリッドステートドライブ220及び認証サーバー240の間のゲートウェイとして動作する。

0034

認証サーバー240はソリッドステートドライブ220に対する重要動作の有効性を確認するために使用される複数の有効な保安認証書241を格納する。起動(startup)の間に、認証サーバー240は重要ソリッドステートドライブ動作のリストをソリッドステートドライブ220に通知する。認証サーバー240は、また重要ソリッドステートドライブ動作として表示された命令/動作識別子(identifiers)を送る。ソリッドステートドライブ220はシステムの性能低下を最少化するか、或いは避けるために、すべての入出力動作ではなく、重要ソリッドステートドライブ動作として表示された命令のみに重要動作検査器222を働かせる(trigger)。

0035

起動の間、認証エージェント230は命令認証のための一連の非同期式イベントを、物理的に又はネットワークを通じてホストコンピュータ210に連結された、すべてのソリッドステートドライブに登録する。それだけでなく、認証エージェント230は保安スキームを利用して認証サーバー240との保安通信チャンネル(secure communication channel)を設定する。例えば、認証エージェント230及び認証サーバー240の間の保安通信のために使用される保安スキームは保安ソケット階層(secure sockets layer、SSL)又は伝送階層保安(transport layer security、TLS)である。非同期式イベントがソリッドステートドライブの中の1つによって発送されれば、認証エージェント230はソリッドステートドライブと連関された保安資格及び保安認証書を認証サーバー240に伝達し、有効性確認応答を待つ。認証サーバー240から応答を受信した後、認証エージェント230は入出力制御呼出(I/O control(IOCTL) call)又はオペレーティングシステムによって提供される類似の機能を通じて有効性確認応答をソリッドステートドライブ220に伝達する。

0036

一実施形態において、認証サーバー240はクラスタワイド命令認証(cluster−wide command authentication)を遂行するセントラルサービス(central service)である。認証サーバー240はパスフレーズ(passphrase)/ハッシュ(hash)及びチャレンジ(challenge)/応答(response)を利用して多様な有効性確認スキームを支援する能力を有する。初期構成の間に、管理ユーザーは有効性確認スキームの中の1つを選択し、パスフレーズ/ハッシュパラメーター又はチャレンジ/応答パラメーターの中のいずれか1つを認証サーバー240に構成する。認証サーバー240はデータベースにこのようなパラメーター持続的に格納する。幾つかの実施形態において、クラスターインターフェイス(cluster interface)において実行される複数の認証エージェントは認証サーバー240と直接通信する。ユーザー発行命令の実行シークェンス(sequence)の一部として、認証エージェント230は管理ユーザーから得た保安資格を認証サーバー240に送る。その次に認証サーバー240は保安資格を処理し、資格の有効性を確認し、そして応答を認証エージェント230に送る。

0037

図3は一実施形態において、認証システムを初期化する例示的なプロセスを図示する。ホストコンピュータ210、ソリッドステートドライブ220、認証エージェント230、及び認証サーバー240を含む図2に図示した認証システム200のエンティティーは認証システム200がユーザー命令を安全に処理する準備が行われる前に初期化プロセスを経なければならない。

0038

まず、管理者215(「命令ラインユーティリティー又は保安機能を備えたアプリケーション211」が果たす管理機能を管理者215という)はホストコンピュータ(図示せず)に連結されたソリッドステートドライブ(ターゲットソリッドステートドライブ220を含む)に対する保安資格(例えば、認証パスフレーズ(authentication passphrase)又はチャレンジ質問(challenge questions))をセットアップする(段階351)。保安資格をセットアップする時、管理者215はホストコンピュータ210又は認証サーバー240と通信できる(例えば、ネットワークを通じて)任意の他のコンピュータを使用する。このような保安資格はソリッドステートドライブ220に発行された一部の重要管理命令を実行する時に使用される。認証サーバー240はターゲットソリッドステートドライブ220を含むローカルソリッドステートドライブと通信を設定するために認証エージェント230に通知し、要請する(段階352)。例えば、認証エージェント230はローカルソリッドステートドライブをスキャンし(段階353)、そしてソリッドステートドライブ220からのシリアル番号及びモデル番号のようなソリッドステートドライブ220の識別番号(identification number、ID number)を獲得する(段階354)。認証エージェント230は獲得されたソリッドステートドライブ220の特定細部事項を認証サーバー240に送る(段階355)。獲得されたソリッドステートドライブ220の特定細部事項を利用して認証サーバー240はローカルソリッドステートドライブの各々に対する保安認証書を生成する(段階356)。

0039

認証サーバー240はエンコーディングスキームに基づいて保安認証書を生成する。一実施形態において、管理者215によって構成される保安資格(例えば、認証パスフレーズ又はチャレンジ質問)はエンコーディングプロセスキーとして使用される。その次に保安認証書は認証エージェント230に送られ(段階357)、認証エージェント230はIOCTL呼出又はオペレーティングシステムによって提供される類似の機能を通じて保安認証書をソリッドステートドライブ220に送る。ソリッドステートドライブ220はメタデータとして保安認証書を格納し、管理命令を認証するためにそれを使用する(段階358)。認証エージェント230を通じて、認証サーバー240は重要動作検査器によって処理される重要動作をソリッドステートドライブ220に通知する。

0040

一実施形態において、認証書基盤のスキームは管理命令の有効性を確認するために使用される。この場合、管理者215は管理者215によって使用されるパスフレーズをキーとして認証サーバー240によって採択されたエンコーディングスキームに送る。認証サーバー240は管理者提供パスフレーズ(administrator−provided passphrase)を利用してソリッドステートドライブ220に対する保安認証書を生成する。保安認証書(例えば、図2の保安認証書223)はソリッドステートドライブ220に格納される。

0041

初期化の後、ユーザーはパスフレーズと共に管理命令を発行する。ユーザーは管理者215又は管理命令を送る資格がある任意の他のユーザーである。ソリッドステートドライブ220に格納された保安認証書223及びユーザー提供パスフレーズ(user−provided passphrase)の全ては認証サーバー240に送られる。認証サーバー240はユーザー提供パスフレーズを利用して保安認証書223をデコードし、デコードされた保安認証書とデータベースに格納された有効な保安認証書241とを比較する。認証書の有効性が成功的に確認されれば、ソリッドステートドライブ220は命令を実行し、ユーザーに応答を送る。

0042

他の実施形態において、チャレンジ応答(challenge−response)スキームは管理命令の有効性を確認するために使用される。認証サーバー構成の一部として、管理者215はチャレンジ質問及び応答の集合を構成する。ユーザーが管理命令を発行した時、ソリッドステートドライブ220は認証サーバー240から1つ以上のチャレンジ質問を獲得し、ユーザーにそれらを提示する。チャレンジ応答シークェンスが成功すれば、ソリッドステートドライブ220は命令を完了する。

0043

図4は一実施形態において、管理命令の有効性を確認するための例示的なプロセスを図示する。ユーザー212は保安資格(例えば、認証パスフレーズ)と共に命令ラインユーティリティーの命令ラインインターフェイス又はアプリケーションを通じて管理命令を発行する(段階451)。管理命令及び保安資格はソリッドステートドライブ220が連結されたホストコンピュータにおいて実行される装置ドライバーを通じてソリッドステートドライブ220のファームウェアへの命令構造に伝達される。イーサーネット(登録商標)ソリッドステートドライブの場合、管理命令及び保安資格は装置ドライバーの代わりにイニシエーター(initiator)を通じてソリッドステートドライブ220のファームウェアに伝達される。

0044

ソリッドステートドライブファームウェアは命令構造にて伝達された保安資格を抽出し、初期化の間にソリッドステートドライブに格納されたソリッドステートドライブ保安認証書を読み出す。ソリッドステートドライブファームウェアは非同期式イベント通知を通じて<保安認証書、保安資格>のタプル(tuple)を認証エージェント230に伝達し、応答を待つ(段階452)。他の実施形態において、重要動作検査器はユーザー212から受信された管理命令が認証サーバー240によって表示された重要動作であるか否かを検査し、そして重要動作として表示された管理命令のみの有効性を確認するために非同期式イベントを認証エージェント230に送る。

0045

初期化の間に、認証エージェント230はターゲットノード(target node、又はホストコンピュータ)に連結されたすべてのソリッドステートドライブからの非同期式イベント通知を登録し、認証サーバー240と通信チャンネルを設定する。ソリッドステートドライブ220のファームウェアからの非同期式イベント通知に応答して、認証エージェント230は有効性を確認するために<保安認証書、保安資格>のタプルを認証サーバー240に伝達する(段階453)。

0046

認証サーバー240は管理命令を認証するために認証エージェント230からメッセージを受信し、認証エージェント230によって伝達された保安資格を利用して保安認証書223を解読する(decrypt)。認証サーバー240は解読された保安認証書と認証サーバー240のデータベースに格納された保安認証書241とを比較することによって解読された保安認証書の有効性を確認する(段階454)。

0047

有効性確認の結果に基づいて、認証サーバー240は成功又は失敗メッセージを認証エージェント230に送る(段階455)。認証エージェント230は認証サーバー240からの応答をソリッドステートドライブファームウェアに再び伝達する(段階456)。一実施形態において、認証エージェント230におけるソリッドステートドライブ220への応答はIOCTL呼出のような供給者特定命令(vendor−specific command)又はオペレーティングシステムによって提供される類似機能を通じて送られる。命令が成功的に認証されれば、ソリッドステートドライブ220は管理命令を実行する(段階457)。適切な応答が管理命令を開始したユーザー212に再び送られる(段階458)。

0048

図5は他の実施形態において、管理命令の有効性を確認するための例示的なプロセスを図示する。ユーザー212は命令ラインユーティリティーの命令ラインインターフェイス(CLI)又はアプリケーションを通じて管理命令を発行する(段階551)。管理命令はソリッドステートドライブ220が連結されたホストコンピュータにおいて実行される装置ドライバーを通じてソリッドステートドライブ220のファームウェアへの命令構造にて伝達される。イーサーネット(登録商標)ソリッドステートドライブの場合、管理命令は装置ドライバーの代わりにイニシエーターを通じてソリッドステートドライブ220のファームウェアに伝達される。

0049

ソリッドステートファームウェアはユーザー212と連関された保安質問に対する答弁(answers)を識別する。一実施形態において、初期化の間に保安質問に対する答弁はソリッドステートドライブに格納される。ソリッドステートドライブファームウェアは非同期式イベント通知を通じてユーザー212の識別子を認証エージェント230に伝達し、応答を待つ(段階552)。

0050

初期化の間に、認証エージェント230はターゲットノード(又はホストコンピュータ)に連結されたすべてのソリッドステートドライブからの非同期式イベント通知を登録し、認証サーバー240との通信チャンネルを設定する。ソリッドステートドライブ220のファームウェアから非同期式イベント通知に応答して、認証エージェント230はユーザー212と連関されたチャレンジ質問を獲得するために認証サーバー240に要請を送る(段階553)。

0051

認証サーバー240は認証エージェント230からチャレンジ質問に対する要請を受信し、認証エージェント230に応答又は1つ以上のチャレンジ質問を伝達する(段階554)。ユーザー212の身元が検証されなければ、認証サーバー240は管理命令を不承認するように認証エージェント230に指示する応答を送る。ユーザー212が検証されたユーザーであれば、認証エージェント230は1つ以上のチャレンジ質問をソリッドステートドライブファームウェアに伝達する(段階555)。一実施形態において、認証エージェント230におけるソリッドステートドライブ220への応答はIOCTL呼出のような供給者特定命令又はオペレーティングシステムによって提供される類似機能を通じて送られる。ソリッドステートドライブ220はCLIを通じて1つ以上のチャレンジ質問をユーザー212に提示する(段階556)。ユーザー212はチャレンジ質問に対する答弁を提供する(段階557)。答弁がソリッドステートドライブ220に格納された答弁と一致すれば、ソリッドステートドライブ220は管理命令を実行する(段階558)。答弁が一致しなければ、ソリッドステートドライブ220は管理命令を中断させる(abort)。ソリッドステートドライブ220は最終的にCLIを通じて応答をユーザー212に返信する(段階559)。チャレンジ質問は認証サーバー240に遠隔に格納され、チャレンジ質問に対する答弁はソリッドステートドライブ220に格納されることに留意しなければならない。チャレンジ質問及び答弁に対して分離されたストレージはさらに安全な管理命令の有効性確認を提供する。

0052

他の実施形態において、ソリッドステートドライブ220はユーザー212の管理命令に応答してチャレンジ質問を獲得し、質問を提示する(段階556)。この場合、ソリッドステートドライブ220は、初期化の間に、保安質問及びこれに連関された答えを格納し、そうすることによって段階552乃至555はスキップする。認証サーバー240は保安質問及びこれと連関された答えのコピー(duplicate copy)を格納し、そして問題解決及び監視目的としてソリッドステートドライブ220上の不当な動作を監視するために認証エージェント230を通じてソリッドステートドライブ220と直接通信する。認証サーバー240によるソリッドステートドライブ220上の不当な動作の監視はシステムの性能低下を最小化するためにソリッドステートドライブ220が動作されない時(idle)に非同期式に行われる。

0053

図6は他の実施形態において、管理命令の有効性を確認するための例示的なプロセスを図示する。この場合、ソリッドステートドライブ220は保安質問又は答弁を格納しない。ユーザー212は命令ラインユーティリティーの命令ラインインターフェイス(CLI)又はアプリケーションを通じて管理命令を発行する(段階651)。ソリッドステートドライブファームウェアは第1番目の非同期式イベント通知を通じてユーザー212の識別子を認証エージェント230に伝達し、応答を待つ(段階652)。ソリッドステートドライブ220のファームウェアからの非同期式イベント通知に応答して、認証エージェント230はユーザー212と連関されたチャレンジ質問を獲得するために認証サーバー240に要請を送る(段階653)。認証サーバー240は認証エージェント230からチャレンジ質問に対する要請を受信し応答又は1つ以上のチャレンジ質問を認証エージェント230に伝達する(段階654)。認証エージェント230は1つ以上のチャレンジ質問をソリッドステートドライブファームウェアに伝達する(段階655)。ソリッドステートドライブ220はCLIを通じてユーザー212に1つ以上のチャレンジ質問を提示し(段階656)、ユーザー212からチャレンジ質問に対する答弁を受信する(段階657)。ソリッドステートドライブファームウェアは第2番目の非同期式イベント通知を通じてユーザーが提供した答弁を認証エージェント230に伝達し、応答を待つ(段階658)。認証エージェント230は認証サーバー240にユーザー提供答弁を伝達する(段階659)。認証サーバー240はユーザー提供答弁と認証質問に対する局部的に格納された検証答弁を比較することによって答弁の有効性を確認する(段階660)。有効性確認結果に基づいて、認証サーバー240は成功又は失敗メッセージを認証エージェント230に送る(段階661)。認証エージェント230は認証サーバー240からの応答をソリッドステートドライブファームウェアに再び伝達する(段階662)。ソリッドステートドライブ220は認証サーバー240から受信された応答に基づいて管理命令を実行することを決定する(段階663)。適切な応答が管理命令を開始したユーザー212に再び送られる(段階664)。

0054

一実施形態において、ソリッドステートドライブはイーサーネット(登録商標)ネットワークに直接連結可能なイーサーネット(登録商標)ソリッドステートドライブである。ソリッドステートドライブはSAS、SATA、及びPCIのような従来の基本ストレージプロトコルと互換される。本発明の認証スキームは多量のデータを格納する任意の不揮発性ストレージ媒体に適用される。本発明の認証スキームはNVMeネームスペースの生成、サイズ変更、及び削除を含み、これに制限されず、多様な破壊的な重要動作に適用される。

0055

一実施形態において、方法は、ソリッドステートドライブへの動作命令及び保安資格を受信する段階と、前記保安資格及び前記保安資格に基づいてエンコーディングされ、前記ソリッドステートドライブに格納される保安認証書を含む非同期式イベントを前記ソリッドステートドライブにおいて認証エージェントに発行する段階と、前記保安資格及び前記保安認証書を前記認証エージェントから認証サーバーに伝達する段階と、前記認証サーバーにおいて前記保安資格に基づいて前記保安認証書の有効性を確認する段階と、有効性確認応答を前記認証サーバーから前記認証エージェントに提供する段階と、前記有効性確認応答を前記認証エージェントから前記ソリッドステートドライブに伝達する段階と、前記有効性確認応答に基づいて前記動作命令を実行する段階と、を含む。

0056

前記保安資格はパスフレーズ(passphrase)である。
前記認証エージェントは前記ソリッドステートドライブが連結されたホストコンピュータ上において実行されるサービスである。

0057

前記ホストコンピュータの装置ドライバーは前記動作命令を受信し、前記ソリッドステートドライブの制御及び動作を管理する。

0058

複数のソリッドステートドライブはホストコンピュータに連結される。方法は一連の非同期式イベントを前記複数のソリッドステートドライブにおいて前記認証エージェントに発行する段階をさらに含む。

0059

方法は保安スキームを利用して前記認証エージェント及び前記認証サーバーの間の保安通信チャンネルを設定する段階をさらに含み、前記保安スキームは保安ソケット階層(secure sockets layer、SSL)又は伝送階層保安(transport layer security、TLS)である。

0060

前記有効性確認応答は入出力制御(I/O control、IOCTL)呼出(call)を通じて前記認証サーバーから前記認証エージェントに提供される。

0061

前記ソリッドステートドライブはイーサーネット(登録商標)ネットワークに直接連結可能なイーサーネット(登録商標)ソリッドステートドライブである。

0062

前記認証サーバーは、重要動作を前記ソリッドステートドライブに通知し、前記重要動作検査器は、前記重要動作のみに対して非同期式イベントを前記認証エージェントに発行する。

0063

前記動作命令はネットワークに連結されたソリッドステートドライブのネームスペースに対するフォーマット命令、削除命令、生成命令、及びサイズ変更命令の中の1つである。

0064

方法は、前記認証サーバーのデータベースにおいて管理者(administrator)から受信された第2番目の保安資格を格納する段階と、初期化の間に前記認証エージェントによって前記ソリッドステートドライブの識別番号をスキャンする段階と、前記認証エージェントから前記認証サーバーに前記ソリッドステートドライブの前記識別番号を提供する段階と、前記認証サーバーにおいて前記管理者から受信された前記第2番目の保安資格に基づいて前記保安認証書を生成する段階と、前記保安認証書を前記認証エージェントに提供する段階と、前記保安認証書を前記ソリッドステートドライブに格納する段階と、をさらに含む。

0065

他の実施形態において、方法は、ユーザーからソリッドステートドライブへの動作命令を受信する段階と、前記ユーザーにチャレンジ質問を提示する段階と、前記チャレンジ質問に対するユーザー提供答弁を受信する段階と、前記ユーザー提供答弁と前記ユーザーと連関された前記チャレンジ質問に対する答弁とを比較する段階と、前記ユーザー提供答弁及び前記ユーザーと連関された前記チャレンジ質問に対する前記答弁の間に比較結果に基づいて前記動作命令を実行する段階と、を含む。

0066

方法は、前記ユーザーに対する識別子を含む非同期式イベントを認証エージェントに発行する段階と、前記保安資格を前記認証エージェントにおいて認証サーバーに伝達する段階と、前記チャレンジ質問を前記認証サーバーにおいて前記認証エージェント及び前記ソリッドステートドライブに提供する段階と、をさらに含む。

0067

方法は、前記ユーザー提供答弁を含む第2番目の非同期式イベントを前記認証エージェントに発行する段階と、前記ユーザー提供答弁を前記認証エージェントから前記認証サーバーに伝達する段階と、前記ユーザー提供答弁と前記認証サーバーに格納された検証答弁とを比較して前記ユーザー提供答弁の有効性を確認する段階と、有効性確認応答を前記認証サーバーから前記認証エージェントに提供する段階と、前記有効性確認応答を前記認証エージェントから前記ソリッドステートドライブに伝達する段階と、前記有効性確認応答に基づいて前記動作命令を実行する段階と、をさらに含む。

0068

他の実施形態において、ソリッドステートドライブは、1つ以上の不揮発性メモリ装置と、ホストコンピュータへのインターフェイスと、ファームウェアドライバーと、を含む。前記ファームウェアドライバーは、前記インターフェイスを通じて動作命令及び保安資格を受信し、前記保安資格及び保安認証書を含む非同期式イベントを認証エージェントに発行し、前記保安認証書は、前記保安資格に基づいてエンコーディングされ、ソリッドステートドライブに格納され、前記認証エージェントから有効性確認応答を受信し、前記有効性確認応答に基づいて前記動作命令を実行する。

0069

前記認証エージェントは前記保安資格及び前記保安認証書を認証サーバーに伝達し、そして前記認証サーバーは前記認証サーバーのデータベースに格納された第2番目の保安資格に基づいて前記保安認証書の有効性を確認し、前記有効性確認応答を生成する。

0070

ソリッドステートドライブは、イーサーネット(登録商標)ネットワークに直接連結可能なイーサーネット(登録商標)ソリッドステートドライブである。

0071

前記動作命令はネットワークに連結されたソリッドステートドライブのネームスペースに対するフォーマット命令、削除命令、生成命令、及びサイズ変更命令の中の1つである。

0072

前記ファームウェアドライバーは、前記認証エージェントから初期化要請を受信し、前記初期化要請に応答して識別番号を前記認証エージェントに提供し、前記認証エージェントから前記保安認証書を受信し、そしてメタデータとして前記ソリッドステートドライブに前記保安認証書を格納する。

0073

その他の実施形態において、認証システムは、認証サーバーと、認証エージェント(authentication agent)が実行されるホストコンピュータと、複数のソリッドステートドライブと、を含む。前記認証エージェントは初期化の間に前記認証サーバーとの保安通信チャンネルを設定する。前記複数のソリッドステートドライブの各々は、ファームウェアドライバーを含み、前記ファームウェアドライバーは、前記ホストコンピュータにおいて実行される装置ドライバーを通じて動作命令及び保安資格(security credential)を受信し、前記保安資格及び保安認証書を含む非同期式イベントを前記認証エージェントに発行し、前記保安認証書は、前記保安資格に基づいてエンコーディングされ、前記複数のソリッドステートドライブの各々に格納される。

0074

前記認証サーバーは前記保安認証書の有効性を確認し、前記保安通信チャンネルを通じて有効性確認応答を前記認証エージェントに提供する。前記複数のソリッドステートドライブの各々の前記ファームウェアドライバーは前記有効性確認応答に基づいて前記動作命令を実行する。

0075

前記ファームウェアドライバーは、前記認証エージェントから初期化要請を受信し、前記初期化要請に応答して識別番号(を前記認証エージェントに提供し、前記認証エージェントから前記保安認証書を受信し、そしてメタデータとして前記ソリッドステートドライブに前記保安認証書を格納する。

0076

前記複数のソリッドステートドライブの各々はイーサーネット(登録商標)ネットワークに直接連結可能なイーサーネット(登録商標)ソリッドステートドライブである。

0077

前記動作命令はネットワークに連結されたソリッドステートドライブのネームスペースに対するフォーマット命令、削除命令、生成命令、及びサイズ変更命令の中の1つである。

0078

前記ソリッドステートドライブは前記認証サーバーによって提供されるチャレンジ及び応答を処理する。

0079

前述した例示的な実施形態はソリッドステートドライブに対する重要動作を認証するためのシステム及び方法を提供するためのシステム及び方法を具現する多様な実施形態を説明するために本明細書において説明した。開示した例示的な実施形態から多様な変形及び離脱は当業者に発生する。本発明の範囲内に属する主題は次の請求の範囲に説明される。

0080

100認証スキーム
110ホストオペレーティングシステム
111管理命令
120装置ドライバー
121応答
130、220ソリッドステートドライブ
200 認証システム
210ホストコンピュータ
211命令ラインユーティリティー又は保安機能を備えたアプリケーション
212ユーザー
215 管理者
221 ソリッドステートドライブファームウェア
222 重要動作検査器
223、241保安認証書
230認証エージェント
240認証サーバー
CLI 命令ラインインターフェイス
CLT命令ラインユーティリティー
IOCTL入出力制御
LBAs論理ブロックアドレス
SSD ソリッドステートドライブ
SSL 保安ソケット階層
TLS伝送階層保安

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

関連する公募課題

ページトップへ

技術視点だけで見ていませんか?

この技術の活用可能性がある分野

分野別動向を把握したい方- 事業化視点で見る -

(分野番号表示ON)※整理標準化データをもとに当社作成

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

関連する挑戦したい社会課題一覧

この 技術と関連する公募課題

関連する公募課題一覧

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ