add support for rsa3072 and rsa4096 (#598)
This commit is contained in:
+17
-8
@@ -289,14 +289,23 @@ impl<'tx> Transaction<'tx> {
|
||||
let templ = [0, Ins::Authenticate.code(), algorithm.into(), key.into()];
|
||||
|
||||
match algorithm {
|
||||
AlgorithmId::Rsa1024 | AlgorithmId::Rsa2048 => {
|
||||
let key_len = if let AlgorithmId::Rsa1024 = algorithm {
|
||||
128
|
||||
} else {
|
||||
256
|
||||
};
|
||||
|
||||
if in_len != key_len {
|
||||
AlgorithmId::Rsa1024 => {
|
||||
if in_len != 128 {
|
||||
return Err(Error::SizeError);
|
||||
}
|
||||
}
|
||||
AlgorithmId::Rsa2048 => {
|
||||
if in_len != 256 {
|
||||
return Err(Error::SizeError);
|
||||
}
|
||||
}
|
||||
AlgorithmId::Rsa3072 => {
|
||||
if in_len != 384 {
|
||||
return Err(Error::SizeError);
|
||||
}
|
||||
}
|
||||
AlgorithmId::Rsa4096 => {
|
||||
if in_len != 512 {
|
||||
return Err(Error::SizeError);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user