SAP Reports / Programs | Basis Components | Security(BC-SEC) SAP BC

SECH_HMAC_TEST SAP ABAP Report - SECHHMACTEST







SECH_HMAC_TEST is a standard Executable ABAP Report available within your SAP system (depending on your version and release level). Below is the basic information available for this SAP report including which OBJECTS it interacts with such as TABLES, FUNCTION MODULES, INCLUDES ETC. Also check out the submitted Comments related to this SAP report or see any standard documentation available.

If you would like to execute this report or see the full code listing simply enter SECH_HMAC_TEST into the relevant SAP transactions such as SE38 or SE80


ABAP code to call this SAP report using the submit statement

This report can be called from another progam/report simply by using the ABAP SUBMIT statement, see below for example ABAP code snipts of how to do this.






SUBMIT SECH_HMAC_TEST. "Basic submit
SUBMIT SECH_HMAC_TEST AND RETURN. "Return to original report after report execution complete
SUBMIT SECH_HMAC_TEST VIA SELECTION-SCREEN. "Display selection screen of submitted report to user
    See more syntax options for the ABAP SUBMIT statement


Text pool values


Selection Text: X_LEN = Length of Hex. Seq. (in Bytes)
Selection Text: X_KEYLEN = Length of Hex. Key (in Bytes)
Selection Text: X_KEYINP = Enter Key as Hex. Seq. (XStr.)
Selection Text: X_KEY = Key (as Hex. Sequence/XString)
Selection Text: X_INPUT = Enter Message as Hex. Seq.
Selection Text: X_DATA = Message (as Hexadecimal Seq.)
Selection Text: S_LEN = Length of Message (Characters)
Selection Text: S_KEYLEN = Length of Key (in Characters)
Selection Text: S_KEYINP = Enter Key as Text (String)
Selection Text: S_KEY = Key (as String Text)
Selection Text: S_INPUT = Enter Message as Text
Selection Text: S_DATA = Message (as Text)
Selection Text: SETKEY = Writing HMAC Key to SecStore
Selection Text: RSECTEST = Test Secure Storage (RSEC)
Selection Text: RECNUM = Record Number (01...99)
Selection Text: KEYMUEX = Key must already exist
Selection Text: HASH_ALG = Hash Algorithm Used
Selection Text: GETKEY = Reading HMAC Key from SecStore
Selection Text: GENRDKEY = Generate Key Automatically
Selection Text: DELKEY = Delet. HMAC Key from SecStore
Selection Text: CLINDEP = Client-Independent
Selection Text: CALCHMAC = Calculating HMAC


INCLUDES used within this REPORT SECH_HMAC_TEST

No INCLUDES are used within this REPORT code!


TABLES used within REPORT and the associated SELECT statement:





No SAP DATABASE tables are accessed within this REPORT code!


Function Modules used within report and the associated call statement:

ENQUEUE_READ CALL FUNCTION 'ENQUEUE_READ' EXPORTING gname = 'SNTXXHMAC_KRNENQ' garg = '/HMAC_CLIENT/SECH_HMAC_TEST' TABLES enq = lt_enq EXCEPTIONS communication_failure = 1 system_failure = 2 OTHERS = 3. "#EC FB_RC

RS_LDAP_GENERIC_DYNPRO_GET CALL FUNCTION 'RS_LDAP_GENERIC_DYNPRO_GET' IMPORTING eo_container = lo_container EXCEPTIONS control_error = 1 OTHERS = 2.

RS_LDAP_GENERIC_DYNPRO CALL FUNCTION 'RS_LDAP_GENERIC_DYNPRO' EXPORTING io_container = lo_container ii_dynpro_interface = lo_handler.

SECSTORE_READ_ITEM CALL FUNCTION 'SECSTORE_READ_ITEM' EXPORTING ident = 'BC_INIT' IMPORTING data = loc_result data_len = loc_result_len EXCEPTIONS internal_error = 1 invalid_description = 2 invalid_auth = 3 OTHERS = 4.

SECSTORE_READ_ITEM * CALL FUNCTION 'SECSTORE_READ_ITEM' * EXPORTING * ident = rsecid * client_independent = clindep * IMPORTING * data = loc_result * data_len = loc_result_len * EXCEPTIONS * internal_error = 1 * invalid_description = 2 * invalid_auth = 3 * OTHERS = 4.

SECSTORE_DELETE_ITEM * CALL FUNCTION 'SECSTORE_DELETE_ITEM' * EXPORTING * ident = rsecid * client_independent = clindep * EXCEPTIONS * internal_error = 1 * invalid_description = 2 * invalid_auth = 3 * OTHERS = 4.

CALCULATE_HMAC_FOR_CHAR CALL FUNCTION 'CALCULATE_HMAC_FOR_CHAR' EXPORTING alg = hash_alg data = s_data length = s_len client_independent = clindep record_number = recnum key_must_exist = keymuex IMPORTING hmac = loc_hmac hmaclen = loc_hmaclen hmacx = loc_hmacx hmacxlen = loc_hmacxlen hmacbase64 = loc_hmacbase64 hmacbase64len = loc_hmacbase64len EXCEPTIONS internal_error = 1 param_missing = 8 param_length_error = 12 unknown_alg = 16 malloc_error = 20 abap_caller_error = 24 base64_error = 28 calc_hmac_error = 32 rsec_record_not_found = 40 rsec_record_access_denied = 48 rsec_secstore_access_denied = 52 rsec_error = 56 rng_error = 64 enqueue_set_failed = 68 enqueue_release_failed = 72 enqueue_internal_error = 76 OTHERS = 4.

CALCULATE_HMAC_FOR_RAW CALL FUNCTION 'CALCULATE_HMAC_FOR_RAW' EXPORTING alg = hash_alg data = loc_xstr_data length = x_len client_independent = clindep record_number = recnum key_must_exist = keymuex IMPORTING hmac = loc_hmac hmaclen = loc_hmaclen hmacx = loc_hmacx hmacxlen = loc_hmacxlen hmacbase64 = loc_hmacbase64 hmacbase64len = loc_hmacbase64len EXCEPTIONS internal_error = 1 param_missing = 8 param_length_error = 12 unknown_alg = 16 malloc_error = 20 abap_caller_error = 24 base64_error = 28 calc_hmac_error = 32 rsec_record_not_found = 40 rsec_record_access_denied = 48 rsec_secstore_access_denied = 52 rsec_error = 56 rng_error = 64 enqueue_set_failed = 68 enqueue_release_failed = 72 enqueue_internal_error = 76 OTHERS = 4.

SET_HMAC_KEY CALL FUNCTION 'SET_HMAC_KEY' EXPORTING generate_random_key = genrdkey alg = hash_alg keyxstr = loc_xstr_key keyxlen = x_keylen client_independent = clindep record_number = recnum EXCEPTIONS internal_error = 1 param_missing = 8 param_length_error = 12 unknown_alg = 16 malloc_error = 20 abap_caller_error = 24 base64_error = 28 rsec_record_access_denied = 48 rsec_secstore_access_denied = 52 rsec_error = 56 rng_error = 64 enqueue_set_failed = 68 enqueue_release_failed = 72 enqueue_internal_error = 76 OTHERS = 4.

SET_HMAC_KEY CALL FUNCTION 'SET_HMAC_KEY' EXPORTING generate_random_key = genrdkey alg = hash_alg keycstr = s_key keyclen = s_keylen client_independent = clindep record_number = recnum EXCEPTIONS internal_error = 1 param_missing = 8 param_length_error = 12 unknown_alg = 16 malloc_error = 20 abap_caller_error = 24 base64_error = 28 rsec_record_access_denied = 48 rsec_secstore_access_denied = 52 rsec_error = 56 rng_error = 64 enqueue_set_failed = 68 enqueue_release_failed = 72 enqueue_internal_error = 76 OTHERS = 4.

GET_HMAC_KEY CALL FUNCTION 'GET_HMAC_KEY' EXPORTING client_independent = clindep record_number = recnum IMPORTING keyxstr = loc_keyxstr keyxlen = loc_keyxlen * keycstr = loc_keycstr * keyclen = loc_keyclen EXCEPTIONS internal_error = 1 param_missing = 8 param_length_error = 12 malloc_error = 20 abap_caller_error = 24 base64_error = 28 rsec_record_not_found = 40 rsec_record_access_denied = 48 rsec_secstore_access_denied = 52 rsec_error = 56 OTHERS = 4.

DELETE_HMAC_KEY CALL FUNCTION 'DELETE_HMAC_KEY' EXPORTING client_independent = clindep record_number = recnum EXCEPTIONS internal_error = 1 param_missing = 8 param_length_error = 12 malloc_error = 20 abap_caller_error = 24 base64_error = 28 rsec_record_not_found = 40 rsec_record_access_denied = 48 rsec_secstore_access_denied = 52 rsec_error = 56 enqueue_set_failed = 68 enqueue_release_failed = 72 enqueue_internal_error = 76 OTHERS = 4.

STORE_RAW_HMAC_KEY * CALL FUNCTION 'STORE_RAW_HMAC_KEY' * EXPORTING * hmac_key_identifier = rsecid * raw_key = wa_testvector-key * raw_key_length = wa_testvector-keylen * rsec_insert_mode = insert_mode * rsec_acl_list = it_rsec * EXCEPTIONS * internal_error = 1 * invalid_description = 2 * invalid_auth = 3 * param_missing = 8 * param_length_error = 12 * malloc_error = 20 * abap_caller_error = 24 * base64_error = 28 * rsec_unknown_insert_mode = 36 * rsec_record_not_found = 40 * rsec_record_already_exists = 44 * rsec_record_access_denied = 48 * rsec_secstore_access_denied = 52 * rsec_error = 56 * OTHERS = 4.

CALCULATE_HMAC_FOR_RAW * CALL FUNCTION 'CALCULATE_HMAC_FOR_RAW' * EXPORTING * hmac_key_identifier = rsecid * alg = wa_testvector-hash_alg * data = wa_testvector-data * length = wa_testvector-datalen * IMPORTING * hmacx = wa_testvector-resulting_hmac * EXCEPTIONS * internal_error = 1 * invalid_description = 2 * invalid_auth = 3 * param_missing = 8 * param_length_error = 12 * unknown_alg = 16 * malloc_error = 20 * abap_caller_error = 24 * base64_error = 28 * calc_hmac_error = 32 * rsec_record_not_found = 40 * rsec_record_access_denied = 48 * rsec_secstore_access_denied = 52 * rsec_error = 56 * OTHERS = 4.



Contribute (Add Comments)

Although this basic information may have limited use it does provide an easy to find location to store any knowledge about this program/report.







The contribute/comments section below therefore offer's an opportunity for anyone to add additional information. This can be anything from useful hints, tips and screen shots to relevant SAP notes or anything else you feel is relevant to this report.

This will then be available for everyone to easily find by simply searching on the report name SECH_HMAC_TEST or its description.