HP StorageWorks 8/80 HP StorageWorks Fabric OS 6.2 administrator guide (5697-0 - Page 151

Block ciphers, Blowfish

Page 151 highlights

Table 41 Algorithms and associated authentication policies Algorithm Encryption Level Policy aes128_cbc 128-bit ESP aes256_cbc 256-bit ESP null_enc n/a ESP Block ciphers In cryptography, a block cipher is a symmetric key cipher which operates on fixed-length groups of bits, termed blocks, with an unvarying transformation. For example, when encrypting, a block cipher might take a 128-bit block of plaintext as input, and output a corresponding 128-bit block of ciphertext. The exact transformation is controlled using a second input-the secret key. Decryption is similar: the decryption algorithm takes, in this example, a 128-bit block of ciphertext together with the secret key, and yields the original 128-bit block of plaintext. To encrypt messages longer than the block size (128 bits in the above example), a mode of operation is used. A mode of operation is a block cipher that operates on blocks of fixed length, often 64 or 128 bits. In the cipher-block chaining (CBC) mode, each block of plaintext is exclusive or'ed (XOR'ed) with the previous ciphertext block before being encrypted. This way, each ciphertext block is dependent on all plaintext blocks processed up to that point. HMAC A keyed-Hash Message Authentication Code (HMAC or KHMAC), is a type of message authentication code (MAC) calculated using a specific algorithm involving a cryptographic hash function in combination with a secret key. As with any MAC, it may be used to simultaneously verify that both the data integrity and the authenticity of a message. Any iterative cryptographic hash function, such as MD5 or SHA-1, may be used in the calculation of an HMAC; the resulting MAC algorithm is termed HMAC-MD5 or HMAC-SHA-1 accordingly. An iterative hash function breaks up a message into blocks of a fixed size and iterates over them with a compression function. For example, MD5 and SHA-1 operate on 512-bit blocks. The size of the output of HMAC is the same as that of the underlying hash function (128 or 160 bits in the case of MD5 or SHA-1, respectively), although it can be truncated if desired. NOTE: The MD5 hash algorithm is blocked when FIPS mode is enabled. 3DES Triple DES (3DES or TDES) is a block cipher formed from the Data Encryption Standard (DES) cipher by using it three times. The DES is a public standard, published by the National Institute of Standards and Technology, and is also known as the Data Encryption Algorithm (DEA). When it was found that a 56-bit key of DES is not enough to guard against brute force attacks, DES was chosen as a simple way to enlarge the key space without a need to switch to a new algorithm. The use of three steps is essential to prevent meet-in-the-middle attacks that are effective against double DES encryption. Note that DES is not a group; if it were, the TDES construction would be equivalent to a single DES operation and would be no more secure. Blowfish Blowfish is a keyed, symmetric block cipher that provides a good encryption rate in software. No effective cryptanalysis of it has been found to date. It takes a variable-length key, from 32-bits to 448-bits, making it ideal for both domestic and exportable use. Blowfish is one of the fastest block ciphers in widespread use, except when changing keys. Each new key requires pre-processing equivalent to encrypting about 4 kilobytes of text, which is very slow compared to other block ciphers. AES Advanced Encryption Standard (AES) is a block cipher that has a fixed block size of 128-bit and a key size of 128-, 192-, or 256-bit. AES is a substitution-permutation network (series of linked mathematical Fabric OS 6.2 administrator guide 149

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

Fabric OS 6.2 administrator guide
149
Block ciphers
In cryptography, a block cipher is a symmetric key cipher which operates on fixed-length groups of bits,
termed blocks, with an unvarying transformation. For example, when encrypting, a block cipher might take
a 128-bit block of plaintext as input, and output a corresponding 128-bit block of ciphertext. The exact
transformation is controlled using a second input—the secret key. Decryption is similar: the decryption
algorithm takes, in this example, a 128-bit block of ciphertext together with the secret key, and yields the
original 128-bit block of plaintext.
To encrypt messages longer than the block size (128 bits in the above example), a mode of operation is
used. A mode of operation is a block cipher that operates on blocks of fixed length, often 64 or 128 bits.
In the cipher-block chaining (CBC) mode, each block of plaintext is exclusive or'ed (XOR'ed) with the
previous ciphertext block before being encrypted. This way, each ciphertext block is dependent on all
plaintext blocks processed up to that point.
HMAC
A keyed-Hash Message Authentication Code (HMAC or KHMAC), is a type of message authentication
code (MAC) calculated using a specific algorithm involving a cryptographic hash function in combination
with a secret key. As with any MAC, it may be used to simultaneously verify that both the data integrity
and the authenticity of a message. Any iterative cryptographic hash function, such as MD5 or SHA-1, may
be used in the calculation of an HMAC; the resulting MAC algorithm is termed HMAC-MD5 or
HMAC-SHA-1 accordingly.
An iterative hash function breaks up a message into blocks of a fixed size and iterates over them with a
compression function. For example, MD5 and SHA-1 operate on 512-bit blocks. The size of the output of
HMAC is the same as that of the underlying hash function (128 or 160 bits in the case of MD5 or SHA-1,
respectively), although it can be truncated if desired.
NOTE:
The MD5 hash algorithm is blocked when FIPS mode is enabled.
3DES
Triple DES (3DES or TDES) is a block cipher formed from the Data Encryption Standard (DES) cipher by
using it three times. The DES is a public standard, published by the National Institute of Standards and
Technology, and is also known as the Data Encryption Algorithm (DEA).
When it was found that a 56-bit key of DES is not enough to guard against brute force attacks, DES was
chosen as a simple way to enlarge the key space without a need to switch to a new algorithm. The use of
three steps is essential to prevent meet-in-the-middle attacks that are effective against double DES
encryption. Note that DES is not a group; if it were, the TDES construction would be equivalent to a single
DES operation and would be no more secure.
Blowfish
Blowfish is a keyed, symmetric block cipher that provides a good encryption rate in software. No effective
cryptanalysis of it has been found to date. It takes a variable-length key, from 32-bits to 448-bits, making it
ideal for both domestic and exportable use. Blowfish is one of the fastest block ciphers in widespread use,
except when changing keys. Each new key requires pre-processing equivalent to encrypting about 4
kilobytes of text, which is very slow compared to other block ciphers.
AES
Advanced Encryption Standard (AES) is a block cipher that has a fixed block size of 128-bit and a key size
of 128-, 192-, or 256-bit. AES is a substitution-permutation network (series of linked mathematical
aes128_cbc
128-bit
ESP
aes256_cbc
256-bit
ESP
null_enc
n/a
ESP
Table 41
Algorithms and associated authentication policies
Algorithm
Encryption Level
Policy