تنقسم طريقة التشفير هذه إلى ثلاثة أجزاء:
1. تحديد محتوى مربع الحوار الإعداد بناءً على نتائج البحث عن السجل.
2. إذا كنت تستخدمه لأول مرة ، فقم بتعيين كلمة مرور جديدة ؛
3. تطبيق تحويل كلمة المرور (أكثر تعقيدًا من النسخة الأصلية). بالطبع ، إذا كنت بحاجة إلى تعديل وظيفة كلمة المرور ، فما عليك سوى تغيير جزء إعداد كلمة المرور.
1. عندما يبدأ البرنامج ، ابحث في السجل لتحديد ما إذا كانت هناك كلمة مرور لتحديد محتوى العرض في النافذة. ومع ذلك ، يجب أن يتم البيان التالي قبل الاستخدام:
أضف tregistry إلى المستخدم وإضافة متغيرات النموذج التالية إلى إعلان VAR:
لذلك: Tregistry ؛
keyname ، valuestr ، tempstr: string ؛
الإجراء tfrmpass.formshow (المرسل: tobject) ؛
يبدأ
لذلك ، = tregistry.create ؛
جرب Tegh.G.Rootkey: = Hkey - Local - Machine ؛
keyname: = ′ software/myPassword ′ ؛
// إذا كان هذا المفتاح متاحًا ، فسيتم فتحه ؛
إذا كان هناك tog.openkey (keyname ، صحيح) ثم ابدأ
TempSt: = extractFilename (application.exename) ؛
Valuestr: = teg.g.ReadString (TempSt) ؛
// إذا لم تكن كلمة المرور فارغة ، فقم بتعديل النموذج للتحقق من كلمة المرور
إذا كان Valuestr <> '' ثم ابدأ
edit2.visible: = false ؛
edit1.setfocus ؛
// إذا كانت كلمة المرور فارغة ، فقم بتعديل النموذج لتعيين مربع حوار كلمة المرور
آخر يبدأ
ShowMessage (′ يرجى تعيين كلمة المرور لأول مرة! ′) ؛
edit2.visible: = true ؛
edit1.setfocus ؛
نهاية
وأخيرا ذلك.
2. رمز استجابة الزر: يتضمن كلمة المرور الجديدة وكلمة المرور التحقق.
الإجراء tfrmpass.okclick (المرسل: tobject) ؛
يبدأ
// الحكم على كلمة المرور الحالية بناءً على ما إذا كان EDIT2 يتم عرضه أم لا ، والتحقق
إذا edit2.visible = false ثم ابدأ
إذا تم تمرير (edit1.text) = valuestr ثم ابدأ
ShowMessage ("كلمة المرور صحيحة!") ؛
آخر يبدأ
ShowMessage ("كلمة المرور غير صحيحة! لا يوجد إذن للعمل!") ؛
توقف
آخر يبدأ
إذا edit1.text = edit2.text ثم ابدأ
لذلك ، = tregistry.create ؛
Teg.G.Rootkey: = hkey - local - machine ؛
keyname: = ′ software/myPassword ′ ؛
إذا كان هناك eg.openkey (keyname ، صحيح) ثم
teg.writeString (TempStr ، pass (edit1.text)) ؛
لذلك ، نهاية
آخر يبدأ
ShowMessage ('كلمة المرور المكتوبة مرة أخرى غير متسقة ، يرجى إعادة الدخول! ") ؛
edit1.text: = ′ ′ ؛
edit1.setfocus ؛
نهاية
3. برنامج تحويل كلمة المرور: كن حذرًا في المعرفة مسبقًا.
في رأيي ، فإن برنامج التحول المصغر هذا ليس معقدًا للغاية. يمكن للقراء أيضًا استخدام وظائف رياضية أخرى لإجراء تحولات أكثر تعقيدًا.
وظيفة PASS (PSTR: سلسلة): سلسلة ؛
var Str ، Str1: String ؛
أنا ، ي: عدد صحيح ؛
يبدأ
STR: = PSTR ؛
لأني: = 1 إلى الطول (str) تبدأ
// من فضلك أول تغيير
j: = (i * i * i mod (i + 20))+(i * i mod (i + 10))+i * 2 + 1 ؛
Str1: = str1+chr (ord (str [i])+j) ؛
j: = (i * i * i mod (i + 10))+(i * i mod (i + 20))+i * 2 + 1 ؛
str1: = str1+chr (ord (str [i])+j) ؛
تمرير: = str1 ؛
نهاية؛