问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

java jdbc连接mysql数据库 如何实现用户名密码以及传输数据的加密?

发布网友 发布时间:2022-04-08 19:41

我来回答

6个回答

热心网友 时间:2022-04-08 21:10

你的问题很不清晰。

java jdbc连接mysql数据库
如何实现用户名密码以及传输数据的加密
你是要加密保存的数据,还是加密连接信息?
如果是连接串中的用户名与密码进行加密。恐怕用起来很不方便。
我就当你是要把入库的信息加密。
下边是DES加密的方法。将数据进行DES加密,将加密内容转为16进制内容表示。
--------------------------------------------------------------------------------------------

import javax.crypto.Cipher;
import javax.crypto.spec.SecretKeySpec;

public class DesTest {

public static void main(String[] args) throws Exception {
// 要加密的数据
String str = "123456";
// 密钥
String strKey = "86337898";

SecretKeySpec key = new SecretKeySpec(strKey.getBytes(), "DES");

Cipher cipher = Cipher.getInstance("DES");
cipher.init(Cipher.ENCRYPT_MODE, key);
byte[] byteFina = cipher.doFinal(str.getBytes());
String strFinal = byte2Hex(byteFina);
System.out.println(strFinal);

cipher.init(Cipher.DECRYPT_MODE, key);
byte[] decByte = hex2Byte(strFinal);
byte[] result = cipher.doFinal(decByte);

System.out.println(new String(result));

}

public static String byte2Hex(byte[] buff) {
String hs = "";
for (int i = 0; i < buff.length; i++) {
String stmp = (Integer.toHexString(buff[i] & 0XFF));
if (stmp.length() == 1)
hs = hs + "0" + stmp;
else
hs = hs + stmp;
}
return hs;
}

public static byte[] hex2Byte(String str) {
int len = str.length() / 2;
byte[] buff = new byte[len];
int index = 0;
for (int i = 0; i < str.length(); i += 2) {
buff[index++] = (byte) Integer
.parseInt(str.substring(i, i + 2), 16);
}

return buff;
}

}

热心网友 时间:2022-04-08 22:28

如果jdbc和mysql都支持 SSL那通过配置就可以了
如果不支持,那也可以自己来实现。
实现思路:
1、在数据库的主机上运行一个java服务,用来转发数据这个服务我们成为A服务
2、客户端并不直接访问数据库,而访问A服务,客户端和A服务之间的传输代码由用户自己完成,当然可以加密。走套接字,走http,或者其他什么都是可以的。

热心网友 时间:2022-04-09 00:03

这个加密算法是比较简单的了 ,直接用就OK了
public class MessageDigestUtil {
public static String digestByMD5(String str) throws Exception{
//采用MD5加密算法,将任意长度字符串加密
MessageDigest md = MessageDigest.getInstance("MD5");
byte[] bts = md.digest(str.getBytes());
//采用Base64算法,将加密后的字节变成字符串
BASE64Encoder encoder = new BASE64Encoder();
return encoder.encode(bts);
}
public static void main(String[] args) throws Exception{
System.out.println(digestByMD5("abc"));
System.out.println(digestByMD5("1231233223"));
System.out.println(digestByMD5("a"));
}
}追问我从来没用过加密 得多请教一下 您这个类如果加密了密码 那么还能实现连接数据库吗
还有一个问题就是 如果对传输数据进行了加密 那么如果是一条insert语句 那么需要进行解密执行入库吧

热心网友 时间:2022-04-09 01:54

你的意思是你的数据在入库之前是不加密的,但在入库的路上是加密的,到了数据库里又是不加密的是把,除非神经有问题,否则没有这么干的追问。。。。我也从来没接触过这东西~ 就是别人安排的活~ 目的是为了不让别人在中途获取到重要数据~

热心网友 时间:2022-04-09 04:02

在保存数据的时候采用md5加密,不就行了,传输过程中他就是密文了,数据库中也是密文,

热心网友 时间:2022-04-09 06:27

数据传输过程加密?你要怎么加密?现在要么是在传输之前加密,要么是在入库的时候加密!追问传输之前加密 连接密码和传输数据都要加密 传输过去后解密插入 有这种办法吗?

追答哎,有必要吗,你加了密还去解密,先不说有没有这种技术,两种不同的语言你想怎么加密,然后怎么解密?

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
为什么我的《英雄传说:空之轨迹SC》中“艾尔贝周游道的通缉魔兽”不见... 空之轨迹sc 托兰特平原的通缉魔兽二号 我是2兆的宽带 原先的下载速度达到260KB/S 重装下系统最高还不到70K... 为什么两兆的线下载速度只有80KB/S 我们家宽带是网通的办理了2兆的可是下载速度70~90KB 原因 一九八三年大年三十是什么星座 请教1984年2月1日出生而且阴历生日正好是大年三十,请问我岁是多大 万岱鸿腾国际商贸有限公司送表真的吗 云南岱鸿商贸有限公司怎么样? 重庆鸿岱科技有限公司怎么样? 同一个网站在一个手机上一直无法打开,用另一个手机能连上 雅思小作文,请指出不足与修改,并打分(尤其时态是否正确) 为什么同一个链接两台苹果手机一个可以打开一个打开却显示禁止访问? 未分化结缔组织病如何中西医结合治疗【周围神经病和未分化结缔组织病】 未分化结缔组织病可以报考公务员吗不是弥漫性的 未分化结缔组织病有可能痊愈吗 提问:有未分化结缔组织病可以治愈吗? 复姓:欧阳,取名;第4贴 复姓欧阳女孩起名字(2010年2月21 12点出生)没分了 希望大学帮忙 喝不完的牛奶如何存放最合适?怎么样最大限度保留牛奶的营养? 盒装牛奶隔夜还能喝吗 提问,超市里面卖的那种1L的纸盒装牛奶,打开后,喝不完,要怎么保存,可以放多久不过期呢。谢谢 盒制包装里的牛奶可以分次喝吗? 请问这牛奶盒装的一次喝不完该如何保存? 谁有爱国诗歌?要短一点的. 爱国古诗 求4首爱国诗歌 如何实名认证 1500让别人给我办2张10万额度的信用卡!可信度有多少? 2020年非专业生报考导游证限制大学生吗 为什么同一个网站在电脑上能打开,而在手机上打不开呢? 学术类雅思小作文,请教英语高手 雅思作文批改 剑2 test1 小作文 (高分求修改) 微信链接在部分手机打不开怎么办? 准备上雅思考场,但是小作文烂的一比,求轻虐啊,大神改一下 雅思考试官方指南test1 同一个网址用浏览器打开,别人手机都能打开,我手机之前也可以打开,现在却提示404,求解惑! 同一个链接别的城市能打开另外一个城市就打不开是什么原因 我已经考过一次雅思了,但现在的雅思小作文还是不知道怎么写才能拿高分呢? 求大神批改雅思 10 test1大作文,谢谢 为什么几部手机链接同一个wifi 同样的网站还是打不开 但是换一个wifi问 剑桥雅思4,TEST1的小作文范文,有一处语法求讲解。。 继续求帮忙改雅思小作文。。 各位帮忙修改一下雅思A类的小作文。是关于:wheat exports. 雅思作文批改,这样的小作文能得几分?我第一次写 求大神批改雅思9 test1 大作文,谢谢 关于一个朋友把我微信拉黑删除得记录能找回吗? 别人把我拉黑了,怎么才能调出以前的聊天记录? 别人把我拉黑了怎么找回和他的聊天记录 宝丰能源是周期股吗?宝丰能源股价实时情况?宝丰能源股票今天价位?