سؤال

السلام عليكم

 

التشفير بطريقة قيصر من الكلاسيكية و التي تعتمد على تبديل الأحرف

 

المهم الآن الهدف من هذا الموضوع هو برمجة برنامج لفك تشفير نص مشفر بخوارزمية قيصر من دون معرفة المفتاح

 

لكن بطريقة أوتوماتيكية و ليس بإختيار الحل بأنفسنا

 

أولا فرضا أننا نعلم اللغة و ل تكن الإنجليزية مثلا

 

و ثانيا بأن نطور البرنامج ليعمل مع أي لغة(هذا صعب نوعا ما)

 

للمساعدة:

 

*عدد إحتمالات الحلول هو 26 إحتمال

 

*بإمكاننا إستعمال مبدأ تكرار الأحرف(الحرف الأكثر تكرارا باللغة الإنجليزية هو e)

 

*هذا الرابط مفيد جدا بموضوع فك التشفير سواءا بكريقة قيصر أو بالطرق التي سنتطرق لها لاحقا    :http://www.simonsingh.net/The_Black_Chamber/crackingsubstitution.html

 

ملاحضة:إن رأيك أن هذا صعب و أننا نعمل الآن على فك تشفير خوارزمية بدائية

 

فكيف سنتمكن من فك خوارزميات حديثة كال DES  و ال MD5

 

هذا المواضيع مفيدة لمن يريدون أن يتعلو ال cracking  و ال hacking

 

أنتضر ردودكم

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

14 إجابة على هذا السؤال .

  • 0
def caesarCipher(mode, message, key):    message = message.lower()        if mode == 'd':        key = -key            translated = ''    for symbol in message:        if symbol.isalpha():            num = ord(symbol) + key            if num > ord('z'):                num -= 26            elif num < ord('a'):                num += 26            translated += chr(num)        else:            translated += symbol    return translateddef caesarCipherBruteForce(message):    i = 1    while i <= 25:        print('key: '+str(i)+'\t=> ', caesarCipher('d', message, i))        i += 1        message = caesarCipher('e', 'secret message', 5)caesarCipherBruteForce(message)

خرج البرنامج سيكون

key: 1    => wigvix qiwwekikey: 2    => vhfuhw phvvdjhkey: 3    => ugetgv oguucigkey: 4    => tfdsfu nfttbhfkey: 5    => secret messagekey: 6    => rdbqds ldrrzfd....key: 25    => ykixkz skyygmk
تم تعديل بواسطه m ahmed
2

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

محاولتك هذه :

 

تعتمد على إيجاد جميع الحلول و إختيار الحل يدويا

 

إنها بداية جيدة،لكن مازال أماننا الكثير للإنجازه و سنعمل على مراحل

 

المطلوب الآن هو جعل البرنامج يختار الحل بنفسه،نفرض أن اللغة المستعملة هي الإنجليزية

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0
صاحب الموقع الذي نشرته قام بالاشارة الى احد رواد علم التشفير العرب وهو يعقوب الكندي

صراحة اول مرة اسمع ان اول منذ وضع اسس علم فك التشفير هم العرب حيث كانوا يطلقون عليه قديما علم التعمية.

قمت بالبحث قليلا فوجدت كتابا قيما يتحدث عن علم التعمية واستخراج المعمى عند العرب

انصح الجميع بالاطلاع عليه حيث انه يحتوي معلومات قيمة 


لي عودة بعد ان احاول حل المشكل المطروح 

2

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

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

لكن أرى ان هذه الطريقة غير منطقية!
وبما ان عدد الاحتمالات هو 25 احتمال اتوقع ان افضل طريقة هي ان نجرب جميع الاحتمالات ونجلعها تظهر لنا جميعها ومن ثم نقدر نمّيزها..
 

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

 

وبما ان عدد الاحتمالات هو 25 احتمال اتوقع ان افضل طريقة هي ان نجرب جميع الاحتمالات ونجلعها تظهر لنا جميعها ومن ثم نقدر نمّيزها..

 

 

معك حق في هذا لكن كما قلت أنا أفكر بأن نبرمج برامج لتشفير و فك التشفير بالكثير من الخوارزميات و ليس شفرة قيصر فقط

 

25 ‘حتمال عدد قليل و يمكننا مقارنته بالعين المجرد

 

لكن خوارزمية مثل mono alphabetic بها 26! إحتمال أي  403291461126605635584000000

 

هنا من المستحيل معرفة الحل يدويا و حتى بالبرمجة سيكون صعبا نوعا ما

 

لذا من المستحسن أن نجعل البرنامج يفكك التشفير بشكل أوتوماتيكي

 

حتى نكون مستعدين لتفكيك خوارزميات أعقد :)

 

في إنتضار تفاعلكم

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

بالنسبة لي أشوف الحل مستحيل!!
لأننا ندور في حلقة ليس لها بداية ولا نهاية!
وهذا البرهان: :)
لو حسبنا الازاحة من a الى اول حرف في الكلمة مثلا كانت الكلمة المشفرة def
من a الى d الازاحة (المفتاح) تساوي 3 اذًا الكلمة بعد فك التشفير هي abc
وإذا شفرنا xyz وجعلنا الازاحة تساوي 6 الكلمة المشفرة ستكون def
... الخ

فقط هذا استنتاجي ولا ادري ربما كلامي خاطئ

في انتظار رأيك :)

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0
m ahmed

 

لم أفهم ما تقوله

 

أرجو أن توضح رجاءا,

 

عن أس حل تتكلم؟؟

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

أقصد فك التشفير مباشرة اذا لم نعرف المفتاح
مثلا لو قلت لك فك تشفير هذه الكلمة vtxltk أو ماهو المفتاح

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

مثلا لو قلت لك فك تشفير هذه الكلمة vtxltk أو ماهو المفتاح

 

Key #19: caesar

 

أتقصد أن فك التشفير مستحيل؟؟

 

لا ليس ميتحيلا أبدا

 

هناك برامج منتشرة بشكل واسع لفك خوارزميات معقدة

 

من أبرزها johnny the ripper

 

يبدو أنك لم تشاهد الرابط الذي وضعته من قبل  http://www.simonsing...bstitution.html

 

و إلا لما قلت هذا الكلام

 

أرجو أن تتأكد من صحة آرائك و معلوماتك المرة القادمة قبل أم تضرب مجهودنا بالصفر

تم تعديل بواسطه kenham
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

أتوقع انك حصلت على الكلمة بعد أن جربت عدة مفاتيح

أريد منك أن تفك تشفير هذه لو سمحت (mfhex)!

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

الأخ الكريم هذا الموضوع مخصص لصنع برنامج لفك التشفير بالبايثون

 

و الرجاء الإلتزام بالموضوع

 

إن لم تقتنع بفكرة فك التشفيك

 

فيوجد مواضيع أخرى كثير بالمنتدى و شكرا لك

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

الأخ الكريم هذا الموضوع مخصص لصنع برنامج لفك التشفير بالبايثون

 

و الرجاء الإلتزام بالموضوع

لم أخرج عن الموضوع

 

إن لم تقتنع بفكرة فك التشفيك

نعم قلت مستحيل!، أنت تقول غير مستحيل اذَا اثبت انه ليس مستحيل! :)

 

فيوجد مواضيع أخرى كثير بالمنتدى و شكرا لك

 

العفو :)

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

الحل هو:

 

pikha
fyaxq
ibdat

 

 

لو كانت الرسالة المشفرة أطول لكان هناك إحتمال وحيد

 

عمليا التراسل نت المستحيل أن يكون بكلمة واحدة فقط :)

 

ر جاءا دعك من هذا الآن

 

إذا طنت تريد التفكير في فك التشفير تفضل

 

و إلا دعنا نعمل رجاءا

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

الطريقة المستعملة في فك التشفير هي إحصاء جميع الإحتمالات كما فعل الأخ m ahmed

 

لكن عوض أن رتقارن الأحتمالات يدويا،تبرمج برنامج لتقارن الكلمات الناتجة مع ملف يحمل أغلب كلمات تلك اللغة

 

لسنا مضطرين لكتابة هذه الكلامة بأنفسنا بإمكاننا إستعمال قواعد بيانات جاهزة لقواميس

 

أو بإمكاننا إستعمال الأنترنت في ذلك

 

لكن توجد طرق أخرى لتقليل الإحتمالات ،و التي سنستعملها هنا

 

من بينها الأحرف الأكثر تكرارا: صاحب هذه الطريقة هو العالم المسلم يعقوب ابن إسحاق الكندي كما قال الأخ med reda

 

هذا جدول يبين الحروف الأكثر تكرارا في اللغة الإنجليزية: http://www.simonsingh.net/The_Black_Chamber/letterfrequencies.html

 

كما نلاحظ فأن الحرف الأكثر تكرارا في اللغة الإنجليزية هو ال E

 

و مثال الأخ m ahmed  خير دليل على ذلك

 

لقد شفر النص secret message بهذا النص 13 حرف،4 حروف فيها ال E

 

هذه الطريقة تستعمل عندما يكون عندنا نص طويل

 

أما عندما يكون النص المشفر كلمة واحدة فقط بإمكاننا إستعمال طريقة أخرى،هذه الطريقة من تفكيري أنا :blush:

 

لكن بالتأكيد هي موجودة من قبل

 

في اللغة الإنجليزية يوجد نوعين من الحروف حروف ساكنة و حروف متحركة

 

من المستحيل ورود 3 أحرف ساكنة متتالية في كلمة إنجايزية

 

مثلا لو نرى أحتمالات فك تشفير vtxltk

 

أولا تحصي جميع الإحتمالات:

uswksj
trvjri
squiqh
rpthpg
qosgof
pnrfne
omqemd
nlpdlc
mkockb
ljnbja
kimaiz
jhlzhy
igkygx
hfjxfw
geiwev
fdhvdu
ecguct
dbftbs
caesar
bzdrzq
aycqyp
zxbpxo
ywaown
xvznvm
wuymul

 

بإستبعاد الكلمات التي ورد بها 3 أحرف ساكنة متتالية يصيح لدينا الإحتمالات التالية فقط:

squiqh
qosgof
omqemd
kimaiz
igkygx
geiwev
ecguct
caesar
aycqyp
ywaown
wuymul

 

بما أن النص المشفر عبارة عن كلمة واحدة لا يمكن إيتعمال تواتر الأرح

 

لكن هناك طريقة تواتر الأحرف الثنائية و الثلاثية و أيضا الأحرف المتتابعة

    • Order Of Frequency Of Single Letters
      • E T A O I N S H R D L U
    • Order Of Frequency Of Digraphs
      • th er on an re he in ed nd ha at en es of or nt ea ti to it st io le is ou ar as de rt ve
    • Order Of Frequency Of Trigraphs
      • the and tha ent ion tio for nde has nce edt tis oft sth men
    • Order Of Frequency Of Most Common Doubles
      • ss ee tt ff ll mm oo
    • Order Of Frequency Of Initial Letters
      • T O A W B C D S F M R H I Y E G L N P U J K
    • Order Of Frequency Of Final Letters
      • E S T D N R Y F L O G H A K M P U W
    • One-Letter Words
      • a, I
    • Most Frequent Two-Letter Words
      • of, to, in, it, is, be, as, at, so, we, he, by, or, on, do, if, me, my, up, an, go, no, us, am
    • Most Frequent Three-Letter Words
      • the, and, for, are, but, not, you, all, any, can, had, her, was, one, our, out, day, get, has, him, his, how, man, new, now, old, see, two, way, who, boy, did, its, let, put, say, she, too, use
    • Most Frequent Four-Letter Words
      • that, with, have, this, will, your, from, they, know, want, been, good, much, some, time

 

باستعمال:

 

Order Of Frequency Of Digraphs

  • th er on an re he in ed nd ha at en es of or nt ea ti to it st io le is ou ar as de rt ve

 

نلاحظ أن الثنائية الوحيدة المذكورة بالإحتمالات في ar بالإحتمال caesar

 

 

 

و هناك أمر مهم جدا و هو معرفة تامة بالجهة المرسلة و المستقبلة للرسالة المشفرة

 

 

و هو الأمر الأكثر أهمية مقلا لو كنا في حرب من المحتمل ورود بعض الكلمات التي تدل على الحرب

 

هنا الأخ    m ahmed   هو صاحب الرسالة المشفرة و قد وضعها لقسم اليايضون بموضوع فك التشفير

 

و هذا ما يأكد صحة الإحتمال

 

 

أعرف أن طرائق فك التسفير معقدة جدا،لكن هذا هو التشفير

 

و على قدر التعب و المجهود تكون النتائج مرضية

 

أرجو أن تفهمو قصدي

تم تعديل بواسطه kenham
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



سجل دخولك الان

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .