当前位置:  编程技术>移动开发
本页文章导读:
    ▪java加密解密研究八、MAC算法家族        java加密解密研究8、MAC算法家族一、概述 MAC算法结合了MD5和SHA算法的优势,并加入密钥的支持,是一种更为安全的消息摘要算法。 MAC(Message Authentication Code,消息认证码算法)是含有密钥的.........
    ▪ RelativeLayout惯用属性介绍-开发日记(一)        RelativeLayout常用属性介绍-----开发日记(一)第一类:属性值为true或false     android:layout_centerHrizontal 水平居中     android:layout_centerVertical 垂直居中     android:layout_centerInparent 相对于父元素完.........
    ▪ java加密解密研究九、其他消息摘要算法       java加密解密研究9、其他消息摘要算法除了MD、SHA、MAC这三大主流消息摘要算法外,还有许多我们不了解的消息摘要算法,包括RipeMD系列,Tiger,Whirlpool和GOST3411算法、 一、概述 RipeMD: RipeMD.........

[1]java加密解密研究八、MAC算法家族
    来源: 互联网  发布时间: 2014-02-18
java加密解密研究8、MAC算法家族

一、概述

MAC算法结合了MD5和SHA算法的优势,并加入密钥的支持,是一种更为安全的消息摘要算法。

MAC(Message Authentication Code,消息认证码算法)是含有密钥的散列函数算法,兼容了MD和SHA算法的特性,并在此基础上加入了密钥。日次,我们也常把MAC称为HMAC(keyed-Hash Message Authentication Code)。

MAC算法主要集合了MD和SHA两大系列消息摘要算法。MD系列的算法有HmacMD2、HmacMD4、HmacMD5三种算法;SHA系列的算法有HmacSHA1、HmacSHA224、HmacSHA256、HmacSHA384.HmacSHA512五种算法。

经过MAC算法得到的摘要值也可以使用十六进制编码表示,其摘要值长度与参与实现的摘要值长度相同。例如,HmacSHA1算法得到的摘要长度就是SHA1算法得到的摘要长度,都是160位二进制码,换算成十六进制编码为40位。


二、实现和应用

1、Sun的实现和应用

在java6中,MAC系列算法需要通过Mac类提供支持。java6中仅仅提供HmacMD5、HmacSHA1、HmacSHA256、HmacSHA384和HmacSHA512四种算法。

Mac算法是带有密钥的消息摘要算法,所以实现起来要分为两步:

1)、构建密钥

2)、执行消息摘要



2、BouncyCastle的实现和应用

第三方加密组件包Bouncy Castle作为补充,提供了HmacMD2.HmacMD4、HmacSHA224三种算法的支持。





    
[2] RelativeLayout惯用属性介绍-开发日记(一)
    来源: 互联网  发布时间: 2014-02-18
RelativeLayout常用属性介绍-----开发日记(一)
第一类:属性值为true或false
    android:layout_centerHrizontal 水平居中
    android:layout_centerVertical 垂直居中
    android:layout_centerInparent 相对于父元素完全居中
    android:layout_alignParentBottom 贴紧父元素的下边缘
    android:layout_alignParentLeft 贴紧父元素的左边缘
    android:layout_alignParentRight 贴紧父元素的右边缘
    android:layout_alignParentTop 贴紧父元素的上边缘
    android:layout_alignWithParentIfMissing 如果对应的兄弟元素找不到的话就以父元素做参照物

    第二类:属性值必须为id的引用名“@id/id-name”
    android:layout_below 在某元素的下方
    android:layout_above 在某元素的的上方
    android:layout_toLeftOf 在某元素的左边
    android:layout_toRightOf 在某元素的右边

    android:layout_alignTop 本元素的上边缘和某元素的的上边缘对齐
    android:layout_alignLeft 本元素的左边缘和某元素的的左边缘对齐
    android:layout_alignBottom 本元素的下边缘和某元素的的下边缘对齐
    android:layout_alignRight 本元素的右边缘和某元素的的右边缘对齐

    第三类:属性值为具体的像素值,如30dip,40px
    android:layout_marginBottom 离某元素底边缘的距离
    android:layout_marginLeft 离某元素左边缘的距离
    android:layout_marginRight 离某元素右边缘的距离

    android:layout_marginTop 离某元素上边缘的距离


android:layout_centerInParent   居中布局
    android:layout_centerVertical    垂直居中布局
    android:layout_centerHorizontal  水平居中布局

 

    android:layout_alignParentTop    居于容器内顶部
    android:layout_alignParentBottom  居于容器内底部
    android:layout_alignParentLeft    居于容器内左边
    android:layout_alignParentRight    居于容器内右边

    android:layout_above       居于指定View的上方
    android:layout_below       居于指定View的下方

    android:layout_toRightOf      在指定View的右边
    android:layout_toLeftOf        在指定View的左边

    android:layout_alignTop      与指定View的Top一致


    
[3] java加密解密研究九、其他消息摘要算法
    来源: 互联网  发布时间: 2014-02-18
java加密解密研究9、其他消息摘要算法

除了MD、SHA、MAC这三大主流消息摘要算法外,还有许多我们不了解的消息摘要算法,包括RipeMD系列,Tiger,Whirlpool和GOST3411算法、


一、概述

RipeMD:

RipeMD(RACE Integrity Primitives Evaluation Message Digest),是由Hans Dobbertin等3人在对MD4,MD5缺陷分析的基础上,于1996年提出的。目前,RipeMD算法共有4个标准,主要是对摘要值长度的区分,类似于SHA系列算法,包含RipeMD128,RipeMD160、RipeMD256和RipeMD320共四种算法。HmacRipeMD128和HmacRipeMd160算法是RipeMD与MAC算法融合的产物


Tiger:

Tiger由Ross于1995年提出。Tiger号称是最快的Hash算法,专门为64位机器做了优化,其消息摘要长度为192位。


Whirlpool:

Whirlpool已被列入ISO标准,由于它使用了与AES加密标准相同的转化技术,极大的提高了安全性,被称为最安全的摘要算法。Whirlpool在历史上共有3个版本,目前最新的版本是2003年颁布的,通常将其称为Whirlpool3.0,其消息摘要长度为512位。


GOST3411:

GOST3411消息摘要长度为256位。


二、实现和应用

java6没有提供上述算法的实现,所以,这里主要介绍BouncyCastle的实现和应用

1、RipeMD系列算法



2、HmacRipeMD算法


    
最新技术文章:
▪Android开发之登录验证实例教程
▪Android开发之注册登录方法示例
▪Android获取手机SIM卡运营商信息的方法
▪Android实现将已发送的短信写入短信数据库的...
▪Android发送短信功能代码
▪Android根据电话号码获得联系人头像实例代码
▪Android中GPS定位的用法实例
▪Android实现退出时关闭所有Activity的方法
▪Android实现文件的分割和组装
▪Android录音应用实例教程
▪Android双击返回键退出程序的实现方法
▪Android实现侦听电池状态显示、电量及充电动...
▪Android获取当前已连接的wifi信号强度的方法
▪Android实现动态显示或隐藏密码输入框的内容
▪根据USER-AGENT判断手机类型并跳转到相应的app...
▪Android Touch事件分发过程详解
▪Android中实现为TextView添加多个可点击的文本
▪Android程序设计之AIDL实例详解
▪Android显式启动与隐式启动Activity的区别介绍
▪Android按钮单击事件的四种常用写法总结
▪Android消息处理机制Looper和Handler详解
▪Android实现Back功能代码片段总结
▪Android实用的代码片段 常用代码总结
▪Android实现弹出键盘的方法
▪Android中通过view方式获取当前Activity的屏幕截...
▪Android提高之自定义Menu(TabMenu)实现方法
▪Android提高之多方向抽屉实现方法
▪Android提高之MediaPlayer播放网络音频的实现方法...
▪Android提高之MediaPlayer播放网络视频的实现方法...
▪Android提高之手游转电视游戏的模拟操控
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3