KASUMI

Den aktuelle version af siden er endnu ikke blevet gennemgået af erfarne bidragydere og kan afvige væsentligt fra den version , der blev gennemgået den 27. januar 2015; checks kræver 13 redigeringer .
KASUMI
Skaber ETSI
Oprettet 1999
offentliggjort 1999
Nøglestørrelse 128 bit
Blokstørrelse 64 bit
Antal runder otte
Type Feistel netværksmodifikation

KASUMI (fra japansk 霞 (hiragana かすみ, romaji kasumi) - tåge, tåge) er en blokchiffer , der bruges i mobilnetværk. I UMTS bruges det i de kryptografiske funktioner f8 og f9 , i GSM bruges det i A5/3 -algoritmen , og i GPRS bruges det i GEA/3 -algoritmen , hvor de to sidstnævnte bruger KASUMI-chifferet med en nøglelængde på 64 bit.

KASUMI er udviklet af SAGE (Security Algorithms Group of Experts), som er en del af European Telecommunications Standards Institute ( ETSI ) [1] . Den eksisterende MISTY1- algoritme blev taget som grundlag og optimeret til brug i cellulær kommunikation.

Som kryptoanalytikere viste i 2010, blev MISTY1-algoritmens pålidelighed reduceret under forandringsprocessen: KASUMI har sårbarheder for nogle typer angreb, mens MISTY1 er modstandsdygtig over for dem. [2]

Beskrivelse

KASUMI bruger en 64-bit blokstørrelse og en 128-bit nøgle i et 8-runders Feistel-skema. Hver runde bruger en 128-bit rundnøgle bestående af otte 16-bit undernøgler opnået fra den originale nøgle ved hjælp af en fast undernøglegenereringsprocedure.

Krypteringsskema

Grundlæggende algoritme

KASUMI er opdelt i et sæt funktioner (FL, FO, FI) , som bruges sammen med deres tilhørende nøgler (KL, KO, KI)

Indgangsdatablokken I er opdelt i to lige store dele:

Så for hver :

hvor  er den runde funktion.  - rund 128-bit nøgle

Ved udgangen

Rund funktion

Beregnet som følger:

For runder 1,3,5,7:

For runder 2,4,6,8:

FL funktion

Funktionsinputtet er en 32-bit datablok I og en 32-bit nøgle KL i , som er opdelt i to 16-bit undernøgler:

.

Inputstrengen I er opdelt i to dele af 16 bit:

.

Lad os definere:

Hvor  er et cyklisk venstreskift med 1 bit.

Ved udgangen .

FO-funktion

Funktionsinputtet er en 32-bit datablok og to nøgler på hver 48 bit: .

Indgangsstrengen I er opdelt i to dele på hver 16 bit: .

48-bit nøgler er opdelt i tre dele hver:

og .

Så definerer vi:

Ved udgangen .

FI-funktion

Funktionsinputtet er en 16-bit datablok I og en 16-bit nøgle KI i, j .

Indgangen I er opdelt i to ulige komponenter: en 9-bit venstre side L 0 og en 7-bit højre side R 0 :

.

På samme måde er nøglen KI i, j opdelt i en 7-bit KI i, j,1 komponent og en 9-bit KI i, j,2 komponent :

.

Funktionen anvender to S-bokse: S7, som mapper en 7-bit input til en 7-bit output, og S9 som mapper en 9-bit input til en 9-bit output.

Der er også to andre funktioner:

Konverterer en 7-bit x-værdi til en 9-bit værdi ved at tilføje to nuller til de mest signifikante bits. Konverterer en 9-bit x-værdi til en 7-bit værdi ved at fjerne de to mest signifikante bits fra den.

Funktionen implementeres af følgende sæt operationer:

Funktionen returnerer en værdi .

S-blokke

S-bokse konverterer en 7 eller 9 bit inputblok til henholdsvis en 7 eller 9 bit outputblok ved hjælp af opslagstabeller

For eksempel: S7[30] = 124

Decimalerstatningstabel for S7 blok:

S7[0-15] 54 halvtreds 62 56 22 34 94 96 38 6 63 93 2 atten 123 33
S7[16-31] 55 113 39 114 21 67 65 12 47 73 46 27 25 111 124 81
S7[32-47] 53 9 121 79 52 60 58 48 101 127 40 120 104 70 71 43
S7[48-63] tyve 122 72 61 23 109 13 100 77 en 16 7 82 ti 105 98
S7[64-79] 117 116 76 elleve 89 106 0 125 118 99 86 69 tredive 57 126 87
S7[80-95] 112 51 17 5 95 fjorten 90 84 91 otte 35 103 32 97 28 66
S7[96-111] 102 31 26 45 75 fire 85 92 37 74 80 49 68 29 115 44
S7[112-127] 64 107 108 24 110 83 36 78 42 19 femten 41 88 119 59 3

Decimalerstatningstabel for blok S9:

S9[0-15] 167 239 161 379 391 334 9 338 38 226 48 358 452 385 90 397
S9[16-31] 183 253 147 331 415 340 51 362 306 500 262 82 216 159 356 177
S9[32-47] 175 241 489 37 206 17 0 333 44 254 378 58 143 220 81 400
S9[48-63] 95 3 315 245 54 235 218 405 472 264 172 494 371 290 399 76
S9[64-79] 165 197 395 121 257 480 423 212 240 28 462 176 406 507 288 223
S9[80-95] 501 407 249 265 89 186 221 428 164 74 440 196 458 421 350 163
S9[96-111] 232 158 134 354 13 250 491 142 191 69 193 425 152 227 366 135
S9[112-127] 344 300 276 242 437 320 113 278 elleve 243 87 317 36 93 496 27
S9[128-143] 487 446 482 41 68 156 457 131 326 403 339 tyve 39 115 442 124
S9[144-159] 475 384 508 53 112 170 479 151 126 169 73 268 279 321 168 364
S9[160-175] 363 292 46 499 393 327 324 24 456 267 157 460 488 426 309 229
S9[176-191] 439 506 208 271 349 401 434 236 16 209 359 52 56 120 199 277
S9[192-207] 465 416 252 287 246 6 83 305 420 345 153 502 65 61 244 282
S9[208-223] 173 222 418 67 386 368 261 101 476 291 195 430 49 79 166 330
S9[224-239] 280 383 373 128 382 408 155 495 367 388 274 107 459 417 62 454
S9[240-255] 132 225 203 316 234 fjorten 301 91 503 286 424 211 347 307 140 374
S9[256-271] 35 103 125 427 19 214 453 146 498 314 444 230 256 329 198 285
S9[272-287] halvtreds 116 78 410 ti 205 510 171 231 45 139 467 29 86 505 32
S9[288-303] 72 26 342 150 313 490 431 238 411 325 149 473 40 119 174 355
S9[304-319] 185 233 389 71 448 273 372 55 110 178 322 12 469 392 369 190
S9[320-335] en 109 375 137 181 88 75 308 260 484 98 272 370 275 412 111
S9[336-351] 336 318 fire 504 492 259 304 77 337 435 21 357 303 332 483 atten
S9[352-367] 47 85 25 497 474 289 100 269 296 478 270 106 31 104 433 84
S9[368-383] 414 486 394 96 99 154 511 148 413 361 409 255 162 215 302 201
S9[384-399] 266 351 343 144 441 365 108 298 251 34 182 509 138 210 335 133
S9[400-415] 311 352 328 141 396 346 123 319 450 281 429 228 443 481 92 404
S9[416-431] 485 422 248 297 23 213 130 466 22 217 283 70 294 360 419 127
S9[432-447] 312 377 7 468 194 2 117 295 463 258 224 447 247 187 80 398
S9[448-463] 284 353 105 390 299 471 470 184 57 200 348 63 204 188 33 451
S9[464-479] 97 tredive 310 219 94 160 129 493 64 179 263 102 189 207 114 402
S9[480-495] 438 477 387 122 192 42 381 5 145 118 180 449 293 323 136 380
S9[496-511] 43 66 60 455 341 445 202 432 otte 237 femten 376 436 464 59 461
Indhentning af rundnøgler

Hver runde får KASUMI nøgler fra den offentlige nøgle K som følger:

  • 128-bit nøglen K er divideret med 8:
  • Det andet array K j beregnes :

hvor C j er bestemt i henhold til tabellen:

C1 0x0123
C2 0x4567
C3 0x89AB
C4 0xCDEF
C5 0xFEDC
C6 0xBA98
C7 0x7654
C8 0x3210
  • Nøglerne for hver runde beregnes i henhold til følgende tabel:
Nøgle en 2 3 fire 5 6 7 otte
K1<<<1 K2<<<1 K3<<<1 K4<<<1 K5<<<1 K6<<<1 K7<<<1 K8<<<1
K3' K4' K5' K6' K7' K8' K1' K2'
K2<<<5 K3<<<5 K4<<<5 K5<<<5 K6<<<5 K7<<<5 K8<<<5 K1<<<5
K6<<<8 K7<<<8 K8<<<8 K1<<<8 K2<<<8 K3<<<8 K4<<<8 K5<<<8
K7<<<13 K8<<<13 K1<<<13 K2<<<13 K3<<<13 K4<<<13 K5<<<13 K6<<<13
K5' K6' K7' K8' K1' K2' K3' K4'
K4' K5' K6' K7' K8' K1' K2' K3'
K8' K1' K2' K3' K4' K5' K6' K7'

hvor X<<<n er et cyklisk venstreskift med n bit.

Krypteringsanalyse

I 2001 blev der indført et umuligt differentialangreb. Forfatter - Ulrich Köhn (2001). [3]

I 2003 demonstrerede Elad Barkan, Eli Biham og Nathan Keller et man-in-the-middle-angreb på GSM-protokollen, der omgår A5/3-chifferet og dermed bryder protokollen. Denne tilgang bryder dog ikke A5/3-chifferet direkte. [4] Den fulde version blev offentliggjort senere i 2006. [5]

I 2005 offentliggjorde Eli Biham, Orr Dunkelman og Nathan Keller et boomerangangreb på KASUMI, der bryder chifferen hurtigere end brute force . [3] Angrebet kræver udvalgte klartekster, hver krypteret med en af ​​de 4 tilknyttede nøgler, og har en tidskompleksitet svarende til KASUMI-cifre. Dette angreb viser usikkerheden ved KASUMI-kryptering på 3G-netværk.

I januar 2010 udgav Orr Dunkelman, Nathan Keller og Adi Shamir et papir, der viste Kasumis sårbarhed over for et relateret nøgleangreb . En angriber kan gendanne en komplet A5/3-nøgle ved hjælp af en lille mængde computerressourcer (forfatterne anslår dem til 2 26 i data, 2 30 i hukommelse og 2 32 i tid og var i stand til at implementere det på 2 timer af en moderne person computer). Forfatterne bemærkede også, at angrebet muligvis ikke kan anvendes på den måde, KASUMI bruges i 3G-netværk. Det angreb, de udviklede, gælder heller ikke for den originale MISTY, og de sætter spørgsmålstegn ved 3GPP-påstandene om, at algoritmens sikkerhed ikke blev kompromitteret, da KASUMI blev oprettet. [2]

Noter

  1. (eng) Universal Mobile Telecommunications System (UMTS); Specifikation af 3GPP-fortroligheds- og integritetsalgoritmerne; Dokument 2: Kasumi-specifikation . ETSI (2007). Arkiveret fra originalen den 11. april 2012.
  2. 1 2 * Orr Dunkelman, Nathan Keller, Adi Shamir. Et praktisk tidsangreb på A5/3-kryptosystemet brugt i tredje generation af GSM-telefoni  //  International Association for Cryptologic Research Eprint-arkiv: tidsskrift. - 2010. - 10. januar. Arkiveret fra originalen den 3. februar 2013.
    • Et praktisk-tidsrelateret nøgleangreb på KASUMI-kryptosystemet brugt i GSM- og 3G-telefoni // CRYPTO 2010, Lecture Notes in Computer Science bind 6223, 2010, s. 393-410 doi:10.1007/978-3-62432-746 21
  3. 1 2 Eli Biham , Orr Dunkelman, Nathan Keller. Et relateret nøglerektangelangreb på hele KASUMI . ASIACRYPT 2005.pp. 443-461. Arkiveret fra originalen (ps) den 2013-10-11 . Hentet 2009-11-27 .  Arkiveret 11. oktober 2013 på Wayback Machine
  4. Elad Barkan, Eli Biham , Nathan Keller. Øjeblikkelig krypteringstekst-kun krypteringsanalyse af GSM-krypteret kommunikation (PDF) . CRYPTO 2003.pp. 600-616. Arkiveret fra originalen (PDF) 2005-12-16. Forældet parameter brugt |deadlink=( hjælp );Parametre |deadurl=og |deadlink=duplikere hinanden ( hjælp ); Forkert værdi |dead-url=404( hjælp ) Arkiveret 16. december 2005 på Wayback Machine
  5. Elad Barkan, Eli Biham , Nathan Keller. Øjeblikkelig krypteringstekst-kun krypteringsanalyse af GSM-krypteret kommunikation af Barkan og Biham fra Technion (fuld version) . Arkiveret fra originalen den 11. april 2012.