zoukankan      html  css  js  c++  java
  • AES256加密解密

    REPORT zged_aes.
    
    DATA lv_message_string TYPE string.
    DATA lv_message_decrypted TYPE XSTRING.
    
    " create message
    DATA(lr_conv_sec) = cl_abap_conv_out_ce=>create( ).
    lr_conv_sec->write( data = 'This is my secret' ).
    
    " create key
    DATA(lr_conv_key) = cl_abap_conv_out_ce=>create( ).
    lr_conv_key->write( data = 'MySymmetricKey' ).
    
    " encrypt using AES256
    cl_sec_sxml_writer=>encrypt(
      EXPORTING
        plaintext =  lr_conv_sec->get_buffer( )
        key =        lr_conv_key->get_buffer( )
        algorithm =  cl_sec_sxml_writer=>co_aes256_algorithm_pem
      IMPORTING
        ciphertext = DATA(lv_message) ).
    WRITE LV_MESSAGE.
    " decrypt message
    cl_sec_sxml_writer=>decrypt(
      EXPORTING
        ciphertext = lv_message
        key =        lr_conv_key->get_buffer( )
        algorithm =  cl_sec_sxml_writer=>co_aes256_algorithm_pem
      IMPORTING
        plaintext =  lv_message_decrypted ).
    
    " convert xstring to string for output
    cl_abap_conv_in_ce=>create( input = lv_message_decrypted )->read( IMPORTING data = lv_message_string ).
    
    " output secret message
    WRITE:/ lv_message_string.
  • 相关阅读:
    如何在SQL/400中计算两日期间的天数
    委托、事件与Observer设计模式
    C# 杂项
    泛型学习(二)
    委托
    操作符重载 (operator)
    一个解决方案多个项目
    将方法绑定到委托
    事件
    密封方法 密封类(sealed)
  • 原文地址:https://www.cnblogs.com/sapSB/p/14048500.html
Copyright © 2011-2022 走看看