使用DES解密参数并存入Map:前后台加密值操作
需积分: 10 166 浏览量
更新于2024-09-11
收藏 2KB TXT 举报
在Java Web开发中,本代码片段展示了如何从前端请求中获取加密参数并使用DES(Data Encryption Standard)算法进行解密,然后将解密后的字符串数据存储到一个`LinkedHashMap`中。以下是关键知识点的详细解释:
1. **HttpServletRequest对象与参数获取**
`HttpServletRequest request = ServletActionContext.getRequest();` 这行代码首先获取当前HTTP请求,`getParameter()` 方法用于获取名为 "param" 的加密值。这是前端通过表单或URL参数传递的数据。
2. **DES解密**
```java
String s = decrypt(s, "A4F7C9B1");`
`decrypt` 方法是一个自定义的函数,它接受两个参数:待解密的密文(`src`)和一个DES密钥(`key`)。`SecureRandom` 用于生成随机数,`DESKeySpec` 和 `SecretKeyFactory` 是用来创建 DES 密钥,`Cipher` 对象则负责执行解密操作。解密后,得到的是原始的字符串 `s`。
3. **将解密后的字符串存入Map**
使用 `LinkedHashMap` `mapParam` 存储解密后的字符串,代码遍历由 `split("&")` 函数切割的字符串数组 `temp`。对于数组中的每个元素,进一步使用 `split("=")` 分割键值对,然后用这两个子数组分别作为键和值,放入 `mapParam` 中。这样,每一对键值对(如 "key=value")都被添加到了 map 中。
4. **Map的使用**
`LinkedHashMap` 是一种有序的哈希映射,它在插入顺序和访问顺序上提供了保证。这里将解密后的字符串按照其在原始加密字符串中的顺序存储,便于后续的处理和查询。
5. **DES加密算法**
DES(Data Encryption Standard)是一种块加密算法,常用于数据的加密传输和存储,具有较高的安全性。在这个场景中,它被用来确保敏感信息在传输过程中不被未经授权的访问。
这段代码展示了如何在Java Web环境中处理前端发送的加密数据,并利用DES算法进行解密,最后将解密后的数据组织成一个有序的map结构。这对于安全地存储和管理用户输入的数据非常重要。
2018-09-28 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
2024-11-16 上传
2024-11-16 上传
weixin_42260269
- 粉丝: 0
- 资源: 2
最新资源
- 平尾装配工作平台运输支撑系统设计与应用
- MAX-MIN Ant System:用MATLAB解决旅行商问题
- Flutter状态管理新秀:sealed_flutter_bloc包整合seal_unions
- Pong²开源游戏:双人对战图形化的经典竞技体验
- jQuery spriteAnimator插件:创建精灵动画的利器
- 广播媒体对象传输方法与设备的技术分析
- MATLAB HDF5数据提取工具:深层结构化数据处理
- 适用于arm64的Valgrind交叉编译包发布
- 基于canvas和Java后端的小程序“飞翔的小鸟”完整示例
- 全面升级STM32F7 Discovery LCD BSP驱动程序
- React Router v4 入门教程与示例代码解析
- 下载OpenCV各版本安装包,全面覆盖2.4至4.5
- 手写笔画分割技术的新突破:智能分割方法与装置
- 基于Koplowitz & Bruckstein算法的MATLAB周长估计方法
- Modbus4j-3.0.3版本免费下载指南
- PoqetPresenter:Sharp Zaurus上的开源OpenOffice演示查看器