ABAP字符串的加密与解密
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字符串的加密与解密的更多相关文章
- MVC项目实践,在三层架构下实现SportsStore-10,连接字符串的加密和解密
SportsStore是<精通ASP.NET MVC3框架(第三版)>中演示的MVC项目,在该项目中涵盖了MVC的众多方面,包括:使用DI容器.URL优化.导航.分页.购物车.订单.产品管 ...
- 【Java】通过DES加密和解密工具,对字符串进行加密和解密操作
分享一个非常不错的字符串加密和解密的程序. 可以指定不同的密钥对同一字符串进行不同的加密操作,增强加密性能. Java代码如下: package com.app; import java.securi ...
- Java 实现字符串的加密与解密
package com.wangbo.util; import java.security.Key; import java.security.Security; import javax.crypt ...
- java对字符串进行加密和解密(以下是来自其他博主)
背景:需要对读取数据库配置的文件进行加密,防止他人拿到数据,而对自己的代码,有要实现进行解密,网上给的加密方式,什么MD5,base64,还有等等,都太复杂,而且有些是单向的,只加密不解密,以下代码, ...
- ASP.NET数据库连接字符串的加密与解密
ASP.NET web.config中,数据库连接字符串的加密与解密. 虽然不怎么新鲜,但相信还是有许多人不知道,好,不说废话,直接给方法:开始--->运行,输入cmd,接着输入以下内容 加密: ...
- C#一个字符串的加密与解密
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.S ...
- js对字符串进行加密和解密方法!
在做一些微信小程序,或混合 app 的时候,或者是考虑到一些 JS 数据安全的问题.可能会使用到 JS 对用户信息进行缓存. 例如在开发:微信小程序对用户进行加密缓存,开发混合APP对用户信息进行加密 ...
- js对字符串进行加密和解密
//字符串进行加密 function compileStr(code){ var c=String.fromCharCode(code.charCodeAt(0)+code.length); fo ...
- C#中对字符串的加密和解密
加密: /// <summary> /// 对字符串进行加密 /// </summary> /// <param name="proclaimText" ...
随机推荐
- unity调用c++ dll方法介绍
摘要 unity用的很普遍,现在很多代码还是用c++写的,需要用unity去调用c++的代码.这里介绍了一种unity调用c++ dll的方法,希望有所帮助. 我采用的软件是Visual Studio ...
- 201521123063 《JAVA程序设计》 第5周学习总结
1. 本周学习总结 1.1 尝试使用思维导图总结有关多态与接口的知识点. 1.2 可选:使用常规方法总结其他上课内容. 上周学习了继承和多态,满足is-a条件,但是发现会导致继承的滥用,如果只是但以的 ...
- 《JAVA程序设计》第11周学习总结
1. 本章学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多线程相关内容. synchronized方法/代码块 wait().notify()用法,生产者消费者例子 lock.condit ...
- allego 输出报告说明
List of Available Reports Assigned Function Report Lists all assigned functions, sorted by function ...
- mysql truncate、delete与drop区别
相同点: 1.truncate和不带where子句的delete.以及drop都会删除表内的数据. 2.drop.truncate都是DDL语句(数据定义语言),执行后会自动提交. 不同点: 1. t ...
- Django实现内容缓存
1.缓存的简介 在动态网站中,用户所有的请求,服务器都会去数据库中进行相应的增,删,查,改,渲染模板,执行业务逻辑,最后生成用户看到的页面. 当一个网站的用户访问量很大的时候,每一次的的后台操作,都会 ...
- 从content-type设置看Spring MVC处理header的一个坑
我们经常需要在HttpResponse中设置一些headers,我们使用Spring MVC框架的时候我们如何给Response设置Header呢? Sooooooooooooo easy, 看下面的 ...
- 自学Unity3D 之 贪吃蛇
从一个Java程序员转换去做VR ,先开始自学U3D 吧, 最近跟着一起做一个贪吃蛇的项目 从传课网上面再学 第一天: 因为之前已经对VR 的开发有了一些了解,也买了本书,了解了Unity的基本操作. ...
- Thinkphp3.2版本使用163邮箱发(验证码)邮件
今天忽然想写一个用户修改密码的功能,又没有短信接口,只能选择用邮箱发送验证码啦,穷啊,没办法,哈哈,以下为正文. ------------------------------------------- ...
- Java中增强for循环的用法
此方法在jdk1.5之后才出现. 1:遍历数组 语法: for (Type value : array) { expression value; } 例子: void Sum() { int[] ar ...