フォーマット、その1~物理フォーマット

0 0
目 次
一、フォーマットとは
二、物理フォーマット


三、論理フォーマット
■1. 論理フォーマットとは
■2. HDD・SSD等におけるファイルシステム・フォーマット
◆(1) パーティションの作成
● MBRディスクの場合
● GPTディスクの場合
◆(2) ファイルシステム・フォーマットの基本構成
● NTFSのPartition Boot Record(Boot Sector)
● FAT32のPartition Boot Record(Boot Sector)
◆(3) クイックフォーマット
● MBRディスクの場合
● GPTディスクの場合
◆(4) 通常のフォーマット
◆(5) 既存ファイルと両フォーマットの挙動
◆(6) Windowsレジストリへの記録
◆(7) NTFSのLog File構造とバージョン問題
● 問題状況
● 対処法
■3. 光学ディスクのファイルシステム・フォーマット
◆(1) Compact Disc File System(CDFS)
◆(2) Universal Disk Format(UDF)
◆(3) ISOイメージ(ISO image)


一、フォーマットとは

 PCにおいて、フォーマットという言葉が盛んに用いられるが、この言葉が誤った意味で使われている記述を目にすることが少なくない。そこで、主にコンピュータの電子記録(記憶)媒体において用いられるフォーマットの意味を改めて確認しておきたいと思う。

 フォーマット(format)とは、一般的には、一定の形式・書式、またはそれを適用することをいう。電子記録媒体においては、情報を記録する形式、またはその形式を適用することをいう。

 厳密には、フォーマットは初期化(Initialization)とは異なる。初期化とは、ハードウェア又はソフトウェアを利用開始可能なある一定の状態におくことをいうと解すべきであると考えるが、それゆえに初期化は、その対象や場面によっては、フォーマットとほぼ同義の場合もあれば、フォーマットを別に行う必要がある場合もある(拙文『「初期化」について』参照)。また、フォーマットを説明するに際して、「初期化」は単に「初期状態にする」又は「消去する」といった意味で使われることもある。

 ストレージ[※1]のフォーマットには、大きく2つの種類がある。物理フォーマット(Physical Format)と論理フォーマット(Logical Format)である。

註※1 ストレージ:
 英語のstorageを指す用語である。しかし、この英語の発音に近似した表記は「ストーリッヂ」であろう。所詮英語の発音を正確に日本で表記できない以上、日本語で何と表記しようが構わないとはいえ、この表記はあまりにも英語の発音とかけ離れており、改めるべきであろう。当サイトにおいては、「ストーリッヂ」と表記したいところであるが、検索の便を考えて止むを得ず「ストレージ」の表記を使用する。因みに、application softwareの略語として、近時英語では「app」が使われようになったが、日本語では「アプリ」と言うようになった。これは、日本語では2文字より3文字の略語が好まれるからであろうと思われる。略語に関しては、それぞれの言語習慣にかかわることであるから、許容されるであろう。しかし、個人的には「アプリ」という略語を好まないので、当サイトの全ブログを通じて「アプリケーション」と表記するか、単に「ソフト」と略すことにしている。


二、物理フォーマット

■1. 物理フォーマットとローレベル・フォーマット

◆(1)  セクタの作成

 電子記憶媒体の中心であるHDD(Hard Disk Drive)は、プラッタというディスクの表面の記録磁性層(磁性体)に磁気を記憶させることにより情報を記録し、その磁気を読み取ることにより情報を読み出す。その最小の記録単位となるのが、セクタである。微小磁性粒子が均一に塗布されただけのプラッタ上に、ギャップ領域、サーボ情報(サーボデータ)領域[※2]、データ領域、誤り訂正符号領域等から構成されるセクタ[※3]を作成する作業を物理フォーマット又はローレベル・フォーマット(Low Level Format)という。HDDにおいては記録密度が極めて高いため、セクタの作成をするには、モーターと磁気ヘッドを微細かつ正確に制御する必要がある。それ故当然ながら、この作業はHDDの製造工程において専用の装置によって行われる。(電子情報通信学会「知識ベース」、「2章 ハードディスクドライブ」

註※2 サーボ情報領域:
 サーボ情報とは、セクタの位置情報であり、アドレス・データ(トラック番号とセクタ番号)とバースト信号が含まれている。ヘッドはサーボ情報のアドレス・データを手掛かりにセクタのあるトラックに移動し(シーク制御)、バースト信号をもとにそのトラックの中心を通るよう制御される(位置決め制御)。(東芝、「磁気ディスク装置の高性能化を支えるヘッド位置決め制御技術」)

 このサーボ(servo)とは、servomechanism(サーボ機構)の略であり、「エラーを感知する負のフィードバック(負帰還)を用いて装置の動きを訂正する自動的な仕掛け」のことである(Wikipedia、「Servomechanism」)。servoは、ラテン語のservus(slave, servant)に由来する(Webster's Third New International Dictionary)。

 また、ヘッドの動作には、高精度の制御が必要であり、HDDは一台毎にアクチュエータの形状や位置、アームとヘッドの取付位置等がわずかではあるものの異なるためヘッド位置が個別に調整されており、その情報は初期値としてHDDのプリント基板(Printed Circuit Board:PCB)上のEEPROM(Electrically Erasable Programmable Read-Only Memory)等の不揮発性メモリに格納されている。そのため、HDDの基板を同型のものと交換した場合であっても、元のHDDのこの情報を新たな基板の不揮発性メモリに書き移すか、その不揮発性メモリ自体を移植しなければ、ヘッドは正常に動作しないことがある。(「ハードディスク基板交換、HDD基盤交換」)

註※3 セクタ:
 1つのセクタのサイズはこれまで512バイトとされてきた。各セクタは、ギャップ・セクション、同期セクション、アドレス・マーク・セクション(サーボ情報領域)、データ・セクション、誤り訂正符号(Error Correction Code:ECC)セクションから構成されている。512バイトセクタのままでは、HDDの大容量化に伴い、セクタ数は膨大となるため、フォーマット効率が低下し、高密度化に伴い、1セクタにおける物理的欠陥のデータ全体に対する損傷の比率が高まることになる。そこで、8セクタを1つにまとめて、1セクタのサイズを4096バイト(4KB)とすれば、1セクタ毎に必要であるギャップやアドレス・マーク等の領域を減らすことが可能となり、データ容量の増加を図ることができるとともにフォーマット効率を高めることができる。さらに、1セクタのサイズの拡大は、物理的欠陥による損傷のデータ全体に対する比率を低減させることにつながり、ギャップ等の領域を減らすことによってECC領域を拡大することが可能となり、エラー訂正機能の改善をはかることができるようになる。(SEAGATE、 「アドバンスド・フォーマット4Kセクター・ハードディスク・ドライブへの移行」)

 こうして、2009年に、IDEMA(International Disk Drive Equipment and Materials Association、国際ディスクドライブ協会)により4KBセクタ(通称、4Kセクタ)の規格は、その名称がAdvanced Formatと定められ、承認されることになった。この技術をAdvanced Format Technologyと呼び、AFTと略称されることもある。

 Advanced Formatの登場により、従来の512バイト・セクタのディスクは、「512n」(512-byte native、512バイト・ネイティブ)と称し、Advanced Format対応ディスクは、512バイト・セクタをエミュレートする機能が備わったものを「512e」(512-byte emulation [emulated]、512バイト・エミュレーション)と呼び、512バイト・エミュレーション機能を省いたものを「4Kn」(4K [4KB] native、4Kネイティブ)と呼ぶようになっている。512eをサポートするOSは、Windowsでは、Vista以降であり、4Knをサポートするのは、Windows 8以降と公式には発表されている(MSDN、「Advanced format (4K) disk compatibility update」)。しかし、実際には、512eのディスクは、それに対応しアラインメントを行えるソフトウェアでフォーマットすれば、Windows XPでも使用することが可能である(例えば、BuffaloのDisk Formatter2)。

 なお、Microsoftの2013年の「Windows での 4K セクターのハード ディスク ドライブに関するマイクロソフトのサポート ポリシー」と題するWebページでは、Advanced Formatを512eと同じものと説明しているが、前述の通りそれは誤りであり、上記2017年の「Advanced format (4K) disk compatibility update」では修正されている。

◆(2)  ゼロフィル(Zero Fill)

 セクタを「0」(0x00)で埋めていくことを「ゼロフィル(Zero Fill)」というが、これもまた「物理フォーマット」あるいは「ローレベル・フォーマット」と呼ぶことがある。これは、保存したデータに対し「0」で上書きをするのであるから、データを消去するという機能を果たすことになる。

※参考:
・Phooen, Sonpooshi. 2015. 『「初期化」について』. http://blog.phooen.com/blog-entry-68.html

・片岡宏之, 中村滋男他. 2011. 「8群 情報入出力・記録装置と電源 - 2編 情報ストレージ - 2章 ハードディスクドライブ」, 電子情報通信学会「知識ベース」. http://www.ieice-hbkb.org/files/08/08gun_02hen_02.pdf

・高倉晋司, 石原義之, 保中志元. 2009. 「磁気ディスク装置の高性能化を支えるヘッド位置決め制御技術」, 東芝レビューVol.64 No.12. http://www.toshiba.co.jp/tech/review/2009/12/64_12pdf/f02.pdf

・Wikipedia. "Servomechanism". https://en.wikipedia.org/wiki/Servomechanism

・Haed Drive Parts. 「ハードディスク基板交換、HDD基盤交換」. http://ja.harddriveparts.com/replace_hdd_pcb_boards.html

・SEAGATE. 「アドバンスド・フォーマット4Kセクター・ハードディスク・ドライブへの移行」. http://www.seagate.com/jp/ja/tech-insights/advanced-format-4k-sector-hard-drives-master-ti/

・MSDN Microsoft. 2017. "Advanced format (4K) disk compatibility update". https://msdn.microsoft.com/windows/compatibility/advanced-format-disk-compatibility-update

・Microsoft. 2013. 「Windows での 4K セクターのハード ディスク ドライブに関するマイクロソフトのサポート ポリシー」. https://support.microsoft.com/ja-jp/help/2510009/microsoft-support-policy-for-4k-sector-hard-drives-in-windows

・東芝. 2011. 「ストレージ・テクノロジー」. http://toshiba.semicon-storage.com/product/storage/pdf/storage_technology_01.pdf

・東芝. 「アドバンスト・フォーマット」. https://toshiba.semicon-storage.com/jp/product/storage-products/trends-technology/advanced-format.html

・富士通研究所. 2009. 「磁気ディスク装置」. https://www.fujitsu.com/jp/group/labs/documents/resources/tech/techguide/list/hdd.pdf

・特許庁. 2007. 『平成18年度 特許出願技術動向調査報告書 高記録密度ハードディスク装置(要約版)』. https://www.jpo.go.jp/shiryou/pdf/gidou-houkoku/18info_harddisk.pdf

・Logitec データ復旧技術センター. 「コラム vol.006 アドバンスドフォーマット」. http://www.logitec.co.jp/data_recovery/column/vol_006/
(以上閲覧日: 2017年5月6日)


■2. 両者の区別

 両用語を区別して、一方を物理フォーマットと呼び、他方をローレベル・フォーマットと呼ぶ場合があるが、用語が逆転していることもある。また、両者を同義として2つの意味を持つとする場合などもある。実際にHDDを製造しているWestern Digital(以下WDと略す)、Seagate、日立、東芝等においても用語法は食い違っている。

● 日立ソリューションズのIT用語辞典では、「ローレベルフォーマットとは記憶媒体の信号列を初期化して読み書きができるようにすることである」とし、「この場合物理フォーマットと混同されやすい。物理フォーマットもデータに対して上書きなどをして初期化をすることでありかなり近い意味であるがローレベルフォーマットとは違うものである。」とはっきりと両者を区別している。

● HGST(現在はWDの傘下)のWindows Drive Fitness Test(WinDFT)というソフトには、「Erase MBR」と「Erase Disk」というオプションがある。その『WinDFTセットアップおよびユーザーガイド』には、「Erase MBR will only delete the partition of the drive while Erase Disk will write 0's to the entire drive.」と説明されており、Low Level Formatといった表記は見られない。HGSTのサイト内でlow level formatという語を検索したが、使われていない。

● 東芝のサイト内で、「ローレベルフォーマット」を検索すると、1件だけ出てくる。
 『USB MOドライブ 640MB 取扱説明書』)の「用語解説」に出てくる。「フォーマットは、物理フォーマット(ローレベルフォーマット)と論理フォーマット(ハイレベルフォーマット)の2つに分かれます。物理フォーマットとは、使用可能なディスクを作成するために、事前に不良のセクタを除外してディスクの表面にトラックとセクタを編成することです。論理フォーマットとは、物理フォーマットが終了した後に行うもので、オペレーティングシステムのボリュームデータ構造をインストールし、パーティションを設定するものです」(p.76)とある。

● Seagateの「How Do I Low-Level Format a SATA or ATA (IDE) Hard Drive? - What does "low level format" a SATA or ATA (IDE) drive mean?」と題されたWebページでは、「実のところ、"low level"という用語は、やや誤った名称である。かなり以前にMFM(Modified Frequency Modulation、これはフロッピーディスクや初期のHDDで使用された記録方式である。筆者註)ハードドライブで最初に使用されていたlow-levelプロセスは、現在、SATAやATA(IDE)ドライブの"low-level format"と呼ばれるものとは、ほとんど類似性がない。Seagateのデバイス上の全データを初期化する唯一の安全な方法は、SeaTools for DOSにあるzero fill eraseオプションである。これは、HDD全体にすべてゼロを書き込むという単純なプロセスである。」と説明されている。Seagateでは、Zero Fillを[Full] Eraseと表記しており、これをLow-Level Formatと呼ぶことには少し否定的である。

● WDは、Data Lifeguard Diagnosticsというソフトにおいては、「WRITE ZEROS」と表記しているが、このソフトを紹介する「How to low level format or write zeros (full erase) to a WD hard drive or SSHD」と題されたWebページでは、何ら注釈なく「Select the desired method to perform a low level format to the drive」などと記述している。WDは、write zerosをlow level formatと呼称することは許容しているようである。

 さらに、Zero Fillを実行し、データを消去することができるソフトにLow Level Formatという名称や項目を用いているものもある。HDD Low Level Format Tool(http://hddguru.com/software/HDD-LLF-Low-Level-Format-Tool/)やハードディスク番長の「ローレベルフォーマット(Low Level Format)-物理フォーマット」というWebページで紹介されているPowerMaxなどがそうである。

 また、Buffaloが無償で提供しているDisk Formatter(http://buffalo.jp/download/driver/hd/format.html)は、ゼロフィルを行うオプションを「物理フォーマット」と表記している。このDisk Formatterは、対応するファイルシステムがFAT12、FAT16、FAT32だけであるため論理フォーマットを行うソフトとしては今では活躍する場面は少ないが、「物理フォーマット」をUSB接続の外付けHDDやUSBメモリに対しても実行することができるので、その点では有用性がある。因みに、新たにNTFS、FAT32、exFATのフォーマットを行うソフトとしてDiskFormatter2がBuffaloから提供されている(http://buffalo.jp/download/driver/hd/diskformatter2.html:利用はBuffalo製品に限定される)。

 このように物理フォーマットとLow Level Formatの用語の使われ方が区々で当惑してしまうが、高密度化したHDD等においては、我々ユーザが行える作業はゼロフィルのみであるから、これを物理フォーマットと呼ぼうが、Low Level Formatと呼ぼうが、後述の論理フォーマットと区別することができれば、それほど問題はないであろう。ただ、フロッピーディスクやMOドライブ等では、セクタの編成とゼロフィルの両方の作業をユーザが行うことができるため、厳密に区別する必要がある場合もある。

※参考:
・日立ソリューションズ. IT用語辞典 「ローレベルフォーマット」. http://it-words.jp/w/E383ADE383BCE383ACE38399E383ABE38395E382A9E383BCE3839EE38383E38388.html

・HGST, a Western Digital company. 2012. 『WinDFTセットアップおよびユーザーガイド』. http://www.hgst.com/sites/default/files/pdfs/WinDFT%20Install%20and%20User%20Guide.pdf

・東芝. 2001. 『USB MOドライブ 640MB 取扱説明書』. https://dynabook.com/pc/peripheral/support/manual/i34am.pdf

・Seagate. 'How Do I Low-Level Format a SATA or ATA (IDE) Hard Drive? - What does "low level format" a SATA or ATA (IDE) drive mean?'. http://knowledge.seagate.com/articles/en_US/FAQ/203931en

・Western Digital. "How to low level format or write zeros (full erase) to a WD hard drive or SSHD". http://support.wdc.com/knowledgebase/answer.aspx?ID=1211

・ハードディスク番長. 「ローレベルフォーマット(Low Level Format)-物理フォーマット」. https://hddbancho.co.jp/hdd_lowlevelformat.html

・Buffalo. 2009. 『Disk Formatterソフトウェアマニュアル』. http://manual.buffalo.jp/buf-doc/35000939-11.pdf

・Buffalo. 2017. 『Disk Formatter2の使いかた』. http://manual.buffalo.jp/buf-doc/35020283-06.pdf
(以上閲覧日:2017年5月7日)


■3. ゼロフィル(Zero Fill)の実行

 Zero Fillとしての物理フォーマット(Low Level Format)は、それを行うソフトウェアによって、MBRなどのブート領域だけをゼロで上書きする操作とディスク全体にゼロを書き込む操作とを選択できるものがある。前者は、「Erase MBR」、「Erase Boot Tracks」などと表示され、後者は、「Erase Disk」、「Full Erase」、「Zero ALL」などと表示される。これと類似した操作は、Windowsに実装されているDiskPartコマンドで行うことができる。

◆(1)  DiskPartによるゼロフィル

 先ず、Windowsにおいてコマンドプロプトを管理者権限で開き、「diskpart」と入力してEnterキーを押下する。

 DISKPART> list disk

 これでPCに接続されている全てのストレージ・デバイスが表示され、対象となるストレージのディスク番号を確認する。

 DISKPART> select disk #

 #に確認したディスク番号を入力する。

 「ディスク # が選択されました。」
 と表示される。

 DISKPART> clean

 これを実行すると、
 「DiskPartはディスクを正常にクリーンな状態にしました。」
 と表示され、選択されたディスクのMBRやGPT等のブート領域のみがゼロで上書きされて消去される。

 DISKPART> clean all

 これを実行すると、上記と同様のコメントが表示され、選択されたディスク全体がゼロで上書きされて全てのデータが消去される。当然、この処理には、ディスクのサイズによってはかなりの時間を要するので、留意が必要である。

 ディスク全体にゼロフィルを実行した場合のみならず、MBRやGPT等の領域だけにゼロフィルを実行した場合であっても、当然OSからは、ファイルはおろかパーティションも見ることはできず、ディスク全体は未割り当て領域と認識される。このディスクは、Windowsの「ディスクの管理」というMMCスナップインでは、「初期化されていません」と表示され、「ディスクの初期化」が促され、MBR又はGPTのいずれのパーティション方式を適用するかを決定することになる。それから、改めてパーティションを作成し、論理フォーマットへと進むことになる。MBR・GPT等の領域だけを消去するオプションは、パーティション作成時に不具合が生じた場合やプライベートでディスクを再利用する場合に有用である。

 また、cleanコマンドは、MBR・GPT領域だけを消去する以上、パーティション内のデータはほとんどそのまま残っており、誤ってこれを実行したとしても、データの復旧は可能である。実際に、cleanを行った後のディスク内をdisk editorで見てみると、先頭のセクタ 0からセクタ 2047までの1MBのみが「0x00」で上書きされていることが分かった(図-1)。慌てず、データの復旧・復元を試みることである。

※追記:
 cleanコマンドは、ストレージの先頭の1MBのみならず、GPTのバックアップが存在する末尾の1MBも消去するとのこと(@IT、Tech TIPS、「Windowsで、diskpartのcleanコマンドを使ってディスクの内容を消去する」)。(2018.8.17)


 図-1 DiskPartのclean実行範囲
 Format1-Figure1
既にcleanを行ったHDDに対して、disk editor(HxD.exeを使用。以下同じ)を使ってセクタ 0からセクタ 2048までを全て0xFFで埋めて、改めてcleanを実行してみた。セクタ 0からセクタ 2047までは消去されているが、ご覧のようにセクタ 2048は消去されていない。勿論、セクタ 2049以降のデータもそのまま残っている。

(2)  USBフラッシュメモリにおけるCleanコマンド

 DiskPartのcleanコマンドには、他のゼロフィルを行うソフトと異なる振る舞いがある。USBフラッシュメモリのMBRに対する振る舞いである。図-3のようにMBRのパーティション・テーブル以外の領域がゼロで上書きされないまま残されるのである。clean allコマンドでも同様である。具体的には、Windows 7では(DiskPartバージョン6.1.7601)、MBRのオフセット0x1B8にある4バイトのDisk Signature及びそれに続く2バイト及びそれに続くパーティション・テーブルはゼロで上書きされるが、それ以外のブートストラップ・コード領域及びBoot Signatureはそのまま残る。驚いたことに、MBRを完全に消去し、0x00で埋めたUSBメモリ(図-2)に改めてcleanコマンドを実行すると、ブートストラップ・コード領域とBoot Signatureが書き加えられるのである(図-3)。従って、より正確には、ブートストラップ・コード領域及びBoot Signatureは、cleanコマンドにより同じ内容が上書きされていると言うべきである。さらに、Windows 10では(DiskPartバージョン10.0.15063.0)、Disk Signatureがゼロで上書きされるのではなく、書き換えられて残ることになる。一旦Windows 7のDiskPartでcleanを行ってDisk Signatureが消去されたUSBメモリに対して、改めてWindows 10のDiskPartでcleanを実行すると、新たにDisk Signatureがランダムに生成されるのである(図-4)。その他の点はWindows 7と同様である(Windows 7・10以外は未確認)。どういう理由・意図があってこのような仕様になっているかは、今のところ不明である。(MBR及びDisk Signatureについては「フォーマット、その2~論理フォーマット」を参照)

 図-2 Zero Fillを行ったUSBメモリ
 Format1-Figure2-0

 図-3 USBメモリにおけるclean(Windows 7)
 Format1-Figure2

 図-4 USBメモリにおけるclean(Windows 10)
 Format1-Figure3


4. データの完全消去(Data Sanitization)

 情報管理の観点から、データの抹消を行う場合、ディスク全体にゼロフィルを実行することになるが、HDDにおいては、ゼロフィルを1回行ったしてもデータ抹消は完全ではないとする意見がある。HDDに保存してあるデータに「0x00」で上書きを1回行ったとしても、残留磁気(Residual Magnetism、Remanence:「残留磁束密度」とも)を完全に消失させることはできず、その僅かに残った磁気からのデータ復元の可能性は皆無ではない以上、データを完全に消去する(Sanitize)には少なくとも3回は上書きを行うべきだというのである。

(1) DoD 5520.22-M

 この見解に基づいて様々な公的機関によって種々のデータ消去に関する規格が策定されている。その中で最も流布しているのが、米国国防総省準拠方式と呼ばれ、DoD 5520.22-Mと表記されるデータ消去方式であろう。データ消去専用のソフトウェアには、必ずと言ってよいほどこの方式が選択肢の1つに挙っている。

 DoD 5520.22-Mという名称は、機密情報保護のために、米国国家安全保障会議(National Security Council)が最終的に責任を負い、国防長官(Secretary of Defense)が執行責任者となって立ち上げられたNational Industrial Security Program(NISP)を実際に管理執行する国防総省(Department of Defense: DoD)国防保安局(Defense Security Service: DSS)がその運用マニュアルとして策定した『National Industrial Security Program Operating Manual』(NISPOM)に付されているいわゆる管理番号である(図-5)。

 図-5 NISPOMの表紙
 Format1-Figure5
 (http://www.dss.mil/isp/fac_clear/download_nispom.html)

 ところが、そのNISPOMの『February 28, 2006』や『Incorporating Change 1 March 28, 2013』には、「CHAPTER 8. INFORMATION SYSTEM SECURITY」の「Section 3. Common Requirements」に「8-301. Clearing and Sanitization」と題される項目はあるが、具体的な消去方式が指示されている訳ではない。『Incorporating Change 2, May 18, 2016』に至っては、「Clearing and Sanitization」という項目すらなくなっている。

 実は、『January 1995』版に付属していた『National Industrial Security Program Operating Manual Supplement』(DoD 5220.22-M-Sup 1)「Section 5. Software and Data Files」、「d. Overwriting, Degaussing, Sanitizing, and Destroying Media.」、「(1) Overwriting Media.」及び「Table 1 Clearing and Sanitization Data Storage」に示されていた消去方式がDoD 5520.22-Mと呼称されるようになったとされる。前者には、「To clear magnetic disks, overwrite all locations three (3) times (first time with a character, second time with its complement, and the third time with a random character).」(8-5-2)、後者には、「Overwrite all locations with a character, its complement, then with a random character. Verify that all sectors have been overwritten and that no new bad sectors have occurred.」(8-5-4)と記述されており、この3回の上書き方式(固定値、補数、乱数をそれぞれ上書きした後、検証を実施)がDoD 5520.22-Mというデータ消去方式となったのである。これがその後のデータ消去方式の中心的な役割を果たしてきた。このSupplementは、もはやDSSでは閲覧することができなくなっているが、Federation of American Scientists(FAS、米国科学者連盟)のライブラリから入手することが可能である(https://fas.org/sgp/library/nispom.htm)。その当時のDSSのClearing and Sanitization Matrix (C&SM)も、DSSのサイトでは閲覧できないが、University of Oklahoma Health Sciences Center Information Technologyのサイトからであれば目にすることができる(https://it.ouhsc.edu/policies/documents/infosecurity/DoD_5220.pdf)。

 その後、NISPOMの2006年版の冒頭で「"National Industrial Security Program Operating Manual (NISPOM)," January 1995 (hereby canceled)」と表明され、1995年版は取り消されている。現在(2017年5月)、NISPOM『January 1995』版は、DSSのサイトで閲覧することは不可能となっており、Defense Technical Information Center(DTIC、米国国防技術情報センター)のアーカイブにも見つけることはできない(http://www.dtic.mil/whs/directives/corres/pdf)。さらに、DSSが発行していたIndustrial Security Letter(ISL)に記載していたClearing and Sanitization Matrix (Updated June 28, 2007)では、HDDなどの「Non-Removable Rigid Disk」のデータ消去方法は、消磁(Degauss)又は破壊(Destruction)に変更されていたが、これもまたその後取消となっている。

(2) Secure Erase

 これに対し、米国商務省(U.S. Department of Commerce)配下の米国国立標準技術研究所(National Institute of Standards and Technology: NIST)は、CMRR(Center for Memory and Recording Research)が研究開発したSecure Eraseを承認しており(NIST 8008-88)、Secure Erase Commandは、米国国家規格協会(American National Standards Institute: ANSI)によりATAの規格とされ、「2001年以降に製造されたATAのHDD(15GB超)はSecure Erase Commandを内蔵し、CMRRの安全消去検証試験に合格している」(NIST、『Special Publication 800-88, Guidelines for Media Sanitization, September, 2006』、p.27)と説明されている。

 Secure Eraseは、データ消去のためにユーザが利用可能な全領域に1回の上書きを行うものであるが、代替処理されたセクタに対しても、さらには通常のソフトウェアではアクセスすることのできないHPA(Host Protected Area)やDCO(Device Configuration Overlay)の領域に対しても上書きを行うことが可能である(拙文「Secure Eraseとは」参照)。2000年以降、HDDの高密度化に伴う残留磁気の減少と高性能化に伴う不良セクタの減少が進むにつれ、2001年以降に製造されたHDD(15GB超)において、実験室レベルの技術によるデータ復元を防ぐにも1回の上書きで充分であるとする見解を、NISTは前掲2006年版の『Guidelines for Media Sanitization』(p.6)で明らかにしている。

(3) 完全消去の現況

 今日においても、HDD等の記録装置におけるデータの完全消去の方法としては、専用の装置や設備が必要な消磁や破壊に比べれば実施が容易なDoD 5520.22-MやSecure Eraseが多くの機関で採用されているようである。この辺りの事情は、「データ消去に関する海外規格の動向」(瀧澤和子、早稲田大学 WBS研究センター 招聘研究員、1916年4月11日)に詳しく解説されている。それによると、2000年以降は、3回上書きから1回上書き方式に主流は移ってきているが、データの種類によっては複数回の上書きを定めている機関もあるとのことである。「上書き抹消における適切な書込み回数よりも、むしろ、適切な消去技術を選択する判断基準に議論の対象がシフト」しており、「媒体ごとに適切なデータ消去方法を選択するための組織の意思決定の基準策定、抹消の検証および確認の重視など、確実な消去を行うため、いわばデータ消去に関するマネジメントとでもいうべき態勢づくりを重視する傾向」にあるという。

 なお、SSDにおいてもこれらデータ消去方式は有効であるとされるが、SSD特有の性質による格別の考慮が必要となる場合もあるという。

 さて、このDoD 5520.22-Mを行えるソフトは種々あるが、Darik's Boot and Nuke(DBANと略称されていたが、現在はDBANが正式名称となっている。https://dban.org/)が広く使われているようである。最新版は、2.3.0(2015-12-09)であるが、以前のバージョンはSourceForgeからダウンロードできる(https://sourceforge.net/projects/dban/files/dban/)。dban-1.0.7(2006-08-13)とdban-2.2.6(2010-05-24)は、よく使用されているバージョンのようである。しかし、1.0.7と2.2.6は、いずれも当方の自作機の3台ではエラーを生じ使用することができず、2.3.0のみが使用可能であった。

 DBANは、現在Blanccoが提供しており、個人用途向けの無償版とされ、業務用途向けには有償のBlancco Drive Eraserが勧められており、その無償評価版としてBlancco Drive Eraser Freeが用意されている。

 DBANの「Wipe Method」(消去方法)は6種選択でき、デフォルトでDoD 5520.22-Mが実行される。そこには「DoD Short」と表記され、「The American Department of Defense 5220.22-M short wipe.」と説明されているが、3回の上書きの後「blanking pass」(ゼロフィル)を1回行うものであり、一般にはこれで充分であろう。また、「Quick Erase」も選ぶことができ、1回の「blanking」(ゼロフィル)が実行される。

※参考:
・DSS(米国防保安局). 2006. NATIONAL INDUSTRIAL SECURITY PROGRAM OPERATING MANUAL February 28, 2006. http://www.dss.mil/documents/odaa/nispom2006-5220.pdf

・NISPOM Portal. 2013. NATIONAL INDUSTRIAL SECURITY PROGRAM OPERATING MANUAL FEBRUARY 2006, Incorporating Change 1 March 28, 2013. http://www.nispom.org/NISPOM-download.html

・DSS. 2016. NATIONAL INDUSTRIAL SECURITY PROGRAM OPERATING MANUAL FEBRUARY 2006, Incorporating Change 2, May 18, 2016. http://www.dss.mil/isp/fac_clear/download_nispom.html

・FAS(米国科学者連盟). 1995. NATIONAL INDUSTRIAL SECURITY PROGRAM OPERATING MANUAL SUPPLEMENT Februay 1995. https://fas.org/sgp/library/nispom.htm

・University of Oklahoma Health Sciences Center Information Technology. 1995. Clearing and Sanitization Matrix (C&SM). https://it.ouhsc.edu/policies/documents/infosecurity/DoD_5220.pdf

・DSS. Industrial Security Letter, ISL 2007-01 (October 11, 2007), pp.19-22, "Clearing and Sanitization Matrix (Updated June 28, 2007)". http://www.dss.mil/documents/isp/ISL%202007-01.pdf

・NIST. 2006. Special Publication 800-88, Guidelines for Media Sanitization, September, 2006. http://ws680.nist.gov/publication/get_pdf.cfm?pub_id=50819

・情報処理推進機構. 「セキュリティ関連NIST文書」. https://www.ipa.go.jp/security/publications/nist/

・Phooen, Sonpooshi. 2012. 「Secure Eraseとは」. http://blog.phooen.com/blog-entry-32.html

・瀧澤和子. 1916. 「データ消去に関する海外規格の動向」. https://digitalforensic.jp/wp-content/uploads/2016/02/standards.pdf

・Hashim M. S. Alawadi, Joseph D. Mount and Khalid J. Elibiary (Tabernus). "Security, Remanence, and Sanitizing of Sensitive and Confidential Data". http://www.tabernus.com/press/ITNS_Paper_Data_Remanence.pdf (Tabernusは、2015年にBlancco Technology Groupに買収されている。)
(以上閲覧日:2017年5月28日)


5. セクタの再生

 ところで、物理フォーマットやデータの抹消とは異なり、HDDのセクタの再生を行うソフトウェアがある。HDD Regeneratorというソフトである。これは、その名の通りセクタの再生を行なうものであり、HDDの不良セクタの修復を試みるソフトである(http://www.dposoft.net/hdd.html)。

 このHDD Regeneratorの起動画面には、冒頭「HDD Regenerator serves to repair bad sectors on damaged hard drives without any loss of the existing data.(HDD Regeneratorは、既存のデータをそのままに、損傷を受けたHDDの不良セクタの修復を行なうものである。」と表示される。上記のサイトには、「How it works」と題されて、「不良セクタによって損傷を受けたHDDのほぼ60%は、ディスク表面が誤って磁化されています。我々は、損傷を受けたディスク表面を修復するために使用するアルゴリズムを開発しました。この技術は、ハードウェアに依存せずに、多くの種類のHDDに対応し、ローレベル・フォーマットでさえ修復できない損傷を修復するものです。その結果、これまで読み取れなかった情報が回復されることになります。この修復方法によれば、HDD上の既存の情報は影響を受けないのです。」と説明されている。

 HDD Regeneratorは有償ソフトであるが、free demo versionもある。この無償のデモバージョンを使えば、最初に見つかった不良セクタの修復を試み、その結果に基づきフルバージョンによってディスク全体を再生することが可能かどうかを示してくれるという。不良セクタによってデータを読み出せなくなった場合、およそ60%は再生可能だというのであるから、最後の頼みの綱として試してみる価値はあると思われる。
 ただし、HDDの全てのセクタに対して一つ一つ丁寧に作業を行うため完了には相当の時間を要するとのことなので、留意しておく必要がある(ハードディスク番長、「HDD Regeneratorで不良セクタを修復する」)。

※参考:
・ABSTRADROME. HDD Regenerator. http://www.dposoft.net/hdd.html

・ハードディスク番長. 「HDD Regeneratorで不良セクタを修復する」. https://hddbancho.co.jp/hdd_regenerator.html
(以上閲覧日:2017年6月4日)


6. システムエリア(サービスエリア)

 HDDのディスク上には、システムエリア又はサービスエリアと呼ばれる領域がある。そこには、HDDが正常に動作し、機能するための情報が保存されている。それは、最初のセクタ 0より外周のトラックに存在し、ユーザがアクセス可能な最後尾のセクタより後方に存在してHDDベンダーが独自の設定やサービスのために使用するHPA(Host Protected Area)やDCO(Device Configuration Overlay)とは異なる。

システムエリアは、
●システム情報
 ・HDDの仕様に関する情報(HDDモデル名/シリアルナンバーなど)
 ・S.M.A.R.T.(HDDの自己診断機能)
 ・P-List(製造段階で生じた不良セクタに関する情報)
 ・G-List(出荷後に生じた不良セクタに関する情報とその再配置情報)
 ・ファームウェア
 ・ゾーンテーブル(HDDの外周部と内周部の記録密度を調整するための情報)
 ・セキュリティ情報(パスワードや暗号化に関する情報)
●メンテナンス・トラック
●キャリブレーションエリア(HDD本体の発熱や、環境の変化によってHDDのプラッタが膨張したり、ヘッドのアライメントに歪みが生じるため、ヘッドがトラックの中心を正確にトレースできるようにHDDは定期的に歪みを補正するキャリブレーション処理を自動で行っている。)
●イニシャライゼーション・エリア
 などから構成されている(データ復旧センター、「ハードディスク故障箇所の特定について」)。

 HDDによっては、前述の註※2で触れたHDDの基板にある不揮発性メモリに、ヘッド位置の初期値だけでなく、フォームウェアの一部やHDDを特定する固有の情報等が格納されており、電源が入るとこの情報と上記のシステムエリアの情報とが照合され、確認後に正常に動作を開始するものもあるとされる(DataBE Data Recovery Service、「How Hard Drive works: Firmware on Disk Platter and PCB」)。

※参考:
・データ復旧センター. 「ハードディスク故障箇所の特定について」. http://www.drivedata.jp/hdd/hdd-troublepoint.html

・DataBE Data Recovery Service. "How Hard Drive works: Firmware on Disk Platter and PCB". http://www.databe.com/articles/article6.html
(以上閲覧日:2017年6月4日)

フォーマット、その2~論理フォーマット」】
ページトップ