در اين مقاله سعي شده است به بررسي پروتكل امنيتي WEP پرداخته شود .


ساختار ارتباطي شبكه هاي بي سيم ، بستري مناسب براي هك و دسترسي هاي بدون مجوز ايجاد نموده است . بنابرين IEEE 802.11 ، راه حلهايي ارائه نمود تا امنيت ارتباطات بي سيم را افزايش دهد . اين راهكار امنيتي ، ارائه پروكل WEP يا Wired Equivalency Privacy بود . در ابتدا تصور بر اين بود كه اين پروتكل ، مشكلات امنيتي شبكه هاي بي سيم را به طور كامل حل مي نمايد ، اما با گسترش شبكه هاي بي سيم و تمركز محققين بر روي اين تكنولوژي ، آسيب پذيري اين پروتكل نيز كشف گرديد . در ادامه اين مقاله WEP را مورد بررسي قرار داده و مبحث شكستن WEP* را در انجمن "حمله به شبكه هاي بي سيم "* تقديم حضور علاقمندان خواهيم كرد .

WEP از الگوريتم RC4 براي رمز كردن بسته هاي ارسالي از Access Point يا كارت شبكه بي سيم ، استفاده مي نمايد . الگوريتم RC4 در SSL هم به كار مي رود . بنابرين WEP با رمزنگاري ارتباط مستقيم دارد . در اين مقاله ما قصد بررسي الگوريتم هاي رمز نگاري و مفاهيم آن را نداريم ، بنابرين فرض بر اين است كه خواننده با مقوله رمزنگاري آشنايي كافي دارد .

براي شروع ، كار را با Data شروع مي كنيم . Data مورد نظر ما يك پيغام مي باشد كه از طريق يك برنامه IM مثل Yahoo! Messenger ، قصد ارسال آن را بوسيله شبكه بي سيم داريم . پيغام ما طولاني مي باشد ، پس ابتدا به قطعات كوچكتر تقسيم مي شود تا مديريت آن راحت تر باشد . هر قطعه ( chunk) توسط الگوريتم CRC-32 پردازش شده تا يك مقدار به نام CS يا *Checksum بدست بيايد . اين مقدار براي محاسبه صحت پيغام به كار برده مي شود و هر CS به انتهاي Data مورد نظر اضافه مي شود .
بعد از كامل شدن اين مرحله ، نوبت به اعمال RC4 به كل Data و CS مي باشد . در اين مرحله ، RC4 براي اجرا احتياج به يك كليد دارد . قطعاً اين كليد بايد ، هم در پروسه رمزنگاري و هم در پروسه رمزگشايي مورد استفاده قرار بگيرد . حالا سوال اينجاست كه اين كليد چگونه بايد ساخته شود و چگونه بايد محرميت آن در طول برقراري ارتباط حفظ شود ؟
براي ساخت كليد مورد نظر ، از دو فاكتور استفاده مي شود . فاكتور اول يك كلمه عبور است كه بين گيرنده و فرستنده ، مشترك مي باشد . يعني دو طرف ارتباط بايد اين كلمه عبور را بدانند . بنابرين احتياج به ارسال كلمه عبور به همراه packet* نمي باشد. فاكتور دوم يك متغير24 بيتي مي باشد كه به نام IV يا Initiation vector * معروف مي باشد . مقدار IV اتفاقي مي باشد و در هر ارسال تغيير مي كند . بنابرين در هر Block يك كليد جديد ساخته مي شود .مقدار IV در هر Packet* براي انجام عمل رمزگشايي ارسال مي گردد .
بعد از آماده شدن دو فاكتور مورد نظر براي ساختن كليد ، اولين مرحله از اجراي الگوريتم RC4 فراخواني مي شود . در اين بخش با استفاده از دو فاكتور ذكر شده ، طي پروسه اي به نام KSA يا Key Scheduling Algoritm يك Seed ساخته مي شود.

سپس خروجي KSA ، وارد پروسه ي ديگري بنام PRGA يا Pseudo Random Generation Algoritm مي گردد . ( در بعضي از منابع ، اين پروسه تحت عنوان PRNG يا Pseudo Random Number Generator هم ناميده شده است ) هدف از اجراي اين پروسه ايجاد يك Key Stream به اندازه ي طول Data + CS هست . بعد از ايجاد Key Stream ، كليد فوق و Data+CS كه به صورت plaintext مي باشد ، با هم XOR* مي شوند و محصول نهايي پيغام رمزشده مي باشد . سپس قبل از ارسال ، مقدار IV به صورت plaintext به پيغام رمز شده اضافه شده و هدر هاي لازم تشكيل شده و packet ارسال مي گردد .
در سمت گيرنده نيز ، هنگام دريافت packet ، ابتدا IV از آن استخراج شده و به همراه كلمه عبور ، از پروسه KSA و PRGA عبور كرده و Key Stream ساخته شده و توسط آن ، پيغام رمز گشايي شده ، سپس CRC-32 بر روي آن اجرا شده و در صورت برابر بودن CS ها ، پيغام صحيح تشخيص داده شده و به برنامه كاربردي واگذار مي شود .

تنظيم WEP بر روي شبكه بي سيم كار چندان سختي نيست . ابتدا بر روي Access Point مقدار طول كليد را انتخاب نماييد (مثلاً 64 بيت ) و سپس كلمه عبور مورد نظركه تحت نام passphrase مشخص مي باشد را انتخاب نموده و دكمه done را كليك نماييد .



اين تنظيمات بايد بر روي كارت شبكه بي سيم هم به همين شكل تنظيم شود .