Myszkowski転置暗号
キーTOMATOでWEAREDISCOVEREDFLEEATONCEを暗号化するとROFOACDTEDSEEEACWEIVRLENEになり、同じキーで元に戻せます。キーの重複文字は行ごとにまとめて読まれます。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- テキスト
- WEAREDISCOVEREDFLEEATONCE
- Key
- TOMATO
- 計算モード
- encrypt
- 結果
- ROFOACDTEDSEEEACWEIVRLENE
- エンコード
- myszkowski
- 鍵の長さ
- 6
- 鍵の順位
- 4, 3, 2, 1, 4, 3
このMyszkowski転置ツールは、意図的に繰り返し文字を含むキーワードの下で文字を並べ替えて、テキストを暗号化または復号します。通常の縦書き転置では同じキー文字を左から右のインデックスで区別しますが、Myszkowskiでは同じ文字の各出現に同じ順位を付け、それらの列を行ごとにまとめて読みます。メッセージ、空でないキーワード、任意のモードを入力すると、エンジンはキー長を幅とする格子を作り、テキストを左から右・上から下へ書き、Unicode順でキー文字に順位を付け(繰り返しは順位を共有)、昇順位で暗号文を出力します。復号はその配置を逆にし、同じキーワードで元の文字列をビット単位で復元します。古典的な確認例はキーTOMATOの下でのWEAREDISCOVEREDFLEEATONCEで、既知のMyszkowski暗号文になり、同じキーワードで復号して元に戻ります。暗号史の授業・パズル設計・可逆な実験デモにはブラウザで無料でお使いいただけます。
Myszkowski転置とは何か、このツールが返すもの
Myszkowski転置は、1902年にÉmile Victor Théodore Myszkowskiが提案した、縦書き転置の変種である古典的な並べ替え暗号です。秘密は依然として列の順序ですが、キーワードには繰り返し文字が含まれ、複数の列が同じ順位を共有することが想定されます。
一意の順位は列を上から下へ転記し、共有順位は各行でそれらの列を左から右へ、次に次の行へと転記します。平文の文字は格子に行ごとに書き込まれ、最終行が不完全な場合は左側の列が右側より1文字多いだけになり、長さを保つ教科書の通常ルールに沿い、入力に自分で入れない限り強制パディング文字は使いません。
暗号化は共有順位ルールの下で昇順位に材料を連結し、復号は総長とキー幅から得た同じ高さで暗号文をそれらの位置に書き戻し、格子を行ごとに読んで元を復元します。このページは常にその固定のMyszkowski契約を適用し、安定同点の通常縦書き、経路転置、レールフェンス、置換暗号へ静かに切り替えることはありません。
授業・パズル・テストフィクスチャでのMyszkowski転置の位置づけ
開発者と教育者は、キャプチャ・ザ・フラッグのウォームアップ、古典暗号の教科書章、通常の縦書き転置と比べて繰り返しキーワード文字が読み経路をどう変えるかを示すデモでMyszkowski転置に出会います。フロントエンドチームは独自アルファベットを発明せずにスクリーンショット用の例文をかき混ぜ、同じキーでdecryptして戻せます。
品質エンジニアは契約テスト用に決定的なencrypt/decrypt対を生成し、Myszkowski対応を称するミドルウェアが安定同点の縦書きパターンへ静かに切り替わったり空白を落としたりできないようにします。
コンテスト主催者は、大文字のみを強制したり頼んでいないパディングXを挿入したりする不透明なWeb玩具に頼らず、控えめな英語句の解答キーを事前計算します。学習者が暗号文を貼り付け、UIが文書化されたキーワード下で復元した平文を示す必要がある製品・教育ツールもこの変換を使います。
無料で決定的なテキスト道具の小さなラボを組むときは他の古典符号化ヘルパーと組み合わせ、Myszkowski転置を現代の認証付き暗号の代わりにしないでください。
活用例
CTFと古典暗号の練習
パズル・授業・キャプチャ・ザ・フラッグのウォームアップ向けに、繰り返しキーワード文字のMyszkowski句を暗号化・復号します。
暗号史の授業
共有順位の列グループ、繰り返し時の左から右の行読み、強制パディングなしで長さを保つ格子を示します。
よくある質問
Myszkowski暗号文をどう復号しますか?
暗号文をtext、同じキーワードをkeyとして送り、modeをdecrypt(またはdec、decode、d)に設定します。modeを省略すると既定は暗号化です。
キーが空または欠落しているとどうなりますか?
エンジンがMyszkowski列順位を付けるには、キーワードは空でない文字列である必要があります。
Myszkowskiは通常の縦書き転置と何が違いますか?
Myszkowskiでは繰り返しキー文字が同じ順位を共有し、それらの列は各行で左から右へ読まれます。通常の縦書きは左インデックスで同点を分け、各列を上から下へ最後まで読むことが多いです。
Myszkowski転置は本物の秘密に安全ですか?
いいえ。 1902年の古典的な教材用暗号です。本当の機密にはAES-GCMなどの現代の認証付き暗号を使ってください。
空白や記号はそのまま残りますか?
はい。空白、数字、句読点も削除されず、すべての文字が並べ替えの対象になります。大文字・小文字も変わらないため、暗号文の長さは常に元の文章と同じです。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/enc/myszkowski \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"WEAREDISCOVEREDFLEEATONCE","key":"TOMATO"}'const res = await fetch("https://api.kit.forhosting.com/enc/myszkowski", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "WEAREDISCOVEREDFLEEATONCE",
"key": "TOMATO"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/myszkowski",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "WEAREDISCOVEREDFLEEATONCE",
"key": "TOMATO"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/myszkowski", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"WEAREDISCOVEREDFLEEATONCE","key":"TOMATO"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"WEAREDISCOVEREDFLEEATONCE","key":"TOMATO"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/myszkowski", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"text": "WEAREDISCOVEREDFLEEATONCE",
"key": "TOMATO"
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.myszkowski",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
空白・数字・句読点も含めすべての文字が一緒に移動し、削除や大文字化は行わないため、教科書の演習やCTFのペイロードが忠実に保たれます。パイプラインで再現可能なMyszkowski変換が必要な場合は、成功リクエストごとに$0.002のAPIもご利用ください。
Myszkowski転置とは何か、このツールが返すもの
JSON応答には並べ替え後の文字列のresult、myszkowskiに固定されたencoding、encryptまたはdecryptのmode、ご指定のキーワードを返すkey、key_length、各キー位置の1始まり順位のkey_ranks、読み順の0始まり列インデックス群のread_groups、変換が置換のみなので常に一致するinput_lengthとoutput_length、共有順位の行グループ契約を文書とテスト向けに再掲するformula文字列が含まれます。ストリーミング経路もVigenèreやBase64への無言フォールバックもなく、空でないテキストと空でないキーを与えるか、invalid_inputで失敗するかのどちらかです。通常縦書き・多表式シフト・現代暗号が必要な場合は専用エンドポイントをご利用ください。このランディングは、暗号史の章やCTFウォームアップが既に述べるMyszkowskiキーワード契約だけに答えます。
text・key・modeの読み方と結果の再現性
順位付けはA–Zだけに削るのではなくUnicode文字比較を使います。modeを省略すると既定はencryptで、enc、encode、e(encrypt)やdec、decode、d(decrypt)の短い別名も受け付け、それ以外の文字列は検証に失敗します。古典的なTOMATO例では6列に対し順位が四・三・二・一・四・三となり、AとMは一意順位、2つのO列と2つのT列は共有順位です。推奨ペイロード欄は、メッセージのtext、キーワードのkey、encryptまたはdecryptの任意のmodeです。textはinput、value、s、message、plaintext、ciphertextなどの別名を受け付け、フォームやSDKクライアントが既存の列名を呼び出し箇所ごとに改名せず再利用できます。keyはkeyword、k、password、passphraseを受け付け、空でない文字列全体が列を定義し、数字や記号を含めても構いません。空のキーや欠落キーはinvalid_inputと、Myszkowski列順位に空でないキーワードが必要である旨の明確なメッセージで拒否されます。textの欠落・空文字・非文字列型・未知のmodeはいずれもinvalid_inputとなり、空フォームが成功した無操作に見えません。キー順位と読みグループはキーから一度だけ計算され、encryptとdecryptで同じ高さ式を使うため、そのキーワード下の任意の空でない文字列で往復が常に元のペイロードを復元します。共有順位の格子詰めを自分で再実装せず、自動パイプライン内で同じ置換が必要なときは、このページの無料ブラウザ実行と有料APIを組み合わせてください。無効入力はinvalid_inputを返し課金されず、検証は安く、成功変換は固定のitem価格のままです。
授業・パズル・テストフィクスチャでのMyszkowski転置の位置づけ
バックエンドは、学習者が共有順位グループを再構築して次の段階を解錠するパズルAPIや教育サンドボックス向けに短い挑戦文字列を符号化します。このページでは作業はすべてブラウザ内で行われ、APIでは成功した参照ごとに$0.002、失敗した検証は課金されず、応答後に何も保存されません。無料の対話的探索と有料の同一APIという分担はKITのtier Aカタログの他項目と一致し、並べ替え結果を変えずに教室デモから自動パイプラインへ移れます。
連携の活用例
決定的なCIフィクスチャ
単体テスト・ゴールデンファイル・契約チェック用に、再現可能なMyszkowskiの暗号文と平文の対を生成します。
技術的な質問
Myszkowski転置ツールの料金はいくらですか?
このページではブラウザ内で無料です。APIでは成功したリクエストが$0.002で、無効入力は課金されません。