package subtle

import "crypto/subtle"

Package subtle implements functions that are often useful in cryptographic code but require careful thought to use correctly.

Index

返回首页


  • func ConstantTimeByteEq(x, y uint8) int
  • func ConstantTimeEq(x, y int32) int
  • func ConstantTimeLessOrEq(x, y int) int
  • func ConstantTimeCompare(x, y []byte) int
  • func ConstantTimeCopy(v int, x, y []byte)
  • func ConstantTimeSelect(v, x, y int) int
  • func ConstantTimeByteEq

    func ConstantTimeByteEq(x, y uint8) int

    如果x == y返回1,否则返回0。

    func ConstantTimeEq

    func ConstantTimeEq(x, y int32) int

    如果x == y返回1,否则返回0。

    func ConstantTimeLessOrEq

    func ConstantTimeLessOrEq(x, y int) int

    如果x <= y返回1,否则返回0;如果x或y为负数,或者大于2**31-1,函数行为是未定义的。

    func ConstantTimeCompare

    func ConstantTimeCompare(x, y []byte) int

    如果x、y的长度和内容都相同返回1;否则返回0。消耗的时间正比于切片长度而与内容无关。

    func ConstantTimeCopy

    func ConstantTimeCopy(v int, x, y []byte)

    如果v == 1,则将y的内容拷贝到x;如果v == 0,x不作修改;其他情况的行为是未定义并应避免的。

    func ConstantTimeSelect

    func ConstantTimeSelect(v, x, y int) int

    如果v == 1,返回x;如果v == 0,返回y;其他情况的行为是未定义并应避免的。