Tools100% 本地
← 返回工具列表

關於這些工具

每個工具的功能與適用場景

這些工具是為開發者、維運與資安人員每天會用到數次的場景而生:解碼 API 回傳的 Token、快速產生 UUID、再次確認正規表示式、為下載檔案計算雜湊。所有運算均在瀏覽器內透過原生 Web Crypto 與標準 DOM API 完成 — 你貼上、輸入或拖入的任何內容都不會離開你的裝置。

Base64

將純文字編碼為 Base64(RFC 4648)或反向解碼。解碼是預設方向,因為日常工作中更常見。當你檢查 data: URL、剖析 Authorization 標頭中的 JWT 段、閱讀別人在 Slack 中貼上的 Token,或拆解藏在環境變數裡的金鑰時,都會用到 Base64 解碼。需要把二進位安全的文字嵌入到 URL 或 JSON 欄位時,則使用編碼。兩個方向都正確處理 Unicode(UTF-8)。

TOTP & HOTP — 一次性密碼產生器

開啟 TOTP / HOTP 獨立頁 →

給定 Base32 編碼的共用金鑰,產生與驗證 App 相同的驗證碼。本工具同時實作 RFC 6238(以時間為基礎的 TOTP)與 RFC 4226(以計數器為基礎的 HOTP),並提供真實部署中常用的全部選項:HMAC-SHA1 / SHA-256 / SHA-512,6 / 7 / 8 位數字,30 / 60 秒視窗,以及顯式的 HOTP 計數器。相容 Google Authenticator、1Password、Authy、FreeOTP 等任何符合 RFC 的客戶端。

貼上 otpauth:// URI,所有選項會從 URI 參數自動填入 — 當你從旁路收到一個 URI 想在匯入前先檢查時很有用。反過來,產生 QR 碼 動作會把當前設定交給 QR 標籤頁,這樣你就能直接掃進手機的驗證器。前一組與下一組視窗的驗證碼也會顯示出來,以應對驗證伺服器時鐘漂移的情況。

QR 碼產生器

開啟 QR 碼獨立頁 →

依照 ISO/IEC 18004 把任何文字或 URL 渲染成 QR 碼。最常見的實際用途是把 otpauth:// URI 轉成可掃碼影像,再交給以手機為主的驗證器,但它適用於任何短文字 — Wi-Fi 憑證、聯絡人卡片、一次性 URL。可選錯誤更正等級 L / M / Q / H — 等級越高越能抵禦汙漬與摺疊,但會產生更密集的碼圖。結果可下載為向量 SVG(任意縮放都銳利)或 PNG。

URL 編碼 / 解碼

依 RFC 3986 進行百分比編碼與解碼。解碼是預設方向,因為更常見的場景是「我在日誌裡看到這個編碼 URL,需要把它讀出來」。提供兩種範圍:元件把輸入當成單一值,對所有非英數字元都進行編碼 — 用於查詢參數值的嚴格模式;完整 URL保留 URL 結構字元(:/?#[]),讓完整 URL 仍然可點。處理查詢字串值或路徑段時用元件,處理整段 URL 時用完整 URL。

JSON 格式化

驗證、美化或壓縮 JSON(ECMA-404)。輸入無效時,語法錯誤的精確行欄會被高亮,可直接跳到出錯字元。美化器支援 2 空格、4 空格與 Tab 縮排。當你剛從 API 收到未格式化的資料塊、需要查看深層巢狀的回應,或在嵌入建置產物前需要壓縮時都很有用。

JWT 解碼與驗證

開啟 JWT 獨立頁 →

解碼並檢視 JSON Web Token(RFC 7519)。Token 被拆為三段 Base64 編碼(標頭、酬載、簽章),每段 JSON 內容都會被美化。標準時間宣告 — iatnbfexp — 會以可讀時間戳顯示,並在 Token 仍有效時顯示即時倒數計時。

驗證簽章欄中貼上金鑰,加密驗證便會透過瀏覽器的 Web Crypto API 在本地執行。支援的演算法族:HS256/HS384/HS512 使用共用金鑰;RS256/RS384/RS512PS256/PS384/PS512 使用 PEM SPKI 格式的 RSA 公鑰;ES256/ES384/ES512 使用 P-256 / P-384 / P-521 上的 EC 公鑰。金鑰僅在記憶體中保留以執行驗證 — 不會傳送至伺服器、寫入儲存或記錄至日誌。

雜湊

計算密碼學雜湊(FIPS 180-4):SHA-1、SHA-256、SHA-384 與 SHA-512。拖入檔案或貼上文字;摘要由瀏覽器原生 Web Crypto 實作 crypto.subtle.digest 在本地計算。可用於核對下載檔案與發布的校驗和、為內容定址儲存產生指紋,或在進一步處理前進行快速完整性檢查。

Hex

在文字與十六進位位元組序列間互轉。解碼是預設方向 — 貼上十六進位(位元組之間是否有分隔符均可)即可讀回為文字。可用於閱讀 hex dump、除錯二進位協議,或處理還沒有可讀形式但已有原始位元組的低層級編碼。編碼時,分隔符選項可在空格分隔、冒號分隔與連續輸出之間切換。

HTML 實體

編碼與解碼 HTML 實體。解碼是預設方向 — 貼上充滿 <&" 等的內容,即可讀回原始字元。編碼模式產生 HTML 安全的輸出,適合在頁面中嵌入使用者提供的文字。輸入下方的參考網格列出常用實體,如果只需要一兩個可單獨點擊複製。

正規表示式測試

測試 JavaScript 風格的正規表示式(ECMA-262)。輸入樣式、切換旗標(g 全域、i 不分大小寫、m 多行、s 點匹配換行),即可在測試文字中即時高亮配對。擷取群組會以不同顏色標示;完整匹配清單與各群組內容顯示在下方。適合在把樣式貼到程式碼之前先做原型、除錯為何正則未按預期匹配,或互動式地學習正則語法。

比對

對比兩段文字並逐行顯示差異 — 新增標綠,刪除標紅。可用於發現兩份設定、兩個 API 回應、兩段日誌摘錄之間的差異 — 任何需要並排對比的內容都行。彙總列顯示總數,讓你一眼看到新增與刪除的行數。

色彩

把顏色貼為 HEX、rgb()hsl(),即可並排檢視四種標準 CSS 形式 — HEX、RGB、HSL,以及感知一致的 OKLCH(CSS 色彩模組第 4 級)。OKLCH 僅作為輸出顯示,在產生主題調色盤或希望顏色亮度在不同色相下保持視覺一致時尤為方便。

UUID 產生器

產生密碼學隨機的 UUID(RFC 4122 v4) — 資料庫、分散式系統、佇列 ID 與 API 中常用的 128 位元識別碼。隨機位元組來自 crypto.getRandomValues。產生器下方還有一個驗證器,告訴你貼上的 UUID 是否格式正確以及它聲稱屬於 RFC 4122 的哪個版本(v1 至 v5)。

密碼產生器

產生符合 NIST SP 800-63B 指引的密碼學隨機密碼。選擇長度並選定要包含的字元類(小寫、大寫、數字、符號);隨設定即時更新熵值估算。隨機來源為 crypto.getRandomValues,與現代瀏覽器用於 TLS 相關操作的密碼學安全 RNG 相同。當你需要為帳號或服務產生全新強密碼,而不想倚賴密碼管理員的預設值時很有用。

亂數產生器

開啟亂數獨立頁 →

從瀏覽器的 crypto.getRandomValues 中抽取密碼學隨機的整數或小數。本頁透過拒絕取樣得到均勻分布,因此沒有取模偏差 — Math.random() 雖然快但具確定性,縮放到任意範圍時也會有微小的非均勻性。可設定:範圍(正、負或混合)、一次抽取數量(最多 10000)、整數或小數模式(0–15 位精度)、唯一模式(使用部分 Fisher–Yates 洗牌保證公平)、排序方式,以及輸出分隔符(換行、逗號、空格、JSON 陣列、CSV 列)。提供擲骰、樂透、百分比、隨機位元組、0–1 小數等快速預設。

擲硬幣

開啟擲硬幣獨立頁 →

一個真正帶 3D 動畫的擲硬幣。結果由 crypto.getRandomValues 抽取的一個位元在硬幣開始旋轉之前就已決定,所以投擲只是裝飾,結果可證明為 50 / 50。可自訂兩面標籤(用 是 / 否留 / 走 或任何二元組),設定每次擲幣的批量從 1 到 1000,選擇從瞬間的動畫速度,看正/反面的百分比隨擲幣而收斂。會話日誌展示完整歷史並追蹤最長同面連續記錄 — 用來親眼證實十連或更長的同面連擊確實會按預期機率出現。

Unix 時間

在 Unix 時間戳(POSIX.1 — 自 1970-01-01 UTC 起的秒數)與可讀日期之間互轉。頂部的即時時間戳取自你裝置的當前時間(Date.now());不查詢任何時鐘服務。在第二欄選擇日期可看到對應時間戳;在第一欄貼上時間戳可看到 UTC、本地時間以及人類相對形式(「2 小時前」)。讀日誌、除錯時間相關程式碼,或單純想知道 1714363200 究竟是什麼時候時都很有用。

一切的工作原理

所有運算都在你的瀏覽器本地完成。雜湊、HMAC、亂數產生、Base 編碼、正則匹配、字型渲染 — 全都是。本站不載入任何第三方腳本、分析或廣告框架。首次載入之後,唯一的網路請求是頁面靜態資源本身(HTML、CSS、JS、字型、圖示),且只在第一次造訪時發生 — 之後由 Service Worker 離線提供。

你貼上、輸入或拖入的任何內容都不會被傳送或儲存到瀏覽器分頁之外。唯一持續化的狀態只有幾項使用者偏好(主題、配色、動畫開關),儲存在 localStorage。完整版本請查閱隱私政策

聯絡方式

有問題、bug 回報,或想要新增工具的建議?請聯絡 [email protected]