File tree Expand file tree Collapse file tree 3 files changed +6
-3
lines changed
Expand file tree Collapse file tree 3 files changed +6
-3
lines changed Original file line number Diff line number Diff line change @@ -30,7 +30,7 @@ export function emsa_pss_encode(
3030 const maskedDB = xor ( db , dbMask ) ;
3131
3232 const leftMost = 8 * emLen - emBits ;
33- maskedDB [ 0 ] = maskedDB [ 0 ] && ( 0xff >> leftMost ) ;
33+ maskedDB [ 0 ] = maskedDB [ 0 ] & ( 0xff >> leftMost ) ;
3434
3535 return new Uint8Array ( [ ...maskedDB , ...h , 0xbc ] ) ;
3636}
@@ -57,7 +57,7 @@ export function emsa_pss_verify(
5757
5858 const dbMask = mgf1 ( h , emLen - hLen - 1 , algorithm ) ;
5959 const db = xor ( maskedDB , dbMask ) ;
60- db [ 0 ] = db [ 0 ] && ( 0xff >> leftMost ) ;
60+ db [ 0 ] = db [ 0 ] & ( 0xff >> leftMost ) ;
6161
6262 for ( let i = 1 ; i < emLen - hLen - sLen - 2 ; i ++ ) {
6363 if ( db [ i ] !== 0x00 ) return false ;
Original file line number Diff line number Diff line change @@ -138,6 +138,7 @@ export function rsa_pkcs1_sign(
138138 n : bigint ,
139139 d : bigint ,
140140 message : Uint8Array ,
141+ algorithm : RSAHashAlgorithm ,
141142) : RawBinary {
142143 // deno-fmt-ignore
143144 const oid = [
@@ -153,10 +154,11 @@ export function rsa_pkcs1_sign(
153154 0x03 ,
154155 0x04 ,
155156 0x02 ,
156- 0x01 ,
157+ algorithm === "sha512" ? 0x03 : 0x01 , // <--
157158 0x05 ,
158159 0x00 ,
159160 ] ;
161+
160162 const der = [
161163 0x30 ,
162164 message . length + 2 + oid . length ,
Original file line number Diff line number Diff line change @@ -69,6 +69,7 @@ export class PureRSA {
6969 key . n ,
7070 key . d ,
7171 digest ( options . hash , message ) ,
72+ options . hash ,
7273 ) ;
7374 } else {
7475 return rsassa_pss_sign ( key , message , options . hash ) ;
You can’t perform that action at this time.
0 commit comments