File tree Expand file tree Collapse file tree 1 file changed +24
-0
lines changed
lib/rex/proto/crypto_asn1 Expand file tree Collapse file tree 1 file changed +24
-0
lines changed Original file line number Diff line number Diff line change @@ -43,11 +43,35 @@ def parse!(str, ber: false)
4343 end
4444 end
4545
46+ # see: https://datatracker.ietf.org/doc/rfc5911/
47+ class CCMParameters < RASN1 ::Model
48+ sequence :gcm_parameters ,
49+ content : [ octet_string ( :aes_nonce ) ,
50+ integer ( :aes_ccm_icvlen )
51+ ]
52+ end
53+
54+ # see: https://datatracker.ietf.org/doc/rfc5911/
55+ class GCMParameters < RASN1 ::Model
56+ sequence :gcm_parameters ,
57+ content : [ octet_string ( :aes_nonce ) ,
58+ integer ( :aes_gcm_icvlen )
59+ ]
60+ end
61+
4662 class AlgorithmIdentifier < RASN1 ::Model
4763 sequence :algorithm_identifier ,
4864 content : [ objectid ( :algorithm ) ,
4965 any ( :parameters , optional : true )
5066 ]
67+
68+ def ccm_parameters
69+ CCMParameters . parse ( self [ :parameters ] . value )
70+ end
71+
72+ def gcm_parameters
73+ GCMParameters . parse ( self [ :parameters ] . value )
74+ end
5175 end
5276
5377 class KeyDerivationAlgorithmIdentifier < AlgorithmIdentifier
You can’t perform that action at this time.
0 commit comments