برای بعضی ها احتمالا واژه رمزگذاری (Encryption) یادآور فیلم جیمزباند و شخصیت منفی بزرگی باشد که با وارد کردن کدهایی عجیب و غریب می خواهد جهان را به هم بریزد. اما در حقیقت خیلی از ما روزانه و بدون آنکه بدانیم از این تکنولوژی استفاده می کنند.در دنیای امروزی که امنیت حرف نخست را می زند، تقریبا تمام دیوایس ها و اپلیکیشن هایی که روزانه با آن ها سر و کار داریم از همین تکنولوژی کمک می گیرند. اما اصلا رمزگذاری چیست و آیا می توان به آن اطمینان کرد؟ تا پایان همراه ما باشید تا جواب این سوال را بگیرید.
رمزگذاری چیست؟
به عبارت دیگر کسانی که کلید دارند می توانند این کاراکترهای تصادفی را دوباره به یک نوشته ساده برگردانند. در دنیای اطلاعات امروزی، دو روش رمزگذاری معمول با نام های رمزگذاری عمومی (نامتقارن) و رمزگذاری خصوصی (متقارن) وجود دارد که هر چند هر دو این الگوها به کاربران اجازه می دهند تا با رمز گذاشتن روی داده ها آن ها را از چشمان بقیه پنهان کنند ولی دارای تفاوت هایی نیز با یکدیگر هستند.
رمزگذاری با کلید عمومی (Public Key Encryption)
در رمزگذاری با کلید عمومی که به رمزگذاری نامتقارن هم مشهور است از دو کلید استفاده می شود: کلید عمومی و کلید خصوصی. کلید عمومی نوشته ها را رمزگذاری می کند و با کلید خصوصی می توان همین نوشته را رمزگشایی نمود. برای درک بهتر این مسئله فرض کنید که جویی و کارن هر دو کلید یک صندوق را دارند.
کلید جویی عمومی بوده و کلید کارن هم خصوصی است. اکنون جویی می تواند با کلیدش در صندوق را باز کند و چیزهایی که می خواهد را اضافه کند ولی اجازه ندارد وسیله هایی که قبلا در صندوق قرار گرفته را نمی تواند ببیند یا حتی بردارد. در صورتی که کارن با کلیدش قابلیت این را دارد اشیاء درون صندوق را دیده و هر کدام را که خواست حذف نماید.
در دنیای دیجیتال همین مسئله دیده می شود. کسی که کلید عمومی دارد، می تواند نوشته ای ساده را رمزگذاری کرده و برای بقیه بفرستد اما تنها با داشتن کلید خصوصی می توان پیام ها را رمزگشایی کرد. البته در این مثال، کارن اگر بخواهد یک نوشته ساده را رمزنگاری نموده و بفرستد باید از کلید عمومی استفاده کند؛ کارایی دو کلید کاملا متفاوت هستند و هیچکدام کار دیگری را انجام نمی دهد.
رمزگذاری با کلید خصوصی (Private Key Encryption)
تکنولوژی های مدرن رمزگذاری و مهمترین الگوریتم های آن
به عنوان نمونه کلید ۵۶ بیتی به نظر تفاوت چندانی با کلید ۶۴ بیتی ندارد ولی در اصل باز کردن قفل یک کلید ۶۴ بیتی ۲۵۶ بار سخت تر از کلید ۵۶ بیتی است. در خیلی از رمزگذاری های امروزی، حداقل از کلیدهای ۱۲۸ بیتی استفاده می شود و در بعضی موارد این رقم به ۲۵۶ بیت و بیشتر نیز می رسد.
بنابراین برای کرک کلیدهای جدید باید ۳۳۹٫۰۰۰٫۰۰۰,۰۰۰٫۰۰۰٫۰۰۰٫۰۰۰٫۰۰۰٫۰۰۰٫۰۰۰٫۰۰۰٫۰۰۰ حدس متفاوت زده شود. کاری که بیش از یک میلیون سال طول می کشد تا در نهایت ترکیب درست حدس زده شود. به بیان ساده تر، از لحاظ تئوری معقول نیست که کسی بخواهد رمزگذاری های ۱۲۸ بیتی یا بیشتر را با روش حمله غیر هوشمندانه کرک کند.
الگوریتم Triple DES
از زمان معرفی الگوریتم دی ای اس، استانداردهای رمزگذاری دستخوش تغییرات گوناگونی شده اند. همین تغییرات هم باعث شد تا در سال ۱۹۹۸ و بیست و یک سال بعد از عرضه الگوریتم دی ای اس، کمپانی سازنده از الگوریتم جدیدی تحت عنوان تریپل دی ای اس استفاده کند.
هر چند تکنولوژی اولیه دی ای اس محدودیت هایی داشت و از کلیدهای ۵۶ بیتی استفاده می کرد اما در تریبل دی ای اس اندازه کلیدها به ۱۶۸ بیت افزایش یافته که کرک کردن شان را خیلی سخت تر می کند. در صنعت پرداخت الکترونیکی از این الگوریتم استفاده می شود.
الگوریتم AES
در سال ۱۹۹۸ الگوریتم دی ای اس شکسته شد و سه سال بعد ایالات متحده آمریکا آ ای اس (استاندارد رمزنگاری پیشرفته) را به عنوان جایگزین آن انتخاب کرد. هر چند گزارشاتی مبنی بر دستیبایی بعضی هکرها به روش های سریع تر از حمله غیرهوشمندانه به دست رسیده ولی همچنان تکنولوژی AES غیر قابل نفوذ است.
به همین خاطر هم دولت آمریکا برای بعضی بخش های امنیتی خود از همین تکنولوژی کمک می گیرد. البته AES به علت مصرف رم کمتر و سرعت بالایش گزینه خوبی برای سازندگان اپلیکیشن ها نیز به حساب می آید. FileVault از جمله برنامه هایی محبوبی به شمار می رود که از آ ای اس استفاده کرده است.
الگوریتم RSA
با وجود اینکه از معرفی تکنولوژی آر اس ای سال ها می گذرد ولی همچنان از این روش در تبادل الکتریکی اطلاعات و رای گیری رمزنگاری شده استفاده می گردد. در بعضی تکنولوژی های متن باز همانند PGP نیز ردپاهایی از آر اس ای برای رمزگذاری داده های دیجیتالی دیده می شود.
الگوریتم ECC
امروزه ای سی سی (رمزنگاری منحنی بیضوی) به عنوان یکی از قدرتمندترین و پیچیده ترین ترین تکنولوژی های رمزگذاری است. به خاطر سرعت بالا و عملکرد خوب این تکنولوژی، حتی از آن در سیستم های کوچک تر نیز می توان استفاده کرد. آژانس امنیت ملی ایالات متحده آمریکا از بزرگترین پشتیبانان ECC است و در حال حاضر از این تکنولوژی به عنوان جایگزین الگوریتم RSA یاد می شود.
آیا می توان الگوریتم های رمزگذاری را شکست داد؟
۱ – در پشتی (Backdoor): مهم نیست که الگوریتم رمزگذاری شده چه قدر امنیت دارد، همیشه در پشتی می تواند دسترسی به کلید خصوصی را فراهم کند. در پشتی راهی است که بدون اجازه گرفتن می توان به بخش های مشخصی دسترسی پیدا کرد.
۲ – استفاده از کلیدهای خصوصی: هر چند تکنولوژی های مدرن رمزگذاری امن هستند ولی بعضی ها خیلی روی این مسئله حساب باز نمی کنند. اگر در خارج از محدوده امن از کلید استفاده شده یا حتی کلید گم شود، احتمال دسترسی بقیه به اطلاعات رمزگذاری شده وجود دارد.
۳ – افزایش قدرت محاسباتی: با توجه به تکنولوژی های کنونی، شکستن قفل الگوریتم های رمزگذاری کار تقریبا غیرممکنی است ولی با پیشرفت سخت افزارها احتمال دست یابی به اطلاعات رمزگذاری شده هست. بنابراین تکنولوژی رمزگذاری باید سعی کند تا خودش را روز نگه دارد.
۴ – فشار دولت ها: به خاطر بعضی مسائل سیاسی، گاهی اوقات دولت ها به کمپانی ها فشار می آورند تا داده های رمزگذاری شده را در اختیارشان قرار دهد.
نظرات کاربران