維吉尼亞密碼工具
使用使用者提供的關鍵字透過維吉尼亞多表密碼進行文本的加密與解密,該關鍵字會以不同的偏移量移動每個字母。提供即時密鑰對齊流、正則表(tabula recta)視覺化、自動密鑰(Autokey)與博福特(Beaufort)變體、來回轉換驗證以及卡西斯基(Kasiski)週期提示。
偵測到廣告封鎖,導致我們無法顯示廣告
MiniWebtool 依靠廣告收入免費提供服務。如果這個工具幫到你,歡迎升級 Premium(無廣告 + 更快),或將 MiniWebtool.com 加入允許清單後重新整理頁面。
- 或升級 Premium(無廣告)
- 允許 MiniWebtool.com 顯示廣告,然後重新載入
維吉尼亞密碼工具
這個維吉尼亞密碼工具可使用多表代換密碼加密與解密文字。輸入訊息和關鍵字後,工具會產生密文或明文,並顯示垂直堆疊的金鑰對齊流,讓你看見每個字母為什麼會改變。它也支援自動金鑰變體、博福特變體、來回驗證,以及可用於手動查表的 26×26 Tabula Recta。
逐步概念
以明文 ATTACKATDAWN 和關鍵字 LEMON 為例。將關鍵字重複排列到足以覆蓋明文,接著逐位相加(A=0、B=1、…、Z=25),並對 26 取模。
讀取綠色列會得到密文 LXFOPVEFRNHR。金鑰字母 L 讓 A 位移 11 格(A→L),E 讓 T 位移 4 格(T→X)。同一個明文字母 A 在不同位置可能加密成不同字母,這就是多表代換的核心。
一行數學式
將字母編號為 A=0 到 Z=25。令 \( p_i \) 為第 i 個明文字母,\( k_i \) 為對應的金鑰字母;關鍵字會循環,因此 \( k_i = K_{i \bmod n} \),其中 \( n \) 是金鑰長度。
加密:\( c_i = (p_i + k_i) \bmod 26 \) · 解密:\( p_i = (c_i - k_i) \bmod 26 \)
博福特變體使用 \( c_i = (k_i - p_i) \bmod 26 \),同一個公式同時處理加密與解密。自動金鑰變體則在關鍵字之後接上明文本身,形成 \( k_1, k_2, \dots, k_n, p_1, p_2, \dots \)。
三種變體
Tabula Recta(維吉尼亞方表)
傳統手算維吉尼亞密碼時,會使用一張 26×26 表格。找到金鑰字母所在列,再找到明文字母所在欄,交會的儲存格就是密文字母。解密時則在金鑰列中找到密文字母,再讀取欄標題。
| · | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| A | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z |
| B | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A |
| C | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B |
| D | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C |
| E | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D |
| F | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E |
| G | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F |
| H | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G |
| I | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H |
| J | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I |
| K | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J |
| L | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K |
| M | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L |
| N | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L | M |
| O | O | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L | M | N |
| P | P | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O |
| Q | Q | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P |
| R | R | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q |
| S | S | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R |
| T | T | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S |
| U | U | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T |
| V | V | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U |
| W | W | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V |
| X | X | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W |
| Y | Y | Z | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X |
| Z | Z | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y |
列標籤 = 金鑰字母。欄標題 = 明文字母。儲存格 = 密文字母。例:列 L、欄 A → L;列 E、欄 T → X。
如何使用
- 將明文(加密)或密文(解密)貼到輸入框。右側即時金鑰對齊流會顯示明文、金鑰字母與輸出字母。
- 在關鍵字欄位輸入拉丁字母。非字母會自動被移除。
- 選擇模式(加密或解密)與變體(維吉尼亞、自動金鑰或博福特)。博福特是自身反向運算,因此模式不會改變其核心運算。
- 按下「應用維吉尼亞」。結果會顯示逐字位移追蹤、統計、來回驗證與所有變體比較。
- 使用複製按鈕取得輸出、原始輸入或金鑰。若要解密,請貼上密文、輸入相同金鑰,並切換為解密。
維吉尼亞、凱撒、Atbash、ROT13 比較
| 密碼 | 類型 | 金鑰 | 自身反向 | 「HELLO」搭配 LEMON |
|---|---|---|---|---|
| 維吉尼亞 | 多表代換 | 關鍵字(1 個以上字母) | 否(使用解密) | SIXZB |
| 凱撒(位移 3) | 單表旋轉 | 單一位移 | 否 | KHOOR |
| ROT13 | 固定 13 格旋轉 | 無(固定) | 是 | URYYB |
| Atbash | 字母鏡像 | 無(固定) | 是 | SVOOL |
| 博福特 | 多表相互密碼 | 關鍵字 | 是 | EABDZ |
為什麼維吉尼亞曾被稱為「不可破譯的密碼」
在 Bellaso 於 1553 年描述此類方法後,維吉尼亞密碼長期被視為難以破解。相同明文字母會因位置和金鑰字母不同而產生不同密文字母,因此凱撒密碼常見的單字母頻率分析不再直接有效。後來 Kasiski 攻擊利用重複關鍵字造成的週期性,從重複片段間距推估金鑰長度,再將問題拆成多個凱撒密碼來破解。
Kasiski 檢驗
- 掃描密文中重複的 3 字母或 4 字母片段。
- 記錄每組重複片段之間的距離。
- 計算距離的最大公因數,金鑰長度通常會整除這些距離。
- 依金鑰長度將密文拆成多欄,每欄相當於一個凱撒密碼。
- 對每欄進行頻率分析或重合指數測試,推回每個金鑰字母。
安全提醒
維吉尼亞密碼不是現代加密方式。短關鍵字可以被 Kasiski 檢驗或重合指數分析快速破解;即使是自動金鑰,也仍可能受到已知明文攻擊。請勿用它保護密碼、個資、財務資料或任何需要保密的內容。真正的資料保護應使用 AES-256、ChaCha20 或 libsodium 等現代密碼工具。維吉尼亞適合謎題、CTF、教學與歷史展示。
使用提示
- 解密時請貼上密文、輸入相同關鍵字,並將模式切換為解密。
- 博福特變體不受模式影響;用相同金鑰套用兩次會回到原文。
- 若只想處理字母並輸出大寫,請取消「保留原始大小寫」。
- 空格、數字與標點會直接保留。若要隱藏單字邊界,請先自行移除空格。
- 使用密碼實驗室可比較同一金鑰在三種變體中的不同輸出。
FAQ
什麼是維吉尼亞密碼?
維吉尼亞密碼是一種多表代換密碼,會依照重複關鍵字為每個明文字母套用不同位移量。這使同一個明文字母在不同位置可能變成不同密文字母。
維吉尼亞和凱撒或 Atbash 有什麼不同?
凱撒密碼對所有字母使用單一固定位移;Atbash 則是固定鏡像。維吉尼亞使用關鍵字提供一連串位移,因此比單表代換更難用簡單頻率分析破解。
維吉尼亞適合真正加密嗎?
不適合。現代電腦可以很快分析重複關鍵字的週期並破解密文。它適合教學、解謎與歷史示範,不適合保護真實敏感資料。
什麼是自動金鑰變體?
自動金鑰會先使用關鍵字,接著以明文本身延伸金鑰流,使金鑰不再固定週期重複。這比經典維吉尼亞更難分析,但仍不是現代安全加密。
什麼是博福特變體?
博福特密碼使用密文 = (金鑰 − 明文) mod 26。它是自身反向運算,因此使用同一金鑰再次套用即可回到原文。
關鍵字應該多長?
越長越好。單字母金鑰會退化成凱撒密碼,短金鑰很容易被破解。解謎與教學常用 6–12 個字母;真正保密則應改用現代密碼工具。
引用此內容、頁面或工具為:
"維吉尼亞密碼工具" 於 https://MiniWebtool.com/zh-tw//,來自 MiniWebtool,https://MiniWebtool.com/
由 miniwebtool 團隊提供。更新日期:2026-05-26