# 密码

# com.eos.foundation.common.utils.CryptoUtil

# 构件包说明

本工具类实现了字符串的加密解密操作。

# 运算逻辑构件使用说明

该构件包包含以下构件:

序号 方法 功能描述
1 base64Decode(String text) 把使用过base64编码的字符串解码成字节数组
2 base64Encode(byte[] bytes) 把字节数组经过base64编码变成一个特殊的字符串
3 decryptByDES(String cryptograph, String keyString) 把经过DES加密的字符串解密成明文
4 digestByMD5(String text) 把字符串经过MD5摘要再base64编码
5 digestBySHA(String text)] 把字符串经过SHA摘要再base64编码
6 encryptByDES(String plainText, String keyString) 把字符串使用DES加密并经过base64编码

# base64Decode:base64解码

# 【功能说明】

把用base64编码的字符串解码成字节数组。

# 【版本说明】

从EOS 6.0开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.eos.foundation.common.utils.CryptoUtil.base64Decode,包含在com.eos.foundation.jar中。
  2. 运算逻辑定义在构件包com.eos.foundation中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 text String 使用过base64编码的字符串
返回值 bytes byte[] 解码后的字节数组
  1. 抛出异常说明 无。

  2. 规则说明 无。

# 【参考案例】

示例:解码字符串。

  • 场景描述 用户处理通过http传递过来的经过base64编码的字符串。

  • 参数设置

类型 名称 数据类型 值类别 传递方式
参数 text String 1tC5+g== 常量 传引用
返回值 out0 byte[] bytes 变量 传引用
  • 参数描述

    • 第一个参数text为base64编码后的字符串。
    • 返回值是解码后的byte数组。
  • 其他说明 无。

  • 调用前的bizContext

<bizContext>
<__root __id="0" __isNullOrEmpty="empty"
 __type="java:java.util.HashMap"/>
</bizContext>
  • 调用后的bizContext
<bizContext>
    <__root __id="0" __type="java:java.util.HashMap">
        <bytes __collection="array" __hexString="true" __id="1"
             __type="java:byte">D6D0B9FA</bytes>
    </__root>
</bizContext>

# base64Encode:base64编码

# 【功能说明】

把字节数组经过base64编码变成一个特殊的字符串。

# 【版本说明】

从EOS 6.0开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.eos.foundation.common.utils.CryptoUtil.base64Encode,包含在com.eos.foundation.jar中。
  2. 运算逻辑定义在构件包com.eos.foundation中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 bytes byte[] 要编码的字节数组
返回值 text String 编码后的字符串
  1. 抛出异常说明 无。

  2. 规则说明 无。

# 【参考案例】

示例:编码字节数组。

  • 场景描述 通过http传递中文。

  • 参数设置

类型 名称 数据类型 值类别 传递方式
参数 bytes byte[] text.getBytes() 表达式 传引用
返回值 out0 String base64Text 变量 传引用
  • 参数描述

    • 第一个参数是要进行编码的字节数组。
    • 返回值是编码后的字符串。
  • 其他说明 无。

  • 调用前的bizContext

<bizContext>
    <__root __id="0" __type="java:java.util.HashMap">
        <text __type="java:java.lang.String">中国</text>
    </__root>
</bizContext>
  • 调用后的bizContext
<bizContext>
    <__root __id="0" __type="java:java.util.HashMap">
        <base64Text __type="java:java.lang.String">1tC5+g==</base64Text>
        <text __type="java:java.lang.String">中国</text>
    </__root>
</bizContext>

# decryptByDES:DES解密

# 【功能说明】

把经过DES加密的字符串解密成明文。

# 【版本说明】

从EOS 6.0开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.eos.foundation.common.utils.CryptoUtil.decryptByDES,包含在com.eos.foundation.jar中。
  2. 运算逻辑定义在构件包com.eos.foundation中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 cryptograph String 密文
参数 keyString String 密钥
返回值 plainText String 明文
  1. 抛出异常说明 无。

  2. 规则说明 无。

# 【参考案例】

示例:解密用户密码。

  • 场景描述 解密用户的密码。

  • 参数设置

类型 名称 数据类型 值类别 传递方式
参数 cryptograph String G/CB0aQy9DY= 常量 传引用
参数 keyString String eos_key 常量 传引用
返回值 out0 String plainText 变量 传引用
  • 参数描述

    • 第一个参数为要密文。
    • 第二个参数是密钥。如果为null,使用CryptoUtil.DEFAULT_DES_KEY,否则使用JVM默认编码,把密钥编成字节数组,并会自动修正为8个byte。
    • 返回值是解密后的明文。
  • 其他说明 无。

  • 调用前的bizContext

<bizContext>
    <__root __id="0" __type="java:java.util.HashMap">
        <plainText __isNullOrEmpty="null"/>
    </__root>
</bizContext>
  • 调用后的bizContext
<bizContext>
    <__root __id="0" __type="java:java.util.HashMap">
        <plainText __type="java:java.lang.String">111111</plainText>
    </__root>
</bizContext>

# digestByMD5:MD5摘要

# 【功能说明】

把字符串经过MD5摘要再进行base64编码。

# 【版本说明】

从EOS 6.0开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.eos.foundation.common.utils.CryptoUtil.digestByMD5,包含在com.eos.foundation.jar中。
  2. 运算逻辑定义在构件包com.eos.foundation中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 text String 字符串
返回值 digestString String 摘要
  1. 抛出异常说明 无。

  2. 规则说明 无。

# 【参考案例】

示例:MD5摘要。

  • 场景描述 MD5摘要。

  • 参数设置

类型 名称 数据类型 值类别 传递方式
参数 text String 中国 常量 传引用
返回值 out0 String digestString 变量 传引用
  • 参数描述

    • 第一个参数为要产生摘要的字符串。
    • 返回值是经过MD5产生的摘要并经过base64编码。
  • 其他说明 无。

  • 调用前的bizContext

<bizContext>
    <__root __id="0" __type="java:java.util.HashMap">
        <digestString __isNullOrEmpty="null"/>
    </__root>
</bizContext>
  • 调用后的bizContext
<bizContext>
    <__root __id="0" __type="java:java.util.HashMap">
        <digestString __type="java:java.lang.String">zwgy3t90V7vL+gC72HswCg==</digestString>
    </__root>
</bizContext>

# digestBySHA:SHA加密

# 【功能说明】

把字符串经过SHA摘要再进行base64编码。

# 【版本说明】

从EOS 6.0开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.eos.foundation.common.utils.CryptoUtil.digestBySHA,包含在com.eos.foundation.jar中。
  2. 运算逻辑定义在构件包com.eos.foundation中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 text String 字符串
返回值 digestString String 摘要
  1. 抛出异常说明 无。

  2. 规则说明 无。

# 【参考案例】

示例:SHA摘要。

  • 场景描述 SHA摘要。

  • 参数设置

类型 名称 数据类型 值类别 传递方式
参数 text String 中国 常量 传引用
返回值 digestString String digestString 变量 传引用
  • 参数描述

    • 第一个参数为要产生摘要的字符串。
    • 返回值是经过SHA产生的摘要并经过base64编码。
  • 其他说明 无。

  • 调用前的bizContext

<bizContext>
    <__root __id="0" __type="java:java.util.HashMap">
        <digestString __isNullOrEmpty="null"/>
    </__root>
</bizContext>
  • 调用后的bizContext
<bizContext>
    <__root __id="0" __type="java:java.util.HashMap">
        <digestString __type="java:java.lang.String">r+SbBwiic1d41nn1ao+M75k9cC0=</digestString>
    </__root>
</bizContext>

# encryptByDES:DES加密

# 【功能说明】

把字符串使用DES加密并经过base64编码。

# 【版本说明】

从EOS 6.0开始提供。

# 【引用路径】

  1. 本运算逻辑构件对应JAVA方法路径: com.eos.foundation.common.utils.CryptoUtil.encryptByDES,包含在com.eos.foundation.jar中。
  2. 运算逻辑定义在构件包com.eos.foundation中。

# 【使用说明】

  1. 参数说明
类型 名称 数据类型 参数描述
参数 plainText String 明文
参数 keyString String 密钥
返回值 cryptograph String 密文
  1. 抛出异常说明 无。

  2. 规则说明 无。

# 【参考案例】

示例:加密用户密码。

  • 场景描述 加密用户的密码。

  • 参数设置

类型 名称 数据类型 值类别 传递方式
参数 plainText String 111111 变量 传引用
参数 keyString String eos_key 常量 传引用
返回值 out0 String cryptograph 变量 传引用
  • 参数描述

    • 第一个参数为要加密的明文。
    • 第二个参数是密钥。如果为null,使用CryptoUtil.DEFAULT_DES_KEY,否则使用JVM默认编码,把密钥编成字节数组,并会自动修正为8个byte。
    • 返回值是加密后并经过base64编码的字符串。
  • 其他说明 无。

  • 调用前的bizContext

<bizContext>
    <__root __id="0" __type="java:java.util.HashMap">
        <cryptograph __isNullOrEmpty="null"/>
    </__root>
</bizContext>
  • 调用后的bizContext
<bizContext>
    <__root __id="0" __type="java:java.util.HashMap">
        <cryptograph
             __type="java:java.lang.String">G/CB0aQy9DY=</cryptograph>
    </__root>
</bizContext>
上次更新: 2023/7/20下午12:25:28