كوكى ها از تخيل تا واقعيت
نام نویسنده: آرش فرحزاد
شرق – تعاريف بسيار زياد و متنوعى در مطبوعات و رسانه ها از كوكى ها ديده مى شود. يكى از اين تعاريف اينگونه بيان مى شود كه: «كوكى ها برنامه هايى هستند كه وب سايت ها در هاردديسك شما قرار مى دهند. آنها در كامپيوتر شما قرار گرفته و اطلاعات مربوط به شما و آنچه كه شما در اينترنت انجام مى دهيد را جمع آورى مى كنند و هر زمان كه لازم باشد مى تواند تمامى اطلاعات جمع آورى شده توسط كوكى را بارگذارى (Load) كند.»
مشكل اينجاست كه هيچ كدام از اينگونه تعاريف صحيح نيستند. كوكى ها برنامه نيستند و نمى توانند مانند يك برنامه اجرا شوند. از اين رو نمى توانند هيچ گونه اطلاعاتى براى خود جمع آورى كنند و يا اينكه اطلاعات شخصى شما را از كامپيوترتان گردآورى كنند. در حقيقت يك تعريف صحيح از كوكى عبارت است از: «يك قطعه متنى كه سرويس دهنده وب مى تواند در هاردديسك كاربر ذخيره كند. كوكى ها به وب سايت ها اجازه ذخيره كردن اطلاعات روى كامپيوتر كاربر و سپس بازيابى آن را مى دهند. براى مثال يك وب سايت تقريباً براى هر ملاقات كننده يك شماره شناسه (user ID) مجزا ايجاد مى كند و آن را در كامپيوتر كاربر ذخيره و بعدها به عنوان فايل كوكى به كار مى برد. اكثر سايت ها تنها يك قطعه اطلاعات كه همان شناسه كاربر است را بر روى سيستم شما ذخيره مى كنند. يك زوج نام _ ارزش، يك قطعه داده (Data) نامگذارى شده است و يك برنامه نيست و هيچ كارى نمى تواند انجام دهد. يك وب سايت تنها مى تواند اطلاعاتى را كه در كامپيوتر شما قرار داده بازيابى كند و نمى تواند اطلاعات را از ديگر فايل هاى كوكى و يا هر اطلاعات ديگرى از كامپيوتر شما بازيابى كند.
•انتقال كوكى ها
در حقيقت اين نكته كه كوكى ها اطلاعات سرى و شخصى كربران را براى اهداف و مقاصد معينى مى فرستند چندان مبناى علمى ندارد. هر وب سايت تنها مى تواند داده هايى را كه بر روى سيستم شما ذخيره كرده دريافت كند و نه هيچ چيز ديگرى را. داده ها نيز به روش زير نقل و انتقال پيدا مى كنند: اگر شما URL يك وب سايت را در مرورگر (Browser) خود تايپ كنيد، مرورگر شما يك درخواست براى صفحه وب سايت ارسال مى كند. وقتى مرورگر اين عمل را انجام داد در سيستم شما به جست وجوى فايل كوكى مى پردازد. اگر فايل مورد نظر را پيدا كند مرورگر شما تمام زوج نام _ ارزش را به همراه URL به سرويس دهنده ارسال خواهد كرد و اگر فايل كوكى را پيدا نكند هيچ داده اى هم نخواهد فرستاد. پس ا آن سرويس دهنده وب درخواست صفحه و همچنين كوكى را دريافت مى كند و چنانچه زوج هاى نام _ ارزش دريافت شده باشند، مى تواند آنها را به كار گيرد. اما اگر زوج هاى نام _ ارزش دريافت نشده باشند آن گاه سرويس دهنده متوجه خواهد شد كه شما قبلاً از اين سايت ديدن نكرده ايد.
بر همين اساس سرويس دهنده يك شماره شناسه جديد براى شما در پايگاه داده هاى خود ايجاد مى كند و سپس زوج هاى نام – ارزش را به سيستم و در Header صفحه وب ارسال مى كند، و سيستم شما اين زوج ها را بر روى هاردديسك ذخيره مى كند. فراموش نكنيم كه سرويس دهنده وب مى تواند زوج هاى نام – ارزش را تغيير داده و يا اينكه هر بار شما به سايت راجعه مى كنيد و درخواست صفحه مى كنيد زوج هاى جديدى به آن اضافه كند. البته اطلاعات ديگرى نيز وجود دارند كه سرويس دهنده مى تواند به همراه زوج نام _ ارزش ارسال كند. يكى از آنها تاريخ انقضا است و ديگرى يك مسير است. به طورى كه سايت مى تواند ارزش هاى كوكى متفاوتى را با قسمت هاى مختلف سايت مربوط كند. در عين حال بايد توجه داشته باشيد كه شما بر روى اين فرآيند كاملاً كنترل داريد و مى توانيد يك گزينه را در مرورگر خود تنظيم كنيد، به گونه اى كه مرورگر هر بار به شما اطلاع دهد كه يك سايت زوج هاى نام _ ارزش براى شما فرستاده و شما مى توانيد آنها را پذيرفته و يا رد كنيد.
•استفاده از كوكى ها
در اصل كوكى ها به منظور رفع مشكل بزرگ افرادى كه وب سايت ها را اجرا مى كنند، تكامل يافته اند.
به مفهوم ديگر، يك كوكى اجازه مى دهد وب سايت اطلاعات وضعيت را بر روى سيستم شما ذخيره كند. اين اطلاعات سبب مى شود وضعيت مرورگر شما براى وب سايت مورد نظر مشخص شود. يك شناسه (ID) يك قطعه ساده از اطلاعات وضعيت است و چنانچه يك شناسه در سيستم شما وجود داشته باشد سايت متوجه خواهد شد كه شما قبلاً از اين پايگاه ديدن كرده ايد. در اصل وضعيت به اين شكل است كه «مرور شما حداقل يك بار از اين سايت ديدن كرده» و سايت، شناسه شما مربوط به اين ديدار را مى شناسد. اما وب سايت ها به روش اى مختلفى از كوكى ها استفاده مى كنند: مثلاً سايت ها مى توانند دقيقاً تعيين كنند كه چه تعداد بازديدكننده از سايت ديدن كرده اند. براى سرويس دهنده هاى پروكسى (Proxy)، Caching، تمركزدهنده ها و… تنها راه براى اينكه يك سايت بتواند دقيقاً ملاقات كنندگانش را شمارش كند قرار دادن يك كوكى با يك شناسه واحد براى هر ملاقات كننده است. سايت ها همچنين مى توانند با استفاده از كوكى ها تعداد ملاقات كننده هاى جديد و همچنين ملاقات كننده هاى تكرارى را تعيين كنند و يا مشخص كنند كه يك كاربر چگونه از سايت بازديد كرده است.
همچنين سايت ها مى توانند اولويت هاى كاربران را ذخيره كنند. به طورى كه سايت مى تواند جست وجوى متفاوتى براى هر كاربر داشته باشد. مثلاً اگر شما سايت هاى MSN و Yahoo را ببينيد، تغييرات محتوا، طرح كلى و رنگ را به شما پيشنهاد مى كند. همچنين به شما اجازه وارد كردن zipcode و دريافت اطلاعات وضع هوا را مى دهد. زمانى كه شما zipcode خود را وارد مى كنيد زوج نام _ ارزش زير به فايل كوكى اضافه مى شود. سايت howstuffworks.com نيز مى تواند چيزهايى از قبيل سبدهاى خريد و گزينه هاى پرداخت سريع را اجرا كند. در اين حالت كوكى يك شناسه را دربردارد و به سايت اجازه مى دهد كه ردپاى شما را دنبال كند تا اگر شما چيزى به سبد خريد خود اضافه كرديد خبردار شود. هر قلمى كه شما به سبد خريد خود اضافه مى كنيد به همراه ارزش شناسه شما در پايگاه داده هاى اين سايت ذخيره خواهد شد. اجراى چنين مكانيسم مناسبى جهت خريد بدون وجود كوكى ها و يا چيزى شبيه آنها غيرممكن خواهد بود. توجه داشته باشيد كه در تمامى اين مثال ها آنچه كه پايگاه داده ها توانايى ذخيره كردن آن را دارد چيزهايى است كه شما از سايت موردنظر انتخاب كرده ايد مثل صفحاتى كه در سايت مرور كرده ايد و يا اطلاعاتى كه به صورت online به سايت داده ايد. تمام اين اطلاعات در پايگاه داده ها ذخيره مى شوند. در حقيقت در بيشتر موارد تمامى آنچه كه در كامپيوتر شما ذخيره مى شود يك كوكى شامل شناسه واحد شما است.
•مشكلات زياد
ام كوكى ها مشكلاتى نيز ايجاد مى كنند. آنها از مكانيزم كاملى برخوردار نيستند ولى بسيارى از چيزهايى كه انجام آنها از روش هاى ديگر امكان پذير نيست را ممكن مى سازند. به برخى از نقاط ضعف كوكى ها اشاره مى كنيم: ۱- اغلب افراد از سيستم هاى مشترك استفاده مى كنند. هر سيستمى كه در يك فضاى عمومى قرار گرفته و بسيارى از سيستم هايى كه در يك محيط ادارى و يا منزل استفاده مى شوند توسط افراد مختلف به صورت مشترك مورد استفاده قرار مى گيرند. با يك مثال بهتر مى توان اين نكته را روشن كرد. شما يك سيستم عمومى را براى خريد چيزى از يك فروشگاه (خريد online) به كار مى بريد. فروشگاه در كامپيوتر مورد استفاه شما يك كوكى قرار مى دهد و شخص ديگرى بعداً مى تواند با استفاده از حساب شما چيزى از فروشگاه خريدارى كند. فروشگاه ها معمولاً درباره اين مشكل يك اخطار با حروف درشت ارسال مى كنند كه دليل آن همين است.
حتى در برخى مواقع ممكن است اشتباهاتى رخ دهد. براى مثال فردى يك بار از كامپيوتر همسرش براى خريد از سايت Amazon استفاده كرد بعدها او دوباره وارد سايت Amazon شد و روى يك دكمه كليك نمود و متوجه نبود كه با اين كليك اجازه خريد يك كتاب را داده است. البته در سيستم هاى مبتنى بر NT و Unix كه از حساب ها به طور مناسب استفاده مى شود و بحث ايمنى و كنترل پذيرى معناى بيشترى مى يابد اين مشكل وجود ندارد. در اين گونه سيستم عامل ها حساب هاى تمامى كوكى هاى كاربران را تفكيك مى كنند. اما مشكل اينجاست كه سيستم عامل هاى ديگر حساب ها را به حال خود رها مى كنند.
اگر شما اين مثال را در يك كامپيوتر با وضعيت استفاده عمومى انجام دهيد و افراد ديگر كه از همان سيستم استفاده مى كنند از سايت howstuffworks ديدن كرده باشند در اين صورت تاريخچه يا سابقه URL ممكن است كه يك ليست طولانى از فايل ها را نمايش دهد. مشكل ديگر كوكى ها اين است كه اگر شما مشكلى با مرورگر خود پيدا كنيد اولين توصيه اى كه به شما مى شود اين است كه تمامى فايل هاى اينترنت موقت (Temporary Files) موجود در كامپيوتر خود را پاك كنيد. با انجام اين كار شما تمامى فايل هاى كوكى خود را از دست مى دهيد و سپس وقتى از يك سايت ديدن مى كنيد آن سايت تصور مى كند كه شما يك كاربر جديد هستيد و يك كوكى جديد براى شما تعيين مى كند. به اين ترتيب شما در سايت به عنوان يك كاربر جديد ثبت مى گرديد. البته در اين حالت ممكن است بازيابى انتخاب هاى قبلى براى شما سخت باشد. به همين دليل است كه سايت ها در برخى از موارد از شما درخواست ثبت نام مى كنند. البته اگر شما با يك نام كاربرى و كلمه عبور ثبت نام كنيد حتى در صورت مفقود شدن فايل كوكى خود مى توانيد وارد سايت شده و تمامى انتخاب هاى قبلى خود را بازيابى كنيد.
مشكل ديگر كوكى ها نيز وجد سيستم هاى متعدد است. معمولاً برخى افراد در طول روز از بيش از يك سيستم استفاده مى كنند. مثلاً يك كامپيوتر در محل كار، يك Laptop و يك كامپيوتر نيز در منزل. در اين حالت و در صورتى كه سايت به طور اختصاصى براى حل اين مشكل مهندسى نشده باشد سه فايل كوكى جداگانه در هر سه كامپيوتر ايجاد خواهد شد و هر سايتى كه از طريق هريك از سه كامپيوتر بازديد شود كاربر خود را به عنوان يك كاربر جداگانه رديابى مى كند. در اين صورت شايد تنظيم انتخاب هاى سليقه اى خسته كننده و آزار دهنده باشد. البته سايت هايى كه امكان ثبت نام (register) و ذخيره انتخاب هاى سليقه اى به صورت متمركز را فراهم مى كنند با داشتن ك حساب مشابه در سه سيستم مشكلى نخواهند داشت. اما به شرطى كه توسعه دهندگان سايت هنگام طراحى آن براى اين موضوع تصميم گيرى كنند.
اگر شما اين مقاله را تا اينجا خوانده ايد شايد تعجب كنيد كه چه غوغايى در رسانه ها درباره كوكى ها و سايت هاى اينترنتى وجود دارد. زيرا تا اينجا مشخص شد كه در حقيقت كوكى ها فايل هاى متنى بى خطرى هستند و با وجود نقاط ضعفى كه دارند قابليت هاى مفيدى را در عرصه وب فراهم مى آورند.
•خطرات كوكى ها
اما بگذاريد با يك مثال معضلات كوكى ها را هم يادآور شويم: فرض كنيد كالايى را از يك فهرست سفارش خريدارى مى كنيد. شركت مذكور در يك فهرست اختصاصى نام، آدرس و شماره تلفن شما را از طريق سفارش شما در اختيار دارد و همچنين شركت مذكور مى داند كه چه اقلامى را خريدارى كرده ايد. اين شركت مى تواند اطلاعات شما را به ديگر شركت هايى كه خواستار فروش محصولات مشابه هستند بفروشد. بدين ترتيب بازار تجارت از راه دور تقويت مى شود. در يك وب سايت نه تنها سايت قادر به رديابى خريدهاى شما خواهد بود بلكه مى تواند صفحاتى را كه شما مى خوانيد و يا آگهى هايى را كه شما بر روى آنها كليك كرده ايد رديابى و پيگيرى كند. اگر شما كالايى خريدارى كنيد و نام و آدرس خود را وارد نماييد آن سايت به طور بالقوه اطلاعات بيشترى نسبت به شركت سفارش پست سنتى از شما ارد و اين البته در برخى موارد باعث ناخشنودى افراد است.
البته هر سايتى سياست هاى خاص خود را دارد و برخى از آنها از لحاظ اخلاقى قابل اعتمادتر هستند و با سخت گيرى در اين مورد اطلاعات شخصى بازديدكنندگان خود را با ديگر سايت هاى در معرض فروش، اشتراك و يا مبادله نمى گذارند. مورد دوم از مشكلات ايجاد شده توسط كوكى ها جديدتر است. يكى از شركت هايى كه در ايجاد كوكى ها كمى افراطى عمل كرده شركت Double click است كه سهم مهمى در رابطه با بدگمانى مردم و كاربران در مورد كوكى ها دارد. اين شركت مى تواند فايل هاى كوچك Gif را به گونه اى در سايت قرار دهد كه به Double click اجازه بارگذارى كوكى ها را ب روى كامپيوتر شما بدهد. سپس مى تواند تغيير مكان هاى شما را در سايت هاى متعدد دنبال كند. در واقع به طور بالقوه مى تواند رشته جست وجويى را كه شما در موتور جست وجو تايپ مى كنيد ببينيد و از آنجا كه مى تواند اطلاعات زيادى درباره شما از سايت هاى متعدد جمع آورى كند قادر است پروفايل هاى قدرتمند و به روزى را تشكيل دهد.
با آشكار شدن اين نوع عملكرد و درز اخبار به بيرون كارشناسان خبر دادند كه اين شركت پروفايل هاى بى نام را دوباره به اطلاعات نام و آدرس پيوند مى زند و آنها را به صورت مشخصى درآورده و سپس مى فروشد Double click و شركت هاى مشابه در وضعيتى شبيه هم اين كارها را انجام مى دهند. زيرا آنها در بسيارى از سايت ها آگهى ها را سرويس دهى مى كنند. البته پروفايل كردن سايت مقابل در محدوده توانايى هاى سايت هاى شخصى نيست زيرا كوكى ها مختص سايت هايى با امكانات قوى و حرفه اى هستند.
نكته اى كه بايد به آن توجه كرد اين است كه در حفظ اطلاعات شخصى دقت كرده و از كوكى ها هيچ ترسى نداشته باشيد و بدانيد كه وجود آنها در اكثر موارد سبب بهبود ارتباطات اينترنتى شما مى شود. اما نبايد فراموش كنيم كه ارائه بدون حساب و كتاب اطلاعات مى تواند در مورد سايت هايى كه تعهدى درباره حفظ و نگهدارى اطلاعات شما ندارند به ضرر شما تمام شود كه كوچك ترين آن انبوهى از نامه هايى هستند كه در هنگام هر نوع ارتباط اينترنتى، Mail box شما را انباشته مى كنند و علاوه بر هدر دادن اعتبار و هزينه اينترنتى باعث بى نظمى و آشفتگى Mail box شما مى شوند.