テクノロジー · 実用ガイド

Rclone cryptの整合性を確認するには? --checksumを信頼する前にハッシュを監査

コマンドの成功だけでは検証完了とは言えません。cryptの構成とバックエンドのハッシュ能力を確認し、cryptcheckかダウンロード比較を選び、すべての結果を記録します。エラーや未対応の対象は検証済みに含めません。

平文から暗号化ゲートを通る検証済みクラウド対象と未解決の対象を描くオリジナル概念図
オリジナル概念図:平文取得元、crypt層、基盤チェックサムの経路を整理してから検証済みと判定します。 Watch at Ease

暗号化バックアップが正常に見えても、検証が名前やサイズの比較、または一部の対象だけに退化している場合があります。平文の取得元、cryptのラッパー、基盤ストレージを同一の端点として扱うと、それぞれが公開するハッシュの違いを見落としやすくなります。

専用のcryptcheckは宛先オブジェクトのnonceを読み、同じnonceで取得元ファイルを暗号化して、その暗号文のチェックサムと基盤バックエンドのチェックサムを比較します。数に含めるすべての対象で、実際に利用可能なチェックサムが必要です。

整合性比較は読み取り専用で、リモートの同期、コピー、消去、削除はしません。サンプル復元は別の操作で、隔離した場所を使います。範囲内の各対象を重複なく一つの記録済み分類に割り当て、読み取り・ハッシュエラー、未対応チェックサム、スキップや説明できない件数差があれば完全検証とは呼びません。

1. 範囲を固定し、三層の構成を記録する

平文の取得元、設定したcryptリモート、それが指す基盤ストレージのパスを書き出します。正確なrcloneバージョン、設定名、下位パス、フィルター、取得元がローカルか別リモートかを記録します。パスワード、難読化した認証情報、トークンを公開してはいけません。

実行前に方向を確認します。`rclone cryptcheck source:path cryptedremote:path`の二番目は設定済みのcryptリモートであり、生の基盤ストレージのパスではありません。二つの生の暗号文ストアや二つの復号ビューの比較は別の問いに答えるため、説明なしに代用できません。

信頼する取得元から予想一覧を作り、対象件数、総バイト数、フィルターと既知の除外を記録します。この分母が、きれいなログに隠れた未検査ファイルを発見する基準になります。

2. 暗号化バックエンドのハッシュ能力を確認する

公式cryptcheckリファレンスは、crypt宛先の基盤リモートが何らかのチェックサムに対応することを要求しています。cryptラッパーがあるだけでハッシュがあると考えず、バックエンドと対象の種類を確認します。

導入したrcloneバージョンに適した読み取り専用の機能・メタデータ確認を行い、出力を保存します。小さい対象でハッシュが得られても、分割アップロード、チャンクや特殊な対象まで同じ範囲を保証しません。

ハッシュを確認できないという報告、互換ハッシュの欠如、特定種類のチェックサム欠落があれば、それらについてcryptcheck合格を宣言しません。未対応件数を記録し、別の検証経路を選びます。

3. 実際の問いに合った比較方法を選ぶ

信頼する取得元が平文、宛先がcryptで、基盤バックエンドにチェックサムがある場合はcryptcheckを使います。ローカル取得元なら、宛先のnonceを読んだ後、ローカルで暗号化とハッシュ計算ができます。

取得元が別リモートなら全ファイルをダウンロードする可能性があると公式資料は説明します。同じコマンドを安価なサーバー側比較と思い込まず、通信量、送信料金、時間、ローカル資源を見積もります。

通常の`rclone check`は普通の端点間で、変更せずに一覧や共通ハッシュを比較する方法です。`--download`はハッシュがない場合などにダウンロード内容を比較しますが、帯域を多く使う別経路です。サイズだけの比較は一覧確認の材料で、バイト整合性の証明ではありません。

4. 全体検証の前に小さなcanaryを実行する

小さいファイル、大きいファイル、本番外で安全に用意できる同サイズの変更ファイル、ハッシュ動作が違いそうな対象種類を含む代表的canaryを選びます。ファイルとパスに機密情報を使いません。

固定した集合だけでcryptcheckを実行し、combined、match、differ、missing-on-source、missing-on-destination、errorの各報告を保存します。コマンド、開始終了時刻、バージョン、終了状態も残します。

combinedの記号は厳密に読みます。`=`は同一、`-`は宛先だけ、`+`は取得元だけ、`*`は内容相違、`!`は読み取りまたはハッシュエラーです。感嘆符は内容不一致ではなく、検証済みに含めません。

5. 証拠を弱めずに検証範囲を広げる

canaryで想定したハッシュ経路を確認したら、同じ端点方向とフィルターで全範囲を検証します。制限、メモリー不足やバックエンドの抑制でカバレッジエラーが埋もれないよう、checkerの並列数を控えめにします。

`--one-way`が復元上の問いに合うかを判断します。取得元ファイルが宛先に存在し一致することは確認しますが、宛先だけの追加対象は意図的に報告しません。古い・予想外の暗号文も重要なら、一方向で合格にしてはいけません。

報告を改変しない実行証拠として保存します。警告やNOTICEにハッシュ不足・フォールバックの証拠が含まれるため、標準出力だけのリダイレクトでは不十分です。

6. 検証済みと呼ぶ前に対象数を照合する

各取得元対象を一度だけ数え、一致、相違、取得元だけ、読み取り・ハッシュエラー、ハッシュ未対応またはスキップによる未検証に分類します。記録した除外も明示します。宛先だけの対象は別枠で、重複する報告の同じ対象を二重計上しません。

完全合格には相違、予想外の欠落、読み取り・ハッシュエラー、未対応対象がすべてゼロで、分母が説明できることが必要です。終了状態と要約は補助証拠で、対象分類の帳簿に代わりません。

件数が合わなければ、フィルター、権限失敗、不正な名前、制限やハッシュのない対象を特定してから範囲を絞って再実行します。割合をよく見せるため未解決対象を一致に移してはいけません。

分類:一致(`=`)。意味:取得元と暗号化宛先の同一性を検証。扱い:検証済みに計上。

分類:相違(`*`)。意味:両方に存在するが検証した内容が違う。扱い:不合格、調査。

分類:宛先に欠落(`+`)。意味:取得元にあるが宛先にない。扱い:バックアップの完全性不合格。

分類:取得元に欠落(`-`)。意味:宛先の追加対象。扱い:意図した除外でなければ調査。

分類:読み取り・ハッシュエラー(`!`)。意味:読み取りやハッシュ計算ができない。扱い:未検証、この実行は不合格。

分類:チェックサム未対応。意味:必要な基盤ハッシュがない。扱い:未検証、別の方法を選択。

7. 転送の安全性と復元の確実性を分ける

2026年7月のコミュニティ事例では、共通ハッシュがないというNOTICEのためchecksumによる同期がサイズだけに退化し、同サイズの編集が更新されず、cryptcheckで初めて差が見つかりました。実際の構成への警告ですが、すべてのバックエンドに一般化しません。

cryptcheckが証明するのは、ある時点の選んだ取得元バイトと暗号化宛先の等価性です。取得元が望む過去版であること、認証情報を復旧できること、アプリ上の復元成功は証明しません。

別の復元テストとしてサンプルを隔離パスへ復元し、想定設定で復号して、取得元を上書きせずアプリから見えるファイルを確認します。cryptcheckの帳簿と復元証拠は別々に記録します。

8. 秘密を含まないサポート用記録を作る

匿名化した構成、rcloneバージョン、バックエンド種別、正確な読み取り専用コマンド、フィルター、予想件数、報告件数、未対応件数、終了状態、実行時刻を保存します。取得元がローカルかリモートか、一方向モードかも書きます。

設定パスワード、トークン、アカウント識別情報、私的ファイル名を除外します。再現例の共有には生成したテストファイルと秘匿処理した設定出力を使います。

端点方向、基盤ハッシュ能力、フィルター、対象種類、報告の分母を明確にしてから相談します。保守担当者が実際の不具合、利用不能なチェックサム、高コストのリモート取得元、不完全な一覧を区別できます。

よくある質問

`rclone check`はcryptの平文ハッシュを検証しますか?単独ではしません。公式資料はcryptcheckで暗号化ファイルのチェックサムを比較するよう案内します。通常のcheckは読み取り専用の一覧情報を提供し、`--download`は通信費を伴う別の内容比較経路です。

cryptcheckは全ファイルをダウンロードしますか?ローカル平文なら宛先nonce取得後にローカルで読み込み暗号化できます。別リモートを取得元にすると全取得元ファイルのダウンロードが必要な場合があります。

combinedの`!`は何ですか?取得元か宛先の読み取り・ハッシュエラーです。内容相違ではなく、解決するまで未検証とします。

`--one-way`だけでバックアップを検証できますか?宛先だけの追加対象を合格判定から除外する場合だけです。取得元が宛先に存在して一致することを要求しますが、宛先の追加ファイルは報告しません。

成功の要約は全暗号化バイトの検証を証明しますか?予想一覧と報告分類が照合でき、未対応チェックサム、スキップ、読み取り・ハッシュエラーがない場合だけです。単なる成功行より分母を伴う帳簿を残します。

一致、相違、欠落、読み取りエラー、未対応チェックサムを分けたオリジナル概念図
オリジナル概念図:各対象を個別の結果分類に照合し、エラーや未対応ハッシュは検証済みに含めません。 Watch at Ease