base64加密后无法解密
记录一个问题:
使用java,或者命令行 base64 命令加密图片文件成加密数据后无法还原成图片
深入:使用java base64工具(sun base64或bouncycastle)加密的数据替换掉空行符以及加上解析头:“data:image/jpeg;base64,”后就可以成为前端可以展示的图片了,但是加上头后解密出来的jpg文件却仍然无法如同正常图片一样打开。
待续研究。
如果遇到图片无法在前端打开的问题,参考如下即可:
String solvedImage = encoder.encode(outputStream.toByteArray());
System.out.println(solvedImage.replace("\n","").replaceFirst("images","data:image/jpeg;base64,"));
base64加密后无法解密的更多相关文章
- js base64加密,后台解密
		
这是为了解决页面发送post请求,传输密码,在页面的控制台可以看到密码的明文,所以先用base64把要传输的密码转换为非明文,然后在后台解密处理. base64encode.js // base64加 ...
 - md5加密后不能解密
		
MD5加密原理是散列算法,散列算法也称哈希算法.计算机专业学的数据结构就有哈希表这一知识点.比如10除以3余数为一,4除以3余数也为一,但余数为一的就不知道这个数是哪个了.所以md5不能解密.就算是设 ...
 - DES c#加密后java解密
		
public static String byteArr2HexStr(byte[] bytIn) { StringBuilder builder = new StringBuilder(); for ...
 - base64加密解密文件
		
1 //字符串加密 -(void)demo1 { //普通的 8 bit二进制数据 NSString *str = @"hello world!"; //将字符串转换成二进制数据 ...
 - android Base64加密解密
		
// 加密传入的数据是byte类型的,并非使用decode方法将原始数据转二进制,String类型的数据 使用 str.getBytes()即可 String str = "Hello!&q ...
 - cryptopp开源库的使用(二):base64加密
		
很多时候我只是优秀工具的使用者,优秀的工具用好了才能发挥作用 最近使用cryptopp的base64对压缩后的zip文件内容进行加密遇到了问题. 首先zip压缩没问题,可是最后得到的base64字符串 ...
 - XOR+base64加密
		
1.xor运算 1^0=1 0^0=0 1^1=0 23^32=55 55^32=23 23对32进行异或两次运算结果为23 2.XOR加密 设key=[]byte{1,2,3,4,5,6},src= ...
 - 接口API中的敏感数据基于AES进行安全加密后返回
		
许久没有写博客了,有些惶恐地打开这个再熟悉不过的编辑器. 场景:要对一个涉及到敏感数据(账号.密码)的接口进行加密后返回 由于之前没有相关的经验,所以先在网上搜罗了一阵,这篇博客不错https://w ...
 - 解码base64加密的图片并打印到前台
		
经过base64加密的图片对象是一串字符串,我们解码后可通过流将其打印出来: utils类: package com.aebiz.app.web.modules.controllers.open.ap ...
 
随机推荐
- LVSDR模型与持久连接
			
LVS之DR模型以及持久连接 LVS的简单介绍 linux virtual server 简单来讲lvs是一段内核代码 类似于netfilter本身是一框架但不提供任何功能,但是在这框架上提供了能够根 ...
 - manager.add_command('runserver', Server('0.0.0.0', port='8093', extra_files=extra_files))
			
extra_files: a list of files the reloader should watch additionally to the module ...
 - 逆向破解之160个CrackMe —— 021
			
CrackMe —— 021 160 CrackMe 是比较适合新手学习逆向破解的CrackMe的一个集合一共160个待逆向破解的程序 CrackMe:它们都是一些公开给别人尝试破解的小程序,制作 c ...
 - python测试开发django-67.templates模板变量取值
			
前言 django 的模板里面变量取值是通过句点语法来取值,就是一个点(.)符号.取值的对象也可以是字符串,int类型,list列表,字典键值对,也可以是一个类的实例对象. views视图 比如我在 ...
 - FileReader 事件用法
			
FileReader对象采用异步方式读取文件,在不同的读取阶段会触发不同的事件. 事件列表: (1).abort事件:读取中断或调用reader.abort()方法时触发. (2).error事件:读 ...
 - python小案例-计算输入两个数的最大公约数与最小公倍数
			
# 计算最大公约数 def gcd(x,y): """ 计算最大公约数 :param x:一个正整数 :param y:一个正整数 :return:x,y的最大公约数 & ...
 - Easyui combobox 源码修改模糊查询v=1.34
			
原来的匹配方式: $.fn.combobox.defaults=$.extend({},$.fn.combo.defaults,{valueField:"value",textFi ...
 - HDU6625: three arrays (字典树处理xor)
			
题意:给出A数组,B数组,你可以对A和B分别进行重排列,使得C[i]=A[i]^B[i]的字典序最小. 思路:对于这类题,显然需要建立字典树,然后某种形式取分治,或者贪心. 假设现在有了两颗字典树A ...
 - spark调优——Shuffle调优
			
在Spark任务运行过程中,如果shuffle的map端处理的数据量比较大,但是map端缓冲的大小是固定的,可能会出现map端缓冲数据频繁spill溢写到磁盘文件中的情况,使得性能非常低下,通过调节m ...
 - Go语言 - goroutine
			
并发与并行 并发:同一时间段内执行多个任务(你在用微信和两个女朋友聊天). 并行:同一时刻执行多个任务(你和你朋友都在用微信和女朋友聊天). Go语言的并发通过goroutine实现.goroutin ...