本文へスキップ
snowkitDev

Unixタイムスタンプを変換、任意のタイムゾーンで

タイムスタンプを貼り付けると、UTCと任意のタイムゾーンの日付、ISO 8601、HTTPの日付形式、ISO週、経過時間が表示されます。

JSONを整形

確認、整形、または1行にまとめます

結果
オプション
インデント

入力に合わせてチェックされ、この端末上で処理されます

秒、ミリ秒、それより長い単位は、数字の桁数から判別され、日付を入力するとタイムスタンプが得られます。

APIレスポンス、トークン、キーも安心して貼り付けてください。何もこのページの外には出ません。

1ページに10個の開発者ツール

日常的に出てくる、ちょっとした変換のためのものです:APIレスポンスの整形、エクスポートのスプレッドシート化、トークンの確認、テスト用IDの生成。各タブは単独で動作し、切り替えても入力が保持され、各タブにはそれぞれ#jwtや#regexのような専用のアドレスがあるため、最もよく使うものをブックマークできます。

貼り付けたものは何もアップロードされません。このページには背後のサーバーがなく、セキュリティポリシーがすべてのネットワーク接続をブロックするため、トークン、キー、顧客データは、このブラウザのタブにとどまります。

JSONフォーマッターとバリデーター

JSONを貼り付けて、検証し、スペース2つ、スペース4つ、タブで整形するか、1行にミニファイします。JSONが無効な場合は、問題のある行と列が表示され、末尾のカンマ、引用符の欠落、一重引用符、JSONでは許されないコメントなどについて、わかりやすい説明が出ます。

  • 数値は書いたとおりに保たれます。多くのフォーマッターは、JSONをJavaScriptに通すため、12345678901234567890が12345678901234567000に丸められたり、1.50が1.5になったりします。このツールは、すべての数値を1文字ずつそのまま保ちます。
  • キーの順序は保持され、数字に見えるキーも同様です。「キーを並べ替え」を選んだ場合は除きます。
  • 重複したキーは、ほとんどのプログラムが最後のものだけを黙って残すため、行番号付きで報告されます。
  • ツリー表示は、構造を開閉できるフォルダとして示し、大きなレスポンスで役立ちます。

JSONからCSV、CSVからJSON

JSONからCSVへは、オブジェクトのリストを受け取り、オブジェクトごとに1行を作ります。入れ子のオブジェクトは、ドットのパスの列に展開されるため、{"stock": {"web": 12}}は、stock.webという名前の列になります。リストは、項目ごとに1列になるか、1つのセルにJSONのまま残り、空のリストとオブジェクトは、セルが空になります。区切り文字、引用符、改行を含むセルは、引用符を二重にする標準の方法で引用符で囲まれるため、Excel、Googleスプレッドシート、Numbersで正しく読み込まれます。

CSVからJSONへは、セルがカンマ、セミコロン、タブ、パイプのどれで区切られているかを検出し、中に改行がある引用符付きのセルを扱い、ドットのパスの列を入れ子のオブジェクトに戻します。数値、true、false、空のセルは、本物のJSONの値になります。郵便番号や電話番号のような先頭にゼロがある数値と、正確に保存できないほど大きな整数は、テキストのままです。

JSONからYAML、YAMLからJSON

YAMLの出力では、YAMLリーダーが誤解しうるすべての値が引用符で囲まれます:yes、no、on、offなどの単語、1.10のようなバージョン番号、先頭にゼロがある数値、日付、特殊文字で始まるテキスト、コロンとスペースが続くテキスト。複数行のテキストは、|を使った読みやすいブロックとして書き出されます。

YAMLリーダーは、現行バージョンのYAML 1.2に従い、実際の設定ファイルで使われるものに対応します:入れ子のマッピングとリスト、インラインの[ ]と{ }のコレクション、エスケープ付きの引用テキスト、|と>のブロック、コメント、アンカーとエイリアス、<<のマージキー、---で区切られた複数のドキュメント。?で始まる複雑なキーには対応せず、!Refのようなカスタムタグは、値は保持されたまま破棄されます。エラーには、行と列が表示されます。

Base64、URL、HTMLのエンコード

  • Base64はテキストをUTF-8としてエンコードするため、アクセント、絵文字、その他の文字体系も、往復で保たれます。デコードは、パディングや改行の有無にかかわらず、標準とURLセーフのBase64を受け付けます。デコードされたバイトが画像のようにテキストでない場合は、ファイルの種類が表示され、ダウンロードできます。最大10 MBのファイルを、HTMLやCSS用のデータURLにできます。
  • URLエンコードには2つの範囲があります。1つは、アドレスで意味を持つものすべてをエンコードするもので、単一のクエリ値に適しています。「アドレス全体」は、:、/、?、&などの文字を残し、スペースとその他の安全でない文字だけをエンコードします。完全なアドレスは各部分に分割され、すべてのクエリパラメーターがデコードされます。
  • HTMLエンティティは、<、>、&、引用符を、HTMLで安全なテキストにし、デコードでは、&eacute;のような名前付きのエンティティと、数値のエンティティを、すべて理解します。

Unixタイムスタンプ変換

Unixタイムスタンプは、UTCの1970年1月1日の午前0時からの秒数です。JavaScriptを含む多くのシステムは、代わりにミリ秒を数え、マイクロ秒やナノ秒を使うものもあります。数値を貼り付けると、桁数から単位が検出されるか、ご自身で設定できます。UTCと任意のタイムゾーンでの日付、オフセット付きのISO 8601、HTTPとメールの日付形式、年内の通算日、ISO週、どのくらい前か先かが得られます。逆方向にも使え、日付と時刻を入力するとタイムスタンプが得られます。

UUIDジェネレーター

一度に最大1,000個のUUIDを作成します。バージョン4は完全にランダムで、ほとんどの用途で安全な既定です。RFC 9562で定義されたバージョン7は、ミリ秒のタイムスタンプで始まるため、後から作られたIDが前のものより後ろに並び、データベースのキーに向いています。1回のバッチで作られたUUIDは、同じミリ秒の中でも順序が保たれます。UUIDを「検査」に貼り付けると、バージョン、バリアント、バージョン1、6、7では作成された日時がわかります。

ハッシュ生成

任意のテキストまたはファイルの、MD5、SHA-1、SHA-256、SHA-384、SHA-512のハッシュを一度に取得します。SHAのハッシュは、ブラウザ内蔵のWeb Cryptoを使い、MD5はこのページで計算されます。公開されているチェックサムを「比較対象」に貼り付けると、ダウンロードが無事に届いたか確認でき、一致するハッシュには、どのアルゴリズムでも印が付きます。テキストはUTF-8としてハッシュされ、そのテキストを含み、最後に改行のないファイルに対するsha256sumやopensslと同じです。

パスワードとパスフレーズの作成

パスワードは、ブラウザの暗号用乱数生成器で作られ、文字による偏りはありません。長さと文字の種類を選び、パスワードを読み上げたり紙から入力したりするときに紛らわしい文字を除外できます。選んだ種類の文字が、それぞれ少なくとも1文字含まれます。

パスフレーズは、約1,400語の短い一般的な英単語のリストから、ランダムな単語をつなげたものです。ランダムな6語は、記号の羅列より入力しやすく覚えやすいうえ、推測もきわめて困難です。表示される強度は、パスワードの作り方を攻撃者が正確に知っていると仮定したビット単位のエントロピーで、時間は、毎秒100億回の試行で、すべての可能性の半分を試すのにかかる時間です。

JWTデコーダー

JSON Web Tokenは、ヘッダー、クレームのペイロード、署名の3つの部分からなります。トークンを貼り付けると、ヘッダーとペイロードが読め、exp、nbf、iatの時刻が日付として表示され、トークンの期限が切れているときや、まだ有効でないときは、わかりやすい注意が出ます。

デコードは検証ではありません。誰でも任意のペイロードでトークンを作れるため、署名が確認されるまで、トークンの内容を信頼しないでください。HS256、HS384、HS512で署名されたトークンは、共有秘密鍵を入力すると、Web Cryptoで署名をここで確認できます。RS256、ES256などの公開鍵方式で署名されたトークンには、発行者の公開鍵が必要で、このページでは確認しません。

正規表現テスター

JavaScriptの正規表現と一部のテキストを入力すると、すべての一致がハイライトされ、位置の表、番号付きグループと名前付きグループ、置換のライブプレビューが表示されます。パターンは、時間制限付きで別のバックグラウンドワーカーで実行されるため、長いaの行に対する(a+)+$のように、終わらないパターンは、1秒半後に停止され、ページは動作し続けます。

プライバシー

このページには、アカウントも、アクセス解析も、背後のサーバーもなく、ページはネットワークリクエスト自体を行えません。JSON、CSV、YAML、エンコード、正規表現のタブでの入力と設定は、非常に長いテキストを除き、次回も残るように、このブラウザのストレージに保存されます。JWT、秘密鍵、ハッシュの入力、生成したパスワードは、保存されません。タブで「クリア」を押すと、そのタブが保持している内容が削除されます。

よくある質問

本番環境のトークンやAPIレスポンスをここに貼り付けても安全ですか?

すべてこのタブ内で実行され、何も送信されないため、データが端末の外に出ることはありません。あらゆる機密情報と同様に、共有のパソコンでは作業が終わったらタブを閉じてください。

YAMLのブール値がテキストになるのはなぜですか?

YAML 1.2では、trueとfalseだけがブール値として読み取られます。古いYAML 1.1のツールは、yes、no、on、offもブール値として読むため、それらが含まれる場合は注意書きが表示されます。意図がどのツールにも伝わるよう、YAML内で値を引用符で囲んでください。

RS256トークンを検証できますか?

まだ対応していません。デコーダーは読み取れますが、検証には発行者の公開鍵が必要で、このページでは受け付けていません。

どの正規表現の構文を使いますか?

ブラウザに組み込まれたJavaScriptの正規表現です。後読み、名前付きグループ、uフラグ付きのUnicodeプロパティエスケープにも対応します。ほとんどのパターンは他の言語でも同じように動作しますが、JavaScriptにない所有量指定子など、一部の機能は異なります。

次はこちら

作ったものを、そのまま端末上で続けましょう。

Snowkitのその他