Java密码加密的两种保存方式
密码加密的两种方式(md5和base64)
常见的加密方式有盐值,md5和jdk自带的base64,这里我记录的是base64如何使用,以及破解的方式,话不多说,直接贴代码!
其实md5和加盐值都差不多的,方式是一样的,好好学习,天天向上!!!
public static void main(String[] args){
// jdk自带的BASE64 加解密工具
String password="lmh980517";
BASE64Encoder base64Encoder = new BASE64Encoder();
String encode = base64Encoder.encode(password.getBytes()); // 加密
System.out.println("加密为字符串: " + encode);
BASE64Decoder decoder = new BASE64Decoder();
try {
String decode = new String ( decoder.decodeBuffer(encode)); // 解密
System.out.println("解密为: " + decode);
} catch (IOException e) {
e.printStackTrace();
}
}
}
仅为个人保存学习中的种种笔记,以便不时之需。
Java密码加密的两种保存方式的更多相关文章
- 对Java代码加密的两种方式,防止反编译
使用Virbox Protector对Java项目加密有两种方式,一种是对War包加密,一种是对Jar包加密.Virbox Protector支持这两种文件格式加密,可以加密用于解析class文件的j ...
- Java中String对象两种赋值方式的区别
本文修改于:https://www.zhihu.com/question/29884421/answer/113785601 前言:在java中,String有两种赋值方式,第一种是通过“字面量”赋值 ...
- 细说java中Map的两种迭代方式
曾经对java中迭代方式总是迷迷糊糊的,今天总算弄懂了.特意的总结了一下.基本是算是理解透彻了. 1.再说Map之前先说下Iterator: Iterator主要用于遍历(即迭代訪问)Collecti ...
- Java中容器的两种初始化方式比较
List,Set,Map的两种初始化赋值方式 List List<Integer> list2 = new ArrayList<Integer>(); for (int i= ...
- Java动态代理的两种实现方式:
方式一:传统的代理 package cn.hc.domain; import java.lang.reflect.InvocationHandler; import java.lang.reflect ...
- java中多线程的两种创建方式
一丶继承Thread类实现多线程 第一步:继承Thread类第二步:重写run()方法第三步:创建继承了Thread类的对象 , 调用start()方法启动. //线程创建方式一 : /* 第一步:继 ...
- Java使用SFTP和FTP两种连接方式实现对服务器的上传下载 【我改】
[]如何区分是需要使用SFTP还是FTP? []我觉得: 1.看是否已知私钥. SFTP 和 FTP 最主要的区别就是 SFTP 有私钥,也就是在创建连接对象时,SFTP 除了用户名和密码外还需要知道 ...
- Java多线程13:读写锁和两种同步方式的对比
读写锁ReentrantReadWriteLock概述 大型网站中很重要的一块内容就是数据的读写,ReentrantLock虽然具有完全互斥排他的效果(即同一时间只有一个线程正在执行lock后面的任务 ...
- Java学习-014-文本文件写入实例源代码(两种写入方式)
此文源码主要为应用 Java 读取文本文件内容实例的源代码.若有不足之处,敬请大神指正,不胜感激! 第一种:文本文件写入,若文件存在则删除原文件,并重新创建文件.源代码如下所示: /** * @fun ...
- java的两种同步方式, Synchronized与ReentrantLock的区别
java在编写多线程程序时,为了保证线程安全,需要对数据同步,经常用到两种同步方式就是Synchronized和重入锁ReentrantLock. 相似点: 这两种同步方式有很多相似之处,它们都是加锁 ...
随机推荐
- django框架之drf(部分讲解)
一.各个视图子类 两个视图基类 五个视图扩展类 九个视图子类----->视图类,不需要额外继承GenericAPIView,只需要继承九个州其中之一,就会有某个或某几个接口 路由 urlpatt ...
- Mybatis数据库批量操作
1:新增 首先,Mysql插入一条记录返回主键对Mybatis版本要求低,而批量插入返回带主键的,需要升级到3.3.1 以及以上的版本. 1.1:Mysql 上图需要注意加入useGenerate ...
- 线程基础知识 03 synchronized锁(对象在内存的布局和加上锁后对象在内存中的变化)
1 线程不安全演示 public class ThreadAndLockTest1 { private static int a = 0; public static void main(String ...
- .NET Core Redis的简单使用
1.Redis简介 Redis 是完全开源的,遵守 BSD 协议,是一个高性能的 key-value 数据库. 2.Redis主要特点 Redis支持数据的持久化 Redis支持多种数据结构 Redi ...
- STM32F4库函数初始化系列:三重ADC——DMA
1 void _DMA_Configuration(void) 2 { 3 DMA_InitTypeDef DMA_InitStructure; 4 5 /* DMA2 Stream0 channel ...
- javaEE(常用API集合<Collection和Map>)
javaEE 常用API Object类 public String toString() //打印地址 :类的全类名@内存地址 存在的意义:为了被子类去重写,以便于返回对象的内容信息,而不是地址信息 ...
- 部署Kubernetes v1.22.10高可用集群
一.概述 Kubernetes集群控制平面(Master)节点右数据库服务(Etcd)+其它服务组件(Apiserver.Controller-manager.Scheduler等)组成:整个集群系统 ...
- Prometheus&Alertmanager告警推送
前言 尽管可以通过可视化数据监控系统运行状态,但我们无法时刻关注系统运行,因此需要一些实时运行的工具能够辅助监控系统运行,当系统出现运行问题时,能够通知我们,以此确保系统稳定性,告警便是作为度量指标监 ...
- LG P4213【模板】杜教筛(Sum)
\(\text{Problem}\) 求 \[\sum_{i=1}^n \varphi(i) \] 和 \[\sum_{i=1}^n \mu(i) \] \(1 \le n < 2^{31}\) ...
- [EULAR文摘] 肢端MRI能否在未分化关节患者中甄别出RA患者
标签: EULAR文摘; 未分化关节炎; 病程演变; MRI;早期诊断 肢端MRI能否在未分化关节患者中甄别出RA患者 Nieuwenhuis WP, et al. EULAR 2015.Presen ...