@@ -139,9 +139,9 @@ def test_key_builder_from_pem_with_alg(self, private_key_path, public_key_path):
139139 "ECDH-SS+HKDF-256" ,
140140 "ECDH-ES+HKDF-512" ,
141141 "ECDH-ES+HKDF-256" ,
142- "ES256K" ,
143- "ES512" ,
144- "ES384" ,
142+ # "ES256K",
143+ # "ES512",
144+ # "ES384",
145145 "ES256" ,
146146 ],
147147 )
@@ -630,3 +630,89 @@ def test_cose_key_interface(self):
630630 ki .crv
631631 pytest .fail ("crv should fail." )
632632 assert "" == str (err .value )
633+
634+ @pytest .mark .parametrize (
635+ "invalid, msg" ,
636+ [
637+ ("Ed25519" , "Unsupported or unknown alg used with P-256:" ),
638+ ("Ed448" , "Unsupported or unknown alg used with P-256:" ),
639+ # ("ES256", "Unsupported or unknown alg used with P-256:"),
640+ ("ES384" , "Unsupported or unknown alg used with P-256:" ),
641+ ("ES512" , "Unsupported or unknown alg used with P-256:" ),
642+ # ("ESP256", "Unsupported or unknown alg used with P-256:"),
643+ ("ESP384" , "Unsupported or unknown alg used with P-256:" ),
644+ ("ESP512" , "Unsupported or unknown alg used with P-256:" ),
645+ ],
646+ )
647+ def test_key_builder_from_jwk_with_invalid_fully_specified_ec2_p256_alg (self , invalid , msg ):
648+ with pytest .raises (ValueError ) as err :
649+ COSEKey .from_jwk (
650+ {
651+ "kty" : "EC" ,
652+ "use" : "sig" ,
653+ "crv" : "P-256" ,
654+ "kid" : "P-256-01" ,
655+ "x" : "usWxHK2PmfnHKwXPS54m0kTcGJ90UiglWiGahtagnv8" ,
656+ "y" : "IBOL-C3BttVivg-lSreASjpkttcsz-1rb7btKLv8EX4" ,
657+ "d" : "V8kgd2ZBRuh2dgyVINBUqpPDr7BOMGcF22CQMIUHtNM" ,
658+ "alg" : invalid ,
659+ }
660+ )
661+ pytest .fail ("from_jwk should fail." )
662+ assert msg in str (err .value )
663+
664+ @pytest .mark .parametrize (
665+ "invalid, msg" ,
666+ [
667+ ("Ed448" , "Unsupported or unknown alg used with Ed25519:" ),
668+ ("ES256" , "Unsupported or unknown alg used with Ed25519:" ),
669+ ("ESP256" , "Unsupported or unknown alg used with Ed25519:" ),
670+ ("ES384" , "Unsupported or unknown alg used with Ed25519:" ),
671+ ("ES512" , "Unsupported or unknown alg used with Ed25519:" ),
672+ ("ESP384" , "Unsupported or unknown alg used with Ed25519:" ),
673+ ("ESP512" , "Unsupported or unknown alg used with Ed25519:" ),
674+ ],
675+ )
676+ def test_key_builder_from_jwk_with_invalid_fully_specified_okp_ed25519_alg (self , invalid , msg ):
677+ with pytest .raises (ValueError ) as err :
678+ COSEKey .from_jwk (
679+ {
680+ "kty" : "OKP" ,
681+ "use" : "sig" ,
682+ "crv" : "Ed25519" ,
683+ "kid" : "Ed25519-01" ,
684+ "x" : "2E6dX83gqD_D0eAmqnaHe1TC1xuld6iAKXfw2OVATr0" ,
685+ "d" : "L8JS08VsFZoZxGa9JvzYmCWOwg7zaKcei3KZmYsj7dc" ,
686+ "alg" : invalid ,
687+ }
688+ )
689+ pytest .fail ("from_jwk should fail." )
690+ assert msg in str (err .value )
691+
692+ @pytest .mark .parametrize (
693+ "invalid, msg" ,
694+ [
695+ ("Ed25519" , "Unsupported or unknown alg used with Ed448:" ),
696+ ("ES256" , "Unsupported or unknown alg used with Ed448:" ),
697+ ("ESP256" , "Unsupported or unknown alg used with Ed448:" ),
698+ ("ES384" , "Unsupported or unknown alg used with Ed448:" ),
699+ ("ES512" , "Unsupported or unknown alg used with Ed448:" ),
700+ ("ESP384" , "Unsupported or unknown alg used with Ed448:" ),
701+ ("ESP512" , "Unsupported or unknown alg used with Ed448:" ),
702+ ],
703+ )
704+ def test_key_builder_from_jwk_with_invalid_fully_specified_okp_ed448_alg (self , invalid , msg ):
705+ with pytest .raises (ValueError ) as err :
706+ COSEKey .from_jwk (
707+ {
708+ "kty" : "OKP" ,
709+ "use" : "sig" ,
710+ "crv" : "Ed448" ,
711+ "kid" : "Ed448-01" ,
712+ "x" : "25isUWIosUkM2ynOPFP5t7BbwM1_iFQmKBpHvA0hgXpRX6yyu-nq6BBmpS3J0DYTlZIoA4qwgSqA" ,
713+ "d" : "vOHg3x9AXEBRDnzM5b68bLFswieywpJzTOkxafU5fiDxyKowuetnBgjQsgTRWoc067X9xvZWE0Sd" ,
714+ "alg" : invalid ,
715+ }
716+ )
717+ pytest .fail ("from_jwk should fail." )
718+ assert msg in str (err .value )
0 commit comments