در مورد چیزهایی مثل rar و اینها که باید به دو نکته توجه کرد: اول اینکه اینها رمزگذاری های درپیت هستن برای من و شما (: به معنی واقعی از چیزی حفاظت نمی کنن. دوم هم اینکه این برنامه ها با استفاده از یک چیز «کلید مشترک» اطلاعات رو کد می کنن. از شما یک پسورد می خوان! به مثال اول برگرد: من یک الگوریتم دارم که هر حرف الفبادر یک جمله رو سه تا جلو می بره. اگر کد این رو به یکی بدم خب راحت همه رمزهام رو باز می کنه. اما اگر کد رو اینجوری کنم که اول از کاربر یک عدد بگیره و بعد به اون تعداد جلو ببره، فقط دونستن الگوریتم باعث باز شدن کد من نمی شه بلکه کدشکن باید عددهای مختلف رو به عنوان «کلید مشترک» تست کنه. این جریان با داشتن یک پسورد واقعی حرفی و استفاده از اون برای کدگذاری پیچیده تر می شه اما به هرحال این کدها به راحتی قابل شکستن هستن بخصوص اگر سورس کد رو داشته باشی.
اما اگر بحث رمزگذاری واقعی است جواب اینه که : بله می شه. در ضمن بهترین و مشهورترین و قوی ترین رمزگذاری های جهان همه بازمتن هستن.
به این دقت کن که رمزگذاری به این معنی نیست که یک کار خیلی قاطی پاتی با یک متن بکنی که فقط خودت بدونی و بعد فقط خودت بتونی بازش کنی. مثلا اگر من وردارم به جای هر حرف الفبا در یک جمله دو تا حرف عقب ترش رو بذارم، یک رمزگذاری درپیت کردم که همینطور که خودت می گی اگر سورس کرد رو به کسی بدم، اونها می تونن همه رمزهام رو باز کنن.
رمزگذاری پیشرفته بر اساس الگوریتم نیست بلکه بر اساس یکسری اسرار است. الگوریتم مثلا RSA رو همه می دونن. درست همونطور که شیوه ساخت قفل رو همه مردم دنیا می تونن برن تو اینترنت بخونن اما بحث اینه که وقتی یک قفل ساخته شد، کلیدش رو چه کسانی دارن. رمزگذاری پیشرفته بر اساس نظریه اعداد کار می کنه. یک الگوریتم داری که از طریق یک عدد خیلی خیلی خیلی خیلی بزرگ که حاصلضرب دو تا عدد خیلی خیلی بزرگ اول است می تونه یک متن رو قفل کنه. باز کردن این قفل نیاز به اون عدد اول اصلی داره که حساب کردنش با پیشرفته ترین کامپیوترها ممکنه چند ماه طول بکشه یا اصولا اگر عدد خیلی بزرگ باشه با تکنولوژی ای که ما بهش دسترسی داریم غیر ممکن باشه.
بذار یکبار مرتب تر بگم. تو یک کلید شخصی داری و یک کلید عمومی. کلید شخصی در اصل دو تا عدد اول خیلی بزرگ است و کلید عمومی ضرب این دو تا عدد توی هم. الگوریتم های رمزنگاری کار خاصی نمی کنن بلکه یک رشته (مثلا متن رو) با اون کلید خیلی خیلی خیلی خیلی بزرگ ترکیب می کنن و یک متن غیرقابل فهم ازش می سازن. اگر کسی خبواد این متن رو بفهمه باید به اون کلیدهای شخصی دسترسی داشته باشه که تو یک جایی قایمشون کردی.