Repolode
hyphy-void

hyphy-void/Parcel

Cloudflare Workers、D1、R2を使い、自分のアカウント上で運用できる、エンドツーエンド暗号化対応の一時ファイル共有サービスです。

代替できる製品:WeTransfer

スター
100
フォーク
5
未解決の Issue
0
最終コミット
18 日前

これは何?

Parcelでは、ファイルをアップロードしてリンクを取得し、共有の有効期限を設定できます。ファイルは送信者のブラウザでランダムな256ビット鍵を使ってAES-256-GCMで暗号化され、非公開のR2バケットに直接アップロードされた後、受信者のブラウザで復号されます。ファイル鍵と元のファイル名は暗号化されたエンベロープに封入されるため、サーバーから開くことはできません。

アプリはCloudflare Workers上で動作し、共有状態はD1に、暗号文は非公開のR2に保存されます。共有には任意でパスワード、有効期限、ダウンロード回数の上限を設定でき、いつでも取り消せます。スケジュール実行されるタスクが、期限切れまたは上限に達した共有を削除し、ストレージを回収します。

アップロードとダウンロードは分割転送に対応し、中断後に再開できます。暗号化チャンクのサイズは16 MiB、1ファイルあたりのデフォルト上限は8 GiBです。管理者ログインでは、パスワードとTOTPに加えてリカバリーコードを使用します。

主な機能

  • 01ファイルごとに生成するランダム鍵を使った、ブラウザ側でのAES-256-GCM暗号化。
  • 02非公開のR2ストレージへの直接分割アップロードと、中断後の転送再開。
  • 03任意のパスワード、有効期限、ダウンロード回数の上限を設定できる共有リンク。
  • 04共有の取り消しと、期限切れファイルのスケジュール削除。
  • 05パスワードとTOTPによる管理者ログイン、およびリカバリーコード。

ユースケース

  • 自動的に期限切れになるリンクで、大容量ファイルを相手に送る。
  • サードパーティのファイルホスティングサービスを使わず、自分のCloudflareアカウント上でプライベートなファイル受け渡し環境を運用する。
  • ホスティングサーバーから内容を読めないようにして、機密ファイルを共有する。

クイックスタート

  1. 1

    Deploy to Cloudflare ボタンをクリックし、Node 24、ビルドコマンド `npm run build`、デプロイコマンド `npm run deploy` を設定します

  2. 2

    リポジトリをクローンします

    git clone https://github.com/hyphy-void/Parcel.git
  3. 3

    プロジェクトフォルダに移動します

    cd Parcel
  4. 4

    一時的な管理者セットアップトークンをローカルで生成します

    npm run admin:setup-token

使う前に知っておきたいこと

  • Workers、D1、R2 を有効にした Cloudflare アカウントが必要です。
  • セットアップには Node.js 24 と Bash が必要で、いくつかの手動設定が必要です。
  • 受信者が復号したファイルを保存するには、ファイルサイズの約2倍のローカルディスク容量が必要です。
  • 紛失したファイルキーや共有リンクは、サーバー側では復元できません。

収録されている特集

トピック

よくある質問

Parcel とは?
Cloudflare Workers、D1、R2を使い、自分のアカウント上で運用できる、エンドツーエンド暗号化対応の一時ファイル共有サービスです。 Parcelでは、ファイルをアップロードしてリンクを取得し、共有の有効期限を設定できます。ファイルは送信者のブラウザでランダムな256ビット鍵を使ってAES-256-GCMで暗号化され、非公開のR2バケットに直接アップロードされた後、受信者のブラウザで復号されます。ファイル鍵と元のファイル名は暗号化されたエンベロープに封入されるため、サーバーから開くことはできません。
Parcel は無料で使えますか?ライセンスは?
Parcel は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
Parcel は今もメンテナンスされていますか?
活発にメンテナンス中。Parcel の最終コミットは 2026年10月20日 です。
Parcel は何に使えますか?
自動的に期限切れになるリンクで、大容量ファイルを相手に送る。 サードパーティのファイルホスティングサービスを使わず、自分のCloudflareアカウント上でプライベートなファイル受け渡し環境を運用する。 ホスティングサーバーから内容を読めないようにして、機密ファイルを共有する。
Parcel のインストール方法は?
Deploy to Cloudflare ボタンをクリックし、Node 24、ビルドコマンド `npm run build`、デプロイコマンド `npm run deploy` を設定します リポジトリをクローンします: git clone https://github.com/hyphy-void/Parcel.git プロジェクトフォルダに移動します: cd Parcel 一時的な管理者セットアップトークンをローカルで生成します: npm run admin:setup-token
Parcel はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/hyphy-void/Parcel

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト