نظرة سريعة حول Lucene

يوليو 2nd, 2010 Wajdy Essam Comments off

العديد من البرامج التي نستخدمها بشكل يومي تستخدم خوارزميات سريعة في البحث قد لا ندري عنها، فبدئا من محرك البحث في على الويب google أو MSN Search والتي تخرج لك النتائج في غضون ثانية واحدة وأيضا برامج البحث في نظام التشغيل لديك Desktop Search Engine والتي تبحث في الملفات الموجودة لديك على النظام وتخرج لك نتيجة بسرعة جيدة ، وإنتهائاً ببرامج البحث في التفاسير والمعاجم وفي ارشيف المكتبات ، وغيرها كثير من التطبيقات تتطلب الحصول على النتيجة في اسرع وقت ممكن..

هذه الخوارزميات نتطوي تحت مجال كبير يسمى Information Retrieval (اختصارا IR) وهو يهدف للبحث عن المعلومات سواء داخل الملفات أو البحث عن الملفات نفسها والبحث في شبكة الانترنت World Wide Web وأيضا البحث داخل قواعد البيانات العلائقية RBDMS، وأشهر الأمثله على الIR هي محركات البحث في الويب Web Search Engine.

Read more…

Categories: جافا Java Tags:

الحصول على اسم الدولة من خلال رقم ال IP

يونيو 11th, 2010 Wajdy Essam 3 comments

عند حصولك على IP شخص ما سواء من خلال تسجيل logging هذا العنوان القادم للسيرفر أو حتى عند قرائتك للSMTP Header من صندوق بريدك حتى تحصل على عنوان مرسل الرسالة الحقيقي أو غيرها من الحالات فإنك في الغالب تود الحصول على الدولة التي يوجد فيها هذا العنوان.. لحسن الحظ أي دولة لديها Range معين من العنواين وبالتالي يمكن بكل سهوله بعد الحصول على الIP هو التحقق من وجوده في المدى المعين للدولة وعند دخوله في ذلك المجال فمباشرة تستطيع القول بأن هذا الIP من الدولة الفلانية..

Read more…

Categories: جافا Java Tags:

LSB Steganography in Secure Chat Environment

ديسمبر 15th, 2009 Wajdy Essam 1 comment

بسم الله الرحمن الرحيم ،،

علم الإخفاء Covered Writting أو ما يعرف بSteganograhy يعتبر من الوسائل الفعالة في عملية اخفاء المعلومات ، حيث من خلال الخوارزميات يمكن أن نضع ما نريده من بيانات داخل وسيط أخر (TCP/IP Header ، أو حتى NTFS Alternate Stream في أنظمة الويندوز ، أو حتى في الوسائط المتعددة مثل الصورة ، صوت ، فيدو وغير ذلك..) بدون التأثير على جودة ذلك الوسيط ،، وبالتالي اذا كان هناك متطفل على النظام أو خلال عملية الإرسال فلن يستطيع كشف البيانات التي تم تخبئتها .

من الخوارزميات المبسطة في الStegangoraphy ، فكرتها تكمن في أخذ أي bit من البيانات التي نريد اخفائها على حدة ، وادخال هذا الbit في البت الأول lsb من كل بايت في الوسيط الذي نريد الإخفاء فيه ،، المثال التالي يبين الإخفاء داخل صورة من نوع PNG-24 bit والصور من هذا النوع يتكون البكسل فيها من 3 بايتات الأول يمثل RED والثاني يمثل GREEN والثالث يمثل BLUE . وسنقوم باخفاء البت التالي من البيانات في الlsb من البايت التالي وهكذا ..

Read more…

Categories: جافا Java Tags:

دراسة في علم الفايروسات وطرق القضاء عليها

ديسمبر 1st, 2009 Wajdy Essam 6 comments

السلام عليكم ورحمه الله وبركاته ،،

ايمانا مني بضرورة نشر المعلومات وعدم وضعها فوق الأرفف ، فقد أرتأيت أن اضع مشروعي وذلك لكي يستفيد منه من بعدي ، وان كان المشروع أراه حاليا غير مفيد خاصه لمن لديهم معرفة جيدة بالمجال ، لكن على كلٍ فهذا جُهد المقل ، والفضل لله وحده، وما كان في بحثي من صواب فمن الله تعالى، وما كان من خطأ فمن نفسي ومن الشيطان.

Read more…

Categories: الفايروسات Malware Tags:

برنامج FPlitter++ لتقسيم الملفات الكبيرة واعادة دمجها

أكتوبر 6th, 2009 Wajdy Essam 7 comments

السلام عليكم ورحمه الله وبركاته ،،

الكثير منا يحتاج لأن يرفع ملفات الى أحدى المواقع على الإنترنت ،، ولكن المشكلة هي أنه في أي موقع توجد سياسه معينة تحدد حجم وكمية الملفات التي يتم رفعها ، وأكبر مثال على ذلك الإعداد القياسي في السيرفر الذي يضم المدونه والذي يحدد حجم الملفات المرفقة بامتداد 2 ميغا فقط ..

من هنا كانت فكرة برنامج FPlitter++ وهو يقسم أي ملف مهما كان حجمه من 1 ميغا الى 2 اس 64 وهو عدد تقريبا يساوي 16 تيرابايت ان لم تخني الذاكرة ..

Read more…

Categories: سي++C Tags:

AES Encryption and Decryption in java

سبتمبر 26th, 2009 Wajdy Essam 67 comments

قبل قليل طرح أحد الأخوة سؤالا في احدى المنتديات عن استخدام شفره AES بالجافا ،، ولقتل الملل وحالة الطفش التي امر بها في هذه اللحظة ، قمت بكتابة هذا الكلاس البسيط ومهمته توليد المفتاح والتشفير وفك التشفير باستخدام AES .

Read more…

Categories: جافا Java Tags:

Convert From Integer to 4 Bytes and from 4 Bytes to Integer

سبتمبر 23rd, 2009 Wajdy Essam Comments off

التعامل مع العمليات الثنائية bitwise operation مهم للغايه لأي مبرمج خصوصا في التطبيقات التي تحتاج التعديل على الصور أو الملفات الثنائية ، وأغلب الأوقات قد نضطر لوضع قيمه صحيحة integer في 4 بايتات مثلا لتخزينها في في أحدى المواقع في صورة أو أي مكان .. أيضا العملية العكسية وهي تحويل 4 بايتات الى عدد صحيح قد تكون مفيدة هي الأخرى ..

Read more…

Reading From Resources in Java Archive File

سبتمبر 12th, 2009 Wajdy Essam 14 comments

بسم الله الرحمن الرحيم

أغلب المستخدمين لا يفضلوا التعامل مع الكثير من الإعدادت والملفات عند التعامل مع البرامج ، فقط يريدوا عمل البرنامج بالشكل المطلوب بمجرد النقر دبل كليك على البرنامج . ونتيجه لذلك فجافا وفرت طريقة لعمل البرامج قابلة للتشغيل مباشره بدون الذهاب لسطر الأوامر وتشغيل الjvm وهذه الأمور المملة للمستخدم والمبرمج أيضا :) .

في جافا 6 تستطيع انشاء ملف الجار وتحديد الملف الذي سيعمل مباشره من خلال الأمر التالي :
jar cvfe YourJarFileName.jar YourMainClass file1 file2 …. fileN

Read more…

Categories: جافا Java Tags:

Java Always passing by Value

سبتمبر 1st, 2009 Wajdy Essam 6 comments

من المفاهيم الأساسية في مفهوم الدوال Functions/Methods في لغات البرمجة هو تمرير الوسائط Parameter Passing ، وبشكل عام هناك طريقتين للتمرير المعاملات الأولى هي التمرير بالقيمة Pass by Value والثانية هي Pass by Reference .

عند استخدام النوع الأول Pass by Value سوف يتم نسخ القيمة من المتغير أو الكائن المرسل الى المعامل الموجود في الدالة التي تم استدعائها ، وأي تغيير يتم اجرائه على هذا المعامل فلن يتأثر المتغير الأول والسبب أنه تم تمرير القيمة فقط .

أما عند استخدام النوع الثاني Pass by Reference فسوف يتم ارسال عنوان Pointer/Reference المتغير أو الكائن الى المعامل الموجود في الدالة ، وسوف يكون هذا المعامل يؤشر للمتغير أو الكائن وبالتالي أي تغيير يتم اجرائه على المعامل سوف يتغير المتغير أو الكائن تبعا لذلك ، لأنهم الإثنين يؤشران لنفس المنطقة في الذاكرة .

Read more…

Categories: جافا Java Tags:

المكتبه Console V.01 لتزيين وتلوين المخرجات C++ Console Screen

أغسطس 31st, 2009 Wajdy Essam 2 comments

السلام عليكم ورحمه الله وبركاته ،،

الكثير منا يحاول تزيين برنامجه C++ Console Application واضافه الالوان وبعض الخصائص الأخرى ، وهناك الكثير من المكتبات لفعل ذلك وأشهرها مكتبه بورلاند Graphics.h والتى كانت تعمل تحت مترجمات الدوز القديمه Borland C++ 4، والأن تطورت المكتبه وأصبح لها أصدار جديد متوافق مع مترجمات سي++ الجديده يعمل على DEV-C++ & Mingw..

في هذا التدوينة سنلقى الضوء على أحد المكتبات البسيطه للغايه التي قمت بكتابتها فيما مضى ، و قد تفيد فقط المبتدئين ، المكتبه توقفت من تطويرها لكن اذا أردت المشاركه في المكتبه وتطويرها فمرحبا بك ..

Read more…

Categories: سي++C Tags: