`
234390216
  • 浏览: 10232922 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
博客专栏
A5ee55b9-a463-3d09-9c78-0c0cf33198cd
Oracle基础
浏览量:462622
Ad26f909-6440-35a9-b4e9-9aea825bd38e
springMVC介绍
浏览量:1775515
Ce363057-ae4d-3ee1-bb46-e7b51a722a4b
Mybatis简介
浏览量:1398352
Bdeb91ad-cf8a-3fe9-942a-3710073b4000
Spring整合JMS
浏览量:395022
5cbbde67-7cd5-313c-95c2-4185389601e7
Ehcache简介
浏览量:679982
Cc1c0708-ccc2-3d20-ba47-d40e04440682
Cas简介
浏览量:530892
51592fc3-854c-34f4-9eff-cb82d993ab3a
Spring Securi...
浏览量:1183946
23e1c30e-ef8c-3702-aa3c-e83277ffca91
Spring基础知识
浏览量:467911
4af1c81c-eb9d-365f-b759-07685a32156e
Spring Aop介绍
浏览量:151388
2f926891-9e7a-3ce2-a074-3acb2aaf2584
JAXB简介
浏览量:68150
社区版块
存档分类
最新评论

对数据进行加密

阅读更多

对数据进行加密是一个很常用的需求,因为我们经常要进行各种各样数据的校验和数据的传输,在校验的过程中我们往往是不希望用户看到真实的数据的,因为那样在某些情况下就失去了校验的意义了,所以对数据进行加密是一个很平常的需求。

 

import java.io.IOException;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

import sun.misc.BASE64Decoder;
import sun.misc.BASE64Encoder;

public class CodeTest {

	BASE64Encoder encoder = new BASE64Encoder();
	BASE64Decoder decoder = new BASE64Decoder();

	public static void main(String args[]) throws IOException, NoSuchAlgorithmException {
		String data = "你好,中国";
		CodeTest test = new CodeTest();
		
		//测试base64的编码和解码
		String result = test.base64Encoder(data.getBytes());
		System.out.println(result);
		byte[] decoderResult = test.base64Decoder(result);
		System.out.println(new String(decoderResult));
		
		//测试md5加密
		byte[] md5Result = test.md5Encoder(data);
		String md5Base64EncoderResult = test.base64Encoder(md5Result);
		System.out.println(md5Base64EncoderResult);
		
		//测试SHA加密
		byte[] shaResult = test.shaEncoder(data);
		String shaBase64EncoderResult = test.base64Encoder(shaResult);
		System.out.println(shaBase64EncoderResult);
	}

	/**
	 * 使用BASE64进行加密
	 * @param data
	 * @return
	 */
	public String base64Encoder(byte[] data) {
		return encoder.encode(data);
	}

	/**
	 * 使用BASE64进行解密
	 * @param data
	 * @return
	 * @throws IOException
	 */
	public byte[] base64Decoder(String data) throws IOException {
		return decoder.decodeBuffer(data);
	}

	/**
	 * 对数据进行MD5加密
	 * 不可逆的
	 * @param data
	 * @return
	 * @throws NoSuchAlgorithmException
	 */
	public byte[] md5Encoder(String data) throws NoSuchAlgorithmException {
		MessageDigest md5 = MessageDigest.getInstance("MD5");
		return md5.digest(data.getBytes());
	}
	
	/**
	 * 对数据进行SHA(安全散列算法)加密
	 * 不可逆
	 * @param data
	 * @return
	 * @throws NoSuchAlgorithmException
	 */
	public byte[] shaEncoder(String data) throws NoSuchAlgorithmException {
		MessageDigest sha = MessageDigest.getInstance("sha");
		return sha.digest(data.getBytes());
	}

}

 

1
2
分享到:
评论

相关推荐

    应用EncryptUtil组件对数据进行加密和解密(源代码)

    本主题聚焦于一个名为`EncryptUtil`的组件,它是一个用于数据加密和解密的工具,通常集成在软件系统中以增强安全性。 `EncryptUtil`组件的核心功能是对数据进行加密和解密操作,这两个过程是信息安全领域的基本概念...

    使用SM3、SM4对数据进行加密

    使用SM3、SM4对数据进行加密

    完美使用RSA2结合AES对数据进行加密(兼容RSA2,可使用2048长度的秘钥,AES Android各版本通用)

    完美使用RSA2结合AES对数据进行加密,兼容RSA2,可以使用长度为2048的秘钥,且AES加解密不受Android版本限制,详情请看博客:https://yuzhiqiang.blog.csdn.net/article/details/88657793

    C#写的对数据进行加密保障通信安全软件 可以作为课程设计

    在IT行业中,数据加密是确保通信安全的关键技术之一。本项目是使用C#编程语言编写的,旨在为数据传输提供安全保障,适用于课程设计或者实际应用中的数据加密需求。以下是关于这个软件及其涉及的知识点的详细解释: ...

    android数据传输RSA加密DEMO

    客户端收到公钥后,可以使用`javax.crypto.Cipher`类进行数据加密。首先,通过Base64解码恢复公钥,然后初始化Cipher实例,设置为加密模式,使用公钥作为参数。最后,使用`Cipher#doFinal()`方法对数据进行加密。 ...

    Android使用KeyStore对数据进行加密的示例代码

    RSA通常用于加密较小的数据块(如AES密钥)或进行密钥交换,而AES则用于实际的数据加密。 在实际应用中,KeyStore不仅适用于运行时生成的数据,如用户输入的密码或服务器传递的令牌,不适合预设在App内的固定密钥,...

    Android数据加密

    在Android中,进行数据加密的基本步骤包括: 1. 选择合适的加密算法:根据需求,选择适合的加密算法。例如,AES适用于大量数据的快速加密,而RSA则适用于密钥交换。 2. 生成密钥:对称加密如AES需要生成一个密钥,...

    SJL05金融数据加密机程序员手册.doc

    其核心功能包括但不限于数据加密、消息验证以及密钥管理等,确保在网络环境下进行的各种交易活动能够安全进行,有效防范各类欺诈行为。 #### 二、SJL05金融数据加密机的主要功能 SJL05金融数据加密机的主要功能...

    银行数据加密简单示例

    5. **数据加密**:使用选定的加密算法和密钥对数据进行加密,生成密文。 6. **数据传输与存储**:加密后的数据通过安全通道传输,并在安全的存储设备上保存。 7. **数据解密**:当需要访问数据时,使用正确的密钥...

    南大通用GBase 8s数据加密函数.docx

    南大通用GBase 8s数据加密函数 在南大通用GBase 8s数据库管理系统中,数据加密函数是一个非常重要的安全机制,它可以保护敏感数据免受未经授权的访问和泄露。通过使用SET ENCRYPTION PASSWORD语句和内置的SQL加密...

    数据加密技术.docx

    "数据加密技术" 数据加密技术是保护数据安全的一种重要手段。随着信息时代的到来,信息的价值日益增加,数据的安全性也变得越来越重要。在竞争激烈的大公司中,工业间谍经常会获取对方的情报,导致机密数据被窃取或...

    数据加密技术在计算机网络安全中的实践思考.pdf

    在本篇中,我们首先将探讨数据加密技术的基本概念,随后对数据加密技术的分类进行分析,并深入探讨其在网络安全中的具体应用。 数据加密技术简述 数据加密技术是指将明文信息通过特定的算法和密钥转变为密文,使得...

    AES、RSA相结合的数据加密方案在Java中的实现

    ### AES、RSA相结合的数据加密方案在Java中的实现 #### 概述 随着互联网技术的不断发展,信息安全成为企业和个人用户关注的重点。特别是在电子商务领域,确保数据传输的安全性至关重要。本文将探讨如何结合使用AES...

    对文件进行对称加密(源代码)

    2. **加密过程**:读取待加密文件内容,使用选定的加密算法和密钥,对数据进行加密处理,生成加密后的文件。 3. **解密过程**:接收加密文件,使用相同的密钥和算法,将加密数据还原为原始文件内容。 4. **错误处理*...

    Oracle数据传输加密.pdf

    为了防止数据的非法篡改、偷听和盗窃,需要对数据进行加密。 Oracle 环境下实现数据传输加密的方法有多种,包括 RSA 加密算法和 DES 加密算法。RSA 加密算法采用秘密的、对每一会话随机产生的独一无二的密钥,对...

    jsencrypt参数前端加密c#解密

    jsencrypt 是一个 JavaScript 库,用于在客户端对数据进行加密,而 C# 则是用于在服务器端对数据进行解密的语言。以下是关于 jsencrypt 参数前端加密 C# 解密的知识点: 1. 前端加密:在前端使用 jsencrypt 库对...

    一个用经典加密的关键词加密法进行加密的网页加密器

    JavaScript作为一种客户端脚本语言,可以在用户的浏览器上执行,使得用户能够在本地对数据进行加密,而不必将敏感信息发送到服务器,从而增加了安全性。 在压缩包中,有两个文件:加密V2.html和加密.html。这两个...

    计算机信息安全实验一数据的加密与解密.pdf

    本实验报告的主要内容是对计算机信息安全实验的一些基本概念和技术的了解,包括数据加密和解密的原理和方法。实验中,我们使用了 DES、RSA 和 RC4 等加密算法,并对它们的实现进行了研究和实践。 一、数据加密和...

Global site tag (gtag.js) - Google Analytics