@@ -437,12 +437,13 @@ fn session_find_objects() -> testresult::TestResult {
437
437
Attribute :: Token ( true ) ,
438
438
Attribute :: Encrypt ( true ) ,
439
439
Attribute :: Label ( format!( "key_{}" , i) . as_bytes( ) . to_vec( ) ) ,
440
+ Attribute :: ValueLen ( 32 . into( ) ) ,
440
441
Attribute :: Id ( "12345678" . as_bytes( ) . to_vec( ) ) , // reusing the same CKA_ID
441
442
] ;
442
443
443
444
// generate a secret key
444
445
let _key = session
445
- . generate_key ( & Mechanism :: Des3KeyGen , & key_template)
446
+ . generate_key ( & Mechanism :: AesKeyGen , & key_template)
446
447
. unwrap ( ) ;
447
448
} ) ;
448
449
@@ -451,7 +452,7 @@ fn session_find_objects() -> testresult::TestResult {
451
452
Attribute :: Token ( true ) ,
452
453
Attribute :: Id ( "12345678" . as_bytes( ) . to_vec( ) ) ,
453
454
Attribute :: Class ( ObjectClass :: SECRET_KEY ) ,
454
- Attribute :: KeyType ( KeyType :: DES3 ) ,
455
+ Attribute :: KeyType ( KeyType :: AES ) ,
455
456
] ;
456
457
457
458
let mut found_keys = session. find_objects ( & key_search_template) ?;
@@ -486,20 +487,21 @@ fn session_objecthandle_iterator() -> testresult::TestResult {
486
487
let key_template = vec ! [
487
488
Attribute :: Token ( true ) ,
488
489
Attribute :: Encrypt ( true ) ,
490
+ Attribute :: ValueLen ( 32 . into( ) ) ,
489
491
Attribute :: Label ( format!( "key_{}" , i) . as_bytes( ) . to_vec( ) ) ,
490
492
Attribute :: Id ( "12345678" . as_bytes( ) . to_vec( ) ) , // reusing the same CKA_ID
491
493
] ;
492
494
493
495
// generate a secret key
494
- session. generate_key ( & Mechanism :: Des3KeyGen , & key_template) ?;
496
+ session. generate_key ( & Mechanism :: AesKeyGen , & key_template) ?;
495
497
}
496
498
497
499
// retrieve these keys using this template
498
500
let key_search_template = vec ! [
499
501
Attribute :: Token ( true ) ,
500
502
Attribute :: Id ( "12345678" . as_bytes( ) . to_vec( ) ) ,
501
503
Attribute :: Class ( ObjectClass :: SECRET_KEY ) ,
502
- Attribute :: KeyType ( KeyType :: DES3 ) ,
504
+ Attribute :: KeyType ( KeyType :: AES ) ,
503
505
] ;
504
506
505
507
// test iter_objects_with_cache_size()
@@ -575,23 +577,23 @@ fn wrap_and_unwrap_key() {
575
577
576
578
let key_to_be_wrapped_template = vec ! [
577
579
Attribute :: Token ( true ) ,
580
+ Attribute :: ValueLen ( 32 . into( ) ) ,
578
581
// the key needs to be extractable to be suitable for being wrapped
579
582
Attribute :: Extractable ( true ) ,
580
583
Attribute :: Encrypt ( true ) ,
581
584
] ;
582
585
583
586
// generate a secret key that will be wrapped
584
587
let key_to_be_wrapped = session
585
- . generate_key ( & Mechanism :: Des3KeyGen , & key_to_be_wrapped_template)
588
+ . generate_key ( & Mechanism :: AesKeyGen , & key_to_be_wrapped_template)
586
589
. unwrap ( ) ;
587
590
588
- // Des3Ecb input length must be a multiple of 8
589
- // see: PKCS#11 spec Table 10-10, DES-ECB Key And Data Length Constraints
591
+ // AesEcb input length must be a multiple of 16
590
592
let encrypted_with_original = session
591
593
. encrypt (
592
- & Mechanism :: Des3Ecb ,
594
+ & Mechanism :: AesEcb ,
593
595
key_to_be_wrapped,
594
- & [ 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 ] ,
596
+ & [ 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 12 , 13 , 14 , 15 , 16 ] ,
595
597
)
596
598
. unwrap ( ) ;
597
599
@@ -631,17 +633,13 @@ fn wrap_and_unwrap_key() {
631
633
Attribute :: Private ( true ) ,
632
634
Attribute :: Encrypt ( true ) ,
633
635
Attribute :: Class ( ObjectClass :: SECRET_KEY ) ,
634
- Attribute :: KeyType ( KeyType :: DES3 ) ,
636
+ Attribute :: KeyType ( KeyType :: AES ) ,
635
637
] ,
636
638
)
637
639
. unwrap ( ) ;
638
640
639
641
let encrypted_with_unwrapped = session
640
- . encrypt (
641
- & Mechanism :: Des3Ecb ,
642
- unwrapped_key,
643
- & [ 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 ] ,
644
- )
642
+ . encrypt ( & Mechanism :: AesEcb , unwrapped_key, & [ 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 ] )
645
643
. unwrap ( ) ;
646
644
assert_eq ! ( encrypted_with_original, encrypted_with_unwrapped) ;
647
645
}
0 commit comments