ForHosting KIT · 文章作成・要約AI

シーザー暗号とROT13

ROT13ではHello, World!がUryyb, Jbeyq!になります。各文字を13文字ずらし、大文字は大文字のまま、コンマや空白、感嘆符はそのまま残ります。ずらし幅は自由に選べ、同じ数で復号できます。ブラウザで無料で使えます。

  • 無料
  • ブラウザで動作
  • 登録不要
  • データは端末の外に出ません
ご利用方法 ウェブAPIメールTelegramアプリ 近日
入力した場合
入力テキスト
Hello, World!
結果
結果
Uryyb, Jbeyq!
指定したシフト量
13
実効シフト量
13
操作
Encode

シーザー暗号は文字を一定量ずらします。ROT13はシフト13の場合です。

シーザー暗号は文字をこうずらします

シーザー暗号は、各文字をアルファベットの中で決まった数だけずらし、Zの次はAに戻ります。最もよく知られているのが13ずらすROT13で、これが初期設定です。動くのはAからZまでの文字だけで、大文字は大文字の中で、小文字は小文字の中で回ります。そのため、Hello, World!はUryyb, Jbeyq!になり、コンマ、空白、感嘆符は同じ位置に残ります。数字やそのほかの記号も変わらないので、数字は読めるままで、文の形も保たれます。

ずらし幅、復号、元に戻す仕組み

ずらし幅にはどんな整数も使え、マイナスの値や25より大きい値も指定できます。アルファベットは26文字なので、26ずらしても何も変わらず、−1は25と同じになります。結果には、実際に使われたずらし幅が必ず表示されます。復号は、同じ量だけ逆向きに文字を回す処理です。同じずらし幅で暗号化してから復号すれば、必ず元の文章に戻ります。授業での説明、パズルでのずらし幅の試行、ネタバレや答えを軽く隠す用途に向いています。

文字だけ回転、他はそのまま

ASCII の英字だけがアルファベット上を動きます。空白・数字・句読点は変わりません。大文字と小文字は別々に保たれます。

カンマ付きの文も形を保ったまま符号化でき、授業デモや往復テストに向きます。

どんな整数のずらし幅にも対応

既定は 13(ROT13)。26 は恒等、−1 は 25 相当です。

decode は逆回転

decode は −shift を適用しつつ元の shift を報告します。同じ shift で encode のあと decode すると平文が決定的に戻ります。

ROT13 と授業

古典的な換字を一つのシフトと即 decode で示します。

CTF

暗号文にシフトを試し、浮動小数の罠を避けます。

軽い隠蔽

文字だけ隠せばよいネタバレを軽く伏せます。

CI

encode/decode の往復をテストで固定します。

初期設定のずらし幅はいくつですか?

初期設定は13で、定番のROT13です。Hello, World!はUryyb, Jbeyq!になり、もう一度13ずらすと元に戻ります。13を2回足すと、アルファベット26文字分になるためです。

数字もずれますか?

ずれません。動くのはAからZまでの文字だけで、数字、空白、句読点はそのまま残ります。大文字と小文字はそれぞれの中で回るため、大文字・小文字の区別も保たれます。

ずらし幅を26や−1にするとどうなりますか?

26ずらすと各文字が元の文字に戻るので、文章は変わりません。−1は25と同じ結果です。どんな整数でも指定でき、実際に使われた0から25のずらし幅が結果に表示されます。

ROT13で秘密を守れますか?

軽く隠す程度にとどまります。ネタバレやパズルの答えをひと目で読まれないようにはできますが、同じずらし幅をかければ誰でも元に戻せます。個人情報の保護には向きません。

このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。

POSThttps://api.kit.forhosting.com/text/caesar-cipher

Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。

curl -X POST https://api.kit.forhosting.com/text/caesar-cipher \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"Hello, World!"}'
{
  "text": "Hello, World!"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "text.caesar_cipher",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。

1リクエストあたり$0.002

単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。

max_text_chars100000
HTTPコード意味
401unauthorizedAPIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。
402insufficient_balance残高が不足しています。チャージ後に再度お試しください。
404unknown_type指定されたタスクタイプは存在しません。タイプ名を確認してください。
429rate_limitedリクエストが多すぎます。しばらく待ってから再度お試しください。

このツールは A–Z と a–z だけを回し、数字と句読点はそのまま、有効シフトを 26 の剰余で報告し、無料ブラウザと API で文字ごとに一致します。

任意の整数シフトと shift_effective

負の値や 25 超も可で、有効回転は常に ((shift % 26) + 26) % 26 として shift_effective に出します(decode でも入力シフト基準)。

型付きエラーと上限

text は必須で最大 100000 文字。非整数の shift(float や bool)、不正な mode、欠落は invalid_input です。

既定のシフトは?

13(ROT13)。

数字も回る?

いいえ。英字のみ。

shift_effective とは?

入力シフトを 0…25 に正規化した値。

decode の動きは?

−shift で回し、shift 欄は入力のまま。

負のシフトは?

可。−1 は実効 25。

無料?

ブラウザは無料。アプリは $0.002。

KITの完全なドキュメントを見る →