java密钥字符串byte[]传递问题

        参加2013年的全国信息安全大赛的时候,系统功能中有一个要求将密钥编写进二维码中,但是查阅资料可以知道二维码说白了就是一个能够存储字符串的一个特殊图形,因此要将密钥变成字符串,密钥是byte[]类型,字符串在java中是String,这就需要把byte数组转换成string,然后写文件,再读文件,再把string转换回来,成为byte数组。可是,看上去很简单,编出程序来一编译,通过..其实有玄机...特别是你要用到它(byte[]的内容)加密,解密时,就会报异常。

具体做法:
将byte数组转换成string
  
  BASE64Encoder enc=new BASE64Encoder();
  String 转换后的string=enc.encode(byte数组);
  
将string转换回来成为byte数组:  

 
 BASE64Decoder dec=new BASE64Decoder(); 
  try {
   byte数组 = dec.decodeBuffer(转换后的string);
  } catch (IOException e1) {
   // TODO Auto-generated catch block
   e1.printStackTrace();
  }


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值