silentbalanceyh/vertx-zero

View on GitHub
vertx-gaia/vertx-ams/src/main/java/io/horizon/util/_EDS.java

Summary

Maintainability
A
0 mins
Test Coverage
package io.horizon.util;

import io.horizon.uca.crypto.ED;
import io.vertx.core.json.JsonObject;

/**
 * @author lang : 2023/4/28
 */
class _EDS extends _Compare {
    protected _EDS() {
    }

    /**
     * MD5加密算法(全大写)
     *
     * @param input 输入
     *
     * @return 加密后的字符串
     */
    public static String encryptMD5(final String input) {
        return HCrypto.md5(input);
    }

    /**
     * SHA256加密算法
     *
     * @param input 输入
     *
     * @return 加密后的字符串
     */
    public static String encryptSHA256(final String input) {
        return HCrypto.sha256(input);
    }

    /**
     * SHA512加密算法
     *
     * @param input 输入
     *
     * @return 加密后的字符串
     */
    public static String encryptSHA512(final String input) {
        return HCrypto.sha512(input);
    }

    /**
     * Base64加密算法
     *
     * @param input 输入
     *
     * @return 加密后的字符串
     */
    public static String encryptBase64(final String input) {
        return HCrypto.base64(input, true);
    }

    /**
     * Base64解密算法
     *
     * @param input 输入
     *
     * @return 加密后的字符串
     */
    public static String decryptBase64(final String input) {
        return HCrypto.base64(input, false);
    }

    /**
     * URL Encoding 专用加密
     *
     * @param input 输入
     *
     * @return 加密后的字符串
     */
    public static String encryptUrl(final String input) {
        return HCrypto.url(input, true);
    }

    /**
     * URL Decoding 专用解密
     *
     * @param input 输入
     *
     * @return 加密后的字符串
     */
    public static String encryptUrl(final JsonObject input) {
        final JsonObject sure = HJson.valueJObject(input, false);
        return HCrypto.url(sure.encode(), true);
    }

    /**
     * URL Decoding 专用解密
     *
     * @param input 输入
     *
     * @return 加密后的字符串
     */
    public static String decryptUrl(final String input) {
        return HCrypto.url(input, false);
    }

    /**
     * 公钥加密 RSA 加密算法
     *
     * @param input     输入
     * @param keyPublic 公钥内容
     *
     * @return 加密后的字符串
     */
    public static String encryptRSAP(final String input, final String keyPublic) {
        return ED.rsa(true).encrypt(input, keyPublic);
    }

    /**
     * 公钥加密 RSA 加密算法 / 此处调用HED模块提取公钥
     *
     * @param input 输入
     *
     * @return 加密后的字符串
     */
    public static String encryptRSAP(final String input) {
        return ED.rsa(true).encrypt(input);
    }

    /**
     * 私钥解密 RSA 解密算法
     *
     * @param input      输入
     * @param keyPrivate 私钥内容
     *
     * @return 解密后的字符串
     */
    public static String decryptRSAV(final String input, final String keyPrivate) {
        return ED.rsa(true).decrypt(input, keyPrivate);
    }

    /**
     * 私钥解密 RSA 解密算法 / 此处调用HED模块提取私钥
     *
     * @param input 输入
     *
     * @return 解密后的字符串
     */
    public static String decryptRSAV(final String input) {
        return ED.rsa(true).decrypt(input);
    }

    /**
     * 私钥加密 RSA 加密算法
     *
     * @param input      输入
     * @param keyPrivate 私钥内容
     *
     * @return 加密后的字符串
     */
    public static String encryptRSAV(final String input, final String keyPrivate) {
        return ED.rsa(false).encrypt(input, keyPrivate);
    }

    /**
     * 私钥加密 RSA 加密算法 / 此处调用HED模块提取私钥
     *
     * @param input 输入
     *
     * @return 加密后的字符串
     */
    public static String encryptRSAV(final String input) {
        return ED.rsa(false).encrypt(input);
    }

    /**
     * 公钥解密 RSA 解密算法
     *
     * @param input     输入
     * @param keyPublic 公钥内容
     *
     * @return 解密后的字符串
     */
    public static String decryptRSAP(final String input, final String keyPublic) {
        return ED.rsa(false).decrypt(input, keyPublic);
    }

    /**
     * 公钥解密 RSA 解密算法 / 此处调用HED模块提取公钥
     *
     * @param input 输入
     *
     * @return 解密后的字符串
     */
    public static String decryptRSAP(final String input) {
        return ED.rsa(false).decrypt(input);
    }

}