- ملاك الروووح
عدد المساهمات : 3611
نقاط : 6742
التقييم : 46
تاريخ التسجيل : 04/06/2011
التعريف بالهاش واستعماله بـ Qt
الثلاثاء 14 أغسطس 2012, 6:31 pm
{{ بسم آلله آلرحمن الرحيم }}
------------------
{{ كيفكم آن شآء الله تكونو بخيرِ}}
----------------------------------
درس اليوم ان شاء الله سيكون حول hash
كبداية هناك من لا يعرف ما هو hash و هذا تعريف بسيط له
hash هي طريقة للتشفير لكن لا يمكن فك التشفير نهائيا
اي اذا شفرت ملف معين بhash فانه لا يمكنك فك تشفيره
قد يتسائل البعض لماذا اذن التشفير باستعمال hash و لا يمكننا فك التشفير فيما بعد
مثال بسيط لنعرف فائدة hash
لديك برنامج يطلب كلمة المرور في الحالة العادية ستاخد كلمة المرور
من المسخدم و تقارنها بكلمة المرور الصحيحة
لكن هذه الطريقة غير عملية لانها ستجعل كسر البرنامج جد سهل
اما لو استعملت hash فتقرا كلمة المرور من المستخدم ثم تشفرها بhash
و تقارنها مع كلمة المرور الصحيحة المشفرة ايضا
اي تقارن كلميتن مشفرتين
هكذا لن تكون بحاجة لفك التشفير
للشتفير بhash في Qt
Qt تقدم صنف خاص بالتشفير بhash هو QCryptographicHash
ما يهمنا منه هو دالة اسمها hash و هي static
اي نستدعيها هكذا QCryptographicHash::hash
و هذا Prototype الدالة
-------------------
كود PHP:
QByteArray QCryptographicHash::hash ( const QByteArray & data, Algorithm method )
كود PHP:
#include
#include
#include
#include
#include
#include
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QWidget w;
QString s="hash this";
QByteArray bytearr = QCryptographicHash::hash(s.toUtf8(), QCryptographicHash::Sha1);
/*
toUtf8
تعيد QByteArray من خلال QString
*/
//اظهار النتيجة ستكون بHEX
QString hash=bytearr.toHex();//قيمة hex و هي تشفير للنص السابق hash this
QMessageBox::information(&w, "hash this", out); //اظهار النتيجة في صندوق حوار
w.show();
return app.exec();
}
النتيجة
كما ترون هذا هو تشفير للنص hash this بhash باستعمال خوارزمية SHA-1
------
-------------------------
ارجو ان يكون هذا الدرس البسيط يقدم ولو القليل في مفهوم h
ash و استعماله في Qt
---------
وآسآل آلله آن يرزقنا حسن الخآتمة آيآنآ وآيآكم .......
بآلتوفيق وآلنجآح
------------------
{{ كيفكم آن شآء الله تكونو بخيرِ}}
----------------------------------
درس اليوم ان شاء الله سيكون حول hash
كبداية هناك من لا يعرف ما هو hash و هذا تعريف بسيط له
hash هي طريقة للتشفير لكن لا يمكن فك التشفير نهائيا
اي اذا شفرت ملف معين بhash فانه لا يمكنك فك تشفيره
قد يتسائل البعض لماذا اذن التشفير باستعمال hash و لا يمكننا فك التشفير فيما بعد
مثال بسيط لنعرف فائدة hash
لديك برنامج يطلب كلمة المرور في الحالة العادية ستاخد كلمة المرور
من المسخدم و تقارنها بكلمة المرور الصحيحة
لكن هذه الطريقة غير عملية لانها ستجعل كسر البرنامج جد سهل
اما لو استعملت hash فتقرا كلمة المرور من المستخدم ثم تشفرها بhash
و تقارنها مع كلمة المرور الصحيحة المشفرة ايضا
اي تقارن كلميتن مشفرتين
هكذا لن تكون بحاجة لفك التشفير
للشتفير بhash في Qt
Qt تقدم صنف خاص بالتشفير بhash هو QCryptographicHash
ما يهمنا منه هو دالة اسمها hash و هي static
اي نستدعيها هكذا QCryptographicHash::hash
و هذا Prototype الدالة
-------------------
كود PHP:
QByteArray QCryptographicHash::hash ( const QByteArray & data, Algorithm method )
كود PHP:
#include
#include
#include
#include
#include
#include
{
QApplication app(argc, argv);
QWidget w;
QString s="hash this";
QByteArray bytearr = QCryptographicHash::hash(s.toUtf8(), QCryptographicHash::Sha1);
/*
toUtf8
تعيد QByteArray من خلال QString
*/
//اظهار النتيجة ستكون بHEX
QString hash=bytearr.toHex();//قيمة hex و هي تشفير للنص السابق hash this
QMessageBox::information(&w, "hash this", out); //اظهار النتيجة في صندوق حوار
w.show();
return app.exec();
}
النتيجة
كما ترون هذا هو تشفير للنص hash this بhash باستعمال خوارزمية SHA-1
------
-------------------------
ارجو ان يكون هذا الدرس البسيط يقدم ولو القليل في مفهوم h
ash و استعماله في Qt
---------
وآسآل آلله آن يرزقنا حسن الخآتمة آيآنآ وآيآكم .......
بآلتوفيق وآلنجآح
- ريتاج
عدد المساهمات : 2084
نقاط : 4163
التقييم : 6
تاريخ التسجيل : 18/05/2011
العمل/الترفيه : مجال الكمبيوتر
رد: التعريف بالهاش واستعماله بـ Qt
الجمعة 24 أغسطس 2012, 11:55 pm
شكرا لكى على موضوعك
نترقب جديدك
نترقب جديدك
- المسلسل الرائع والغنى عن التعريف تيمون و بومبا
- عملاق الملتيميديا الغنى عن التعريف DivX Plus v8.1.2 Build 1.6.0.31 فى احدث اصدار
- برنامج تشغيل الملتيميديا الغنى عن التعريف Winamp media player
- حصريا .. أكبر تجميعة لاصدارات اللعبة الغنية عن التعريف gta نسخ مجربة وعلى أكثر من سيرفر
- حصريا عملاق التصفح الغنى عن التعريف Mozilla FireFox 10.0.2 Final فى اخر اصدار علي اكثر من سيرفر
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى