سلام به همه پی وی لرنی های عزیز!
در این مقاله می خواهیم به آشنایی با تفاوت های Stream Cipher و Block Cipher و یژگی های آنها بپردازیم. Stream Cipher و Block Cipher هر دو جریان رمزگذاری و رمزنگاری های تکنیکی هستند که برای رمزگذاری و رمزگشایی به کار می روند؛ یعنی برای تبدیل متن ساده به متن رمزنگاری و رمزنگاری متن به متن ساده. هر دو این روش برای یک هدف هستند اما در روش ها و روند کار آن ها تفاوت وجود دارد.
آشنایی با تفاوت های Stream Cipher و Block Cipher و یژگی های آنها
Block Cipher روشی است که مستلزم رمزگذاری یک بلوک از متن ساده در یک زمان می شود و رمزگشایی توسط یک بلوک به طور همزمان انجام می شود. بنابراین در اصل دو روش محبوب برای رمزگذاری و رمزگشایی متن وجود دارد. Block Cipher بلوک های کل رمز را رمزگذاری می کنند. اما Stream Cipher روشی است که شامل رمزگذاری یک بیت متن ساده در یک زمان می شود. این رمز گذاری با گرفتن digit/element یا رقم/عنصر به طور مداوم رمزگذاری می شوند و در هر زمان یک عنصر را تولید می کنند.
Block Cipher را می توان با رمزگذاری یک بلوک کامل با رمز جریان از رمزنگاری Stream Cipher ایجاد کرد اما عکس این مسئله وجود ندارد و نمی توان Stream Cipher را از Block Cipher ایجاد نمود.
مقایسه کلی
در ادامه آشنایی با تفاوت های Stream Cipher و Block Cipher و یژگی های آنها جدولی ارائه کرده ایم که می تواند در شناخت تفاوت های عمده میان این دو مفید باشد.
تفاوت های اساسی | Stream Cipher | Block Cipher |
فرآیند رمزگذاری | یک بیت متن ساده را رمزگذاری می کند. | یک بلاک از متن ساده را رمزگذاری می کند. |
فرآیند رمزگشایی | در یک زمان مقداری از متن ساده را رمزگشایی می کند. | در یک زمان یک بلوک متن ساده را رمزگشایی می کند. |
Confusion و Diffusion | Stream cipher فقط از confusion استفاده می نماید. | Block Cipher از هر دوی Confusion و Diffusion استفاده می کند. |
تکنیک های مورد استفاده | از تکنیک های جایگزینی استفاده می کند | از تکنیک های انتقال استفاده می کند. |
سرعت | سریعتر از Block Cipher است. | کند تر از Stream Cipher است. |
دامنه افزونگی (Redundancy) | هیچ فرصتی برای افزونگی وجود ندارد. | افزونگی متن ساده را افزایش می دهد. |
منبع کد | به کد کمتری نیاز دارد | به کد بیشتری احتیاج دارد. |
حالت های الگوریتم | از بلوک کد الکترونیکی (ECB) و رمزگذاری بلوک رمزگذاری (CBC) استفاده می کند. | از بازخورد رمزگذاری (CFB) و بازخورد خروجی (OFB) استفاده می کند. |
استفاده از کلید | فقط یک بار از یک کلید استفاده می شود. | از یک کلید می توان چندین بار استفاده کرد |
پیاده سازی | به طور گسترده ای برای اجرای سخت افزار استفاده می شود. | بیشتر برای اجرای نرم افزار مناسب است. |
مثال | OTP یا (One Time Pad). | DES (استاندارد رمزگذاری داده ها) یا (Data Encryption Standard) |
کلام آخر
آشنایی با تفاوت های Stream Cipher و Block Cipher و یژگی های آنها پرداختیم؛ امیدوارم این مقاله توانسته باشد که شما را با وجوه تمایز میان این دو آشنا کند و کاربرد هر یک از آن ها را نشان دهد.
با پی وی لرن همراه باشید.
saba
mode ECB baraye block cipher ha estefade mishe na stream cipher ha