tango.io.digest.Digest 翻译

本文介绍了tango.io.digest.Digest模块中的Digest接口,此接口用于定义消息摘要算法如MD5和SHA等的操作规范。文章详细解释了如何创建摘要算法实例、如何处理数据以及如何计算最终的摘要。同时提供了使用示例。

tango.io.digest.Digest(r4795)

License:

BSD style: see doc/license.txt for details

Version:

Initial release: Feb 2006

Author:

Regan Heath, Oskar Linde

这个模块定义了摘要(Digest )接口。

class Digest [abstract] #
该摘要转换接口定义报文摘要算法( message digest algorithms)的接口,例如 MD5SHA。报文摘要是密码哈希函数,把任意长度的消息计算产生一个固定长度的摘要作输出。
一个实现摘要转换的对象要开始初始化。通过调用 update(更新)方法处理数据。一旦所有数据传送到该算法,摘要便结束并且用摘要方法计算。

摘要方法只能被调用一次。摘要方法被调用后,算法被重置为它的初始状态。

使用update(更新)方法,数据可以被一部分一部分的处理,对于包含数据流的情况这是很有用的。

例如:

1
2
3
4
5
6
7
8
9
10
11
//创建一个MD5 hash 算法
Md5 hash = new Md5();

// 处理一些数据
hash.update("The quick brown fox");

// 处理更多数据
hash.update(" jumps over the lazy dog");

// 终结算法产生摘要
ubyte[] digest = hash.binaryDigest();
Digest update(void[] data) [abstract] #
处理数据

备注:

用新数据更新hash算法。

ubyte[] binaryDigest(ubyte[] buffer = null) [abstract] #
计算摘要并重置状态。

参数:

buffer

提供给摘要要写入的缓冲器。

备注:

如果这个缓冲器不足以保持摘要,一个新缓冲器被分配并返回。调用 binaryDigest后算法状态总是被重置。使用 digestSize方法查找缓冲器已经有多大。
uint digestSize() [abstract] #
返回摘要按字节的大小。

备注:

返回摘要大小。

char[] hexDigest(char[] buffer = null) #
作为一个十六进制字符串计算出摘要并重置状态。

参数:

buffer

提供给摘要要写入的缓冲器。它需要能够保持2 * digestSize 的字符。

备注:

如果这个缓冲器不足以保持十六进制摘要,一个新缓冲器被分配并返回。调用 hexDigest 后算法状态总是被重置。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值