MacでHexエディタを使うなら「HexEd.it」:HxDの代替ツールガイド
はじめに
iPRES(International Conference on Digital Preservation)のワークショップに参加した際、デジタル保存の実践的な演習でHexエディタ「HxD」が使用されました。バイナリファイルの構造解析やファイルフォーマットの確認など、デジタルアーカイブの現場では欠かせないツールです。
しかし、HxDはWindowsのみ対応で、Macでは使用できません。ワークショップ後、Mac環境で同様の作業を行うための代替ツールを探した結果、Web版のHexエディタを見つけました。
そこで本記事では、Macユーザー向けに**Web版Hexエディタ「HexEd.it」**の使い方を詳しく紹介します。iPRESワークショップで学んだHxDの使い方を、HexEd.itでも実践できるようガイドします。
HxDとは?なぜMacで使えないのか
HxD Hex Editorは、Windows向けの高機能なHexエディタです。無料で使えて動作が軽快なため、多くの開発者やセキュリティ研究者に使用されています。
HxDの主な特徴
- 高速な動作
- 大容量ファイル対応
- RAM編集機能
- ディスクエディタ機能
- チェックサム計算
しかし、HxDはWindows専用アプリケーションとして開発されており、macOSには対応していません。仮想環境やWineを使えば動作させることも可能ですが、手間がかかります。
HexEd.it - ブラウザで使える代替ツール
Mac環境で使用できる代替ツールとしてHexEd.it(https://hexed.it/)があります。
HexEd.itの特徴
✅ クロスプラットフォーム対応
- Windows、Mac、Linux、どのOSでもブラウザがあれば使える
- インストール不要で即座に使える
✅ プライバシー重視
- ファイルはブラウザ内で処理され、サーバーにアップロードされない
- オフラインでも動作可能
✅ 豊富な機能
- Hex/ASCII同時表示
- バイト編集
- 検索・置換
- ファイルの比較
- データ型変換(int, float等)
- エクスポート機能
✅ 無料で使える
- 基本機能は完全無料
HexEd.itの使い方
1. ファイルを開く
- ブラウザで https://hexed.it/ にアクセス
- 「Open file」ボタンをクリック
- 編集したいファイルを選択
または、ファイルを画面にドラッグ&ドロップすることもできます。
2. インターフェースの見方
HexEd.itの画面は主に3つのエリアに分かれています:
┌─────────────┬──────────────────────────┬──────────────┐
│ オフセット │ Hex表示エリア │ ASCII表示 │
├─────────────┼──────────────────────────┼──────────────┤
│ 00000000 │ 50 4B 03 04 14 00 00 00 │ PK..........│
│ 00000010 │ 08 00 00 00 21 00 AB CD │ ....!.......│
│ 00000020 │ EF 01 23 45 67 89 AB CD │ ..#Eg.......│
└─────────────┴──────────────────────────┴──────────────┘
オフセット(左側)
- ファイル内の位置を16進数で表示
- 00000000から始まる
Hex表示エリア(中央)
- バイトデータを16進数で表示
- 1行に16バイト表示(標準設定)
ASCII表示エリア(右側)
- バイトを文字として表示
- 印字可能な文字はそのまま表示、それ以外は「.」で表示
3. データの編集
バイトの編集
- 編集したいバイトをクリック
- 新しい値を16進数で入力(例:
FF、00、5A) - Enterキーで確定
複数バイトの編集
- 編集したい範囲をドラッグで選択
- 右クリックメニューから「Edit」を選択
- 新しい値を入力
4. 検索機能
特定のバイトパターンやテキストを検索できます。
Hex検索
- 上部メニューから「Search」→「Find」を選択
- 「Hex」タブを選択
- 検索したいバイト列を入力(例:
FF D8 FF) - 「Find」をクリック
テキスト検索
- 「Search」→「Find」を選択
- 「Text」タブを選択
- 検索したい文字列を入力
- エンコーディングを選択(UTF-8、ASCII等)
- 「Find」をクリック
5. データ型変換
選択したバイトを様々なデータ型として解釈できます。
- バイトを選択(例:4バイト)
- 下部の「Inspector」パネルを確認
- 以下のような形式で表示されます:
- Int8 / Uint8(1バイト整数)
- Int16 / Uint16(2バイト整数)
- Int32 / Uint32(4バイト整数)
- Float(浮動小数点数)
- Double(倍精度浮動小数点数)
これは、バイナリファイルのデータ構造を解析する際に役立ちます。
6. ファイルの比較
2つのファイルの差分を確認できます。
- 最初のファイルを開く
- 「Tools」→「Compare files」を選択
- 比較する2つ目のファイルを選択
- 差分が赤色でハイライト表示される
7. ファイルの保存
編集後、ファイルを保存します。
上書き保存
- 「File」→「Save」を選択
- 編集したファイルがダウンロードされる
名前を付けて保存
- 「File」→「Export」を選択
- ファイル名を指定して保存
選択範囲のみ保存
- 保存したい範囲を選択
- 右クリック→「Export selection」
- 選択部分のみがファイルとして保存される
実用的な使用例
例1:画像ファイルのヘッダー確認
JPEGファイルを開くと、最初のバイトは常にFF D8 FFで始まります。
Offset Hex ASCII
00000000 FF D8 FF E0 00 10 4A 46 49 46 ......JFIF
これにより、ファイルが本当にJPEGかどうかを確認できます。
例2:テキストファイルのエンコーディング確認
テキストファイルの先頭バイトでエンコーディングを判別できます。
UTF-8 BOM付き
EF BB BF
UTF-16 LE BOM付き
FF FE
例3:バイナリファイルの破損チェック
ファイルの途中に不自然なパターンがないか確認できます。例えば、ZIPファイルであれば:
50 4B 03 04 ← ZIPファイルのマジックナンバー
で始まっているはずです。
例4:簡単なファイル修正
ゲームのセーブデータやコンフィグファイルなどで、特定の値を変更したい場合に使えます。
- ファイルを開く
- 変更したい値の位置を検索
- 新しい値に書き換え
- 保存
HexEd.itの制限事項
HexEd.itには、いくつか制限もあります:
ファイルサイズ制限
- ブラウザのメモリに依存
- 非常に大きなファイル(数GB)は開けない場合がある
- HxDと比べると大容量ファイルの処理は苦手
オフライン利用
- インターネット接続が必要(初回アクセス時)
- PWA(Progressive Web App)として保存すればオフラインでも使用可能
高度な機能
- RAMエディタやディスクエディタ機能はない
- HxDの一部の高度な機能は非対応
その他のMac対応Hexエディタ
HexEd.it以外にも、Macで使えるHexエディタがあります:
デスクトップアプリ
Hex Fiend(無料)
- Macネイティブアプリ
- 大容量ファイル対応
- https://hexfiend.com/
Synalyze It!(有料/無料版あり)
- 高機能なバイナリファイル解析ツール
- テンプレート機能で構造解析が容易
- https://www.synalysis.com/
0xED(無料)
- オープンソース
- 基本的なHex編集機能
エディタ拡張
Visual Studio Code + Hex Editor拡張
- VS Codeを使っていれば導入が簡単
- 拡張機能「Hex Editor」をインストール
まとめ
HxDはWindows専用ですが、HexEd.itを使えばMacでも同等の作業が可能です。
HexEd.itの適用例:
- Macユーザー
- インストール不要で使いたい場合
- 複数のOS環境で作業する場合
- プライバシーを重視する場合
- 中小サイズのファイルを扱う場合
デスクトップアプリの適用例:
- 非常に大きなファイルを扱う場合
- オフライン環境で作業する場合
- より高度な機能が必要な場合
用途に応じて、HexEd.itやHex Fiendなどのツールを選択できます。
参考リンク:
- HexEd.it: https://hexed.it/
- Hex Fiend: https://hexfiend.com/
- HxD公式サイト: https://mh-nexus.de/en/hxd/
Discussion