ABAP 字符串加密解密程序

DATA: O_ENCRYPTOR        TYPE REF TO CL_HARD_WIRED_ENCRYPTOR,
      O_CX_ENCRYPT_ERROR TYPE REF TO CX_ENCRYPT_ERROR.
DATA: V_AC_STRING  TYPE STRING VALUE 'RICK',
      V_AC_XSTRING TYPE XSTRING,
      V_EN_STRING  TYPE STRING,
      V_EN_XSTRING TYPE XSTRING,
      V_DE_STRING  TYPE STRING,
      V_DE_XSTRING TYPE STRING,
      V_ERROR_MSG  TYPE STRING.

START-OF-SELECTION.
* Create object for Encryption
  CREATE OBJECT O_ENCRYPTOR.
* *&---------------------------------------------------------------------*
* Encryption - String to String
*&---------------------------------------------------------------------*
  WRITE / 'Encryption - String to String'.
  TRY.
      CALL METHOD O_ENCRYPTOR->ENCRYPT_STRING2STRING
        EXPORTING
          THE_STRING = V_AC_STRING
        RECEIVING
          RESULT     = V_EN_STRING.
    CATCH CX_ENCRYPT_ERROR INTO O_CX_ENCRYPT_ERROR.
      CALL METHOD O_CX_ENCRYPT_ERROR->IF_MESSAGE~GET_TEXT
        RECEIVING
          RESULT = V_ERROR_MSG.
      MESSAGE V_ERROR_MSG TYPE 'E'.
  ENDTRY.
  WRITE:/ 'Actual String: ', V_AC_STRING.
  WRITE:/ 'Encrypted String: ', V_EN_STRING.
  SKIP.
*   *&---------------------------------------------------------------------*
* Decryption - String to String
*&---------------------------------------------------------------------*
  WRITE / 'Decryption - String to String'.
  TRY.
      CALL METHOD O_ENCRYPTOR->DECRYPT_STRING2STRING
        EXPORTING
          THE_STRING = V_EN_STRING
        RECEIVING
          RESULT     = V_DE_STRING.
    CATCH CX_ENCRYPT_ERROR INTO O_CX_ENCRYPT_ERROR.
      CALL METHOD O_CX_ENCRYPT_ERROR->IF_MESSAGE~GET_TEXT
        RECEIVING
          RESULT = V_ERROR_MSG.
      MESSAGE V_ERROR_MSG TYPE 'E'.
  ENDTRY.
  WRITE:/ 'Encrypted String: ', V_EN_STRING.
  WRITE:/ 'Decrypted String: ', V_DE_STRING.
  SKIP.


关键词: ABAP

网友评论

发表评论