1
- use picky:: {
2
- key:: { PrivateKey , PublicKey } ,
3
- signature:: SignatureAlgorithm ,
4
- } ;
1
+ use picky:: key:: { PrivateKey , PublicKey } ;
2
+ use picky:: signature:: SignatureAlgorithm ;
5
3
use picky_krb:: crypto:: { Checksum , Cipher } ;
6
4
use rand:: SeedableRng ;
7
5
use rand_chacha:: ChaCha8Rng ;
8
- use rsa:: {
9
- pkcs1:: { DecodeRsaPrivateKey , DecodeRsaPublicKey } ,
10
- PaddingScheme , PublicKey as PublicKeyTrait , RsaPrivateKey , RsaPublicKey ,
11
- } ;
6
+ use rsa:: pkcs1:: { DecodeRsaPrivateKey , DecodeRsaPublicKey } ;
7
+ use rsa:: { PaddingScheme , PublicKey as PublicKeyTrait , RsaPrivateKey , RsaPublicKey } ;
12
8
13
- use super :: {
14
- algorithm:: { KrbInput , KrbInputData , RsaAction , RsaInput } ,
15
- from_hex,
16
- } ;
9
+ use super :: algorithm:: { KrbInput , KrbInputData , RsaAction , RsaInput } ;
10
+ use super :: from_hex;
17
11
18
12
pub fn process_rsa ( input : & RsaInput ) -> Result < Vec < u8 > , String > {
19
13
let payload = from_hex ( & input. payload ) ?;
@@ -26,23 +20,20 @@ pub fn process_rsa(input: &RsaInput) -> Result<Vec<u8>, String> {
26
20
. map_err ( |err| err. to_string ( ) )
27
21
}
28
22
RsaAction :: Decrypt ( input) => {
29
- let private_key =
30
- RsaPrivateKey :: from_pkcs1_pem ( input) . map_err ( |err| err. to_string ( ) ) ?;
23
+ let private_key = RsaPrivateKey :: from_pkcs1_pem ( input) . map_err ( |err| err. to_string ( ) ) ?;
31
24
private_key
32
25
. decrypt ( PaddingScheme :: PKCS1v15Encrypt , & payload)
33
26
. map_err ( |err| err. to_string ( ) )
34
27
}
35
28
RsaAction :: Sign ( input) => {
36
- let private_key =
37
- PrivateKey :: from_pem_str ( & input. rsa_key ) . map_err ( |err| err. to_string ( ) ) ?;
29
+ let private_key = PrivateKey :: from_pem_str ( & input. rsa_key ) . map_err ( |err| err. to_string ( ) ) ?;
38
30
Ok ( SignatureAlgorithm :: RsaPkcs1v15 ( input. hash_algorithm . 0 )
39
31
. sign ( & payload, & private_key)
40
32
. map_err ( |err| err. to_string ( ) ) ?)
41
33
}
42
34
RsaAction :: Verify ( input) => {
43
35
let signature = from_hex ( & input. signature ) ?;
44
- let public_key =
45
- PublicKey :: from_pem_str ( & input. rsa_key ) . map_err ( |err| err. to_string ( ) ) ?;
36
+ let public_key = PublicKey :: from_pem_str ( & input. rsa_key ) . map_err ( |err| err. to_string ( ) ) ?;
46
37
SignatureAlgorithm :: RsaPkcs1v15 ( input. hash_algorithm . 0 )
47
38
. verify ( & public_key, & payload, & signature)
48
39
. map ( |_| vec ! [ 1 ] )
@@ -79,10 +70,7 @@ pub fn process_krb_cipher(cipher: Box<dyn Cipher>, input: &KrbInput) -> Result<V
79
70
}
80
71
}
81
72
82
- pub fn process_krb_hmac (
83
- hasher : Box < dyn Checksum > ,
84
- input : & KrbInputData ,
85
- ) -> Result < Vec < u8 > , String > {
73
+ pub fn process_krb_hmac ( hasher : Box < dyn Checksum > , input : & KrbInputData ) -> Result < Vec < u8 > , String > {
86
74
hasher
87
75
. checksum (
88
76
& from_hex ( & input. key ) . map_err ( |err| format ! ( "key: {}" , err) ) ?,
0 commit comments