Professional Documents
Culture Documents
DataNetSec Dousti 04 SymmetricCiphers v1 - 240112 - 162509
DataNetSec Dousti 04 SymmetricCiphers v1 - 240112 - 162509
bبیت bبیت
متو آشکار متو رمز
کلید کلید
الگوریتم رمز گذاری الگوریتم رمز گشایی
()K ()K
ki ki
متن آشکار
متن آشکار
متن رمز
pi ci ci pi
رمز گذاری رمز گشایی
طو کلید
تعداد دورها
در سا 1973فراخوانی برای پیش هاد الگوریتم رمز داده شدا ولی
هیچیک ا پیش هادها م اس نبودند.
در 1975ا پیش هاد IBMدر مجله رسمی دولت آمریکا بهه چها
رسههیدا و در 1976دو کارگههاه تخییههی بههرای بررسههی اسههتاندارد
پیش هادی برگزار شد.
ما S-Boxها را به واش گتو فرستادیم .جواب برگشت و آنها کامالً تغییر کرده بودند!
آلن کُنهایم؛ از طراحان DES
آ مون جامع روی کلید DESبا فرض امتحان هر کلیهد در 1نهانو
مان نیا دارد. ثانیه به حدود 2سا
با اجرای موا ی میتوان ایو مان را به طور معقولی کم کرد.
جایگشت اولیه
)(32 )(32
k2
زمانبند کلید
)(56
k16
جایگشت نهایی
متن رمز )(64
𝑛𝑅 ← 𝐿𝑛+1
𝑛𝐿 ⊕ 𝑛𝑘 𝑅𝑛+1 ← 𝐹 𝑅𝑛 ,
Expansion
Box
48بیت
6بیت
Substitution
)Box (S-Box
4بیت 32بیت
Permutation
)Box (P-Box
32بیت
محمد صادق دوستی امنیت داده و شبکه 26 / 128
جعبه توسعه ()Expansion Box
شماره ستون
شماره
0000
1010
1001
1000
0101
0100
0010
0001
0110
1101
1100
1011
0011
1110
0111
1111
سطر↓
7 0 9 5 12 6 10 3 8 11 15 2 1 13 4 14 00
8 3 5 9 11 12 6 10 1 13 2 14 4 7 15 0 01
0 5 10 3 7 9 12 15 11 2 6 13 8 14 1 4 10
13 6 0 10 14 3 11 5 7 1 9 4 2 8 12 15 11
به سادگی میتوان تحقیهق کهرد کهه ت هها بخشهی ا تهابع Fکهه
ترکی خطی ا ورودی نیستا S-Boxاست.
اگر S-Boxها نبودندا متو رمز تابعی خطی ا متو آشکار شهده و
شکستو DESبسیار آسان میشد.
48 ∗ 16
≈ 13.7
56
مانب د کلیدا یک مقدار 64بیتی را به ع وان کلید میپذیرد.
PC1
PC2
در حمله تفاضلی (اسالیدهای بعد) ثابت میشود که اگر تعداد دور
کمتر یا مساوی 15بودا میتوانستیم DESرا با یک حملهه مهتو
آشکار معلوم ( )KPAسریعتر ا حمله جامع بشک یم.
طراحان DESسالها قبل ا کشع حمله تفاضلی با آن آش ا بودند.
با دادن متون آشکار 𝑋, 𝑋′به الگوریتم رمهزا متهون رمهز شهده
𝑌, 𝑌′به دست میآید که تفاضل آن 𝑌 Δاست.
) E (X ki
A
B = A
S-Box
C
P
Y
Y
محمد صادق دوستی امنیت داده و شبکه 40 / 128
مثال از تحلیل تفاضلی 1 -
=L =0
ki
=0
F =0
=L =0
=Y
F =X
X = 0x04000000
Y = 0x40080000
=Y
F =X
=X =0
ki +1
X = 0x04000000
=0
F =0
Y = 0x40080000
م ظور ا تقری ا روابطی خطی میان برخی بیتههای مهتو آشهکارا
متو رمز شده و کلید در هر دور است که با احتما نزدیک به 0یا
نزدیک به 1برقرار است.
Input = 32 43 f6 a8 88 5a 30 8d
31 31 98 a2 e0 37 07 34
9
}{95 }{2A
ع اصر موجود در درایه های مضرب 4با تابع پیچیهده gمحاسهبه
میشوند.
تابع دور:
Bruce Schneier
) – (1963
محمد صادق دوستی امنیت داده و شبکه 97 / 128
ویژگیهای Blowfish
تعداد دورها 16 :دور
رمزگشایی:
C1 C2 CN
ایو سبک امو محسوب نمیشود حتی اگر ا یک رمز قهالبی قهوی
استفاده ک یم.
رمزگشایی:
C1 C2 C3 CN
هر متو آشکار به ا ای کلید ثابت هر بار بهه یهک مهتو رمهز شهده
متفاوت نگاشته میشود ( یرا مقدار IVتغییر مینماید).
رمزگذاری:
عملیات رمزگذاری قابل موا یسا ی نیست.
مقدار IVو متو آشکار باید در دسترس باش د.
رمزگشایی:
عملیات رمزگشایی قابل موا یسا ی است.
مقدار IVو متو رمزشده باید در دسترس باش د.
محمد صادق دوستی امنیت داده و شبکه 117 / 128
سبک کاری - CFBرمزگذاری
رمزگشایی رمزگذاری
counter + i counter + i
)(b )(b
رمزگذاری:
عملیات رمزگذاری قابل موا ی سا ی است.
برای عملیات رمزگذاری نیا ی به متو آشکار نیست.
پیادهسا ی:
به شکل کارایی میتواند پیادهسا ی سختافزاری و نرمافزاری شود.
ا پردا ش موا ی میتوان در آن استفاده کرد.
...
http://ce.sharif.edu/courses/94-95/1/ce442-1/