Крипто-форум crprogram.16mb.com

Програмування на Object Pascal, Lazarus, криптографія, криптоаналіз, шифри, вихідні коди, вирішення задач, приклади програм

Часовий пояс: UTC десь + 2 години




Розпочати нову тему Відповісти  [ 6 повідомлень ] 
Автор Повідомлення
 Заголовок повідомлення: Threefish
СообщениеДодано: 09 гру 2014, 20:48 
Не в мережі

Повідомлень: 501
Threefish - блочний симетричний криптоалгоритм, розроблений Брюсом Шнаєром у 2008 році.

Довжина ключа: 256/512/1024 біт;

Довжина блока: 256/512/1024 біт.


Повернутися наверх
  
 
 Заголовок повідомлення: Re: Threefish
СообщениеДодано: 09 гру 2014, 20:48 
Не в мережі

Повідомлень: 362
Threefish-256
ключ
Код:
0000000000000000000000000000000000000000000000000000000000000000

tweak
Код:
00000000000000000000000000000000

відкритий текст
Код:
0000000000000000000000000000000000000000000000000000000000000000

шифртекст
Код:
84da2a1f8beaee947066ae3e3103f1ad536db1f4a1192495116b9f3ce6133fd8


Востаннє редагувалось Raul в 03 гру 2012, 13:55, всього редагувалось 1 раз.

Повернутися наверх
  
 
 Заголовок повідомлення: Re: Threefish
СообщениеДодано: 09 гру 2014, 20:48 
Не в мережі

Повідомлень: 362
Threefish-512
ключ
Код:
0000000000000000000000000000000000000000000000000000000000000000

0000000000000000000000000000000000000000000000000000000000000000

tweak
Код:
00000000000000000000000000000000

відкритий текст
Код:
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000

шифртекст
Код:
b1a2bbc6ef6025bc40eb3822161f36e375d1bb0aee3186fbd19e47c5d479947b
7bc2f8586e35f0cff7e7f03084b0b7b1f1ab3961a580a3e97eb41ea14a6d7bbe


Повернутися наверх
  
 
 Заголовок повідомлення: Re: Threefish
СообщениеДодано: 09 гру 2014, 20:48 
Не в мережі

Повідомлень: 362
Threefish-1024
ключ
Код:
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000

tweak
Код:
00000000000000000000000000000000

відкритий текст
Код:
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000

шифртекст
Код:
f05c3d0a3d05b304f785ddc7d1e036015c8aa76e2f217b06c6e1544c0bc1a90d
f0accb9473c24e0fd54fea68057f43329cb454761d6df5cf7b2e9b3614fbd5a2
0b2e4760b40603540d82eabc5482c171c832afbe68406bc39500367a592943fa
9a5b4a43286ca3c4cf46104b443143d560a4b230488311df4feef7e1dfe8391e


Повернутися наверх
  
 
 Заголовок повідомлення: Re: Threefish
СообщениеДодано: 09 гру 2014, 20:48 
Не в мережі

Повідомлень: 501
Опис Threefish

Ключ K довжиною 32, 64 чи 128 байт (256, 512 чи 1024 біт).
T - Tweak, довжиною 16 байт (128 біт).
Відкритий текст P - довжиною 32, 64 чи 128 байт (256, 512 чи 1024 біт).

Код:
Блок/Ключ Число_слів Число_раундів
Розмір Nw Nr
0256 04 72
0512 08 72
1024 16 80


Сталі для перестановки 64-бітних слів:
Код:
_i = __ | 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15
Nw = 04 | 00 03 02 01
Nw = 08 | 02 01 04 07 06 05 00 03
Nw = 16 | 00 09 02 13 06 11 04 15 10 07 12 03 14 05 08 01


MIX-функція:

Код:
y0 := ( x0 + x1 ) mod 2^64
y1 := ( x1 <<< R[(d mod 8),j] ) xor y0


Зображення

сталі для циклічного зсуву біт:
Код:
Nw =_ | 04 __ | 08 __ __ __ | 16
j = _ | 00 01 | 00 01 02 03 | 00 01 02 03 04 05 06 07
d = 0 | 14 16 | 46 36 19 37 | 24 13 08 47 08 17 22 37
d = 1 | 52 57 | 33 27 14 42 | 38 19 10 55 49 18 23 52
d = 2 | 23 40 | 17 49 36 39 | 33 04 51 13 34 41 59 17
d = 3 | 05 37 | 44 09 54 56 | 05 20 48 41 47 28 16 25
d = 4 | 25 33 | 39 30 34 24 | 41 09 37 31 12 47 44 30
d = 5 | 46 12 | 13 50 10 17 | 16 34 56 51 04 53 42 41
d = 6 | 58 22 | 25 29 39 43 | 31 44 47 46 19 42 44 25
d = 7 | 32 32 | 08 35 56 22 | 09 48 35 52 23 31 37 20


Для розширення ключа
Цитата:
C240 = $1BD11BDAA9FC1A22


Повернутися наверх
  
 
 Заголовок повідомлення: Re: Threefish
СообщениеДодано: 09 гру 2014, 20:48 
Не в мережі

Повідомлень: 501
Схема шифру Threefish:
Зображення

  • На вході відкритий текст 1024 (256 чи 512 біт)
  • далі по модулю 2^64 додається підключ 0 ( через кожні чотири раунди додається підключ 1, 2, 3, 4 і т.д. відповідно).
  • MIX- функція
  • проста перестановка 64-бітових слів згідно таблиці.
  • MIX та перестановка являють собою перший раунд, далі 79 чи 71 раунди
  • отримаємо на виході блок шифротексту


Повернутися наверх
  
 
Показати повідомлення за:  Сортувати по:  
Розпочати нову тему Відповісти  [ 6 повідомлень ] 

Часовий пояс: UTC десь + 2 години



cron
Роwеrеd bу рhрВB® аnd Hostinger web hosting