FIEB_PASSWORD_DECRYPT:字符串解密;
FIEB_PASSWORD_ENCRYPT:字符串加密。
旧版本的可以用。

 PARAMETERS:str1 type char32 OBLIGATORY,
str2 TYPE char32,
str3 TYPE char32.
INITIALIZATION.
clear:str2,str3.
AT SELECTION-SCREEN output.
if not str1 is INITIAL.
CALL FUNCTION 'FIEB_PASSWORD_ENCRYPT'
EXPORTING
im_decrypted_password = STR1
IMPORTING
EX_ENCRYPTED_PASSWORD = STR2 .
CALL FUNCTION 'FIEB_PASSWORD_DECRYPT'
EXPORTING
im_encrypted_password = STR2
IMPORTING
EX_DECRYPTED_PASSWORD = STR3 .
endif.

新版中可以使用类接口CL_HARD_WIRED_ENCRYPTOR的静态方法实现。

 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 'Welcome to ABAP',
v_ac_xstring TYPE xstring,
v_en_string TYPE string,
v_en_xstring TYPE xstring,
v_de_string TYPE string,
v_de_xstring TYPE xstring,
v_error_msg TYPE string.
START-OF-SELECTION.
CREATE OBJECT o_encryptor.
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.
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.

-----------------------------------------------------------------------------

 report ztest1 MESSAGE-ID F4.
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 'Welcome to ABAP',
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.

ABAP字符串的加密与解密的更多相关文章

  1. MVC项目实践,在三层架构下实现SportsStore-10,连接字符串的加密和解密

    SportsStore是<精通ASP.NET MVC3框架(第三版)>中演示的MVC项目,在该项目中涵盖了MVC的众多方面,包括:使用DI容器.URL优化.导航.分页.购物车.订单.产品管 ...

  2. 【Java】通过DES加密和解密工具,对字符串进行加密和解密操作

    分享一个非常不错的字符串加密和解密的程序. 可以指定不同的密钥对同一字符串进行不同的加密操作,增强加密性能. Java代码如下: package com.app; import java.securi ...

  3. Java 实现字符串的加密与解密

    package com.wangbo.util; import java.security.Key; import java.security.Security; import javax.crypt ...

  4. java对字符串进行加密和解密(以下是来自其他博主)

    背景:需要对读取数据库配置的文件进行加密,防止他人拿到数据,而对自己的代码,有要实现进行解密,网上给的加密方式,什么MD5,base64,还有等等,都太复杂,而且有些是单向的,只加密不解密,以下代码, ...

  5. ASP.NET数据库连接字符串的加密与解密

    ASP.NET web.config中,数据库连接字符串的加密与解密. 虽然不怎么新鲜,但相信还是有许多人不知道,好,不说废话,直接给方法:开始--->运行,输入cmd,接着输入以下内容 加密: ...

  6. C#一个字符串的加密与解密

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.S ...

  7. js对字符串进行加密和解密方法!

    在做一些微信小程序,或混合 app 的时候,或者是考虑到一些 JS 数据安全的问题.可能会使用到 JS 对用户信息进行缓存. 例如在开发:微信小程序对用户进行加密缓存,开发混合APP对用户信息进行加密 ...

  8. js对字符串进行加密和解密

    //字符串进行加密 function compileStr(code){   var c=String.fromCharCode(code.charCodeAt(0)+code.length); fo ...

  9. C#中对字符串的加密和解密

    加密: /// <summary> /// 对字符串进行加密 /// </summary> /// <param name="proclaimText" ...

随机推荐

  1. bootstrap 表单+按钮+对话框

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  2. 学号:201521123116 《java程序设计》第六周学习总结

    1. 本章学习总结 1.1 面向对象学习暂告一段落,请使用思维导图,以封装.继承.多态为核心概念画一张思维导图,对面向对象思想进行一个总结. 2.书面作业 1.1.Object对象中的clone方法是 ...

  3. 201521123095 《Java程序设计》第3周学习总结

    ,1. 本周学习总结 初学面向对象,会学习到很多碎片化的概念与知识.尝试学会使用思维导图将这些碎片化的概念.知识组织起来.请使用纸笔或者下面的工具画出本周学习到的知识点.截图或者拍照上传. 2. 书面 ...

  4. 201521123060《Java程序设计》第1周学习总结

    1. 本章学习总结 认识和了解了Java的发展进程: 了解了相关开发工具: 认识了JVM,JRE,JDK: 2. 书面作业 Q1.为什么java程序可以跨平台运行?执行java程序的步骤是什么?(请用 ...

  5. 201521123012 《Java程序设计》第十四周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多数据库相关内容. 2. 书面作业 1. MySQL数据库基本操作 1.1建立数据库,将自己的姓名.学号作为一条记录插入.(截图, ...

  6. 读Zepto源码之Touch模块

    大家都知道,因为历史原因,移动端上的点击事件会有 300ms 左右的延迟,Zepto 的 touch 模块解决的就是移动端点击延迟的问题,同时也提供了滑动的 swipe 事件. 读 Zepto 源码系 ...

  7. java 如何判断操作系统是Linux还是Windows

    String os = System.getProperty("os.name"); if(os.toLowerCase().startsWith("win") ...

  8. JPA关系映射之one-to-many和many-to-one

    one-to-many(一对多)和many-to-one(多对一)双向关联 假设部门与员工是一对多关系,反过来员工与部门就是多对一关系. Dept.java类 public class Dept im ...

  9. Nexus5/6刷 lineageos 过程

    如题,好久没刷机,体验下lineageos 由于之前Xposed官方一直没支持7.x,就没更新 测试三方Xposed正常使用,记录下过程供参考 注意,刷机有风险,刷机前备份,可以使用钛备份 0x01: ...

  10. New Features and changes of Ninject 3.3

    Ninject 3.3 beta1 has gone live. This release mainly focus on bug fix and platform update. Support . ...