前端加密后端校验(MD5)

前端加密后端校验(MD5)

因为md5是RSA数据安全公司开发的一种单向散列算法,非可逆,相同的明文产生相同的密文。因此校验可以比较加密之后的密文是否相同。

前端

md5

加密工具类(js):
https://pan.baidu.com/s/1Nk2HN1-DThPdTZeXKDxNoA
提取码: gaa5

使用案例

......
<form id="postForm" autocomplete="off" method="post" th:object="${credential}" onsubmit="return verify()">
......
</form>
......
<script th:src="@{/js/crypto-js.js}"></script>
<script type="text/javascript">
    function verify() {
   
        var password= $("#password").val();
        var md5Password=CryptoJS.MD5(password).toString();
        $('#password').val(md5Password);
        document.getElementById('postForm').submit();
    }
</script>
......

后端

DigestUtils 是 Apache Commons Codec 库中的一个类,它提供了一组用于生成消息摘要(hash)的实用方法。这个库广泛用于处理编码和解码,而 DigestUtils 主要用于处理消息摘要的生成。

以下是 DigestUtils 的一些常见用法:
生成 MD5 摘要:

import org.apache.commons.codec.digest.DigestUtils;

String input = "Hello, World!";
String md5Digest = DigestUtils.md5Hex(input);

生成 SHA-1 摘要:

import org.apache.commons.codec.digest.DigestUtils;

String input = "Hello, World!";
String sha1Digest = DigestUtils.sha1Hex(input);

生成 SHA-256 摘要:

import org.apache.commons.codec.digest.DigestUtils;

String input = "Hello, World!";
String sha256Digest = DigestUtils.sha256Hex(input);

使用流生成摘要:

import org.apache.commons.codec.digest.DigestUtils;

InputStream inputStream = // obtain your input stream
String md5Digest = DigestUtils.md5Hex(inputStream);

这些方法返回以十六进制表示的消息摘要,通常以字符串的形式呈现。DigestUtils 支持 MD2、MD5、SHA-1、SHA-256、SHA-384 和 SHA-512 等算法。

确保你的项目包含 Apache Commons Codec 库的依赖,以便使用 DigestUtils 类。例如,Maven 项目可以在 pom.xml 文件中添加以下依赖:
引入依赖

<dependency>
    <groupId>commons-codec</groupId>
    <artifactId>commons-codec</artifactId>
    <version>1.15</version> <!-- 使用最新版本 -->
</dependency>

拓展:
Java 加解密工具类:https://blog.csdn.net/qq_34253002/article/details/131491945
RSA密钥生成与使用:
https://tool.4xseo.com/a/4646.html
Java RSA 加密解密工具类 RSAUtil 支持长文本加密解密(密钥对生成、公钥加密、私钥加密、公钥解密、私钥解密):
https://blog.csdn.net/m0_53022813/article/details/134002547

相关推荐

  1. 前端加密校验MD5

    2023-12-21 06:30:04       73 阅读
  2. 【.NET】MD5加密

    2023-12-21 06:30:04       59 阅读
  3. <span style='color:red;'>MD</span><span style='color:red;'>5</span><span style='color:red;'>加密</span>

    MD5加密

    2023-12-21 06:30:04      30 阅读
  4. 前后AES对称加密 前端TS Go

    2023-12-21 06:30:04       54 阅读
  5. c# MD5加密函数

    2023-12-21 06:30:04       38 阅读
  6. 为什么文件需要校验MD5

    2023-12-21 06:30:04       27 阅读
  7. RSA非对称加密解密,前端公钥加密私钥解密

    2023-12-21 06:30:04       31 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-21 06:30:04       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-21 06:30:04       100 阅读
  3. 在Django里面运行非项目文件

    2023-12-21 06:30:04       82 阅读
  4. Python语言-面向对象

    2023-12-21 06:30:04       91 阅读

热门阅读

  1. 2019QWB growpjs

    2023-12-21 06:30:04       60 阅读
  2. linux下载yum和python

    2023-12-21 06:30:04       71 阅读
  3. ubuntu 重装/升级 eigen 教程

    2023-12-21 06:30:04       59 阅读
  4. 数据挖掘概述+探索+预处理(期末)

    2023-12-21 06:30:04       60 阅读
  5. 关于with torch.no_grad:的一些小问题

    2023-12-21 06:30:04       58 阅读
  6. 对相机位姿 导出 Tum 格式的位姿

    2023-12-21 06:30:04       56 阅读
  7. .env.development是什么

    2023-12-21 06:30:04       61 阅读
  8. vue中的内置指令和自定义指令

    2023-12-21 06:30:04       61 阅读
  9. Flink系列之:Upsert Kafka SQL 连接器

    2023-12-21 06:30:04       61 阅读
  10. 【随想】每日两题Day.21

    2023-12-21 06:30:04       51 阅读
  11. Stable-diffusion WebUI API调用方法

    2023-12-21 06:30:04       70 阅读