Repository navigation
ja BINARIES
Languages: English | العربية | Čeština | Deutsch | Español | فارسی | Français | हिन्दी | Bahasa Indonesia | Italiano | 日本語 | 한국어 | Nederlands | Polski | Português | Русский | Svenska | ไทย | Türkçe | Tiếng Việt | 中文
VDBackup において、プライバシーとセキュリティは任意ではありません。バックアップツールは あなたの最も個人的なデータに対して root で動作するため、その内部に何が同梱されているかを 正確に確認できなければなりません。このページでは、モジュールが持つすべてのビルド済み バイナリとライブラリ、それぞれの入手元、そして不透明なものが紛れ込んでいないことを 検証する方法を文書化します。
- 不透明なものはない。 同梱されるすべてのバイナリとライブラリは、固定されたバージョンの 名前付きの公開アップストリームまで辿ることができ、SHA-256 が記録されています。確認できる エントリなしに同梱されるブロブはありません。
-
アップストリームから取得し、デバイスからは決して取得しない。 ネイティブツールは公式の
Termux パッケージリポジトリ (
packages.termux.dev/aptにある署名済みの.debファイル) から 取得され、どこかのスマートフォンにインストールされた Termux からコピーされることはありません。 ビルドは明確に失敗し、場当たり的な処理は決して行いません。 - 再現可能。 ビルドを再実行すれば同じファイルが得られ、固定されたソースを再取得すれば SHA-256 の値が一致します。
- 監査証跡はモジュールと共に同梱される。 これはウェブサイト上にあるだけではなく、 インストールされたモジュールの内部、つまりあなたのデバイス上に存在するため、オフラインでも 監査できます。
| 成果物 | 入手元 | ビルド方法 |
|---|---|---|
bin/<abi>/ のネイティブツール (tar, zstd, gzip, lz4, jq, rclone, restic, rsync, ssh/scp/sftp, age, age-keygen, script, sqlite3) とその lib/ 依存閉包 |
公式の Termux apt リポジトリ (packages.termux.dev/apt)、公式の .deb パッケージ |
.github/scripts/build_bin.sh が .deb ファイルとその推移的依存関係をダウンロードして展開し、バイナリと各自が必要とする共有ライブラリのみをコピーします |
bin/<abi>/abx2xml, bin/<abi>/xml2abx (ABX コンバーターのフォールバック) |
rhythmcache/android-xml-converter の GitHub リリース (ABX_RELEASE、静的 ELF) |
build_bin.sh が固定されたリリースからダウンロードします |
companion.apk (任意の Google Drive コンパニオン) |
このリポジトリ、companion/ (Gradle/Kotlin) |
CI によってソースからビルドされ、プロジェクトキー (VD_Key) で署名されます。ビルド済みブロブではありません |
vdbackup_helper.dex (フレームワークヘルパー) |
このリポジトリ、dex/src/ (Java) |
CI によって javac + d8 でソースからコンパイルされます |
ビルド済みのサードパーティバイナリは最初の 2 行だけです。残りの 2 つはこのリポジトリ内にある ソースからビルドされ、読むことも再ビルドすることもできます。
Full エディションと lite エディション。 lite エディションはサイズを小さく保つために
rcloneとrestic(最大の2つのバイナリ)のみを省き、クラウドの保存先やスナップショットモードを初めて使うときにそれらをオンデマンドで(SHA-256 で検証して)取得します。rsyncとssh/scp/sftpは引き続き含まれ、上記に挙げたその他のバイナリもすべて含まれます。Full エディションはrclone(クラウドプロバイダー)とrestic(スナップショット)を埋め込んで提供するため、何もダウンロードされません。
build_bin.sh は ABI ごとに 1 つの bin/<abi>/PROVENANCE.json を書き出します。インストール時に
モジュールはあなたのデバイスの ABI だけを残すため、そのファイルはデバイス上の
/data/adb/modules/vdbackup/bin/<abi>/PROVENANCE.json に残ります。これは以下を記録します:
-
sources: すべてのアップストリームの.deb(パッケージ、バージョン、完全な URL、.debの SHA-256) と ABX リリース (URL、アーカイブの SHA-256)。 -
files:bin/<abi>/の下に実際に同梱されたすべてのファイル (パス、サイズ、SHA-256)。
これは WebUI (About タブからリンクされています) またはエージェント API 経由で読むことができます:
sh /data/adb/modules/vdbackup/helper.sh provenance '' | jq .-
同梱ファイルを確認する。 デバイス上の
bin/<abi>/の下の各ファイルをハッシュし、PROVENANCE.jsonのfiles[].sha256と比較します:cd /data/adb/modules/vdbackup/bin/<abi> sha256sum tar zstd jq rclone ... lib/*
-
ファイルをアップストリームと照合する。 各
sources[]エントリについて、その URL から 固定された.debをダウンロードし、その SHA-256 がdeb_sha256と一致することを確認し、展開して、 含まれるバイナリ/ライブラリが同梱されたものと同じ値にハッシュされることを確認します。Termux リポジトリの.debファイル自体は、Termux の署名済み apt リポジトリから配信されます。 -
ゼロから再ビルドする。
.github/scripts/build_bin.shを自分で実行し (必要なのはcurl,ar,tar,xz,zstd,readelfだけ)、出力を同梱されたものと比較します。 -
コンパニオンと dex。
companion/とdex/をソースから再ビルドします。コンパニオンの 署名はプロジェクトキーVD_Key(SHA-256F3:F8:2B:B9:2F:2C:69:A1:75:90:1D:40:BD:65:DD:A6:8F:2B:B5:88:69:77:F5:EA:8B:BA:AA:51:40:E5:25:2B) です。
同梱されたファイルが記録された入手元と一致しない場合は、セキュリティ問題として扱い、 報告してください (SECURITY.md を参照)。これはまさに、このマニフェストが 可視化するために存在する種類の不一致です。
このドキュメントは Claude (Anthropic) で生成され、VD171 が保守しています。訂正や改善を歓迎します - CONTRIBUTING.md を参照してください。