Dokumentasi API
Memulai
API RESTful komprehensif kami menyediakan akses terprogram yang mulus ke berbagai operasi sandi klasik, termasuk sandi Caesar, transformasi ROT13, dan sandi polialfabetik Vigenère. Dirancang khusus untuk tujuan pendidikan, API ini sepenuhnya gratis dan sempurna untuk pelajar, pendidik, pengembang, dan penggemar kriptografi. Baik Anda membangun aplikasi pendidikan, melakukan penelitian, atau sekadar menjelajahi dunia kriptografi historis yang menakjubkan, API kami menawarkan fungsionalitas yang kuat dengan kemampuan pemecahan otomatis yang cerdas serta dukungan untuk berbagai bahasa dan alfabet khusus.
URL Dasar: https://caesar-cipher.com/api/v1
Tipe Konten: application/json
Batas Permintaan: 60 permintaan/menit
Manfaat Utama
API kami menonjol dengan fokus pendidikannya, dokumentasi komprehensif, dan desain yang ramah pengembang. Semua endpoint mengembalikan respons terperinci dengan konteks edukatif, membuatnya sempurna untuk lingkungan pembelajaran. Analisis frekuensi bawaan dan kemampuan pemecahan sandi otomatis memberikan wawasan berharga tentang teknik kriptoanalisis.
🎓 Educational Focus
Designed specifically for learning environments with comprehensive educational context and examples.
🔍 Auto-Solving
Intelligent frequency analysis and automatic cipher-breaking capabilities for research and learning.
🌍 Multi-Language
Support for multiple alphabets including Polish, German, Spanish, French, and custom alphabets.
📚 Free & Open
Completely free for educational and research purposes with comprehensive documentation.
Caesar Cipher
Encrypt Text
POST /api/v1/caesar/encrypt
Badan Permintaan:
{
"text": "Hello World",
"shift": 3,
"alphabet": "basic", // optional: basic, polish, german, spanish, french, custom
"custom_alphabet": "ABCDEFGHIJKLMNOPQRSTUVWXYZ", // required if alphabet is "custom"
"preserve_case": true, // optional, default: true
"preserve_non_alpha": true // optional, default: true
}
Respon:
{
"success": true,
"result": "Khoor Zruog",
"method": "encrypt",
"shift": 3,
"alphabet": "basic",
"text_length": 11
}
Dekripsi Teks
POST /api/v1/caesar/decrypt
Badan Permintaan:
{
"text": "Khoor Zruog",
"shift": 3,
"alphabet": "basic"
}
Respon:
{
"success": true,
"result": "Hello World",
"method": "decrypt",
"shift": 3,
"alphabet": "basic",
"text_length": 11
}
Pemecahan Otomatis Sandi Caesar
POST /api/v1/caesar/solve
Badan Permintaan:
{
"text": "Khoor Zruog",
"alphabet": "basic", // optional
"language": "en" // optional: en, pl, de, es, fr
}
Respon:
{
"success": true,
"best_solution": {
"shift": 3,
"text": "Hello World",
"confidence": 95
},
"all_solutions": [
{"shift": 3, "text": "Hello World", "score": 95.2},
{"shift": 7, "text": "Dahhk Sknhz", "score": 42.1},
...
],
"alphabet": "basic",
"language": "en"
}
Pemrosesan Massal
POST /api/v1/caesar/bulk
Badan Permintaan:
{
"items": [
{"text": "Hello", "shift": 3},
{"text": "World", "shift": 5}
],
"method": "encrypt", // encrypt, decrypt, or solve
"alphabet": "basic"
}
Respon:
{
"success": true,
"method": "encrypt",
"alphabet": "basic",
"count": 2,
"results": [
{"index": 0, "original": "Hello", "result": "Khoor", "shift": 3},
{"index": 1, "original": "World", "result": "Btwqi", "shift": 5}
]
}
ROT13
Transformasi Teks
POST /api/v1/rot13/transform
Badan Permintaan:
{
"text": "Hello World",
"preserve_case": true,
"preserve_non_alpha": true
}
Respon:
{
"success": true,
"result": "Uryyb Jbeyq",
"method": "rot13",
"text_length": 11
}
ROT13 Massal
POST /api/v1/rot13/bulk
Badan Permintaan:
{
"items": ["Hello", "World", "ROT13"],
"preserve_case": true
}
Respon:
{
"success": true,
"method": "rot13",
"count": 3,
"results": [
{"index": 0, "original": "Hello", "result": "Uryyb"},
{"index": 1, "original": "World", "result": "Jbeyq"},
{"index": 2, "original": "ROT13", "result": "EBG13"}
]
}
Sandi Vigenère
Enkripsi dengan Vigenère
POST /api/v1/vigenere/encrypt
Badan Permintaan:
{
"text": "Hello World",
"key": "KEY",
"preserve_case": true,
"preserve_non_alpha": true
}
Respon:
{
"success": true,
"result": "Rijvs Uyvjn",
"method": "encrypt",
"key_length": 3,
"text_length": 11
}
Analisis & Pecahkan Vigenère
POST /api/v1/vigenere/analyze
Badan Permintaan:
{
"text": "RIJVS UYVJN RIJVS UYVJN...", // Long encrypted text
"max_key_length": 10 // optional, default: 10
}
Respon:
{
"success": true,
"analysis": {
"probable_key_lengths": [3, 6, 9],
"best_key_length": 3,
"ioc_scores": {"1": 0.043, "2": 0.045, "3": 0.065},
"probable_key": "KEY",
"decrypted_preview": "HELLO WORLD HELLO WORLD..."
},
"text_length": 100
}
Contoh Kode
JavaScript / Node.js
// Caesar Cipher Encryption
const response = await fetch('https://caesar-cipher.com/api/v1/caesar/encrypt', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify({
text: 'Hello World',
shift: 3,
alphabet: 'basic'
})
});
const data = await response.json();
console.log(data.result); // "Khoor Zruog"
Python
import requests
# ROT13 Transform
response = requests.post('https://caesar-cipher.com/api/v1/rot13/transform',
json={
'text': 'Hello World',
'preserve_case': True
})
data = response.json()
print(data['result']) # "Uryyb Jbeyq"
cURL
# Vigenère Cipher Encryption
curl -X POST https://caesar-cipher.com/api/v1/vigenere/encrypt \
-H "Content-Type: application/json" \
-d '{
"text": "Hello World",
"key": "SECRET",
"preserve_case": true
}'
PHP
// Caesar Cipher Solver
$data = [
'text' => 'Khoor Zruog',
'alphabet' => 'basic',
'language' => 'en'
];
$options = [
'http' => [
'header' => "Content-type: application/json\r\n",
'method' => 'POST',
'content' => json_encode($data)
]
];
$context = stream_context_create($options);
$result = file_get_contents('https://caesar-cipher.com/api/v1/caesar/solve', false, $context);
$response = json_decode($result, true);
echo $response['best_solution']['text']; // "Hello World"
Penanganan Error
API menggunakan kode status HTTP standar dan mengembalikan pesan error JSON.
Kode Status Umum:
- 200 OK - Request successful
- 400 Bad Request - Invalid parameters
- 422 Unprocessable Entity - Validation errors
- 429 Too Many Requests - Rate limit exceeded
- 500 Internal Server Error - Server error
Format Respon Error:
{
"success": false,
"error": "Validation error",
"errors": {
"text": ["The text field is required."],
"shift": ["The shift must be between -25 and 25."]
}
}
Pembatasan Permintaan
API dibatasi hingga 60 permintaan per menit per alamat IP. Informasi batas disertakan dalam header respon:
X-RateLimit-Limit: 60
X-RateLimit-Remaining: 58
# When rate limit is exceeded (HTTP 429):
{
"error": "Too Many Requests",
"message": "Rate limit exceeded. You can make up to 60 requests per minute.",
"retry_after": 60,
"documentation": "https://caesar-cipher.com/api-docs"
}
Untuk batas yang lebih tinggi atau penggunaan komersial, silakan gunakan formulir kontak di situs web kami.
Siap untuk Memulai?
Mulai jelajahi API kami hari ini! Uji endpoint secara langsung, integrasikan ke dalam aplikasi Anda, atau gunakan alat web interaktif kami untuk lebih memahami kriptografi klasik.