رمزنگاری متقارن معمولاً بر پایه رمزهای بلوکی است. یک رمز بلوکی E تابعی است که یک ورودی m با طول ثابت به همراه کلید K را میگیرد و متن رمز شده c با طول ثابت را به عنوان خروجی میدهد. برای هر کلید ثابت K، E باید جایگشتی باشد که به هر متن رمز شده دقیقاً یک متن اصلی را نسبت دهد. از جمله رمزهای بلوکی معروف میتوان DES که قدیمیتر است و AES که جدیدتر است را نام برد. توجه داشته باشید که رمزهای بلوکی فقط یک ابزار هستند و نمیتوانند به تنهایی یک سیستم رمزنگاری امن را فراهم کنند. بخاطر اینکه رمزهای بلوکی فقط میتوانند بلوکهای با طول ثابت را رمز کنند (بهعنوان مثال در AES بلوکهای ۱۲۸ بیتی). در حالی که ما باید قادر باشیم یک متن اصلی با هر طولی را رمز کنیم. بهعلاوه همانطور که در جلوتر میبینیم رمزنگاری باید بهصورت تصادفی باشد و یا به متغییری وابسته باشد که برای هر پیام جدیدی تغییر کند (بهعنوان مثال از یک شمارنده استفاده شود). مکانیزمی که با کمک آن میتوان از یک رمز بلوکی یک سیستم رمزنگاری ساخت سبک بهکارگیری رمز بلوکی[۱] نامیده میشود. سبک زنجیرهای قالبهای رمز[۲] (CBC) که در شکل ۲ نشان داده شده است، با یک مقدار اولیه تصادفی پر استفادهترین سبک بهکارگیری رمز بلوکی است.