• رمزگذاری متقارن الگوریتم های رمزگذاری داده ها الگوریتم های رمزگذاری متقارن الگوریتم رمزگذاری RSA الگوریتم رمزگذاری DES انتخاب الگوریتم رمزگذاری

    در یک سیستم رمزگذاری متقارن، از همان کلید برای رمزگذاری و رمزگشایی اطلاعات استفاده می شود. این بدان معنی است که هر کسی که به کلید رمزگذاری دسترسی داشته باشد می تواند پیام را رمزگشایی کند. به منظور جلوگیری از افشای غیرمجاز اطلاعات رمزگذاری شده، تمام کلیدهای رمزگذاری در سیستم های رمزنگاری متقارن باید مخفی نگه داشته شوند. به همین دلیل است که سیستم های رمزنگاری متقارن را سیستم های رمزنگاری دارای یک کلید مخفی می نامند - کلید رمزگذاری باید فقط برای کسانی در دسترس باشد که پیام برای آنها در نظر گرفته شده است. به سیستم های رمزنگاری متقارن، سیستم های رمزنگاری تک کلیدی نیز گفته می شود. طرح یک سیستم رمزگذاری متقارن در شکل نشان داده شده است. 4.3.

    برنج. 4.3. سیستم رمزگذاری متقارن

    این سیستم های رمزنگاری با بالاترین سرعت رمزگذاری مشخص می شوند و با کمک آنها هم از محرمانه بودن و اصالت و هم از صحت اطلاعات ارسالی اطمینان حاصل می شود.

    محرمانه بودن انتقال اطلاعات با استفاده از یک سیستم رمزنگاری متقارن به قابلیت اطمینان رمز و اطمینان از محرمانه بودن کلید رمزگذاری بستگی دارد. به طور معمول، کلید رمزگذاری یک فایل یا آرایه داده است و در یک حامل کلید شخصی، مانند فلاپی دیسک یا کارت هوشمند ذخیره می شود. اتخاذ تدابیری برای اطمینان از اینکه حامل کلید شخصی در دسترس کسی غیر از مالک آن نیست، الزامی است.

    اصالت به این دلیل تضمین می شود که بدون رمزگشایی اولیه عملاً انجام اصلاح معنایی و جعل رمزنگاری غیرممکن است. پیام بسته. یک پیام جعلی را نمی توان بدون اطلاع به درستی رمزگذاری کرد کلید مخفی.

    یکپارچگی داده ها با الصاق یک کد خاص (پیشوند تقلیدی) به داده های ارسالی که توسط یک کلید مخفی تولید می شود، تضمین می شود. پیشوند تقلید نوعی چک جمع است، یعنی برخی از ویژگی های مرجع پیام، که براساس آن یکپارچگی مورد دوم بررسی می شود. الگوریتم برای تشکیل پیشوند تقلید باید وابستگی آن را به هر بیت از پیام طبق برخی قوانین رمزنگاری پیچیده تضمین کند. بررسی یکپارچگی پیام توسط گیرنده پیام با ایجاد یک جعل از کلید مخفی مربوط به پیام دریافتی و مقایسه آن با مقدار جعل دریافتی انجام می شود. در صورت وجود تطابق، نتیجه گیری می شود که اطلاعات در مسیر ارسال کننده به گیرنده اصلاح نشده است.



    رمزگذاری متقارن برای رمزگذاری اطلاعات "به خود"، به عنوان مثال، برای جلوگیری از ایده آل است دسترسی غیرمجازبه او در غیاب مالک. این می تواند رمزگذاری بایگانی فایل های انتخاب شده یا رمزگذاری شفاف (اتوماتیک) کل درایوهای منطقی یا فیزیکی باشد.

    با دارا بودن سرعت رمزگذاری بالا، سیستم های رمزنگاری تک کلیدی امکان حل بسیاری از مشکلات مهم حفاظت از اطلاعات را فراهم می کنند. با این حال استفاده آفلاینسیستم های رمزنگاری متقارن در شبکه های کامپیوترمشکل توزیع کلیدهای رمزگذاری در بین کاربران را ایجاد می کند.

    قبل از شروع تبادل داده های رمزگذاری شده، لازم است کلیدهای مخفی با همه گیرندگان مبادله شود. انتقال کلید مخفی یک سیستم رمزنگاری متقارن نمی تواند از طریق کانال های ارتباطی عمومی انجام شود، کلید مخفی باید از طریق یک کانال امن به فرستنده و گیرنده منتقل شود.

    اجرای الگوریتم های رمزگذاری متقارن برای رمزگذاری داده های مشترک وجود دارد - یعنی برای ارسال اطلاعات رمزگذاری شده به مشترک، به عنوان مثال، از طریق اینترنت. استفاده از یک کلید برای همه مشترکین چنین شبکه رمزنگاری به دلایل امنیتی غیرقابل قبول است. در واقع، در صورت به خطر افتادن (مفقود شدن، سرقت) کلید، جریان اسناد همه مشترکین در خطر خواهد بود. در این مورد، می توان از یک ماتریس کلیدی استفاده کرد (شکل 4.4).

    ماتریس کلید یک جدول حاوی کلیدهای جفت شدن مشترکین است. هر عنصر جدول برای ارتباط مشترکین در نظر گرفته شده است منو jو فقط برای دو مشترک مشخص در دسترس است. بر این اساس، برای همه عناصر ماتریس کلیدی، برابری است

    . (4.3)

    شکل 4.4. ماتریس کلید

    هر یک منردیف -مین ماتریس مجموعه ای از کلیدهای یک مشترک خاص است منبرای برقراری ارتباط با دیگران N- 1 مشترک. مجموعه ای از کلیدها (مجموعه های شبکه) بین همه مشترکین شبکه رمزنگاری توزیع می شود. مشابه موارد فوق، نت‌ها باید توزیع شوند از طریق کانال های امنارتباط یا دست به دست.



    ویژگی مشخصهالگوریتم‌های رمزنگاری متقارن این است که در طول کار خود، بلوکی از اطلاعات ورودی را با طول ثابت تغییر می‌دهند و بلوک حاصل را با همان اندازه دریافت می‌کنند، اما برای اشخاص ثالثی که مالک کلید نیستند، قابل خواندن نیست. طرح عملیاتی یک رمز بلوکی متقارن را می توان با توابع توصیف کرد

    جایی که م- بلوک داده اولیه (باز)؛ با- بلوک رمزگذاری شده داده ها

    کلید بهپارامتری از الگوریتم رمزنگاری بلوک متقارن است و یک بلوک است اطلاعات باینریاندازه ثابت اصلی مو رمزگذاری شده است بابلوک های داده نیز دارای یک عرض بیت ثابت برابر با یکدیگر هستند، اما نه لزوما برابر طولکلید به.

    رمزهای بلوکی مبنایی هستند که تقریباً تمام سیستم های رمزنگاری متقارن پیاده سازی می شوند. سیستم های رمزنگاری متقارن به شما امکان می دهند فایل هایی با طول دلخواه را رمزگذاری و رمزگشایی کنید. تقریباً همه الگوریتم‌ها از مجموعه معینی از تبدیل‌های ریاضی برگشت‌پذیر برای تبدیل‌ها استفاده می‌کنند.

    روش ایجاد زنجیره ای از بایت های رمزگذاری شده توسط الگوریتم های بلوک به آنها اجازه می دهد تا بسته های اطلاعاتی با طول نامحدود را رمزگذاری کنند. عدم وجود همبستگی آماری بین بیت‌های جریان خروجی رمز بلوک برای محاسبه استفاده می‌شود. چک جمع هابسته های داده و هش رمز عبور.

    اگر برای خواندن بلوک داده های رمزگذاری شده، لازم باشد همه کلیدهای ممکن را جستجو کنید تا پیام رمزگشایی معنی دار شود، یک الگوریتم رمزی به طور ایده آل ایمن در نظر گرفته می شود. به طور کلی، قدرت رمزگذاری بلوکی فقط به طول کلید بستگی دارد و با رشد آن به طور تصاعدی افزایش می یابد.

    برای به دست آوردن رمزهای بلوکی قوی، از دو رمز استفاده کنید اصول کلی:

    ¨ انتشار- توزیع تأثیر یک کاراکتر از متن ساده به بسیاری از کاراکترهای متن رمزی است که به شما امکان می دهد ویژگی های آماری متن ساده را پنهان کنید.

    ¨ مخلوط کردن- استفاده از چنین تبدیل های رمزگذاری که بازسازی رابطه را پیچیده می کند ویژگی های آماریباز کردن و رمزگذاری متون

    با این حال، رمز نه تنها باید افشای اطلاعات را دشوار کند، بلکه رمزگذاری و رمزگشایی را با کلید مخفی شناخته شده برای کاربر آسان می کند.

    یک راه متداول برای دستیابی به اثرات پراکندگی و اختلاط، استفاده از یک رمز ترکیبی است، یعنی رمزی که می تواند به عنوان دنباله ای از رمزهای ساده پیاده سازی شود، که هر یک به پراکندگی و اختلاط کل قابل توجهی کمک می کند.

    در رمزهای مرکب، جایگشت و جانشینی ساده اغلب به عنوان رمزهای ساده استفاده می شود. جایگشت به سادگی نویسه‌های متن ساده را به هم می‌ریزد و نوع خاصی از درهم‌آمیزی توسط کلید مخفی تعیین می‌شود. در جایگزینی، هر کاراکتر در متن ساده با کاراکتر دیگری از همان الفبا جایگزین می شود و نوع خاص جایگزینی نیز توسط کلید مخفی تعیین می شود. لازم به ذکر است که در یک رمز بلوکی مدرن، بلوک‌های متن ساده و متن رمزی توالی‌های باینری هستند که معمولاً ۶۴ یا ۱۲۸ بیت طول دارند. با طول 64 بیت، هر بلوک می تواند 264 مقدار بگیرد. بنابراین، جایگزین‌ها در یک الفبای بسیار بزرگ حاوی حداکثر 2 64 ~ 10 19 "نویسه" ساخته می‌شوند.

    با تناوب مکرر جایگشت ها و جانشین های ساده که توسط یک کلید مخفی به اندازه کافی طولانی کنترل می شود، می توان رمزی قوی با پراکندگی و اختلاط خوب به دست آورد.

    تمام اقدامات انجام شده توسط الگوریتم رمزنگاری بلوک بر روی داده ها بر اساس این واقعیت است که بلوک در حال تبدیل می تواند به عنوان یک عدد صحیح غیر منفی از محدوده مربوط به ظرفیت آن نمایش داده شود. به عنوان مثال، یک بلوک 32 بیتی داده را می توان به عنوان عددی از محدوده 0...4294 967 295 تفسیر کرد. علاوه بر این، بلوکی که عرض بیت آن "قدرت دو" است می تواند به عنوان الحاق چندین تفسیر شود. اعداد غیر منفی مستقل از یک محدوده کوچکتر (بلوک 32 بیتی همچنین می تواند به عنوان الحاق دو عدد 16 بیتی مستقل از محدوده 0...65535 یا به عنوان ترکیبی از چهار عدد 8 بیتی مستقل از محدوده نمایش داده شود. 0...255).

    در این اعداد، الگوریتم رمزنگاری بلوک، اقدامات ذکر شده در جدول 1 را طبق یک طرح خاص انجام می دهد. 4.1.

    جدول 4.1. اقدامات انجام شده توسط رمزنگاری بر روی اعداد

    به عنوان یک پارامتر Vبرای هر یک از این تبدیل ها می توان استفاده کرد:

    ¨ یک عدد ثابت (به عنوان مثال، ایکس"= ایکس + 125);

    ¨ عدد به دست آمده از کلید (به عنوان مثال، ایکس"= ایکس + F(K));

    ¨ عدد به دست آمده از قسمت مستقل بلوک (به عنوان مثال، ایکس 2" = ایکس 2 + اف(ایکس 1)).

    توالی عملیات انجام شده بر روی بلوک، ترکیبی از گزینه های بالا Vو خود توابع افو آرایش کنید ویژگی های متمایز کنندهالگوریتم رمزنگاری بلوک متقارن خاص

    یکی از ویژگی های الگوریتم های بلوک استفاده مکرر و غیر مستقیم از مواد کلیدی است. این در درجه اول با الزام عدم امکان رمزگشایی معکوس با توجه به کلید زمانی که متن اصلی و رمزی شناخته شده است تعیین می شود. برای حل این مشکل، تبدیل های فوق اغلب نه از خود مقدار کلید یا بخشی از آن، بلکه از برخی عملکردها، گاهی غیرقابل برگشت، از ماده کلید استفاده می کنند. علاوه بر این، در چنین تبدیل ها، همان بلوک یا عنصر کلیدی به طور مکرر استفاده می شود. این اجازه می دهد، تحت شرایطی که تابع نسبت به کمیت معکوس باشد ایکسعملکرد را با توجه به کلید غیر قابل برگشت می کند به.

    الگوریتم خاصرمزگذاری، که ورودی آن پیام رمزگذاری نشده اصلی است، همچنین نامیده می شود متن ساده، و کلید. خروجی الگوریتمیک پیام رمزگذاری شده است، همچنین نامیده می شود متن رمزی. کلید یک مقدار مستقل از پیام رمزگذاری شده است. تغییر کلید باید پیام رمزگذاری شده را تغییر دهد.

    پیام رمزگذاری شده برای گیرنده ارسال می شود. گیرنده پیام رمزگذاری شده را با استفاده از الگوریتم رمزگشایی و همان کلیدی که در رمزگذاری استفاده شده است یا کلیدی که به راحتی از آن به دست می آید، به پیام رمزگذاری نشده اصلی تبدیل می کند. کلید رمزگذاری.

    یک پیام رمزگذاری نشده با P یا M از کلمات متن ساده و پیام مشخص می شود. پیام رمزگذاری شده با کلمه C نشان داده می شود.

    امنیت ارائه شده توسط رمزنگاری سنتی به عوامل مختلفی بستگی دارد.

    ابتدا، الگوریتم رمزنگاری باید به اندازه کافی قوی باشد تا پیام رمزگذاری شده ارسال شده را نتوان بدون کلید رمزگشایی کرد و تنها با استفاده از الگوهای آماری مختلف پیام رمزگذاری شده یا ابزارهای دیگر آنالیز آن را تحلیل کرد.

    دوم، امنیت پیام ارسالی باید به محرمانه بودن کلید بستگی داشته باشد، اما نه به محرمانه بودن الگوریتم. این الگوریتم باید توسط متخصصان تجزیه و تحلیل شود تا وجود نقاط ضعفی را که در حضور آنها رابطه بین پیام های رمزگذاری نشده و رمزگذاری شده به خوبی پنهان نشده است، حذف کند. علاوه بر این، اگر این شرط برآورده شود، تولیدکنندگان می‌توانند تراشه‌های سخت‌افزاری ارزان قیمت و برنامه‌های توزیع آزادانه ایجاد کنند که این را اجرا کنند. الگوریتم رمزگذاری.

    ثالثاً، الگوریتم باید به گونه ای باشد که حتی با دانستن جفت های کافی (پیام رمزگذاری شده، پیام رمزگذاری نشده) که با رمزگذاری با استفاده از این کلید به دست آمده است، بتوان کلید را پیدا کرد.

    کلود شانون مفاهیم انتشار و سردرگمی را برای توصیف معرفی کرد قدرت الگوریتمرمزگذاری

    انتشارپراکندگی ویژگی های آماری متن ساده در طیف گسترده ای از ویژگی های آماری متن رمزی است. این با این واقعیت حاصل می شود که ارزش هر عنصر متن ساده بر مقادیر بسیاری از عناصر متن رمزی تأثیر می گذارد، یا به طور معادل، هر عنصری از متن رمزی به بسیاری از عناصر متن ساده بستگی دارد.

    گیجیاز بین رفتن رابطه آماری بین متن رمز و کلید است.

    اگر X پیام اصلی و K باشد کلید رمزنگاری، سپس متن ارسال شده رمزگذاری شده را می توان به صورت نوشتاری نوشت

    گیرنده با استفاده از همان کلید، پیام را رمزگشایی می کند

    حریف که به K و X دسترسی ندارد، باید سعی کند X، K یا هر دو را پیدا کند.

    الگوریتم های رمزگذاری متقارندر نحوه پردازش متن مبدا متفاوت است. رمزگذاری بلاک یا رمزگذاری جریان امکان پذیر است.

    بلوک متن به عنوان یک عدد صحیح غیر منفی یا چندین عدد صحیح غیر منفی مستقل در نظر گرفته می شود. طول بلوک همیشه برابر با توان دو انتخاب می شود. در اکثر الگوریتم های بلوکی رمزگذاری متقارناستفاده می شود انواع زیرعملیات:

    این عملیات به صورت چرخه ای در الگوریتم تکرار می شوند و به اصطلاح را تشکیل می دهند دور. ورودی هر دور خروجی دور قبلی و کلید بدست آمده از آن است الگوریتم خاصاز کلید رمزگذاری K . کلید دور نامیده می شود کلید فرعی. هر الگوریتم رمزگذاری را می توان به صورت زیر نشان داد:


    برنج. 2.2.

    مناطق استفاده

    استاندارد الگوریتم رمزگذاریباید در بسیاری از برنامه ها قابل اجرا باشد:

    • رمزگذاری داده ها. الگوریتم باید هنگام رمزگذاری فایل های داده یا جریان داده های بزرگ کارآمد باشد.
    • ایجاد اعداد تصادفی. الگوریتم باید در تولید تعداد معینی از بیت های تصادفی کارآمد باشد.
    • هش کردن. الگوریتم باید به طور موثر به یک تابع هش یک طرفه تبدیل شود.

    بستر، زمینه

    استاندارد الگوریتم رمزگذاریباید بر روی پلتفرم های مختلف پیاده سازی شود که بر این اساس نیازمندی های متفاوتی دارند.

    • الگوریتم باید به طور موثر بر روی سخت افزار تخصصی طراحی شده برای انجام رمزگذاری/رمزگشایی پیاده سازی شود.
    • پردازنده های بزرگ اگر چه برای بیشتر برنامه های سریعهمیشه از سخت افزار ویژه استفاده می شود، پیاده سازی نرم افزار بیشتر مورد استفاده قرار می گیرد. این الگوریتم باید اجازه اجرای کارآمد نرم افزار بر روی پردازنده های 32 بیتی را بدهد.
    • پردازنده های متوسط الگوریتم باید برای آن کار کند میکروکنترلرهاو سایر پردازنده های متوسط
    • پردازنده های کوچک پیاده سازی الگوریتم بر روی کارت های هوشمند، حتی با در نظر گرفتن محدودیت های سخت در حافظه مورد استفاده، باید امکان پذیر باشد.

    الزامات اضافی

    الگوریتم رمزگذاریدر صورت امکان، باید برخی از شرایط اضافی را برآورده کند.

    • کدنویسی الگوریتم باید آسان باشد تا احتمال خطاهای برنامه نویسی به حداقل برسد.
    • الگوریتم باید یک فضای کلیدی مسطح داشته باشد و به هر رشته تصادفی از بیت ها با طول دلخواه اجازه دهد. کلید ممکن. کلیدهای ضعیف نامطلوب هستند.
    • الگوریتم باید به راحتی برای سطوح مختلف امنیتی اصلاح شود و حداقل و حداکثر الزامات را برآورده کند.
    • تمام عملیات داده باید بر روی بلوک هایی انجام شود که مضرب یک بایت یا یک کلمه 32 بیتی هستند.

    سیستم های رمزنگاری متقارن

    سیستم های رمزنگاری متقارن (همچنین رمزگذاری متقارن، رمزهای متقارن) یک روش رمزگذاری هستند که در آن از همان کلید رمزنگاری برای رمزگذاری و رمزگشایی استفاده می شود. قبل از اختراع طرح رمزگذاری نامتقارن، تنها روشی که وجود داشت رمزگذاری متقارن بود. کلید الگوریتم باید توسط هر دو طرف مخفی نگه داشته شود. کلید الگوریتم قبل از شروع تبادل پیام توسط طرفین انتخاب می شود.

    در حال حاضر، رمزهای متقارن عبارتند از:

    1. مسدود کردن رمزها - پردازش اطلاعات در بلوک هایی با طول معین (معمولاً 64، 128 بیت)، با اعمال یک کلید برای بلوک در در زمان مناسب، معمولاً با چندین چرخه زدن و جایگزینی که دور نامیده می شود. نتیجه تکرار دورها یک اثر بهمنی است - از دست دادن فزاینده تطابق بیت بین بلوک های داده های باز و رمزگذاری شده.

    2. رمزهای جریانی - که در آن رمزگذاری روی هر بیت یا بایت متن منبع (ساده) با استفاده از گاما انجام می شود. یک رمز جریان را می توان به راحتی بر اساس یک رمز بلوکی (به عنوان مثال، GOST 28147-89 در حالت گاما) که در یک حالت خاص راه اندازی شده است ایجاد کرد.

    سیستم رمزنگاری کلید عمومی

    سیستم رمزنگاری کلید عمومی (یا رمزگذاری نامتقارنرمز نامتقارن) - یک سیستم رمزگذاری اطلاعات که در آن کلیدی که پیام را رمزگذاری می کند و خود پیام رمزگذاری شده از طریق یک کانال باز (یعنی محافظت نشده و قابل دسترسی برای مشاهده) منتقل می شود. گیرنده از کلید خصوصی برای تولید کلید عمومی و خواندن پیام رمزگذاری شده استفاده می کند. سیستم های رمزنگاری کلید عمومی در حال حاضر به طور گسترده در موارد مختلف استفاده می شود پروتکل های شبکهبه ویژه در پروتکل SSL و پروتکل های مبتنی بر آن سطح کاربردی HTTPS، SSH و غیره

    برنج. 7.

    1. گیرنده یک کلید تولید می کند. کلید به دو قسمت باز و بسته تقسیم می شود. که در آن کلید عمومینباید از طریق یک کانال باز منتقل شود. یا اصالت آن باید توسط برخی از مراجع تایید کننده تضمین شود.

    2. فرستنده از کلید عمومی برای رمزگذاری پیام استفاده می کند.

    3. گیرنده پیام را با استفاده از کلید خصوصی رمزگشایی می کند.

    معایب روش:اگرچه پیام به طور ایمن رمزگذاری شده است، گیرنده و فرستنده با ارسال یک پیام رمزگذاری شده "برجسته" می شوند.

    ایده کلی یک سیستم رمزنگاری با یک کلید عمومی این است که هنگام رمزگذاری یک پیام، از چنین عملکردی از کلید عمومی و پیام (عملکرد رمز) استفاده شود که از نظر الگوریتمی معکوس کردن آن بسیار دشوار است. آرگومان آن را از مقدار تابع محاسبه کنید، حتی با دانستن مقدار کلید.

    ویژگی های سیستم

    مزیت - فایده - سود - منفعت رمزهای نامتقارن نسبت به رمزهای متقارن این است که نیازی به انتقال کلید مخفی نیست. طرفی که مایل به دریافت متون رمزی است، مطابق با الگوریتم مورد استفاده، یک جفت کلید عمومی-خصوصی ایجاد می کند. مقادیر کلیدی مرتبط هستند، با این حال، محاسبه یک مقدار از مقدار دیگر از نقطه نظر عملی غیرممکن است. کلید عمومی در فهرست های عمومی منتشر می شود و برای رمزگذاری اطلاعات توسط طرف مقابل استفاده می شود. کلید خصوصی مخفی نگه داشته می شود و برای رمزگشایی پیام ارسال شده به صاحب جفت کلید استفاده می شود. رمزهای نامتقارن در سال 1976 با «جهت‌های جدید در رمزنگاری مدرن» نوشته ویتفیلد دیفی و مارتین هلمن آغاز شد. آنها یک سیستم تبادل کلید مخفی مشترک را بر اساس مسئله لگاریتم گسسته پیشنهاد کردند. به طور کلی، سیستم های رمزنگاری نامتقارن شناخته شده مبتنی بر یکی از مسائل پیچیده ریاضی است که امکان ساخت توابع یک طرفه و توابع دام را فراهم می کند. به عنوان مثال، سیستم رمزنگاری Rivest-Shamir-Adelman از مشکل فاکتورسازی استفاده می کند اعداد بزرگو سیستم‌های رمزنگاری Merkle-Hellman و Hoare-Rivest بر مشکل به اصطلاح کوله پشتی تکیه دارند.

    ایرادات- سیستم های رمزنگاری نامتقارن به منابع محاسباتی بسیار بزرگتری نیاز دارند. علاوه بر این، لازم است از اصالت (اصالت) خود کلیدهای عمومی، که معمولاً از گواهینامه ها استفاده می شود، اطمینان حاصل شود.

    سیستم رمزنگاری ترکیبی (یا ترکیبی) یک سیستم رمزگذاری است که تمام مزایای سیستم رمزنگاری کلید عمومی را دارد، اما فاقد اشکال اصلی آن - سرعت پایین رمزگذاری است.

    اصل: سیستم های رمزنگاری از دو سیستم رمزنگاری اصلی بهره می برند: رمزنگاری متقارن و نامتقارن. برنامه هایی مانند PGP و GnuPG بر اساس این اصل ساخته شده اند.

    عیب اصلیرمزنگاری نامتقارن به دلیل محاسبات پیچیده مورد نیاز الگوریتم های آن کند است، در حالی که رمزنگاری متقارن به طور سنتی عملکرد درخشانی را نشان می دهد. با این حال، سیستم های رمزنگاری متقارن یک اشکال قابل توجه دارند - استفاده از آن نیازمند یک کانال امن برای انتقال کلید است. برای غلبه بر این نقص، از سیستم های رمزنگاری نامتقارن استفاده می شود که از یک جفت کلید استفاده می کنند: عمومی و خصوصی.

    رمزگذاری: اکثر سیستم های رمزگذاری به روش زیر کار می کنند. برای یک الگوریتم متقارن (3DES، IDEA، AES یا هر چیز دیگری)، یک کلید تصادفی تولید می شود. چنین کلیدی معمولاً دارای اندازه ای از 128 تا 512 بیت (بسته به الگوریتم) است. سپس از یک الگوریتم متقارن برای رمزگذاری پیام استفاده می شود. چه زمانی رمز بلوکیشما باید از یک حالت رمزگذاری استفاده کنید (به عنوان مثال، CBC)، که به شما امکان می دهد پیامی با طول بیشتر از طول بلوک را رمزگذاری کنید. در مورد خود کلید تصادفی، باید با کلید عمومی گیرنده پیام رمزگذاری شود و در این مرحله است که سیستم رمزگذاری کلید عمومی (RSA یا Diffie-Hellman Algorithm) اعمال می شود. از آنجایی که کلید تصادفی کوتاه است، رمزگذاری آن کمی زمان می‌برد. رمزگذاری مجموعه ای از پیام ها با الگوریتم نامتقارن-- این کار از نظر محاسباتی پیچیده تر است، بنابراین ترجیح داده می شود در اینجا از رمزگذاری متقارن استفاده شود. سپس کافی است یک پیام رمزگذاری شده با الگوریتم متقارن و همچنین کلید مربوطه را به صورت رمزگذاری شده ارسال کنید. گیرنده ابتدا کلید را با استفاده از کلید خصوصی خود رمزگشایی می کند و سپس کل پیام را با استفاده از کلید دریافتی دریافت می کند.

    امضای دیجیتال ارائه می دهد:

    * شناسایی منبع سند. بسته به جزئیات تعریف سند، فیلدهایی مانند "نویسنده"، "تغییرات ایجاد شده"، "مهر زمانی" و غیره قابل امضا هستند.

    * محافظت در برابر تغییرات سند. هر گونه تغییر تصادفی یا عمدی در سند (یا امضا) رمز را تغییر می دهد، بنابراین امضا نامعتبر می شود.

    تهدیدات امضای دیجیتال زیر ممکن است:

    *یک مهاجم ممکن است سعی کند برای یک سند به انتخاب خود جعل امضا کند.

    *یک مهاجم می تواند سعی کند یک سند را با یک امضای مشخص تطبیق دهد تا امضا با آن مطابقت داشته باشد.

    هنگام استفاده از یک تابع رمز قوی، از نظر محاسباتی دشوار است که یک سند جعلی با همان رمز رمز اصلی ایجاد کنید. با این حال، این تهدیدات می تواند به دلیل ضعف در الگوریتم های کش خاص، امضاها یا اشکالات در پیاده سازی آنها تحقق یابد. با این حال، تهدیدات زیر برای سیستم های امضای دیجیتال هنوز ممکن است:

    * مهاجمی که یک کلید خصوصی را می دزدد می تواند هر سندی را از طرف صاحب کلید امضا کند.

    *یک مهاجم می تواند مالک را فریب دهد تا سندی را امضا کند، مثلاً با استفاده از پروتکل امضای کور.

    *یک مهاجم می تواند کلید عمومی مالک را با کلید خود جایگزین کند و جعل هویت او باشد.

    ابزارهای محافظت رمزنگاری از اسرار دولتی هنوز با سلاح برابر است. کشورهای بسیار کمی در جهان شرکت های رمزنگاری خاص خود را دارند که واقعاً این کار را انجام می دهند خوب یعنیحفاظت از اطلاعات حتی در بسیاری از کشورهای توسعه‌یافته چنین امکانی وجود ندارد: هیچ مدرسه‌ای وجود ندارد که به این فناوری‌ها اجازه حمایت و توسعه دهد. روسیه یکی از معدود کشورهای جهان - شاید پنج یا چند کشور - است که همه اینها در آن توسعه یافته است. علاوه بر این، در هر دو بخش تجاری و عمومی، شرکت‌ها و سازمان‌هایی وجود دارند که تداوم مکتب رمزنگاری را از زمانی که تازه در حال ظهور بود حفظ کرده‌اند.

    الگوریتم های رمزگذاری

    تا به امروز، الگوریتم های رمزگذاری زیادی وجود دارد که مقاومت قابل توجهی در برابر تحلیل رمزی (قدرت رمزنگاری) دارند. الگوریتم های رمزگذاری به سه گروه تقسیم می شوند:

    • الگوریتم های متقارن
    • الگوریتم های نامتقارن
    • الگوریتم های هش

    الگوریتم های متقارن

    رمزگذاری متقارن شامل استفاده از یک کلید برای رمزگذاری و رمزگشایی است. دو الزام اصلی برای الگوریتم‌های متقارن اعمال می‌شود: از بین رفتن کامل همه نظم‌های آماری در شی رمزگذاری و عدم وجود خطی بودن. مرسوم است که سیستم های متقارن را به سیستم های بلوکی و جریانی تقسیم می کنند.

    در سیستم‌های بلوکی، داده‌های منبع به بلوک‌ها تقسیم می‌شوند و به دنبال آن با استفاده از یک کلید تبدیل می‌شوند.

    در سیستم‌های جریان، دنباله خاصی (گامای خروجی) تولید می‌شود که متعاقباً بر روی خود پیام قرار می‌گیرد و داده‌ها توسط جریان رمزگذاری می‌شوند و گاما تولید می‌شود. طرح ارتباطی با استفاده از یک سیستم رمزنگاری متقارن در شکل نشان داده شده است.

    در جایی که M متن ساده است، K کلید مخفی است که به آن منتقل می شود کانال بسته، En(M) عملیات رمزگذاری و Dk(M) عملیات رمزگشایی است

    معمولاً در رمزگذاری متقارن از ترکیب پیچیده و چند مرحله‌ای از جایگزین‌ها و جابه‌جایی‌های داده منبع استفاده می‌شود و مراحل (گذرها) زیادی وجود دارد و هر یک از آنها باید با یک «کلید عبور» مطابقت داشته باشد.

    عملیات جایگزینی اولین نیاز برای یک رمز متقارن را برآورده می کند، و از شر هر گونه داده آماری با اختلاط بیت های پیام طبق قانون معین مشخص خلاص می شود. جایگشت برای برآورده کردن شرط دوم ضروری است - غیر خطی کردن الگوریتم. این امر با جایگزینی بخش خاصی از پیام با اندازه معین با یک مقدار استاندارد با مراجعه به آرایه اصلی به دست می آید.

    سیستم های متقارن نسبت به نامتقارن هم مزایا و هم معایب دارند.

    مزایای رمزهای متقارن عبارتند از سرعت بالارمزگذاری، طول کلید مورد نیاز کمتر با قدرت مشابه، دانش بیشتر و سهولت اجرا. معایب الگوریتم های متقارن در درجه اول پیچیدگی تعویض کلید به دلیل احتمال بالای نقض محرمانه بودن کلید در حین تعویض که ضروری است و پیچیدگی مدیریت کلید در یک شبکه بزرگ است.

    نمونه هایی از رمزهای متقارن

    • GOST 28147-89 - استاندارد رمزگذاری داخلی
    • 3DES (Triple-DES، DES سه گانه)
    • RC6 (رمز Rivest)
    • دو ماهی
    • SEED - استاندارد رمزگذاری کره ای
    • Camellia یک استاندارد رمزگذاری ژاپنی است.
    • CAST (پس از حروف اول توسعه دهندگان کارلایل آدامز و استافورد تاوارس)
    • XTEA ساده ترین الگوریتم برای پیاده سازی است
    • AES- استاندارد آمریکارمزگذاری
    • DES استاندارد رمزگذاری داده های ایالات متحده تا AES است

    الگوریتم های نامتقارن

    سیستم های نامتقارن را سیستم های رمزنگاری کلید عمومی نیز می گویند. این یک روش رمزگذاری داده است که در آن کلید عمومی از طریق یک کانال باز (نه پنهان) منتقل می شود و برای تأیید استفاده می شود. امضای الکترونیکو برای رمزگذاری داده ها. برای رمزگشایی و ایجاد یک امضای الکترونیکی، از یک کلید دوم، یک کلید مخفی، استفاده می شود.

    خود دستگاه رمزنگاری نامتقارن از ایده توابع یک طرفه ƒ(x) استفاده می کند، که در آن یافتن x با دانستن مقدار خود تابع آسان است، اما یافتن خود ƒ(x) تقریبا غیرممکن است. ، فقط با دانستن مقدار x. نمونه ای از چنین تابعی است دفترچه تلفناز یک شهر بزرگ، جایی که به راحتی می توان شماره یک فرد را با دانستن نام خانوادگی و حروف اول او پیدا کرد، اما با دانستن شماره، محاسبه مالک بسیار دشوار است.

    اصل عملکرد سیستم های نامتقارن

    فرض کنید دو مشترک وجود دارد: A و B، و مشترک B می خواهد یک پیام رمزگذاری شده برای مشترک A ارسال کند. او پیام را با استفاده از کلید عمومی رمزگذاری می کند و آن را از قبل رمزگذاری شده از طریق یک کانال ارتباطی باز ارسال می کند. پس از دریافت پیام، مشترک A آن را با استفاده از کلید مخفی رمزگشایی کرده و می خواند.

    در اینجا لازم به توضیح است. هنگام دریافت پیام، مشترک الف باید هویت خود را برای مشترک B احراز هویت کند تا بدخواه نتواند هویت مشترک A را جعل کند و کلید عمومی او را با کلید خود جایگزین کند.

    نمونه هایی از فونت های نامتقارن

    • RSA (Rivest-Shamir-Adleman, Rivest-Shamir-Adleman)
    • DSA (الگوریتم امضای دیجیتال)
    • الگامال (سیستم رمز الگامال)
    • Diffie-Hellman (تبادل کلید Diffie-Hellman)
    • ECC (کریپتوگرافی منحنی بیضوی، رمزنگاری منحنی بیضی)

    توابع هش

    هش کردن (از انگلیسی. hash) تبدیل آرایه اطلاعات اولیه با طول دلخواه به یک رشته بیت با طول ثابت است.

    الگوریتم‌های تابع هش زیادی وجود دارد و در ویژگی‌های آنها متفاوت است - قدرت رمزنگاری، طول کلمه، پیچیدگی محاسباتی و غیره.

    ما به توابع هش رمزنگاری قوی علاقه مند هستیم. اینها معمولاً دو الزام دارند:

    • برای یک پیام داده شده C، دریافت پیام C دیگر با همان هش عملا غیرممکن است
    • دریافت جفت پیام (SS") که دارای هش یکسان هستند، عملا غیرممکن است.

    الزامات به ترتیب مقاومت در برابر برخورد نوع اول و دوم نامیده می شود. برای چنین توابعی، نیاز دیگری مهم باقی می ماند: با تغییر جزئی در آرگومان، تغییر قابل توجهی در خود تابع باید رخ دهد. بنابراین، مقدار هش نباید حتی در مورد تک تک بیت‌های آرگومان اطلاعاتی بدهد.

    نمونه هایی از الگوریتم های هش

    • Adler-32
    • SHA-1
    • SHA-2 (SHA-224، SHA-256، SHA-384، SHA-512)
    • هاوال
    • N-هش
      • RIPEMD-160
    • RIPEMD-256
    • RIPEMD-320
    • پوست
    • اسنفرو
    • ببر (TTH)
    • گرداب
    • GOST R34.11-94 (GOST 34.311-95)
    • IP Internet Checksum (RFC 1071)

    رمزنگاری اولیه

    برای دادن قدرت رمزنگاری بیشتر به اطلاعات رمزگذاری شده، تبدیل‌های نسبتاً ساده - ابتدایی‌ها - می‌توانند مکرراً در یک سیستم رمزنگاری اعمال شوند. اولیه ها می توانند جانشینی، جایگشت، چرخش یا گاما باشند.

    رمزنگاری کوانتومی

    رمزنگاری در فناوری های دیجیتال

    داستان

    رمزنگاری یک علم باستانی است و اشیاء اصلی آن بوده است پیام های متنی، که با کمک الگوریتم های خاص معنای خود را برای همه کسانی که دانش خاصی برای رمزگشایی این پیام - کلید نداشتند از دست داد.

    در ابتدا از روش هایی استفاده می شد که امروزه فقط برای پازل ها استفاده می شود، یعنی از نظر یک معاصر ساده ترین. چنین روش های رمزگذاری شامل، برای مثال، روش جایگزینی است، زمانی که هر حرف با حروف دیگری جایگزین می شود، با فاصله ای کاملاً مشخص در حروف الفبا از آن فاصله می گیرد. یا روشی برای رمزگذاری جایگشت، زمانی که حروف در یک دنباله خاص در یک کلمه مبادله می شوند.

    در زمان های قدیم، رمزگذاری عمدتاً در امور نظامی و تجاری، جاسوسی و در میان قاچاقچیان استفاده می شد.

    کمی بعد، مورخان تاریخ ظهور علم مرتبط دیگر - استگانوگرافی را تعیین می کنند. این علم به پنهان کردن حقیقت انتقال یک پیام می پردازد. منشأ آن در دوران باستان است، و یک نمونه در اینجا دریافت یک تخته توسط پادشاه اسپارتی، لئونیداس، قبل از نبرد با ایرانیان است که متنی با یک محلول خشک و به راحتی شستشو داده شده است. هنگام تمیز کردن، آثار باقی مانده روی موم با قلم به وضوح قابل مشاهده بود. امروزه از جوهرهای سمپاتیک، میکرودات، میکروفیلم ها و غیره برای پنهان کردن پیام استفاده می شود.

    با توسعه ریاضیات شروع به ظهور کرد الگوریتم های ریاضیرمزگذاری، اما تمام این انواع حفاظت رمزنگاری اطلاعات، داده های آماری را به درجات مختلف حفظ کردند و آسیب پذیر باقی ماندند. آسیب پذیری به ویژه با اختراع قابل توجه شد تجزیه و تحلیل فرکانسکه در قرن نهم پس از میلاد، ظاهراً توسط دایره المعارف عرب الکندی توسعه یافت. و تنها در قرن پانزدهم، پس از اختراع فونت های چند الفبایی توسط لئون باتیستا آلبرتی (احتمالاً)، حفاظت به سطح کیفی جدیدی منتقل شد. با این حال، در اواسط قرن هفدهم، چارلز بابیج شواهد قانع کننده ای از آسیب پذیری نسبی فونت های چند الفبایی در برابر تحلیل فرکانس ارائه کرد.

    توسعه مکانیک امکان ایجاد دستگاه ها و مکانیسم هایی را فراهم کرد که رمزگذاری را تسهیل می کند - دستگاه هایی مانند تخته مربع Trithemius، رمز دیسک توماس جفرسون ظاهر شد. اما همه این دستگاه ها را نمی توان با دستگاه های ساخته شده در قرن بیستم مقایسه کرد. در این زمان بود که ماشین‌های رمزگذاری مختلف و مکانیزم‌های پیچیدگی بالا ظاهر شدند، به عنوان مثال ماشین‌های دوار که معروف‌ترین آنها Enigma است.

    قبل از توسعه سریع علم در قرن بیستم، رمزنگاران فقط با اشیاء زبانی سروکار داشتند و در قرن بیستم امکان استفاده از انواع مختلف وجود داشت. روش های ریاضیو نظریه ها، آمار، ترکیبات، نظریه اعداد و جبر انتزاعی.

    اما پیشرفت واقعی در علم رمزنگاری با ظهور توانایی نمایش هر گونه اطلاعات به صورت دودویی، تقسیم شده به بیت ها با استفاده از رایانه، به وجود آمد که امکان ایجاد فونت هایی با قدرت رمزنگاری تا کنون دیده نشده را فراهم کرد. البته چنین سیستم های رمزگذاری قابل هک شدن هستند، اما زمان صرف شده برای هک در اکثر موارد توجیه پذیر نیست.

    امروز می توانیم در مورد پیشرفت های قابل توجه در رمزنگاری کوانتومی صحبت کنیم.

    ادبیات

    • Barichev S.G.، Goncharov V.V.، Serov R.E. مبانی رمزنگاری مدرن - M.: *Varfolomeev A. A.، Zhukov A. E.، Pudovkina M. A. Stream cryptosystems. خواص اساسی و روش های تجزیه و تحلیل پایداری. M.: PAIMS، 2000.
    • Yashchenko VV مقدمه ای بر رمزنگاری. سن پترزبورگ: پیتر، 2001. .
    • GOST 28147-89. سیستم های پردازش اطلاعات حفاظت رمزنگاری الگوریتم تبدیل رمزنگاری مسکو: GK اتحاد جماهیر شوروی بر اساس استانداردها، 1989.
    • GOST R 34.10-94. فناوری اطلاعات. حفاظت رمزنگاریاطلاعات *GOST R 34.11-94. فناوری اطلاعات. حفاظت رمزنگاری از اطلاعات تابع هش م.، 1995.
    • GOST R 34.10-2001 فناوری اطلاعات. حفاظت رمزنگاری از اطلاعات فرآیندهای تشکیل و تأیید امضای دیجیتال الکترونیکی. م.، 2001.
    • Nechaev VI عناصر رمزنگاری (مبانی نظریه امنیت اطلاعات). مسکو: دبیرستان، 1999.
    • Zhelnikov V. رمزنگاری از پاپیروس به کامپیوتر. M.: AVR، 1996.

    زیر سیستم های رمزنگاری متقارنبه سیستم هایی اشاره دارد که در آنها از یک کلید برای رمزگذاری و رمزگشایی پیام ها استفاده می شود (شکل 9.1).

    کل انواع سیستم های متقارن بر اساس کلاس های پایه زیر است:

    جایگزینی تک و چند الفبایی؛

    جایگشت ها

    رمزهای بلوک؛

    قمار.

    تعویض ها

    در جایگزینی مستقیم، هر کاراکتر در متن منبع با یک یا چند کاراکتر جایگزین می شود. یکی از زیرمجموعه های مهم جانشینی مستقیم هستند جایگزین های تک الفبایی، که در آن مطابقت یک به یک بین کاراکتر e i الفبای اصلی و کاراکتر مربوطه c j متن رمزی برقرار می شود. همه روش‌های جایگزینی تک الفبایی را می‌توان به صورت تبدیل عددی حروف متن مبدا، که به عنوان اعداد در نظر گرفته می‌شوند، مطابق فرمول زیر نشان داد:

    c ≡ (a*e +s) mod K , (5.1)

    که در آن a یک ضریب اعشاری است. s ضریب تغییر است. e – کد نامه متن منبع؛ c کد حرف رمزگذاری شده است. K طول الفبا است. mod عملیات محاسبه باقی مانده پس از تقسیم عبارت داخل پرانتز بر مدول K است.

    مثال.رمز سزار

    رمزگذاری را در الفبای متشکل از 26 حرف لاتین و یک علامت فاصله در نظر بگیرید (ما فضا را با علامت # نشان خواهیم داد). کد 0 را به علامت #، کد 1 را به حرف A، کد 2 را به B، کد 26 را به حرف Z اختصاص می دهیم.

    بیایید پارامترهای زیر را در نظر بگیریم: a = 1 s = 2 K = 27

    فرمول رمزگذاری شکل می گیرد

    c ≡ (e + 2) mod 27 (5.2)

    الفبای ورودی:

    # A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

    الفبای خروجی

    B C D E F G H I J K L M N O P Q R S T U V W X Y Z # A

    (حروف در دو موقعیت جابجا می شوند: A-C B-D و غیره)

    سپس پیام اصلی به صورت رمزگذاری شده به شکل زیر خواهد بود:

    برای رمزگشایی (برای مواردی که a=1) از فرمول زیر استفاده می شود

    e ≡ (K+ c - s) mod K (5.3)

    جایگزینی چند الفبایی سادهبه صورت متوالی و چرخه ای الفبای مورد استفاده را تغییر می دهد (در مورد قبلی، از یک الفبا برای رمزگذاری استفاده می شد). با جایگزینی m-الفبا، کاراکتر a 1 از پیام اصلی با نویسه ای از الفبای B 1 جایگزین می شود، کاراکتر a 2 با کاراکتری از الفبای B 2 جایگزین می شود، ... کاراکتر a m با a جایگزین می شود. کاراکتر از الفبای B m، کاراکتر a m +1 با کاراکتری از الفبای B 1 و t .d جایگزین می شود. تأثیر استفاده از جایگزینی چند الفبایی این است که آمار بسامد زبان مبدأ پنهان می شود، زیرا یک کاراکتر خاص از الفبای A به چندین کاراکتر مختلف از الفبای رمز B تبدیل می شود.

    مثال

    پیام اصلی: WE#NEED#SNOW

    کلید: SECURITYSECU

    کلمه SECURITY به عنوان کلید انتخاب می شود. کلمه زیر پیام اصلی نوشته می شود، وقتی حروف کلید تمام شد شروع به تکرار کلمه می کنیم تا حروف پیام اصلی تمام شود. هر حرف از کلید (به طور دقیق تر، کد آن) یک تغییر در الفبای اصلی ایجاد می کند تا یک کاراکتر رمزگذاری شده به دست آید. ما به عنوان الفبا استفاده می کنیم نامه هاو علامت # به جای فاصله.

    رمز کلید منبع

    (W + S) mod 27 = (23 + 19) mod 27 = 15→O

    (E + E) mod 27 = (5 + 5) mod 27 = 10 → J

    (# + C) mod 27 = (0 + 3) mod 27 = 3 → C

    ورزش

    ما به عنوان تمرینی برای نوشتن رمزگذاری تا انتها پیشنهاد می کنیم.

    جایگشت

    کاراکترهای متن مبدأ را می توان مطابق با یک قانون خاص مرتب کرد.

    مثال 1 جایگشت خطی

    بیایید متن زیر را رمزگذاری کنیم:

    LOAD#پرتقال#کشنده

    بیایید متن را به گروه های طولی تقسیم کنیم، برای مثال هر کدام 4 کاراکتر:

    LOAD ITE# APELSIN Y#BOTTLE

    بیایید قانون جایگشت زیر را تنظیم کنیم: "گروه بندی های چهار حرف را به ترتیب 1-2-3-4 به ترتیب 3-1-4-2 بازآرایی کنید".

    ما متن رمزگذاری شده زیر را دریافت می کنیم:

    UGRZ EI#T EALP INNS BYO# ACHK

    اظهار نظر

    اگر طول پیام مضربی از طول گروه نباشد، آخرین گروه با کاراکترها (مثلاً فاصله) به طول مورد نیاز پر می شود.

    نوشتن متن ساده و سپس خواندن متن رمز شده می تواند در مسیرهای مختلف انجام شود. شکل هندسیمانند مربع یا مستطیل.

    مثال 2. توری کاردانو

    شبکه کاردانو یک کارت مستطیل شکل با سوراخ‌هایی است که اغلب مربعی شکل است که وقتی روی یک ورق کاغذ اعمال می‌شود، فقط برخی از قسمت‌های آن باز می‌ماند. تعداد سطرها و ستون ها زوج است. کارت به گونه ای ساخته شده است که با چرخش متوالی آن، هر سلول از ورق که زیر آن قرار دارد اشغال می شود. اگر شبکه مربع است، می توانید آن را به طور متوالی در مرکز مربع 90 درجه بچرخانید.

    رمزگذاری:

    VAVOCHS MUNOTI MYZHROE YUKHSOY MDOSTO YASNTV

    پیام را با چرخش 90 درجه در جهت عقربه های ساعت رمزگشایی کنید. پیام را خط به خط مربع بنویسید.

    روش های جایگزینی و جایگشت به تنهایی قدرت رمزنگاری لازم را فراهم نمی کند. بنابراین، آنها با هم و همچنین به روش افزایشی استفاده می شوند. هنگام رمزگذاری با روش افزودنی، در ابتدا متن مبدأ با استفاده از روش جایگزینی رمزگذاری می شود، هر حرف را به یک عدد تبدیل می کند، و سپس یک گاما مخفی (به زیر مراجعه کنید) به هر عدد اضافه می شود - یک دنباله عددی شبه تصادفی.

    مسدود کردن رمزها

    رمزهای بلوکی خانواده ای از تبدیل های برگشت پذیر بلوک ها (بخش هایی از طول ثابت) متن مبدا هستند.

    منظور ما از بلوک N بیتی دنباله ای از صفر و یک به طول N است:

    x \u003d (x 0، x 1، ... x N -1) . (5.5)

    x در Z 2، N را می توان به عنوان یک بردار و به عنوان یک نمایش دودویی یک عدد صحیح تفسیر کرد

    (5.6)

    منظور ما از رمز بلوکی یک عنصر است

    جایی که x \u003d (x 0، x 1، ... x N -1)، y \u003d (y 0، y 1، ... y N -1)

    اگرچه رمزهای بلوکی یک مورد خاص از جایگزینی هستند، اما باید به طور جداگانه مورد بررسی قرار گیرند، زیرا اولاً، بیشتر رمزهای متقارن مورد استفاده در سیستم های انتقال داده، رمزهای بلوکی هستند و ثانیاً، رمزهای بلوکی برای توصیف به شکل الگوریتمی راحت تر هستند. نه مثل تعویض های معمول

    رمزهای جریانی

    رمزهای جریانی نوعی گاما هستند و متن ساده را تک بیت به متن رمزگذاری شده تبدیل می کنند. یک مولد دنباله کلید، که گاهی اوقات یک مولد کلید در حال اجرا نامیده می شود، دنباله ای از بیت های k 1 , k 2 , ... k N را خروجی می دهد. این دنباله کلیدی مدول 2 ("انحصاری یا") با دنباله بیت متن منبع e 1 , e 2 , ..., e N اضافه می شود:

    در سمت دریافت، متن رمزی مدول 2 با یک دنباله کلید یکسان برای به دست آوردن متن ساده اضافه می شود:

    پایداری سیستم کاملاً به ساختار داخلی مولد توالی کلید بستگی دارد. اگر ژنراتور دنباله ای با دوره کوتاه تولید کند، پایداری سیستم پایین است. برعکس، اگر ژنراتور یک توالی بی‌نهایت از بیت‌های واقعا تصادفی تولید کند، یک پد یک‌بار مصرف با دوام ایده‌آل دریافت می‌کنیم.

    رمزهای جریانی برای رمزگذاری جریان های پیوسته داده، مانند شبکه های داده، مناسب ترین هستند.