کد گزاری و روش های مختلف :
روش های مختلفی برای کد گزاری وجود دارد مانند توابع و الگوریتم های Randomize و Hash و ...
معمولا هدف اصلی از کد گزاری دو گزینه می باشد
1- امنیت
2- ایجاد کلید های منحصر بفرد
در واقع این دو مورد پر کاربرد ترین موارد استفاده از کد گزاری می باشد
توضیح :
برای ایجاد امنیت در برنامه های مختلف از روش های کد گزاری استفاده می شود ، برای مثال در ذخیره پسورد یوزر های سایت DpiGuide از الگوریتم MD5 که در ادامه در مورد قدرت آن توضیح خواهیم داد استفاده می شود
مثالی که برای ایجاد کلید های منحصر به فرد می شود آورد در امضا های اینترنتی می باشد . برای ایجاد امضا هایی که به صورت منحصر به فرد و بدون تکرار باشند از این روش ها استفاده می شود.
هش که (Hash, Hash Code, Digest, Message Digest هم نامیده می شود) را می توان به صورت اثر انگشت دیجیتالی یک داده در نظر گرفت. با این روش شما می توانید رشته ای اندازه-ثابت (fixed length) از یک داده به دست آورید که با روش های ریاضی به صورت "یک طرفه" رمزنگاری شده است
منظور از "یک طرفه" این مفهوم است که قابل برگشت نمی باشد
برای مثال فرض کنید فرمول ما X+2 باشد ! و برای ورودی مانند 3 خروجی ما برابر 5 خواهد بود
حال اگر شما 5 را در اختیار داشته باشید می توانید مقدار اولیه را به راحتی با فرمول معکوس Y-2 بدست آورید !
در روش های "یک طرفه" این امکان وجود ندارد ...
کشف رشته اصلی از رشته هش آن (عملیات معکوس) به صورت کارا تقریبا غیر ممکن است. نکته دیگر اینکه هر داده یک رشته هش شده کاملا منحصر به فرد ایجاد می کند .
انواع هش
MD4 (128 bits, obsolete)
MD5 (128 bits)
RIPEMD-160 (160 bits)
SHA-1 (160 bits)
SHA-256, SHA-384
and SHA-512 (longer versions of SHA-1, with) slightly different designs