pysap.SAPPSE module¶
-
class
pysap.SAPPSE.ASN1F_PSE_v2_ENC_CONT_SEQUENCE(*seq, **kwargs)[source]¶ Bases:
scapy.asn1fields.ASN1F_SEQUENCE-
ASN1_tag= <ASN1Tag v2_ENC_CONT[160]>¶
-
-
class
pysap.SAPPSE.ASN1F_PSE_v4_ENC_CONT_SEQUENCE(*seq, **kwargs)[source]¶ Bases:
scapy.asn1fields.ASN1F_SEQUENCE-
ASN1_tag= <ASN1Tag v4_ENC_CONT[163]>¶
-
-
class
pysap.SAPPSE.ASN1_Class_PSE[source]¶ Bases:
scapy.asn1.asn1.ASN1_Class_UNIVERSAL-
ANY= <ASN1Tag ANY[0]>¶
-
BIT_STRING= <ASN1Tag BIT_STRING[3]>¶
-
BMP_STRING= <ASN1Tag BMP_STRING[30]>¶
-
BOOLEAN= <ASN1Tag BOOLEAN[1]>¶
-
CHAR_STRING= <ASN1Tag CHAR_STRING[29]>¶
-
COUNTER32= <ASN1Tag COUNTER32[65]>¶
-
EMBEDDED_PDF= <ASN1Tag EMBEDDED_PDF[11]>¶
-
ENUMERATED= <ASN1Tag ENUMERATED[10]>¶
-
ERROR= <ASN1Tag ERROR[-3]>¶
-
EXTERNAL= <ASN1Tag EXTERNAL[8]>¶
-
GAUGE32= <ASN1Tag GAUGE32[66]>¶
-
GENERALIZED_TIME= <ASN1Tag GENERALIZED_TIME[24]>¶
-
GENERAL_STRING= <ASN1Tag GENERAL_STRING[27]>¶
-
GRAPHIC_STRING= <ASN1Tag GRAPHIC_STRING[25]>¶
-
IA5_STRING= <ASN1Tag IA5_STRING[22]>¶
-
INTEGER= <ASN1Tag INTEGER[2]>¶
-
IPADDRESS= <ASN1Tag IPADDRESS[64]>¶
-
ISO646_STRING= <ASN1Tag ISO646_STRING[26]>¶
-
NONE= <ASN1Tag NONE[-1]>¶
-
NULL= <ASN1Tag NULL[5]>¶
-
NUMERIC_STRING= <ASN1Tag NUMERIC_STRING[18]>¶
-
OBJECT_DESCRIPTOR= <ASN1Tag OBJECT_DESCRIPTOR[7]>¶
-
OID= <ASN1Tag OID[6]>¶
-
PRINTABLE_STRING= <ASN1Tag PRINTABLE_STRING[19]>¶
-
RAW= <ASN1Tag RAW[-2]>¶
-
REAL= <ASN1Tag REAL[9]>¶
-
RELATIVE_OID= <ASN1Tag RELATIVE_OID[13]>¶
-
SEQUENCE= <ASN1Tag SEQUENCE[48]>¶
-
SET= <ASN1Tag SET[49]>¶
-
STRING= <ASN1Tag STRING[4]>¶
-
T61_STRING= <ASN1Tag T61_STRING[20]>¶
-
TIME_TICKS= <ASN1Tag TIME_TICKS[67]>¶
-
UNIVERSAL_STRING= <ASN1Tag UNIVERSAL_STRING[28]>¶
-
UTC_TIME= <ASN1Tag UTC_TIME[23]>¶
-
UTF8_STRING= <ASN1Tag UTF8_STRING[12]>¶
-
VIDEOTEX_STRING= <ASN1Tag VIDEOTEX_STRING[21]>¶
-
name= 'PSE'¶
-
v2_ENC_CONT= <ASN1Tag v2_ENC_CONT[160]>¶
-
v4_ENC_CONT= <ASN1Tag v4_ENC_CONT[163]>¶
-
-
class
pysap.SAPPSE.ASN1_PSE_v2_ENC_CONT_SEQUENCE(val)[source]¶ Bases:
scapy.asn1.asn1.ASN1_SEQUENCE-
tag= <ASN1Tag v2_ENC_CONT[160]>¶
-
-
class
pysap.SAPPSE.ASN1_PSE_v4_ENC_CONT_SEQUENCE(val)[source]¶ Bases:
scapy.asn1.asn1.ASN1_SEQUENCE-
tag= <ASN1Tag v4_ENC_CONT[163]>¶
-
-
class
pysap.SAPPSE.BERcodec_PSE_v2_ENC_CONT_SEQUENCE[source]¶ Bases:
scapy.asn1.ber.BERcodec_SEQUENCE-
tag= <ASN1Tag v2_ENC_CONT[160]>¶
-
-
class
pysap.SAPPSE.BERcodec_PSE_v4_ENC_CONT_SEQUENCE[source]¶ Bases:
scapy.asn1.ber.BERcodec_SEQUENCE-
tag= <ASN1Tag v4_ENC_CONT[163]>¶
-
-
class
pysap.SAPPSE.PKCS12_PBE1_Parameters(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)[source]¶ Bases:
scapy.asn1packet.ASN1_PacketPKCS12 PBE1 Parameters
-
ASN1_codec= <ASN1Codec BER[1]>¶
-
ASN1_root= <ASN1F_SEQUENCE(<scapy.asn1fields.ASN1F_STRING object>, <scapy.asn1fields.ASN1F_INTEGER object>)>¶
-
aliastypes= [<class 'pysap.SAPPSE.PKCS12_PBE1_Parameters'>, <class 'scapy.asn1packet.ASN1_Packet'>, <class 'scapy.packet.Packet'>]¶
-
fields_desc= [<scapy.asn1fields.ASN1F_STRING object>, <scapy.asn1fields.ASN1F_INTEGER object>]¶
-
-
class
pysap.SAPPSE.PKCS5_Algorithm_Identifier(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)[source]¶ Bases:
scapy.asn1packet.ASN1_PacketPKCS5 Algorithm Identifier
-
ASN1_codec= <ASN1Codec BER[1]>¶
-
ASN1_root= <ASN1F_SEQUENCE(<scapy.asn1fields.ASN1F_OID object>, <scapy.asn1fields.ASN1F_optional object>)>¶
-
aliastypes= [<class 'pysap.SAPPSE.PKCS5_Algorithm_Identifier'>, <class 'scapy.asn1packet.ASN1_Packet'>, <class 'scapy.packet.Packet'>]¶
-
fields_desc= [<scapy.asn1fields.ASN1F_OID object>, <scapy.asn1fields.ASN1F_CHOICE object>]¶
-
-
class
pysap.SAPPSE.PKCS5_Salt_Parameter(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)[source]¶ Bases:
scapy.asn1packet.ASN1_PacketPKCS5 Salt Parameter
-
ASN1_codec= <ASN1Codec BER[1]>¶
-
ASN1_root= <scapy.asn1fields.ASN1F_STRING object>¶
-
aliastypes= [<class 'pysap.SAPPSE.PKCS5_Salt_Parameter'>, <class 'scapy.asn1packet.ASN1_Packet'>, <class 'scapy.packet.Packet'>]¶
-
fields_desc= [<scapy.asn1fields.ASN1F_STRING object>]¶
-
-
class
pysap.SAPPSE.SAPPSEFile(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)[source]¶ Bases:
scapy.asn1packet.ASN1_PacketSAP PSE definition
-
ASN1_codec= <ASN1Codec BER[1]>¶
-
ASN1_root= <ASN1F_SEQUENCE(<scapy.asn1fields.ASN1F_INTEGER object>, <scapy.asn1fields.ASN1F_CHOICE object>)>¶
-
aliastypes= [<class 'pysap.SAPPSE.SAPPSEFile'>, <class 'scapy.asn1packet.ASN1_Packet'>, <class 'scapy.packet.Packet'>]¶
-
decrypt(pin)[source]¶ Decrypts a PSE file given a provided PIN. Calls the respective decryption function based on the PSE version.
-
decrypt_lps(pin)[source]¶ Decrypts an LPS encrypted PSE file given a provided PIN.
Parameters: pin (string) –
Returns: decrypted object
Return type: Raises: - ValueError – if the provided PIN doesn’t match with the one used for encryption
- NotImplementedError – if the algorithm specified is not supported
- Exception – if the algorithm specified is not valid
-
decrypt_non_lps(pin)[source]¶ Decrypts a non-LPS encrypted PSE file given a provided PIN. Implements PKCS12 PBE1 based encryption for v2 PSE files.
Parameters: pin (string) –
Returns: decrypted object
Return type: Raises: - ValueError – if the provided PIN doesn’t match with the one used for encryption
- NotImplementedError – if the algorithm specified is not supported
- Exception – if the algorithm specified is not valid
-
fields_desc= [<scapy.asn1fields.ASN1F_INTEGER object>, <scapy.asn1fields.ASN1F_CHOICE object>]¶
-
-
class
pysap.SAPPSE.SAPPSE_Cont(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)[source]¶ Bases:
scapy.asn1packet.ASN1_PacketSAP PSEv2 Content definition
-
ASN1_codec= <ASN1Codec BER[1]>¶
-
ASN1_root= <ASN1F_SEQUENCE(<scapy.asn1fields.ASN1F_PACKET object>, <scapy.asn1fields.ASN1F_GENERALIZED_TIME object>, <scapy.asn1fields.ASN1F_INTEGER object>, <ASN1F_SET_OF pse_obj>)>¶
-
aliastypes= [<class 'pysap.SAPPSE.SAPPSE_Cont'>, <class 'scapy.asn1packet.ASN1_Packet'>, <class 'scapy.packet.Packet'>]¶
-
fields_desc= [<scapy.asn1fields.ASN1F_PACKET object>, <scapy.asn1fields.ASN1F_GENERALIZED_TIME object>, <scapy.asn1fields.ASN1F_INTEGER object>, <ASN1F_SET_OF pse_obj>]¶
-
-
class
pysap.SAPPSE.SAPPSE_Obj(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)[source]¶ Bases:
scapy.asn1packet.ASN1_PacketSAP PSEv2 Object definition
-
ASN1_codec= <ASN1Codec BER[1]>¶
-
ASN1_root= <ASN1F_SEQUENCE(<scapy.asn1fields.ASN1F_PRINTABLE_STRING object>, <scapy.asn1fields.ASN1F_GENERALIZED_TIME object>, <scapy.asn1fields.ASN1F_OID object>, <pysap.utils.fields.ASN1F_CHOICE_SAFE object>)>¶
-
aliastypes= [<class 'pysap.SAPPSE.SAPPSE_Obj'>, <class 'scapy.asn1packet.ASN1_Packet'>, <class 'scapy.packet.Packet'>]¶
-
fields_desc= [<scapy.asn1fields.ASN1F_PRINTABLE_STRING object>, <scapy.asn1fields.ASN1F_GENERALIZED_TIME object>, <scapy.asn1fields.ASN1F_OID object>, <pysap.utils.fields.ASN1F_CHOICE_SAFE object>]¶
-
-
class
pysap.SAPPSE.SAPPSE_Obj_CertList(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)[source]¶ Bases:
scapy.asn1packet.ASN1_PacketSAP PSEv2 CertList, CSet, SignCSet, EncCSet Object definition
-
ASN1_codec= <ASN1Codec BER[1]>¶
-
ASN1_root= <ASN1F_SET_OF certs>¶
-
aliastypes= [<class 'pysap.SAPPSE.SAPPSE_Obj_CertList'>, <class 'scapy.asn1packet.ASN1_Packet'>, <class 'scapy.packet.Packet'>]¶
-
fields_desc= [<ASN1F_SET_OF certs>]¶
-
-
class
pysap.SAPPSE.SAPPSE_Obj_PKList(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)[source]¶ Bases:
scapy.asn1packet.ASN1_PacketSAP PSEv2 PKList, EKList, PCAList Object definition
-
ASN1_codec= <ASN1Codec BER[1]>¶
-
ASN1_root= <ASN1F_SEQUENCE(<scapy.asn1fields.ASN1F_enum_INTEGER object>, <scapy.asn1fields.ASN1F_INTEGER object>, <scapy.asn1fields.ASN1F_PACKET object>, <scapy.asn1fields.ASN1F_PACKET object>, <scapy.asn1fields.ASN1F_PACKET object>, <scapy.asn1fields.ASN1F_PACKET object>, <scapy.asn1fields.ASN1F_PACKET object>)>¶
-
aliastypes= [<class 'pysap.SAPPSE.SAPPSE_Obj_PKList'>, <class 'scapy.asn1packet.ASN1_Packet'>, <class 'scapy.packet.Packet'>]¶
-
fields_desc= [<scapy.asn1fields.ASN1F_enum_INTEGER object>, <scapy.asn1fields.ASN1F_INTEGER object>, <scapy.asn1fields.ASN1F_PACKET object>, <scapy.asn1fields.ASN1F_PACKET object>, <scapy.asn1fields.ASN1F_PACKET object>, <scapy.asn1fields.ASN1F_PACKET object>, <scapy.asn1fields.ASN1F_PACKET object>]¶
-
-
class
pysap.SAPPSE.SAPPSE_Obj_PKRoot(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)[source]¶ Bases:
scapy.asn1packet.ASN1_PacketSAP PSEv2 PKRoot Object definition
-
ASN1_codec= <ASN1Codec BER[1]>¶
-
ASN1_root= <ASN1F_SEQUENCE(<scapy.asn1fields.ASN1F_PACKET object>, <scapy.asn1fields.ASN1F_PACKET object>, <scapy.asn1fields.ASN1F_PACKET object>)>¶
-
aliastypes= [<class 'pysap.SAPPSE.SAPPSE_Obj_PKRoot'>, <class 'scapy.asn1packet.ASN1_Packet'>, <class 'scapy.packet.Packet'>]¶
-
fields_desc= [<scapy.asn1fields.ASN1F_PACKET object>, <scapy.asn1fields.ASN1F_PACKET object>, <scapy.asn1fields.ASN1F_PACKET object>]¶
-
-
class
pysap.SAPPSE.SAPPSE_Root_Key(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)[source]¶ Bases:
scapy.asn1packet.ASN1_PacketSAP PSEv2 Root Key definition
-
ASN1_codec= <ASN1Codec BER[1]>¶
-
ASN1_root= <ASN1F_SEQUENCE(<scapy.asn1fields.ASN1F_enum_INTEGER object>, <scapy.asn1fields.ASN1F_INTEGER object>, <scapy.asn1fields.ASN1F_PACKET object>, <scapy.asn1fields.ASN1F_PACKET object>, <scapy.asn1fields.ASN1F_PACKET object>, <scapy.asn1fields.ASN1F_BIT_STRING object>)>¶
-
aliastypes= [<class 'pysap.SAPPSE.SAPPSE_Root_Key'>, <class 'scapy.asn1packet.ASN1_Packet'>, <class 'scapy.packet.Packet'>]¶
-
fields_desc= [<scapy.asn1fields.ASN1F_enum_INTEGER object>, <scapy.asn1fields.ASN1F_INTEGER object>, <scapy.asn1fields.ASN1F_PACKET object>, <scapy.asn1fields.ASN1F_PACKET object>, <scapy.asn1fields.ASN1F_PACKET object>, <scapy.asn1fields.ASN1F_BIT_STRING object>]¶
-
-
class
pysap.SAPPSE.SAPPSEv2_Enc_Cont(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)[source]¶ Bases:
scapy.asn1packet.ASN1_PacketSAP PSEv2 Encrypted content definition
-
ASN1_codec= <ASN1Codec BER[1]>¶
-
ASN1_root= <ASN1F_PSE_v2_ENC_CONT_SEQUENCE(<scapy.asn1fields.ASN1F_STRING object>, <scapy.asn1fields.ASN1F_PACKET object>, <scapy.asn1fields.ASN1F_STRING object>)>¶
-
aliastypes= [<class 'pysap.SAPPSE.SAPPSEv2_Enc_Cont'>, <class 'scapy.asn1packet.ASN1_Packet'>, <class 'scapy.packet.Packet'>]¶
-
fields_desc= [<scapy.asn1fields.ASN1F_STRING object>, <scapy.asn1fields.ASN1F_PACKET object>, <scapy.asn1fields.ASN1F_STRING object>]¶
-
-
class
pysap.SAPPSE.SAPPSEv4_Enc_Cont(_pkt='', post_transform=None, _internal=0, _underlayer=None, **fields)[source]¶ Bases:
scapy.asn1packet.ASN1_PacketSAP PSEv4 Encrypted content definition
-
ASN1_codec= <ASN1Codec BER[1]>¶
-
ASN1_root= <ASN1F_PSE_v4_ENC_CONT_SEQUENCE(<scapy.asn1fields.ASN1F_INTEGER object>, <scapy.asn1fields.ASN1F_PACKET object>, <scapy.asn1fields.ASN1F_STRING object>, <scapy.asn1fields.ASN1F_STRING object>)>¶
-
aliastypes= [<class 'pysap.SAPPSE.SAPPSEv4_Enc_Cont'>, <class 'scapy.asn1packet.ASN1_Packet'>, <class 'scapy.packet.Packet'>]¶
-
fields_desc= [<scapy.asn1fields.ASN1F_INTEGER object>, <scapy.asn1fields.ASN1F_PACKET object>, <scapy.asn1fields.ASN1F_STRING object>, <scapy.asn1fields.ASN1F_STRING object>]¶
-