Transcript کاراکتر های سیستمی اعداد و علامت ها کاراکتر ها
Slide 1
Cryptography, Jerzy Wojdylo, 9/21/01
Slide 2
رمزنگاری
تهیه شده توسط
آرین سلطانی
Slide 3
آشنایی با جدول ASCII
کاراکتر ها
اعداد و عالمت ها
کاراکتر های سیستمی
Slide 4
محدودیت ها
کاراکتر انتهای رشته :پوچ ()Null
کاراکترهای کنترل فایل
دیگر کاراکتر های سیستمی
محدودیت های پروتکل ارتباطی
در نتیجه سعی میکنیم اطالعات را هنگام نمایش به
صورت کد Hexنشان دهیم و در روش رمز نگاری
سعی کنیم به این محدودیت ها برخورد نکنیم
Slide 5
رمز نگاری گسترشی
طرح
داده ها را در رشته طوالنی تری جای می دهیم و طرز
نمایش آنها را تغییر میدهیم سپس تعدادی کاراکتر بی
معنی و بی اهمیت درون آنها قرار میدهیم و در هنگام
رمزگشایی به آنها توجه نمیکنیم
Slide 6
رمز نگاری گسترشی
پیاده سازی
کاراکتر ها را با دو کاراکتر کمکی در مبنای 16با
حروف بزرگ نشان می دهیم و بقیه کاراکتر ها را به
صورت اتفاقی از حروف کوچک وارد میکنیم
هنگام رمزگشایی هم به کاراکتر های بی معنی توجهی
نمیکنیم
Slide 7
رمز نگاری گسترشی
مثال
Slide 8
رمز نگاری ترکیبی
سری 2
سری 1
پیاده سازی
داده ها را به دو سری تقسیم
بندی میکنیم
در رمز گشایی هر سری به
دسته سری دیگر توجهی
نمیکنیم
می توان از یک سری برای
ارسال اطالعات غلط و
نادرست و منحرف کردن
استفاده کرد
Slide 9
رمز نگاری ترکیبی
مثال
Slide 10
رمز نگاری با کلید
طرح
نوع رمز نگاری با توجه به کلید رمز تغییر کند
در این صورت برای هر رمز نوعی متفاوت از
رمزنگاری خواهیم داشت که باعث امن تر شدن انتقال
اطالعات بین فرستنده و گیرنده خواهد شد
Slide 11
رمز نگاری با کلید
پیاده سازی
با استفاده از عملگر منطقی XORو کلید داده شده توسط
کاربر داده ها را رمز گذاری میکنیم:
A XOR B
B
A
F
T
T
T
F
T
T
T
F
F
F
F
Slide 12
رمز نگاری با کلید
رمز گشایی
میتوانیم با استفاده از خواص عملگر منطقی XORداده ها
را رمزگشایی کنیم:
(A XOR B) XOR B
B
A
T
T
T
T
F
T
F
T
F
F
F
F
مشاهده میکنیم که ارزش منطقی ستون آخر برابر ستون
اول است
Slide 13
رمز نگاری با کلید
مثال
Slide 14
رمز نگاری با کلید متغیر
طرح
فرض کنید نوعی اطالعات متغیر با زمان (یا متغیر دیگر)
مشترک بین فرستنده و گیرنده داریم (مثال ساعت!)
میتوانیم روش رمزنگاری قبل را طوری تغییر دهیم که
کلید مورد استفاده با این تابع تغییر کند در نتیجه برای
شخص ثالثی که قصد کشف رمز اطالعات را دارد (که
به این تابع دسترسی ندارد یا از وجود آن بی اطالع
است) غیر ممکن خواهد شد
Slide 15
رمز نگاری با کلید عمومی
Slide 16
رمز نگاری بدون پروتکل
طرح
طرف اول اطالعات مورد نظر را رمزنگاری میکند و
برای طرف دوم میفرستد .طرف دوم هم اطالعات
دریافت شده را با روش خود رمزنگاری کرده و دوباره
برای طرف اول میفرستد .طرف اول اطالعات را با
روش خودش رمزگشایی کرده و برای طرف دوم
ارسال میکند .طرف دوم هم با روش خود رمز گشایی
کرده و به اصل اطالعات دسترسی پیدا میکند
Slide 17
رمز نگاری بدون پروتکل
طرح
نکته اینجاست که در هر سه سری تبادل اطالعات ،داده
ها رمزنگاری شده هستند و توسط شخص ثالث قابل
مشاهده نیست
در هر سه سری تبادل اطالعات ،داده ها رمزنگاری شده
هستند و توسط شخص ثالث قابل دسترسی نیستند
پروتکل و کلید خاصی هم برای تبادل اطالعات تعریف
نکردیم
Slide 18
رمز نگاری بدون پروتکل
پیاده سازی
برای استفاده از روش ها رمزنگاری محدودیت داریم
طرف اول از رمز نگاری NOTو طرف دوم از یک
Block Cipherساده استفاده کردیم
رمزنگاری از آن جهت قابل بازگشت است که طرف اول
طرفا کاراکتر ها را تغییر داده و طرف دوم صرفا آنها
را جابجا میکند
امکان استفاده روشهای مختلف در این نوع باید از لحاظ
ریاض بررسی شود
Slide 19
رمز نگاری بدون پروتکل
مثال
Cryptography, Jerzy Wojdylo, 9/21/01
Slide 2
رمزنگاری
تهیه شده توسط
آرین سلطانی
Slide 3
آشنایی با جدول ASCII
کاراکتر ها
اعداد و عالمت ها
کاراکتر های سیستمی
Slide 4
محدودیت ها
کاراکتر انتهای رشته :پوچ ()Null
کاراکترهای کنترل فایل
دیگر کاراکتر های سیستمی
محدودیت های پروتکل ارتباطی
در نتیجه سعی میکنیم اطالعات را هنگام نمایش به
صورت کد Hexنشان دهیم و در روش رمز نگاری
سعی کنیم به این محدودیت ها برخورد نکنیم
Slide 5
رمز نگاری گسترشی
طرح
داده ها را در رشته طوالنی تری جای می دهیم و طرز
نمایش آنها را تغییر میدهیم سپس تعدادی کاراکتر بی
معنی و بی اهمیت درون آنها قرار میدهیم و در هنگام
رمزگشایی به آنها توجه نمیکنیم
Slide 6
رمز نگاری گسترشی
پیاده سازی
کاراکتر ها را با دو کاراکتر کمکی در مبنای 16با
حروف بزرگ نشان می دهیم و بقیه کاراکتر ها را به
صورت اتفاقی از حروف کوچک وارد میکنیم
هنگام رمزگشایی هم به کاراکتر های بی معنی توجهی
نمیکنیم
Slide 7
رمز نگاری گسترشی
مثال
Slide 8
رمز نگاری ترکیبی
سری 2
سری 1
پیاده سازی
داده ها را به دو سری تقسیم
بندی میکنیم
در رمز گشایی هر سری به
دسته سری دیگر توجهی
نمیکنیم
می توان از یک سری برای
ارسال اطالعات غلط و
نادرست و منحرف کردن
استفاده کرد
Slide 9
رمز نگاری ترکیبی
مثال
Slide 10
رمز نگاری با کلید
طرح
نوع رمز نگاری با توجه به کلید رمز تغییر کند
در این صورت برای هر رمز نوعی متفاوت از
رمزنگاری خواهیم داشت که باعث امن تر شدن انتقال
اطالعات بین فرستنده و گیرنده خواهد شد
Slide 11
رمز نگاری با کلید
پیاده سازی
با استفاده از عملگر منطقی XORو کلید داده شده توسط
کاربر داده ها را رمز گذاری میکنیم:
A XOR B
B
A
F
T
T
T
F
T
T
T
F
F
F
F
Slide 12
رمز نگاری با کلید
رمز گشایی
میتوانیم با استفاده از خواص عملگر منطقی XORداده ها
را رمزگشایی کنیم:
(A XOR B) XOR B
B
A
T
T
T
T
F
T
F
T
F
F
F
F
مشاهده میکنیم که ارزش منطقی ستون آخر برابر ستون
اول است
Slide 13
رمز نگاری با کلید
مثال
Slide 14
رمز نگاری با کلید متغیر
طرح
فرض کنید نوعی اطالعات متغیر با زمان (یا متغیر دیگر)
مشترک بین فرستنده و گیرنده داریم (مثال ساعت!)
میتوانیم روش رمزنگاری قبل را طوری تغییر دهیم که
کلید مورد استفاده با این تابع تغییر کند در نتیجه برای
شخص ثالثی که قصد کشف رمز اطالعات را دارد (که
به این تابع دسترسی ندارد یا از وجود آن بی اطالع
است) غیر ممکن خواهد شد
Slide 15
رمز نگاری با کلید عمومی
Slide 16
رمز نگاری بدون پروتکل
طرح
طرف اول اطالعات مورد نظر را رمزنگاری میکند و
برای طرف دوم میفرستد .طرف دوم هم اطالعات
دریافت شده را با روش خود رمزنگاری کرده و دوباره
برای طرف اول میفرستد .طرف اول اطالعات را با
روش خودش رمزگشایی کرده و برای طرف دوم
ارسال میکند .طرف دوم هم با روش خود رمز گشایی
کرده و به اصل اطالعات دسترسی پیدا میکند
Slide 17
رمز نگاری بدون پروتکل
طرح
نکته اینجاست که در هر سه سری تبادل اطالعات ،داده
ها رمزنگاری شده هستند و توسط شخص ثالث قابل
مشاهده نیست
در هر سه سری تبادل اطالعات ،داده ها رمزنگاری شده
هستند و توسط شخص ثالث قابل دسترسی نیستند
پروتکل و کلید خاصی هم برای تبادل اطالعات تعریف
نکردیم
Slide 18
رمز نگاری بدون پروتکل
پیاده سازی
برای استفاده از روش ها رمزنگاری محدودیت داریم
طرف اول از رمز نگاری NOTو طرف دوم از یک
Block Cipherساده استفاده کردیم
رمزنگاری از آن جهت قابل بازگشت است که طرف اول
طرفا کاراکتر ها را تغییر داده و طرف دوم صرفا آنها
را جابجا میکند
امکان استفاده روشهای مختلف در این نوع باید از لحاظ
ریاض بررسی شود
Slide 19
رمز نگاری بدون پروتکل
مثال