ForHosting KIT · أدوات المطورين

شفرة إزاحة QWERTY

بإزاحة مقدارها واحد تصبح hello هي jraap: ينتقل كل حرف إلى المفتاح الذي على يمينه في صفه نفسه من لوحة QWERTY، ويعود l إلى a. والإزاحة نفسها في وضع فك التشفير تعيد hello. مجاني في متصفحك.

  • مجاني
  • يعمل في متصفحك
  • دون تسجيل
  • بياناتك لا تغادر جهازك
استخدمها من الويبAPIالبريدTelegramالتطبيق قريبًا
إذا أدخلت
النص
hello
الإزاحة
1
وضع الحساب
Encrypt
تحصل على
النتيجة
jraap
الطول
5
الحروف المزاحة
5
التخطيط
qwerty

شفرة إزاحة لوحة المفاتيح لا تدور الحروف على طول الأبجدية كما تفعل شفرة قيصر. بدلًا من ذلك تنقل كل محرف إلى مفتاح مجاور على تخطيط QWERTY المادي: مع offset واحد في وضع encrypt يصبح Q هو W وW يصبح E وA يصبح S وهكذا على الصف نفسه. فك التشفير يسير بالاتجاه المعاكس، لذا فإن offset معروفًا يستعيد الرسالة الأصلية دائمًا عندما كان كل محرف حرفًا مدعومًا أو مسافة. تنفّذ هذه القدرة ذلك التحويل بالمفاتيح المجاورة مع offset صحيح قابل للضبط ووضع encrypt أو decrypt.

كيف تنقل إزاحة QWERTY الحروف

تُعامل شبكة حروف QWERTY الأمريكية كثلاث صفوف مستقلة: الصف العلوي qwertyuiop وصف المنزل asdfghjkl والسفلي zxcvbnm. ينقل التشفير كل حرف عددًا ثابتًا من المفاتيح إلى اليمين على صفه؛ ويفك التشفير بالمسافة نفسها إلى اليسار. عدد الخطوات هو الـ offset الصحيح الذي تقدّمه.

الحركة تلتف داخل الصف فقط: الحرف بعد P هو Q مجددًا، وبعد L هو A، وبعد M هو Z، فكل محرف أبجدي يهبط دائمًا على حرف آخر من الصف المادي نفسه. تُحفظ الحالة: H كبيرة بـ offset واحد تصبح J كبيرة وh صغيرة تصبح j. تُنسخ المسافات دون تغيير لتحافظ العبارات متعددة الكلمات على شكلها.

الأرقام وعلامات الترقيم والرموز التعبيرية والحروف خارج الكتلة اللاتينية الأساسية ليست على الخريطة المدعومة؛ يتوقف المحرك فورًا بخطأ مفتاح غير مدعوم بدل اختراع جار. رياضيًا التحويل حساب نمطي على فهرس الصف: إيجاد موضع المحرف على صفه، جمع أو طرح الـ offset مقياس طول الصف، ثم إعادة التعيين إلى محرف بالحالة نفسها. الـ offset صفر هو التطابق؛ أحد عشر على صف من عشرة مفاتيح يعادل واحدًا.

لا استدعاء شبكة ولا بذرة عشوائية ولا طابع زمني في المسار. تنفّذ هذه الصفحة مجاورة QWERTY على الصف نفسه فقط — لا دوران أبجدي لقيصر، ولا مشيًا قطريًا متعدد الصفوف، ولا تشفيرًا قويًا.

ما ترسله وما تسترجعه

أرسل حقل سلسلة مطلوبًا باسم text وحقلًا صحيحًا مطلوبًا باسم offset وحقل mode اختياريًا بقيمة encrypt أو decrypt. وضع encrypt يزيح الحروف يمينًا على صف QWERTY؛ وdecrypt يزيحها يسارًا بنفس المسافة المطلقة، فيعكس encrypt سابقًا بذلك الـ offset. إخفاقات التحقق لا تستهلك الرصيد المدفوع مسبقًا.

فحوصات كلاسيكية: تشفير hello بـ offset واحد يعطي jraap (h→j وe→r وl→a مع التفاف الصف وo→p)؛ فك ذلك النص بنفس الـ offset يستعيد hello؛ والتأكد أن hello! يفشل لأن علامة التعجب مفتاح غير مدعوم.

أين تظهر شفرات لوحة المفاتيح في العمل الفعلي

كثيرًا ما تطلب التشفير التمهيدي وألغاز تخطيط لوحة المفاتيح من الطلاب تشويش رسالة بتحريك الأصابع مفتاحًا جانبًا بدل عدّ مواضع الأبجدية؛ يسرّع وسيط موثوق يشفّر ويفك بـ offset صحيح صريح عروض الواجبات والمصحّحات الآلية. إحماءات capture-the-flag ودعائم غرف الهروب تخفي أحيانًا عبارات مزاحَة بـ QWERTY على ملاحظات أو صور، ويريد الحلّالون أداة مفاتيح مجاورة سريعة ومتوقعة بدل حزمة تحليل تشفير عامة. قد تُبهم فرق الدعم والمحتوى المفسدين أو إجابات الاختبارات بإزاحة لوحة مفاتيح تافهة وتحتاج المسار العكسي دون تثبيت مكتبة خاصة بلغة.

إن احتجت دوران قيصر الكلاسيكي أو مفاتيح فيجنير متعددة الأبجديات أو ترميز Base64 أو تشفيرًا مصادقًا قويًا، فاعاملها كنوايا بحث وصفحات هبوط منفصلة بدل تحميل هذه الصفحة لمفاتيح QWERTY المجاورة.

عروض مجاورة QWERTY في الصف

شفّر وافك كلمات عيّنة بـ offset صحيح معروف ليرى الطلاب جيران لوحة المفاتيح على الصف نفسه بدل حساب الأبجدية.

ألغاز وCTF بإزاحة لوحة المفاتيح

طبّق أو اعكس انزلاقًا ثابتًا لمفاتيح مجاورة على سلاسل التحدي دون كتابة سكربت لمرة واحدة لكل مجموعة مسائل.

ما شفرة إزاحة لوحة المفاتيح؟

استبدال ينقل كل حرف إلى مفتاح مجاور على صف QWERTY بمقدار offset صحيح ثابت، بدل الدوران على طول الأبجدية كما في قيصر.

كيف أفك تشفير النص؟

اضبط mode على decrypt بنفس الـ offset الصحيح المستخدم للتشفير. ذلك يزيح كل حرف يسارًا على صفه ويستعيد الأصل عند وجود حروف ومسافات فقط.

هل تلتف الإزاحة عند نهاية الصف؟

نعم. الحركة نمطية داخل صف QWERTY نفسه، فـ P بـ offset واحد يصبح Q، وL بـ offset واحد يصبح A.

هل تبقى الحروف الكبيرة والمسافات كما هي؟

نعم. يحتفظ كل حرف بحالته، فيصبح H الكبير بإزاحة واحد هو J، ويصبح h الصغير هو j. وتُنسخ المسافات دون تغيير، فتحافظ الجملة المكونة من عدة كلمات على شكلها.

لماذا يُرفض نص فيه أرقام أو علامات ترقيم؟

لأن خريطة المفاتيح المدعومة لا تضم إلا الحروف اللاتينية من A إلى Z. فإذا ظهر رقم أو علامة ترقيم أو رمز تعبيري أو حرف آخر تتوقف الأداة فورًا بدل أن تخترع مفتاحًا مجاورًا، ولذلك تُرفض hello مع علامة تعجب.

كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.

POSThttps://api.kit.forhosting.com/enc/keyboard-shift

صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.

curl -X POST https://api.kit.forhosting.com/enc/keyboard-shift \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"hello","offset":1}'
{
  "text": "hello",
  "offset": 1
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "enc.keyboard_shift",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.

لكل طلب$0.002

السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.

HTTPالرمزالمعنى
401unauthorizedمفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك.
402insufficient_balanceرصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة.
404unknown_typeنوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب.
429rate_limitedتجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة.

تُزاح فقط الحروف اللاتينية من A إلى Z، وتُحفظ حالة الأحرف، وتبقى المسافات، ويُرفض أي رقم أو علامة ترقيم أو رمز آخر كمفتاح غير مدعوم بخطأ invalid_input واضح.

كيف تنقل إزاحة QWERTY الحروف

ولأن كل خطوة حساب صحيح بجدول تخطيط ثابت، فالتشفير حتمي بالكامل: نص وoffset ووضع متطابقة تنتج دائمًا JSON نفسه.

ما ترسله وما تسترجعه

عند حذف mode يكون encrypt هو الافتراضي ليبقى الحمولة الدنيا مفيدة. عند النجاح تردّ الاستجابة mode وtext الأصلي والـ offset الصحيح الذي أرسلته وسلسلة result المحوّلة وlength لذلك الناتج وletters_shifted كعدّ للمحارف الأبجدية المتحركة، إضافة إلى تسميات layout وrows وcipher للعملاء الذين يتحققون من الملف الشخصي. غياب text أو offset أو كائنات غير سلسلة لـ text أو قيم mode غير مدعومة أو سلاسل أطول من الحد الموثّق أو offsets غير صحيحة بما فيها قيم عائمة مثل واحد فاصلة خمسة، وأي محرف ليس حرفًا لاتينيًا ولا مسافة — ترقيم وأرقام ورموز — تفشل بـ invalid_input ورسالة إنجليزية واضحة تسمّي المفتاح غير المدعوم عند الاقتضاء. تسعير طلبات API الناجحة هو الأساس المنشور $0.002 لكل عنصر.

أين تظهر شفرات لوحة المفاتيح في العمل الفعلي

ولأن هذه القدرة محرك parse نقي، فتسعير API هو الأساس المنشور $0.002 لكل عنصر ناجح والتحقق الفاشل لا يستهلك الرصيد.

تعمية خفيفة للمفسدين

أزِح إجابات الاختبارات أو التسميات جانبًا على QWERTY وافكّها لاحقًا بنفس العقد في المتصفح أو عبر API.

ما الذي يُعد مفتاحًا غير مدعوم؟

أي محرف ليس حرفًا لاتينيًا A–Z/a–z ولا مسافة — الأرقام وعلامات الترقيم والرموز التعبيرية والحروف ذات التشكيل تفشل بـ invalid_input ولا تُحاسب.

كم التكلفة؟

أداة المتصفح مجانية وتعمل محليًا. طلبات API تستخدم رصيد KIT المدفوع مسبقًا بمقدار $0.002 لكل عنصر ناجح؛ الإدخال غير الصالح لا يُحاسب.

اطّلع على توثيق KIT الكامل ←