Android HMAC_SHA1 算法简单实现
2012-08-29 22:16
387 查看
想签名以下信息:
PUT /quotes/nelson HTTP/1.0
Content-Md5: c8fdb181845a4ca6b8fec737b3581d76
Content-Type: text/html
Date: Thu, 17 Nov 2005 18:49:58 GMT
X-OSS-Meta-Author: foo@bar.com
X-OSS-Magic: abracadabra
假如AccessID是: "44CF9590006BF252F707"
AccessKey 是 "OtxrzxIsfpFjA7SwPzILwy8Bw21TLhquhboDYROV",可用以下
方法签名
签名计算结果应该为”63mwfl zYIOG6k95yxbgMruQ6QI=”
PUT /quotes/nelson HTTP/1.0
Content-Md5: c8fdb181845a4ca6b8fec737b3581d76
Content-Type: text/html
Date: Thu, 17 Nov 2005 18:49:58 GMT
X-OSS-Meta-Author: foo@bar.com
X-OSS-Magic: abracadabra
假如AccessID是: "44CF9590006BF252F707"
AccessKey 是 "OtxrzxIsfpFjA7SwPzILwy8Bw21TLhquhboDYROV",可用以下
方法签名
签名计算结果应该为”63mwfl zYIOG6k95yxbgMruQ6QI=”
private String hmac_sha1(String key, String datas) { String reString = ""; try { byte[] data = key.getBytes("UTF-8"); //根据给定的字节数组构造一个密钥,第二参数指定一个密钥算法的名称 SecretKey secretKey = new SecretKeySpec(data, "HmacSHA1"); //生成一个指定 Mac 算法 的 Mac 对象 Mac mac = Mac.getInstance("HmacSHA1"); //用给定密钥初始化 Mac 对象 mac.init(secretKey); byte[] text = datas.getBytes("UTF-8"); //完成 Mac 操作 byte[] text1 = mac.doFinal(text); reString = Base64.encodeToString(text1, Base64.DEFAULT); } catch (Exception e) { // TODO: handle exception } return reString; }
相关文章推荐
- Android数据加密之Base64编码算法的简单实现
- android学习——简单的三位数字计算器算法的实现
- 用SHA1或MD5 算法加密数据(示例:对用户身份验证的简单实现)
- 用SHA1或MD5 算法加密数据(示例:对用户身份验证的简单实现)
- 用SHA1或MD5 算法加密数据(示例:对用户身份验证的简单实现)
- 用SHA1或MD5 算法加密数据(示例:对用户身份验证的简单实现)
- 用SHA1或MD5 算法加密数据(示例:对用户身份验证的简单实现)
- 用SHA1或MD5 算法加密数据(示例:对用户身份验证的简单实现)
- 用SHA1或MD5 算法加密数据(示例:对用户身份验证的简单实现)
- Android实现录屏直播(一)ScreenRecorder的简单分析
- Xamarin.Android之Splash的几种简单实现
- Android---验证码倒计时的简单实现
- 简单有效的连通区域提取算法实现
- android 圆形进度条的简单实现
- Android滑动菜单特效实现,仿人人客户端侧滑效果,史上最简单的侧滑实现
- 简单选择排序的算法实现
- Android 轮播焦点图简单实现
- Android中可增删联系人列表的简单实现
- android 沉沁式简单实现
- android 3D 游戏实现之简单碰撞检测