克米亚sap论坛,中国最好的sap论坛,sap系统,sap培训,kemiya,克米亚,sap账号,sap ides,sap mm,sap hana,sap fico,sap pp

 找回密码
 注册
查看: 58|回复: 1

ABAP字符串的加密与解密

[复制链接]
kmy 发表于 2019-1-7 09:35:26 | 显示全部楼层 |阅读模式
FIEB_PASSWORD_DECRYPT:字符串解密;
FIEB_PASSWORD_ENCRYPT:字符串加密。
旧版本的可以用。
1 PARAMETERS:str1 type char32 OBLIGATORY, 2             str2 TYPE char32, 3             str3 TYPE char32. 4 INITIALIZATION. 5 clear:str2,str3. 6 AT SELECTION-SCREEN output. 7   if not str1 is INITIAL. 8   CALL FUNCTION 'FIEB_PASSWORD_ENCRYPT' 9     EXPORTING10        im_decrypted_password        = STR111    IMPORTING12       EX_ENCRYPTED_PASSWORD         = STR2 .13   CALL FUNCTION 'FIEB_PASSWORD_DECRYPT'14     EXPORTING15        im_encrypted_password        = STR216    IMPORTING17       EX_DECRYPTED_PASSWORD         = STR3   .18 endif.

新版中可以使用类接口CL_HARD_WIRED_ENCRYPTOR的静态方法实现。
1 DATA:   o_encryptor        TYPE REF TO cl_hard_wired_encryptor, 2         o_cx_encrypt_error TYPE REF TO cx_encrypt_error. 3 DATA:   v_ac_string  TYPE string VALUE 'Welcome to ABAP', 4         v_ac_xstring TYPE xstring, 5         v_en_string  TYPE string, 6         v_en_xstring TYPE xstring, 7         v_de_string  TYPE string, 8         v_de_xstring TYPE xstring, 9         v_error_msg  TYPE string.10 START-OF-SELECTION.11   CREATE OBJECT o_encryptor.12   WRITE / 'Encryption - String to String'.13   TRY.14       CALL METHOD o_encryptor->encrypt_string2string15         EXPORTING16             the_string = v_ac_string17           RECEIVING18             result       = v_en_string.19     CATCH cx_encrypt_error INTO o_cx_encrypt_error.20       CALL METHOD o_cx_encrypt_error->if_message~get_text21           RECEIVING22             result = v_error_msg.23       MESSAGE v_error_msg TYPE 'E'.24   ENDTRY.25   WRITE:/ 'Actual String: ', v_ac_string.26   WRITE:/ 'Encrypted String: ', v_en_string.27   SKIP.28   WRITE / 'Decryption - String to String'.29   TRY.30       CALL METHOD o_encryptor->decrypt_string2string31         EXPORTING32             the_string = v_en_string33           RECEIVING34             result       = v_de_string.35     CATCH cx_encrypt_error INTO o_cx_encrypt_error.36       CALL METHOD o_cx_encrypt_error->if_message~get_text37           RECEIVING38             result = v_error_msg.39       MESSAGE v_error_msg TYPE 'E'.40   ENDTRY.41 42   WRITE:/ 'Encrypted String: ', v_en_string.43   WRITE:/ 'Decrypted String: ', v_de_string.44   SKIP.
-----------------------------------------------------------------------------
1 report ztest1 MESSAGE-ID F4. 2 DATA: o_encryptor        TYPE REF TO cl_hard_wired_encryptor, 3       o_cx_encrypt_error TYPE REF TO cx_encrypt_error. 4 5 DATA: v_ac_string  TYPE string VALUE 'Welcome to ABAP', 6       v_ac_xstring TYPE xstring, 7       v_en_string  TYPE string, 8       v_en_xstring TYPE xstring, 9       v_de_string  TYPE string,10       v_de_xstring TYPE string,11       v_error_msg  TYPE string.12 13 START-OF-SELECTION.14 15 * Create object for Encryption16   CREATE OBJECT o_encryptor.17 * *&---------------------------------------------------------------------*18 * Encryption - String to String19 *&---------------------------------------------------------------------*20 WRITE / 'Encryption - String to String'.21   TRY.22       CALL METHOD o_encryptor->encrypt_string2string23         EXPORTING24           the_string = v_ac_string25         RECEIVING26           result     = v_en_string.27     CATCH cx_encrypt_error INTO o_cx_encrypt_error.28       CALL METHOD o_cx_encrypt_error->if_message~get_text29         RECEIVING30           result = v_error_msg.31       MESSAGE v_error_msg TYPE 'E'.32   ENDTRY.33 34   WRITE:/ 'Actual String: ', v_ac_string.35   WRITE:/ 'Encrypted String: ', v_en_string.36   SKIP.37 38 *&---------------------------------------------------------------------*39 * Decryption - String to String40 *&---------------------------------------------------------------------*41 WRITE / 'Decryption - String to String'.42   TRY.43       CALL METHOD o_encryptor->decrypt_string2string44         EXPORTING45           the_string = v_en_string46         RECEIVING47           result     = v_de_string.48     CATCH cx_encrypt_error INTO o_cx_encrypt_error.49       CALL METHOD o_cx_encrypt_error->if_message~get_text50         RECEIVING51           result = v_error_msg.52       MESSAGE v_error_msg TYPE 'E'.53   ENDTRY.54 55   WRITE:/ 'Encrypted String: ', v_en_string.56   WRITE:/ 'Decrypted String: ', v_de_string.

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|克米亚sap论坛,sap账号,sap系统,sap ides,sap学习机,sap练习环境 ( 渝ICP备18002525号-5 )

GMT+8, 2019-1-20 07:37

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表