Repolode
shingrus

shingrus/1time.io

ワンタイムパスワード、APIキー、テキスト、暗号化ファイルを、閲覧後に消えるリンクで共有できるセルフホスト型のゼロ知識サービス。

代替できる製品:OneTimeSecretPassword 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. 1

    npm から CLI をインストールする

    npm install -g @1time/cli
  2. 2

    ターミナルからシークレットを送信する

    printf 'postgres://user:pass@host/db' | 1time send
  3. 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 の数値は毎日更新されます。

関連プロジェクト