文档章节

BASE64加密、解密示例

满风
 满风
发布于 2016/04/13 10:11
字数 358
阅读 44
收藏 0
点赞 1
评论 0
package com.dy.encryption;

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

/**
 * 按 照RFC2045的定义,Base64被定义为:Base64内容传送编码被设计用来把任意序列的8位字节描述为一种不易被人直接识别的形式。
 * BASE64的加密解密是双向的,可以求反解。
 * 常见于邮件、http加密,截取http信息,你就会发现登录操作的用户名、密码字段通过BASE64加密的.
 * BASE64 严格地说,属于编码格式,而非加密算法
 */
public class BASE64Demo {
    /**
     * BASE64解密
     *
     * @param key
     * @return
     * @throws Exception
     */
    public static String decryptBASE64(String key) throws Exception {
        return new String(new BASE64Decoder().decodeBuffer(key));
    }

    /**
     * BASE64加密
     *
     * @param key
     * @return
     * @throws Exception
     */
    public static String encryptBASE64(String key) throws Exception {
        return new BASE64Encoder().encode(key.getBytes());
    }

    public static void main(String[] args) throws  Exception{
        /**
         * 主要就是BASE64Encoder、BASE64Decoder两个类,我们只需要知道使用对应的方法即可。
         * 另,BASE加密后产生的字节位数是8的倍数,如果不够位数以=符号填充。
         */
        String text="主要就是BASE64Encoder、BASE64Decoder两个类,我们只需要知道使用对应的方法即可。" +
                "BASE加密后产生的字节位数是8的倍数,如果不够位数以=符号填充。";
        String encrypt = BASE64Demo.encryptBASE64(text);
        System.out.println("base64加密后的密文:"+encrypt);
        System.out.println("base64解密后的明文:"+BASE64Demo.decryptBASE64(encrypt));
    }
}



© 著作权归作者所有

共有 人打赏支持
满风

满风

粉丝 81
博文 155
码字总数 167321
作品 0
杭州
技术主管
冬日/AesEncrypt

#AesEncrypt:Aes加密/解密示例项目   附件中的“AesEncrypt.zip”是本项目的exe文件,可直接下载下来运行和查看。   高级加密标准(英语:Advanced Encryption Standard,缩写:AES),...

冬日 ⋅ 2016/08/05 ⋅ 0

使用Apache commons-codec Base64实现加解密

commons-codec是Apache下面的一个加解密开发包 官方地址为:http://commons.apache.org/codec/ 官方下载地址:http://commons.apache.org/codec/downloadcodec.cgi 在线文档:http://common...

音希 ⋅ 2014/02/13 ⋅ 0

C#实现网络传输数据加密

分组密码 分组密码是将明文消息编码表示后数字序列划分成长为n的分组,各组分别在密钥的作用下进行变换输出等长的数字序列,即密文。一次加密一个数据组,加解密所使用的是同一密钥,故其通常...

鱼煎 ⋅ 2016/06/25 ⋅ 0

php的加密函数 md5,crypt,base64_encode 等使用介绍

php 在做注册、登录或是url 传递参数时都会用到 字符变量的加密,下面我们就来简单的介绍下:php 自带的加密函数 不可逆的加密函数为:md5()、crypt() md5() 用来计算 MD5 哈稀。语法为:str...

Junn ⋅ 2013/01/24 ⋅ 0

加密、解密、签名

常见加密算法: 非对称加密算法: RSA、ECC、DH 对称加密算法:AES、DES、RC4 hash算法:MD5、SHA1、SHA256 加密与签名 私钥签名, 公钥验签 公钥加密, 私钥解密 MD5withRSA签名 : 生成签名...

麦拂沙 ⋅ 2015/11/03 ⋅ 0

Android外部文件加解密及应用实践

有这样的应用场景,当我们把一些重要文件放到asset文件夹中时,把.apk解压是可以直接拿到这个文件的,一些涉及到重要信息的文件我们并不想被反编译拿去,这个时候需要先对文件进行加密,然后...

C6C ⋅ 05/08 ⋅ 0

openssl 非对称加密DSA,RSA区别与使用介绍

openssl RSA 加解密 RSA是基于数论中大素数的乘积难分解理论上的非对称加密法,使用公私钥的方法进行加解密 公钥 用于加密,它是向所有人公开的 ; 私钥用于解密,只有密文的接收者持有 生成一...

伽罗kapple ⋅ 2016/02/22 ⋅ 0

详解 Discuz 的 PHP经典加密解密函数 authcode

函数注释: // $string: 明文 或 密文 // $operation:DECODE表示解密,其它表示加密 // $key: 密匙 // $expiry:密文有效期 function authcode($string, $operation = 'DECODE', $key = '...

速贷100 ⋅ 2017/03/07 ⋅ 0

iGO实现之路 —— Security

本文为转载,原文:iGO实现之路 —— Security Golang 介绍 在我们写代码的过程中,可能会遇到很多的数据安全问题。比如我们在后端进行http请求的时候,url编码问题;用户登录密码数据库的保...

ChainZhang ⋅ 01/23 ⋅ 0

深入剖析企业级数据安全性加密、解密算法体系实战汇总

资源下载链接-https://pan.baidu.com/s/1mhZY9mC 密码: 6wrg 目前很多企业应用领域的架构师都很关注加密与解密算法在应用中的使用,譬如用户密码加密、网络协议加密等。如何在名目繁多的Jav...

huanyingmous ⋅ 2017/08/28 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

windows profesional 2017 build problem

.net framework .... https://stackoverflow.com/questions/43330915/could-not-load-file-or-assembly-microsoft-build-frameworkvs-2017...

机油战士 ⋅ 16分钟前 ⋅ 0

python3中报错的解决方法(长期更新)

1、ImportError: No module named ‘DjangoUeditor’ 出错原因:安装DjangoUeditor库适用于python2,需要下载适用python3的 下载地址:https://github.com/twz915/DjangoUeditor3 2、python3......

xiaoge2016 ⋅ 21分钟前 ⋅ 0

数据结构与算法之双向链表

一、双向链表 1.双向链表的结点结构 typedef struct DualNode{ ElemType data; struct DualNode *prior; // 前驱结点 struct DualNode *next; // 后继结点}DualNode, *DuL...

aibinxiao ⋅ 40分钟前 ⋅ 0

五大最核心的大数据技术

大数据技术有5个核心部分,数据采集、数据存储、数据清洗、数据挖掘、数据可视化。关于这5个部分,有哪些核心技术?这些技术有哪些潜在价值?看完今天的文章就知道了。 大数据学习群:7165810...

董黎明 ⋅ 42分钟前 ⋅ 0

PhpStorm 头部注释、类注释和函数注释的设置

首先,PhpStorm中文件、类、函数等注释的设置在:setting-》Editor-》FIle and Code Template-》Includes下设置即可,其中方法的默认是这样的: /**${PARAM_DOC}#if (${TYPE_HINT} != "v...

nsns ⋅ 42分钟前 ⋅ 0

spring.net AOP

http://www.springframework.net/doc-latest/reference/html/aop-quickstart.html https://www.cnblogs.com/wujy/archive/2013/04/06/3003120.html...

whoisliang ⋅ 47分钟前 ⋅ 0

【HAVENT原创】创建 Dockerfile 生成新的镜像,并发布到 DockerHub

注意:Win7 与 Win10 的版本存在差异,Win7 版本使用 Docker Quickstart Terminal 进入控制台,Win10下面直接用管理员权限打开控制台或者 PowerShell 即可;另外 Win7 下面只能访问 C盘,/ap...

HAVENT ⋅ 47分钟前 ⋅ 0

pom.xml出现web.xml is missing ...解决方案

提示信息应该能看懂。也就是缺少了web.xml文件,<failOnMissingWebXml>被设置成true了。 搜索了一下,Stack Overflow上的答案解决了问题,分享一下。 目前被顶次数最多的回答原文如下: This...

源哥L ⋅ 48分钟前 ⋅ 0

js时间戳与日期格式之间相互转换

1. 将时间戳转换成日期格式 1 2 3 4 5 6 7 8 9 10 11 12 13 14 // 简单的一句代码 var date = new Date(时间戳); //获取一个时间对象 /** 1. 下面是获取时间日期的方法,需要什么样的格式自己...

Jack088 ⋅ 53分钟前 ⋅ 0

web添加log4j

添加xml配置log4j.properties # Global logging configuration---root日志设置#log4j.rootLogger=info,dailyRollingFile,stdoutlog4j.rootLogger=debug,stdout,dailyRollingFile---......

黄柳淞 ⋅ 54分钟前 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部