Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

结构体

struct OAEPOption

public struct OAEPOption {
    public init(hash: Digest, mgfHash: Digest, label!: String = "")
}

功能:此结构体为 OAEP 填充模式需要设置的参数。

init(Digest, Digest, String)

public init(hash: Digest, mgfHash: Digest, label!: String = "")

功能:初始化 OAEP 填充参数。

参数:

  • hash: Digest - 摘要方法,用于对 label 进行摘要。
  • mgfHash: Digest - 摘要方法,用于设置 MGF1 函数中的摘要方法。
  • label!: String - label 是可选参数,默认为空字符串,可以通过设置 label 来区分不同的加密操作。

示例:

import stdx.crypto.keys.*
import stdx.crypto.digest.*

main() {
    let sha256 = SHA256()
    let sha512 = SHA512()
    let oaepOption = OAEPOption(sha256, sha512, label: "test")
    return 0
}

struct PSSOption

public struct PSSOption {
    public init(saltLen: Int32)
}

功能:此结构体为 PSS 填充模式需要设置的参数。

init(Int32)

public init(saltLen: Int32)

功能:初始化 PSS 填充参数。

参数:

  • saltLen: Int32 - 随机盐长度,长度应大于等于 0,小于等于(RSA 长度 - 摘要长度 - 2),长度单位为字节,长度过长会导致签名失败。

异常:

示例:

import stdx.crypto.keys.*

main() {
    // 正常情况
    let pssOption = PSSOption(20)

    try {
        // 演示小于0的异常情况
        let pssOption = PSSOption(-1)
    } catch (e: Exception) {
        println("异常信息: ${e.message}")
    }
    return 0
}

运行结果:

异常信息: Salt length can not less than 0.