bcrypt
1.0.8
مكتبة لمساعدتك على كلمات مرور التجزئة. يمكنك القراءة عن bcrypt في ويكيبيديا وكذلك في المقالة التالية: كيفية تخزين كلمة مرور بأمان

للراحة ، أوصي باستخدام Boss (مدير التبعية لـ Delphi) للتثبيت ، ببساطة عن طريق تشغيل الأمر أدناه على محطة (Windows PowerShell على سبيل المثال):
boss install https://github.com/viniciussanchez/bcrypt
إذا اخترت التثبيت يدويًا ، فما عليك سوى إضافة المجلدات التالية إلى مشروعك ، في Project> Options> Resource Mensories> الدلائل والشرطية> قم بتضمين مسار بحث الملف
../bcrypt/src
var
LHash: string;
begin
LHash := TBCrypt.GenerateHash(password, cost, type );
end ;أين
password هي كلمة المرور المراد تجزئةtype هو واحد من thashtype.php ، thashtype.bsd ، أو thashtype.default ، thashtype.bsd هو الافتراضي cost هي رقم تتراوح بين 10 و 30 ، الافتراضي هو 10 var
LVerify : Boolean;
begin
LVerify := TBCrypt.CompareHash(password, hash);
end ;أين
password هي كلمة المرور المراد التحقق منهاhash تم إنشاؤها ، على غرار $2y$12$GuC.Gk2YDsp8Yvga.IuSNOWM0fxEIsAEaWC1hqEI14Wa.7Ps3iYFq var
LHashInfo: THashInfo;
LSalt, LHash: string;
LHashType: THashType;
LCost: Word;
begin
LHashInfo := TBCrypt.GetHashInfo(hash);
LCost := LHashInfo.Cost;
LSalt := LHashInfo.Salt;
LHash := LHashInfo.Hash;
LHashType := LHashInfo.& Type ;أين
hash تم إنشاؤها var
LNeeds : Boolean;
begin
LNeeds := TBCrypt.NeedsRehash(hash, cost);
end ;أين
hash هي تجزئة ، على غرار $2y$12$GuC.Gk2YDsp8Yvga.IuSNOWM0fxEIsAEaWC1hqEI14Wa.7Ps3iYFqcost هي رقم تتراوح بين 10 و 30 ، الافتراضي هو 10الشخصيات التي تضم التجزئة الناتجة هي:
./ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789
سوف تكون التجزئة الناتجة 60 حرفًا.

رمز هذا يأتي من بعض المصادر: