در ، یک است که در آن هر رقم که توسط تولید شده است، با رقم متناظر در ، می‌شود و رقم متناظر را تولید می‌کند.
رمزهای دنباله‌ای مزیت‌های گوناگونی دارند که آن‌ها را برای کاربردهای گوناگون مناسب می‌سازد. آن‌ها معمولاً نسبت به سریع‌تر هستند و پیچیدگی سخت افزاری کمتری دارند.
 رمزهای دنباله‌ای می‌توانند به عنوان تقریبی از یا تلقی شوند. رمز یکبار مصرف از یک دنباله کلید اجرایی استفاده می‌کند که ارقام آن کاملاً تصادفی هستند. ارقام دنباله کلید اجرایی با ارقام متن اصلی نظیر به نظیر ترکیب می‌شوند و متن رمز شده را تولید می‌کنند. این سیستم دارد. اگر چه طول دنباله کلید اجرایی باید حداقل به اندازه طول متن اصلی باشد و همچنین کاملاً به تصادف انتخاب شده باشد.
یک رمز دنباله‌ای از دنباله کلید اجرایی کوتاه‌تر و مناسب‌تری مانند دنباله کلید اجرایی ۱۲۸ بیتی استفاده می‌کند. این دنباله کلید به‌طور تولید می‌شود. البته یک رمز دنباله‌ای ممکن است ناامن باشد.
 یک رمز دنباله‌ای عناصر دنباله کلید اجرایی را بر اساس یک حالت درونی تولید می‌کند. این حالت درونی به دو روش به روز می‌شود:
 
 رمزنگاری جریانی هماهنگ، جریانی از رقم های شبه تصادفی است که مستقل از متن اصلی و متن رمزگذاری شده تولید شده است؛ سپس با متن اصلی (برای رمزگذاری) یا متن رمزگذاری شده (برای رمزگشایی) ترکیب می شود. در متداول ترین حالت، متن رمزگذاری شده از ترکیب رقم های دودویی (بیت ها) متن اصلی و کلید با کمک عمل XOR (یای انحصاری) تولید می شود. به این گفته می شود.
در رمزنگاری جریانی هماهنگ، فرستنده و گیرنده باید دقیقاً در مرحله باشند تا رمزگشایی موفقیت آمیز باشد. اگر در هنگام انتقال رقم ها چیزی اضافه یا کم شود، هماهنگی از بین می رود. برای همگام سازی مجدد، آفست های مختلفی را میتوان برای رسیدن به رمزگشایی درست آزمایش نمود. روش دیگر این است که متن رمزنگاری شده را در نقاط معین در خروجی کنیم.
 رمزهای دنباله‌ای هماهنگ از N رقم قبلی متن رمزشده برای محاسبه دنباله کلید اجرایی استفاده می‌کنند که ایده آن‌ها در سال ۱۹۴۶ ارائه شده‌است.
مثالی از رمزهای دنباله‌ای ناهماهنگ، در مد است.
 رمزهای دنباله‌ای دودویی غالباً با استفاده از طراحی می‌شوند زیرا آن‌ها به آسانی می‌توانند در سخت افزارها اجرا شوند. استفاده از ثبات‌های خطی به تنهایی امنیت بالایی را تأمین نمی‌کنند. طراحی‌های متنوعی برای بالا بردن امنیت آن‌ها به کار می‌روند.
 چون ثبات‌های خطی اساساً خطی هستند، یک روش برای بهبود امنیت آن‌ها استفاده از خروجی چند ثبات خطی موازی به عنوان ورودی یک غیرخطی و تشکیل یک مولد ترکیبی است. از اهداف چنین توابع ترکیبی، تضمین امنیت طرح‌های حاصله مثلاً به منظور پیشگیری از است.
 یک یک مولد دنباله کلید اجرای برای کاربردهای رمزهای دنباله‌ای است و شامل یک ثبات خطی است که توسط یک تابع غیرخطی فیلتر شده‌است. به عبارت دقیقتر دنباله خروجی یک مولد فیلتری متناظر است با خروجی یک تابع غیرخطی به‌طوری‌که ورودی این تابع از برخی خانه‌های ثبات خطی گرفته شده‌است. برای آنکه دنباله کلید اجرایی ویژگی‌های آماری خوبی داشته باشد، تابع فیلتر باید متوازن باشد (خروجی آن توزیع یکنواخت داشته باشد) و همچنین ثبات خطی باید باشد.
 به جای دستگاه با پیاده سازی خطی، ممکن است از یک تابع بروزرسانی غیرخطی استفاده شود. به عنوان مثال، Klimov و Shamir توابع مثلثی ( ) را با یک چرخه واحد بر روی کلمات n بیتی پیشنهاد کردند.
 برای اینکه یک رمزنگاری جریانی امن باشد، جریان کلید (keystream) آن باید بزرگی داشته باشد و بازیابی کلید یا بازیابی وضعیت داخلی غیرممکن باشد. رمزنگاران همچنین علاقه‌مند به این هستند که جریان کلید (keystream) عاری از ظریف ترین تمایلات به این باشد که به مهاجمان اجازه جریان را از یک رشته نویزهای تصادفی دهند، و همچنین از روابط قابل تشخیص میان که مطابق مرتبط هستند یا موارد مرتبط با نیز عاری باشد. این موضوع باید برای همه کلیدها صادق باشد (نباید کلیدهای ضعیفی وجود داشته باشد)، حتی اگر مهاجمی بتواند متن اصلی یا متن رمزشده را بفهمد و یا انتخاب کند.
 همانند حملات دیگر در رمزنگاری، حملات در رمزنگاری جریانی می‌توانند باشند، به این معنا که آنها لزوماً روش‌های عملی برای شکستن رمز نیستند، اما نشان می‌دهند که رمز ممکن است نقاط ضعف دیگری داشته باشد.
 استفاده‌ی ایمن از رمزنگاری جریانی همزمان، مستلزم این است که هرگز یکبار از همان جریان کلید مجدداً استفاده نشود. این امر به طور کلی به این معناست که یک متفاوت یا کلید باید به هر فراخوانی از رمز عرضه شود. توسعه دهندگان نرم‌افزار همچنین باید بدانند که اکثر رمزگذارهای جریانی برای ارائه اعتبار هستند و نه : پیام‌های رمزگذاری شده همچنان ممکن است در جابجایی تغییر کرده‌باشند.
 همواره تناوب‌های کوتاه برای رمزگذاری جریانی یک نگرانی جدی بوده است. به عنوان مثال، از رمزگذارهای بلوکی 64 بیتی مانند می‌توان برای تولید جریان کلید در حالت (OFB) استفاده کرد. اما، هنگامی که به طور کامل از بازخورد استفاده نمی‌شود، جریان حاصل شده تناوبی حدود 2 بلوک به طور متوسط دارد. برای بسیاری از استفاده‌ها، این تناوب بسیار کم است. به عنوان مثال، اگر رمزگذاری با سرعت 8 در ثانیه انجام شود، یک تناوب از دوره بلوک های 2 تایی بعد از حدود نیم ساعت تکرار می شود.
 برخی از برنامه‌ها که از رمزنگاری جریانی استفاده می‌کنند، به دلیل ضعف در روال تنظیم کلید RC4 ممکن است مورد تهاجم قرار بگیرند. برنامه‌های جدید یا باید از RC4 اجتناب کنند یا اطمینان حاصل کنند که همه کلیدها منحصر به فرد و یا مستقل از هم هستند (مانند یک تولید شده خوب یا یک ) و اولین بایت های جریان اصلی دور ریخته می‌شوند.
 عناصر رمزنگاری جریانی اغلب برای درک ساده تر از رمزنگاری های بلوکی هستند و بنابراین کمتر احتمال دارد که نقاط ضعف تصادفی یا مخرب پنهان بمانند.
{"title": "رمز دنباله‌ای", "link": "https://fa.wikipedia.org//w/index.php?title=%D8%B1%D9%85%D8%B2_%D8%AF%D9%86%D8%A8%D8%A7%D9%84%D9%87%E2%80%8C%D8%A7%DB%8C&oldid=33139337", "language": "fa"}