SAP ABAP Class CL_ST_CRYPTO_X509 (WS Security: X.509 Security Token (Private Key))
Hierarchy
SAP_BASIS (Software Component) SAP Basis Component
   BC-SEC (Application Component) Security
     SOAP_SECURITY_SAML2 (Package) SAML2 objects
Meta Relationship - Using
# Relationship type Using Short Description Created on
1 Inheritance (c INHERITING FROM c_ref)  CL_ST_CRYPTO WS Security: Abstract Crypto Token 20071228
Properties
Class CL_ST_CRYPTO_X509  
Short Description WS Security: X.509 Security Token (Private Key)    
Super Class CL_ST_CRYPTO WS Security: Abstract Crypto Token 
Instantiability of a Class 2  Public 
Final    
General Data
Message Class    
Program status     
Category 0   
Package SOAP_SECURITY_SAML2   SAML2 objects 
Created 20071228   SAP 
Last change 20130531   SAP 
Shared Memory-enabled    
Fixed point arithmetic    
Unicode checks active    
Forward declarations
# Type group / Object type Type Type Description
1 ABAP Type group use (TYPE-POOLS tp)  Type group use (TYPE-POOLS tp)
2 IF_WSSE_TYPES Forward declaration interface (INTERFACE i DEFINITION DEF...  Forward declaration interface (INTERFACE i DEFINITION DEF...
3 WSSEC Type group use (TYPE-POOLS tp)  Type group use (TYPE-POOLS tp)
Interfaces
Class CL_ST_CRYPTO_X509 has no interface implemented.
Friends
# Friend Modeled only Created on Description
1 CL_WS_SECURITY_PROTOCOL 20081118 Web Services Security Log Implementation
Attributes
# Attribute Level Visibility Read only Typing Associated Type Initial Value Description Created on
1 M_BST Instance attribute Private Type reference (TYPE) SEC_WSSE_BINARYSECURITYTOKEN wsse:BinarySecurityToken 20080102
2 M_CERT Instance attribute Private Type reference (TYPE) XSTRING 20080318
3 M_CHECKED_SSF_APP Instance attribute Private Type reference (TYPE) SSFAPPL SSF Application 20080229
4 M_I_CFG Instance attribute Private Type reference (TYPE) IF_WSSE_TYPES=>SEC_ST_CFG_I_X509 Configuration for Security Token 20080227
5 M_KEY_INFO Instance attribute Private Type reference (TYPE) SEC_DSIG_KEYINFO ds:KeyInfo 20080318
6 M_O_CFG Instance attribute Private Type reference (TYPE) IF_WSSE_TYPES=>SEC_ST_CFG_O_X509 Configuration for Security Token 20080227
7 M_ST_CERT Instance attribute Private Object reference (TYPE REF TO) CL_ST_CRYPTO_CERTIFICATE Security Token with Certificate 20080214
Methods
# Method Level Visibility Method type Description Created on
1 CREATE Static method Public Method Instantiate Security Token 20080128
2 CREATE_KEYINFO Static method Public Method Generate ds:KeyInfo for a Certificate 20080317
3 DECRYPT_ENCRYPTEDKEY Static method Public Method xenc: Process EncryptedKey 20080318
4 DECRYPT_ENCRYPTED_DATA Static method Public Method Decrypt xenc:EncryptedData 20080724
5 DOES_KEYINFO_MATCH_SSFAPPL Static method Private Method Check whether keyinfo references the given SSF application 20100830
6 DOES_REFERENCE_STATIC Static method Public Method Is this security token referenced? 20080318
7 GET_BINARY_SECURITY_TOKEN Static method Private Method Add Certificate 20080317
8 GET_ISSUER_SERIAL Static method Public Method Get IssuerName and SerialNumber 20080813
9 GET_PK_FINGERPRINT Static method Public Method Get IssuerName and SerialNumber 20090212
10 GET_RSA_KEYVALUE Static method Public Method Create ds:KeyInfo with ds:X509IssuerSerial 20090121
11 GET_SIGNATURE_CERTIFICATE Instance method Public Method Signature Certificate 20080228
12 GET_SUBJECT_KEY_IDENTIFIER Static method Private Method Determine X.509v3 Subject Key Identifier 20080316
13 GET_THUMBPRINT_SHA1 Static method Private Method oasis-wss-soap-message-security-1.1#ThumbprintSHA1 20080520
14 IS_CERTIFICATE_TRUSTED Instance method Private Method Check Certificate Trust 20080227
15 KEYINFO_ISSUER_SERIAL Static method Private Method Create ds:KeyInfo with ds:X509IssuerSerial 20080813
16 PARSE Static method Public Method Signature 20080204
17 RECHECK_SIGNATURE Instance method Public Method Check Signature Data 20080229
18 RESOLVE_PRIVATE_KEY Static method Public Method Find Private Key 20080318
19 RESOLVE_PUBLIC_KEY Static method Public Method Find Public Key 20080318
20 VERIFY Instance method Public Method Check Security Token 20080214
21 X509_SIGN Static method Public Method Create X.509 Signature 20080315
22 X509_VERIFY Static method Public Method Check Signature Value 20090224
Events
Class CL_ST_CRYPTO_X509 has no event.
Types
Class CL_ST_CRYPTO_X509 has no local type.
Method Signatures

Method CREATE Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing CFG Call by reference Type reference (TYPE) IF_WSSE_TYPES=>SEC_ST_CFG_O_X509 Konfiguration für Security Token 20080128
2 Returning ST Value transfer Object reference (TYPE REF TO) CL_ST_CRYPTO_X509 WS Security: X.509 security token (Privater Schlüssel) 20080128

Method CREATE on class CL_ST_CRYPTO_X509 has no exception.

Method CREATE_KEYINFO Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Exporting EF_BST Call by reference Type reference (TYPE) SEC_WSSE_BINARYSECURITYTOKEN wsse:BinarySecurityToken 20080317
2 Exporting EF_KEYINFO Call by reference Type reference (TYPE) SEC_DSIG_KEYINFO ds:KeyInfo 20080317
3 Exporting EF_KEYINFO_REFERENCE Call by reference Type reference (TYPE) XSDANY XML-Fragment 20080530
4 Importing IF_CERTIFICATE Call by reference Type reference (TYPE) XSTRING 20090909
5 Importing IF_DS_X509_CERT Call by reference Type reference (TYPE) BOOLEAN Boolean Variable (X=True, -=False, Space=Unknown) 20091020
6 Importing IF_INCLUDE_TOKEN Call by reference Type reference (TYPE) BOOLEAN boolsche Variable (X=true, -=false, space=unknown) 20080529
7 Importing IF_PREFER_SKI Call by reference Type reference (TYPE) BOOLEAN boolsche Variable (X=true, -=false, space=unknown) 20080317
8 Importing IF_SSF_PAB Call by reference Type reference (TYPE) SSFPAB Privates Adreßbuch für SSF 20080317
9 Importing IF_SSF_RECIPIENT Call by reference Type reference (TYPE) SSFID SSF-Name für Unterzeichner/Empfänger 20080317
10 Importing IF_WSS_CFG Call by reference Type reference (TYPE) SEC_ST_CFG_WSS WS Security 1.0 und 1.1 Optionen 20080529

Method CREATE_KEYINFO on class CL_ST_CRYPTO_X509 has no exception.

Method DECRYPT_ENCRYPTEDKEY Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing ENCRYPTEDKEY Call by reference Type reference (TYPE) SEC_XENC_ENCRYPTEDKEY xenc:EncryptedKey 20080318
2 Returning KEY Value transfer Type reference (TYPE) XSTRING decrypted Key 20080318
3 Importing SSF_APPLICATION Call by reference Type reference (TYPE) SSFAPPL SSF-Anwendung 20080318
4 Importing SSF_CONTEXT Call by reference Type reference (TYPE) PSECONTEXT Application Context of a PSE 20090723

Method DECRYPT_ENCRYPTEDKEY on class CL_ST_CRYPTO_X509 has no exception.

Method DECRYPT_ENCRYPTED_DATA Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Exporting EF_PLAIN_TEXT Call by reference Type reference (TYPE) XSTRING 20080724
2 Importing IF_ED Call by reference Type reference (TYPE) XSTRING 20080724

Method DECRYPT_ENCRYPTED_DATA on class CL_ST_CRYPTO_X509 has no exception.

Method DOES_KEYINFO_MATCH_SSFAPPL Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IF_KEY_INFO_FINGERPRINT Call by reference Type reference (TYPE) STRING 20100830
2 Importing IF_SSF_APPL Call by reference Type reference (TYPE) SSFAPPL SSF Application 20100830
3 Importing IF_SSF_CONTEXT Call by reference Type reference (TYPE) PSECONTEXT Application Context of a PSE 20100830
4 Importing IS_KEY_INFO Call by reference Type reference (TYPE) SEC_DSIG_KEYINFO ds:KeyInfo 20100830
5 Returning RV_RESULT Value transfer Type reference (TYPE) ABAP_BOOL 20100830

Method DOES_KEYINFO_MATCH_SSFAPPL on class CL_ST_CRYPTO_X509 has no exception.

Method DOES_REFERENCE_STATIC Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IS_KEYINFO Call by reference Type reference (TYPE) SEC_DSIG_KEYINFO ds:KeyInfo 20080318
2 Returning RF_DOES_REFERENCE Value transfer Type reference (TYPE) BOOLEAN boolsche Variable (X=true, -=false, space=unknown) 20080318

Method DOES_REFERENCE_STATIC on class CL_ST_CRYPTO_X509 has no exception.

Method GET_BINARY_SECURITY_TOKEN Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Exporting ALGID Call by reference Type reference (TYPE) STRING 20080317
2 Exporting BST Call by reference Type reference (TYPE) SEC_WSSE_BINARYSECURITYTOKEN wsse:BinarySecurityToken 20080317
3 Exporting KEYINFO_REFERENCE Call by reference Type reference (TYPE) XSDANY ds:KeyInfo 20080317
4 Importing PROFILE Call by reference Type reference (TYPE) SSFPAB Privates Adreßbuch für SSF 20080317
5 Exporting WSU_ID Call by reference Type reference (TYPE) STRING 20080317

Method GET_BINARY_SECURITY_TOKEN on class CL_ST_CRYPTO_X509 has no exception.

Method GET_ISSUER_SERIAL Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Exporting EF_ISSUER Call by reference Type reference (TYPE) STRING 20080813
2 Exporting EF_SERIAL Call by reference Type reference (TYPE) STRING 20080813
3 Importing IF_SSF_RECIPIENT Call by reference Type reference (TYPE) SSFID SSF Name for Signatory/Recipient 20081127
4 Importing IS_CERTIFICATE Call by reference Type reference (TYPE) XSTRING 20080813
5 Importing IS_SSF_PAB Call by reference Type reference (TYPE) SSFPAB Private Address Book for SSF 20080814
6 Importing IV_RAISE_NOT_FOUND Call by reference Type reference (TYPE) CHAR01 'X' Character Field Length 1 20081201

Method GET_ISSUER_SERIAL on class CL_ST_CRYPTO_X509 has no exception.

Method GET_PK_FINGERPRINT Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Exporting EV_PKFINGERPRINT Call by reference Type reference (TYPE) STRING 20090212
2 Importing IF_SSF_RECIPIENT Call by reference Type reference (TYPE) SSFID SSF Name for Signatory/Recipient 20090212
3 Importing IS_CERTIFICATE Call by reference Type reference (TYPE) XSTRING 20090212
4 Importing IS_SSF_PAB Call by reference Type reference (TYPE) SSFPAB Private Address Book for SSF 20090212
5 Importing IV_RAISE_NOT_FOUND Call by reference Type reference (TYPE) CHAR01 'X' Character Field Length 1 20090212

Method GET_PK_FINGERPRINT on class CL_ST_CRYPTO_X509 has no exception.

Method GET_RSA_KEYVALUE Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Exporting EF_KEYINFO_REFERENCE Call by reference Type reference (TYPE) XSDANY XML-Fragment 20090121
2 Exporting EV_EXP Call by reference Type reference (TYPE) STRING 20090121
3 Exporting EV_MOD Call by reference Type reference (TYPE) STRING 20090121
4 Importing IF_SSF_PAB Call by reference Type reference (TYPE) SSFPAB Privates Adreßbuch für SSF 20090121

Method GET_RSA_KEYVALUE on class CL_ST_CRYPTO_X509 has no exception.

Method GET_SIGNATURE_CERTIFICATE Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Returning CERTIFICATE_RAW Value transfer Type reference (TYPE) XSTRING 20080228

Method GET_SIGNATURE_CERTIFICATE on class CL_ST_CRYPTO_X509 has no exception.

Method GET_SUBJECT_KEY_IDENTIFIER Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Exporting EF_KEYINFO_REFERENCE Call by reference Type reference (TYPE) XSDANY XML-Fragment 20080530
2 Exporting EF_KEY_IDENTIFIER Call by reference Type reference (TYPE) STRING 20080316
3 Exporting EF_SSF_RECIPIENT Call by reference Type reference (TYPE) SSFID SSF-Name für Unterzeichner/Empfänger 20080318
4 Exporting EF_VALUE_TYPE Call by reference Type reference (TYPE) STRING 20080316
5 Importing IS_CERTIFICATE Call by reference Type reference (TYPE) XSTRING 20080316
6 Importing IS_SSF_PAB Call by reference Type reference (TYPE) SSFPAB SSF-Anwendung 20080316
7 Importing IS_SSF_RECIPIENT Call by reference Type reference (TYPE) SSFID SSF-Name für Unterzeichner/Empfänger 20080316

Method GET_SUBJECT_KEY_IDENTIFIER on class CL_ST_CRYPTO_X509 has no exception.

Method GET_THUMBPRINT_SHA1 Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Exporting EF_KEYINFO_REFERENCE Call by reference Type reference (TYPE) XSDANY XML-Fragment 20080602
2 Exporting EF_THUMBPRINT_B64 Value transfer Type reference (TYPE) STRING 20080602
3 Importing IF_SSF_PROFILE Call by reference Type reference (TYPE) SSFPROF SSF-Profilname 20080520
4 Importing IF_SSF_RECIPIENT Call by reference Type reference (TYPE) SSFID SSF Name for Signatory/Recipient 20081119

Method GET_THUMBPRINT_SHA1 on class CL_ST_CRYPTO_X509 has no exception.

Method IS_CERTIFICATE_TRUSTED Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing CERTIFICATE Call by reference Type reference (TYPE) XSTRING 20080227
2 Returning TRUST Value transfer Type reference (TYPE) SAP_BOOL boolsche Variable (X=true, space=false) 20080227

Method IS_CERTIFICATE_TRUSTED on class CL_ST_CRYPTO_X509 has no exception.

Method KEYINFO_ISSUER_SERIAL Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Exporting EF_ISSUER Call by reference Type reference (TYPE) STRING 20080813
2 Exporting EF_KEYINFO_REFERENCE Call by reference Type reference (TYPE) XSDANY XML-Fragment 20080813
3 Exporting EF_SERIAL Call by reference Type reference (TYPE) STRING 20080813
4 Importing IF_SSF_PAB Call by reference Type reference (TYPE) SSFPAB Privates Adreßbuch für SSF 20080813
5 Importing IF_SSF_RECIPIENT Call by reference Type reference (TYPE) SSFID SSF Name for Signatory/Recipient 20081127

Method KEYINFO_ISSUER_SERIAL on class CL_ST_CRYPTO_X509 has no exception.

Method PARSE Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IR_CTX Call by reference Object reference (TYPE REF TO) CL_WSSE_CONTEXT WSSE Context 20080331
2 Importing IS_KEY_INFO Call by reference Type reference (TYPE) SEC_DSIG_KEYINFO ds:KeyInfo 20080318
3 Importing IS_SIGNATURE Call by reference Type reference (TYPE) SEC_DSIG_SIGNATURE ds:Signature 20080204
4 Returning ST Value transfer Object reference (TYPE REF TO) CL_ST_CRYPTO_X509 WS Security: X.509 security token (Privater Schlüssel) 20080204

Method PARSE on class CL_ST_CRYPTO_X509 has no exception.

Method RECHECK_SIGNATURE Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IF_SSF_APP Call by reference Type reference (TYPE) SSFAPPL Privates Adreßbuch für SSF 20080229
2 Importing IS_REQUIRED_PARTS Call by reference Type reference (TYPE) IF_WSSE_TYPES=>SEC_ST_CFG_SIGNED_PARTS Zu signierende Parts 20080229

Method RECHECK_SIGNATURE on class CL_ST_CRYPTO_X509 has no exception.

Method RESOLVE_PRIVATE_KEY Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IS_KEY_INFO Call by reference Type reference (TYPE) SEC_DSIG_KEYINFO ds:KeyInfo 20080318
2 Exporting RE_SSF_APP Value transfer Type reference (TYPE) SSFAPPL SSF-Anwendung 20080318
3 Exporting RE_SSF_CONTEXT Call by reference Type reference (TYPE) PSECONTEXT Application Context of a PSE 20100907

Method RESOLVE_PRIVATE_KEY on class CL_ST_CRYPTO_X509 has no exception.

Method RESOLVE_PUBLIC_KEY Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Exporting EF_CERT_RAW Call by reference Type reference (TYPE) XSTRING 20080318
2 Exporting EF_SSF_RECIPIENT Call by reference Type reference (TYPE) SSFID SSF-Name für Unterzeichner/Empfänger 20080318
3 Importing IS_KEY_INFO Call by reference Type reference (TYPE) SEC_DSIG_KEYINFO ds:KeyInfo 20080318
4 Importing IS_SSF_APP Call by reference Type reference (TYPE) SSFAPPL SSF-Anwendung 20080318
5 Importing IS_SSF_CONTEXT Call by reference Type reference (TYPE) PSECONTEXT 'WSSE' Anwendungskontext einer PSE 20080318
6 Importing IS_SSF_PAB Call by reference Type reference (TYPE) SSFPAB Privates Adreßbuch für SSF 20080318

Method RESOLVE_PUBLIC_KEY on class CL_ST_CRYPTO_X509 has no exception.

Method VERIFY Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IR_BODY_ELEMENT Call by reference Object reference (TYPE REF TO) IF_SXML_OPEN_ELEMENT SXML Element-Start 20080214
2 Importing IR_CTX Call by reference Object reference (TYPE REF TO) CL_WSSE_CONTEXT WSSE Context 20080214
3 Importing IS_CFG Call by reference Type reference (TYPE) IF_WSSE_TYPES=>SEC_ST_CFG_I_X509 Konfiguration für Security Token 20080214
4 Importing IT_DSIG_INFO_TAB Call by reference Type reference (TYPE) SEC_XML_DSIG_INFO_TAB Tabelle von SEC_XML_DSIG_INFO 20080214

Method VERIFY on class CL_ST_CRYPTO_X509 has no exception.

Method X509_SIGN Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Changing CS_SIGNATURE Call by reference Type reference (TYPE) SEC_DSIG_SIGNATURE ds:Signature 20080315
2 Importing IF_DS_HASH Call by reference Type reference (TYPE) STRING DS Hash 20091204
3 Importing IS_SSF_PAB Call by reference Type reference (TYPE) SSFPAB Privates Adreßbuch für SSF 20080315

Method X509_SIGN on class CL_ST_CRYPTO_X509 has no exception.

Method X509_VERIFY Signature

# Type Parameter Pass Value Optional Typing Method Associated Type Default value Description Created on
1 Importing IF_CERTIFICATE Call by reference Type reference (TYPE) XSTRING 20090224
2 Importing IF_PROFILE Call by reference Type reference (TYPE) CR_PROFILE WSSEC_CO_CRL_PROFILE Profile Name 20110715
3 Importing IF_SIGNATURE_VALUE Call by reference Type reference (TYPE) XSTRING ds:Signature/ds:SignatureValue 20090224
4 Importing IF_SIGNED_INFO Call by reference Type reference (TYPE) XSTRING C14N of ds:SignedInfo 20090224
5 Importing IS_SIGNATURE Call by reference Type reference (TYPE) SEC_DSIG_SIGNATURE ds:Signature 20090224
6 Importing IS_SSF_PAB Call by reference Type reference (TYPE) SSFPAB Private Address Book for SSF 20090224

Method X509_VERIFY on class CL_ST_CRYPTO_X509 has no exception.
History
Last changed by/on SAP  20130531 
SAP Release Created in 711