ブラウザー内でファイルを暗号化し、サーバーには暗号文だけを保存するセルフホスト型のファイル・メモ共有サービス。
shingrus/1time.io
ワンタイムパスワード、APIキー、テキスト、暗号化ファイルを、閲覧後に消えるリンクで共有できるセルフホスト型のゼロ知識サービス。
代替できる製品:OneTimeSecret
Password Pusher
- スター
- 88
- フォーク
- 18
- 未解決の Issue
- 2
- 最終コミット
- 一昨日
これは何?
1timeは、パスワード、APIキー、機密テキスト、暗号化ファイルを、閲覧後に削除されるリンクで送信できるシークレット共有サービスです。アップロード前にブラウザー上でAES-256-GCMによる暗号化を行い、暗号鍵はURLフラグメントに保持されます。URLフラグメントがサーバーに送信されることはないため、運営者が保存データを読み取ることはできません。
このプロジェクトには、Redisをストレージに使うGoバックエンド、Astro製の静的フロントエンド、ターミナルからシークレットをパイプで渡せる、@1time/cliとして公開されているNode.js CLIが含まれています。選択したテキストを共有するChrome拡張機能のほか、パスワード、パスフレーズ、APIキー、WiFiパスワードの生成機能も備えています。ファイルは暗号化されたblobとしてディスクに保存されます。
セルフホストには、amd64とarm64向けのマルチアーキテクチャイメージを使うDocker Composeを利用できます。UbuntuおよびDebianのVM向けに、systemdベースのデプロイスクリプトも用意されています。リンクはデフォルトで1回だけ閲覧でき、テキストとファイルでは小さな固定回数の上限を設定できます。
主な機能
- 01ブラウザー上でAES-256-GCM暗号化を行い、鍵をURLフラグメントに保持
- 02ワンタイムダウンロードリンクを使った暗号化ファイルの共有
- 03パイプやターミナルからシークレットを送信・読み取りできるコマンドラインツール
- 04パスワード、パスフレーズ、APIキー、WiFiパスワードの生成機能
- 05Redisによる永続化とnginxフロントエンドを備えたDocker Composeでのセルフホスト
ユースケース
- データベースの認証情報やAPIキーを、チャット履歴に残さずチームメイトに送る
- CLIを使い、DevOpsパイプラインでシークレットの受け渡しをスクリプト化する
- 社内チーム向けにプライベートなワンタイムシークレットサービスをホストする
- 一度だけダウンロードしてほしい暗号化ファイルを共有する
クイックスタート
- 1
npm から CLI をインストールする
npm install -g @1time/cli - 2
ターミナルからシークレットを送信する
printf 'postgres://user:pass@host/db' | 1time send - 3
リンクを使ってシークレットを読み取る
1time read 'https://1time.io/v/#...'
使う前に知っておきたいこと
- Docker Compose によるセルフホストでは、HTTPS リバースプロキシを自分でセットアップし、APP_HOSTNAME を設定する必要があります。
収録されている特集
トピック
よくある質問
- 1time.io とは?
- ワンタイムパスワード、APIキー、テキスト、暗号化ファイルを、閲覧後に消えるリンクで共有できるセルフホスト型のゼロ知識サービス。 1timeは、パスワード、APIキー、機密テキスト、暗号化ファイルを、閲覧後に削除されるリンクで送信できるシークレット共有サービスです。アップロード前にブラウザー上でAES-256-GCMによる暗号化を行い、暗号鍵はURLフラグメントに保持されます。URLフラグメントがサーバーに送信されることはないため、運営者が保存データを読み取ることはできません。
- 1time.io は無料で使えますか?ライセンスは?
- 1time.io は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- 1time.io は今もメンテナンスされていますか?
- 活発にメンテナンス中。1time.io の最終コミットは 2026年11月5日 です。
- 1time.io は何に使えますか?
- データベースの認証情報やAPIキーを、チャット履歴に残さずチームメイトに送る CLIを使い、DevOpsパイプラインでシークレットの受け渡しをスクリプト化する 社内チーム向けにプライベートなワンタイムシークレットサービスをホストする 一度だけダウンロードしてほしい暗号化ファイルを共有する
- 1time.io のインストール方法は?
- npm から CLI をインストールする: npm install -g @1time/cli ターミナルからシークレットを送信する: printf 'postgres://user:pass@host/db' | 1time send リンクを使ってシークレットを読み取る: 1time read 'https://1time.io/v/#...'
- 1time.io はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/shingrus/1time.io
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
閲覧回数や期限で失効するワンタイムリンクを使って、パスワード、メモ、ファイル、URLを共有できるオープンソースのWebアプリ。監査ログにも対応。
データベースサーバー不要で、パスワードや秘密情報を一度だけ共有できるセルフホスト型の暗号化Webアプリです。
ブラウザー上でAES-256暗号化したシークレットを共有し、初回閲覧後に削除するワンタイム共有Webアプリ。
PrivNoteに着想を得た、RustバックエンドとSvelteフロントエンドによるセルフホスト可能なオープンソースの暗号化メモ・ファイル共有サービスです。
ブラウザーでAES-256-GCM暗号化する、1回表示または24時間後に消えるエンドツーエンド暗号化pastebin。