crypto 包

crypto 包提供常用的密码算法、密钥生成和签名验证功能。

digest 包

介绍

digest 包提供常用摘要算法的通用接口。

主要接口

interface Digest

public interface Digest {
    prop size: Int64
    prop blockSize: Int64
    mut func write(buffer: Array<Byte>): Unit
    func finish(): Array<Byte>
    mut func reset(): Unit
}

接口 Digest,摘要算法接口,继承该接口的 class、interface、struct 也需要遵守该接口中函数的入参及返回值定义。

prop size
prop size: Int64

功能:生成的摘要信息长度,单位字节。

prop blockSize
prop blockSize: Int64

功能:digest 块长度,单位字节。

func write
mut func write(buffer: Array<Byte>): Unit

功能:使用给定的 buffer 更新 digest 对象。

func finish
func finish(): Array<Byte>

功能:返回生成的 digest 值。

func reset
mut func reset(): Unit

功能:重置 digest 对象到初始状态。

func digest

public func digest<T>(algorithm: T, data: String): Array<Byte> where T <: Digest

功能:提供 digest 泛型函数,实现用指定的摘要算法进行摘要运算。

参数:

  • algorithm:具体的摘要算法
  • data:待进行摘要运算的数据

返回值:摘要运算结果

func digest

public func digest<T>(algorithm: T, data: Array<Byte>): Array<Byte> where T <: Digest

功能:提供 digest 泛型函数,实现用指定的摘要算法进行摘要运算。

参数:

  • algorithm:具体的摘要算法
  • data:待进行摘要运算的数据

返回值:摘要运算结果