仕様と根拠
どこまでを値とみなすか
dotenv の README では、KEY=value の形で 1 行に 1 つ定義し、空行はとばし、行頭が # の行はコメントです。引用符(二重・単・バッククォート)で囲んだ値は引用符の中が値で、複数行にまたがれます。引用符なしの値は、空白と # の組み合わせより後ろが行末コメントになります。この道具もこの範囲を値として伏せます。
伏せ字とダミー
伏せ字は値を *** に、ダミーは値を your_ にキー名を小文字にした文字列に置き換えます。引用符の種類と行末コメントは元のまま残るため、元ファイルの形が分かります。空値は空のままで、設定されていないことを保ちます。
安全側の扱い
README に書式の記載がない「export KEY=value」は、値が漏れないよう伏せ字にしたうえで未確認の書式として警告します。「# KEY=value」のようにコメントアウトされた設定の値も伏せます。KEY=value の形ではない行は、伏せ字の結果では行ごと伏せます。
根拠にした仕様・資料
| 仕様・資料 | 確認日 | 使った箇所 |
|---|---|---|
| dotenv README(.env の書式) | 2026年10月29日 | KEY=value、行頭 # のコメント、値の後ろの行末コメント(# を含む値は引用符で囲む)、空値は空文字列、単引用符・二重引用符・バッククォート、引用符内の複数行(v15.0.0 以降)、引用符なしの値は前後の空白を除く。export 接頭辞の記載は README にない(未確認の書式)。WebFetch で確認 |
指摘の段階
- エラー: 仕様に反していて、正しく読めない・処理できない入力です。
- 警告: 読めるものの、仕様の推奨に反する・矛盾する・意図と違う結果になりやすい入力です。
- 情報: 誤りではありませんが、知っておくとよい扱い(読み飛ばした部分や解釈)です。
入力の扱い(送信しない仕組み)
処理はすべてお使いのブラウザの中で行います。処理の本体はこのサイトから配信する小さなスクリプト(/app.js)で、外部のサービスやライブラリを読み込みません。ページはブラウザに通信を禁止させる設定(Content-Security-Policy の connect-src)つきで配信しており、入力した内容がサーバーや第三者へ送られることはありません。ファイルを選んだ場合も、端末の中で読み込むだけです。
このツールでできないこと(制約)
- 値を共有用に伏せるだけで、安全性の保証ではありません。コメントの文章、行末コメント、キー名そのものに秘密が含まれていると、そのまま残ります。
- dotenv の README にない拡張(変数展開 ${VAR}、コマンド置換、エスケープの細かい挙動)は扱いません。これらは値の一部として伏せます。
- キー名の分類(秘密か設定か)や、2 つの .env の差分比較はできません。
ご利用にあたって
- 伏せ字にしても安全とは限りません。共有前に結果を必ず目で確認してください。
- 一度でも本物の秘密を公の場所に載せてしまった場合は、その値を無効化(再発行)してください。