رمز و رمزنگاری: تفاوت میان نسخه‌ها

محتوای حذف‌شده محتوای افزوده‌شده
Ebrambot (بحث | مشارکت‌ها)
جز ربات: حذف فاصله مجازی زائد
AliBot (بحث | مشارکت‌ها)
جز ربات:اصلاح فاصلهٔ مجازی
خط ۸۴:
رمزنگاری متقارن(کلید خصوصی) چندین نقطه ضعف دارد. مبادله کلیدهای رمز در شبکه‌های بزرگ امری دشوار و مشکل است. علاوه بر این، اشتراک کلیدهای رمز، مستلزم این واقعیت است که فرستندگان و گیرندگان می‌بایست معتبر بوده و قبل از برقراری ارتباط، آشنائی لازم را نسبت به یکدیگر داشته باشند( با تمام افرادیکه قصد ارتباط ایمن با آنان وجود دارد ). همچنین، این نوع سیستم‌های رمزنگاری، نیازمند استفاده از یک کانال ایمن به منظور توزیع کلیدهای " رمز" می‌باشند.
الگوریتم متقارن از یک کلید برای رمزنگاری و رمزگشایی استفاده می‌کند. بیشترین شکل استفاده از رمزنگاری که در کارتهای هوشمند و البته در بیشتر سیستمهای امنیت اطلاعات وجود دارد Data Encryption Algorithm یا DEA است که بیشتر بعنوان DES شناخته می‌شود. DES محصول دولت ایالات متحده‌است که امروزه بطور وسیعی بعنوان یک استاندارد بین‌المللی شناخته می‌شود. بلوکهای ۶۴بیتی دیتا توسط یک کلید، که معمولامعمولاً ۵۶بیت طول دارد، رمزنگاری و رمزگشایی می‌شوند. DES از نظر محاسباتی ساده‌است و براحتی می‌تواند توسط پردازنده‌های کند (بخصوص آنهایی که در کارتهای هوشمند وجود دارند) بکار گرفته شوند.
این روش بستگی به مخفی‌بودن کلید دارد. بنابراین استفاده از این روش در دو وضعیت زیر مناسب است:
 
خط ۹۵:
در زمینه رمزنگاری متقارن الگوریتمهای استاندارد مختلفی وجود دارد. الگوریتمهایی مانند Blowfish و IDEA در موارد مختلف مورد استفاده قرار گرفته‌اند اما هیچکدام پیاده‌سازی سخت‌افزاری نشدند. بنابراین بعنوان رقیبی برای DES جهت استفاده در کاربردهای میکروکنترلی مطرح نبوده‌اند. استاندارد رمزنگاری پیشرفته دولت ایالات متحده امریکا (AES) الگوریتم Rijndael را برای جایگزینی DES بعنوان الگوریتم رمزنگاری اولیه انتخاب کرده‌است. همچنین الگوریتم Twofish مشخصا برای پیاده‌سازی در پردازنده‌های توان‌ـ‌پایین مثلا در کارتهای هوشمند طراحی شد.
در ۱۹۹۸ وزارت دفاع امریکا تصمیم گرفت که الگوریتمها Skipjack و مبادله کلید را که در کارتهای Fortezza استفاده شده بود، از محرمانگی خارج سازد. یکی از دلایل این امر تشویق برای پیاده‌سازی بیشتر کارتهای هوشمند برپایه این الگوریتمها بود.
برای رمزنگاری جریانی (streaming encryption) (که شامل رمزنگاری دیتا در حین ارسال می‌باشد، یعنی بجای اینکه دیتای کد شده و در یک فایل مجزا قرار گیرد، در هنگام ارسال رمزنگاری صورت می‌گیرد.) الگوریتم DES معمولامعمولاً از کلیدهای ۶۴ بیتی برای رمزنگاری و رمزگشایی استفاده می‌کند. این الگوریتم، متن اولیه را به بلوکهای ۶۴ بیتی می‌شکند و آنها را یکی‌یکی رمز می‌کند.
الگوریتم پیشرفته‌تر ۳DES است که در آن الگوریتم DES سه بار اعمال می‌شود. نسخه دیگری از این الگوریتم (پایدارتر از قبلی‌ها) از کلیدهای ۵۶بیتی و کلیدهای ۱۶۸بیتی استفاده می‌کند و سه بار عملیات رمزنگاری را انجام می‌دهد.