اكتشاف ضربات لوحة المفاتيح العشوائية بالنظر إلى تخطيط لوحة مفاتيح QWERTY

StackOverflow https://stackoverflow.com/questions/3802232

سؤال

ال الفائز بمسابقة ويكيبيديا للتخريب يشير إلى أنه يمكن تحسين الكشف عن طريق ""اكتشاف ضربات لوحة المفاتيح العشوائية بالنظر إلى تخطيط لوحة مفاتيح QWERTY".

مثال: woijf qoeoifwjf oiiwjf oiwj pfowjfoiwjfo oiwjfoewoh

هل هناك أي برنامج هل هذا بالفعل (ويفضل المصدر المجاني والمفتوح) ?

ان لم, ، هل هناك مشروع نحل نشط هدف هو تحقيق هذا؟

ان لم, ، كيف تقترح ينفذ مثل هذا البرنامج؟

هل كانت مفيدة؟

المحلول

إذا اثنين bigrams في النص الذي تم تحليله قريب من شروط QWERTY ، ولكن يكون لديك التردد الإحصائي الصفر في اللغة الإنجليزية (مثل أزواج "FG" أو "CD") ، فهناك فرصة لإشراك زيارات لوحة المفاتيح العشوائية. إذا تم العثور على المزيد من هذه الأزواج ، فإن الصدفة تزداد بشكل كبير.

إذا كنت تريد أن تأخذ في الاعتبار استخدام كلتا يديك للضرب ، فاختبر رسائل مفصولة بحرف آخر لتقارب Qwerty ، ولكن اثنين من bigrams (أو حتى trigrams) لتردد Bigram. على سبيل المثال في النص "FLSJF" ، يمكنك التحقق من F و S لمسافة Qwerty ، ولكن Bigrams FL و LS (أو Trigram FLS) للتوتر.

نصائح أخرى

يميل معظم لوحة المفاتيح إلى أن يكون في المنزل في تجربتي. سيكون من السهل بشكل معقول التحقق لمعرفة ما إذا كانت نسبة عالية من الشخصيات المستخدمة asdfjkl;.

النظر في التوزيع التجريبي لتسلسل رسالتين ، أي "احتمال وجود خطاب مع ما يتبع الحرف ب" ، كل هذه الاحتمالات تملأ جدول بحجم 27 × 27 (مع الأخذ في الاعتبار المساحة كرسالة).

الآن ، قارن هذا بالبيانات التاريخية من مجموعة من اللغة الإنجليزية/الفرنسية/أيا كانت النصوص. استخدام التباعد Kullback للمقارنة.

إن اتباع نهج بناءً على تخطيط لوحة المفاتيح سيوفر مؤشرًا جيدًا. مع تخطيط QWERTY ، ستجد أن حوالي 52 ٪ من الحروف في أي نص معين ستكون من السطر العلوي من أحرف لوحة المفاتيح. سيكون حوالي 32 ٪ من الشخصيات من الخط الأوسط و 14 ٪ من سيكون من القاع. في حين أن هذا يختلف قليلاً من لغة إلى أخرى ، لا يزال هناك نمط واضح للغاية يمكن اكتشافه. استخدم نفس المنهجية لاكتشاف الأنماط في تخطيطات لوحة المفاتيح الأخرى ، ثم تأكد من اكتشاف التصميم المستخدم لأي نص تم إدخاله قبل التحقق من الرطوبة. على الرغم من أن النمط واضح ، فمن الأفضل استخدام هذه الطريقة كمؤشر واحد فقط بالنظر إلى أن هذه المنهجية تعمل بشكل أفضل مع البرامج النصية الطويلة. إن استخدام مؤشرات أخرى مثل الأحرف غير الفنية/الرقمية المخلوطة مع ألفا/رقمي ، فإن طول النص وما إلى ذلك سيوفر المزيد من المؤشرات التي يمكن أن توفر مؤشراً كاملاً جيدًا عند تطبيق الترجيح عند تطبيق الترجيح.

يمكن تمديد إجابة Fredley إلى قواعد اللغة التي من شأنها بناء كلمات من الحروف القريبة.

فمثلا asasasasasdf يمكن توليدها باستخدام قواعد اللغة as, sa, sd و df.

من خلال مثل هذه القواعد النحوية ، يمكن أن تمنحك توسيعها إلى جميع الحروف على لوحة المفاتيح (بأحرف بجوار بعضها البعض) ، بعد التحليل ، مقياسًا لمقدار النص الذي يمكن إنشاؤه باستخدام هذه القواعد "الرطبة".

التحذير: بالطبع ، فإن أي نص يناقش مثل هذه القواعد وإدراج أمثلة للنص "التجريبي" سوف يسجل أعلى بكثير من نص منتظم التحقق من الإملائي.

لاحظ أن نهج المثال لن يصطاد التخريب في شكل "H4x0R reasezzzzzz !!!!!".

هناك نهج آخر هنا (والذي يمكن دمجه مع الطريقة أعلاه) هو تحليل إحصائيًا من النصوص المخربية ومحاولة الحصول على كلمات شائعة في نصوص مخيفة.

تعديل:
بما أنك تفترض Qwerty ، أعتقد أننا يمكن أن نفترض اللغة الإنجليزية أيضًا؟

ماذا عن KISS - قم بتشغيل النص من خلال المدقق الإملائي باللغة الإنجليزية ، وإذا فشل في استنتاج فشريًا ، فمن المحتمل أن يكون ذلك رطيفًا (السؤال هو ، لماذا تريد التمييز بسرعة على كتابته الرطبة من الهراء العشوائي أو لهذه المسألة من النص المكتوب بشدة؟)

بدلاً من ذلك ، إذا تم النظر في تخطيطات لوحة المفاتيح الأخرى (Dvorak ، أي شخص؟) واللغات ، فربما يتم تشغيل النص من خلال جميع مداهمات تعويذة اللغة المتاحة ثم متابعة (هذا من شأنه أن يعطي اللغة التلقائية أيضًا).

لن تكون هذه طريقة فعالة للغاية ، ولكن يمكن استخدامها كاختبار أساسي.

ملحوظة:
على المدى الطويل ، أتصور أن المخربين سوف يتكيفون ويبدأون في التخريب ، على سبيل المثال مقتطفات من صفحات ويكيبيديا الأخرى ، والتي سيكون من الصعب في النهاية اكتشافها تلقائيًا على أنها تخريب (حسنًا ، يمكن التحقق من النصوص الحالية والعلم على التكرارات جاء من مصدر آخر سيكون من الصعب في النهاية).

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top