完整文档页面(中文翻译)。文末附有来源说明。

阅读英文版

appdevreferencedaml-standard-libraryda-crypto-text

DA.Crypto.Text

Daml 标准库模块 DA.Crypto.Text(Alpha)参考文档。

DA.Crypto.Text

用于使用 Crypto 内置函数的函数。

例如,用于实现 CCTP 功能。

模块快照

Alpha (experimental). Status: `active` 引入于:`3.4.9` Removed in: `-` 警告:`2` Deprecations: `0` 已弃用自:`-` DA.Crypto.Text is an alpha feature.它可能会更改,恕不另行通知。 * DA.Crypto.Text 是一项 alpha 功能。它可能会更改,恕不另行通知。 * 在构建选项中使用 -Wno-crypto-text-is-alpha 来禁用此警告

数据类型

type BytesHex = Text

type PublicKeyHex = Text

用于 ECDSA 签名验证的 DER 格式的公钥

type SignatureHex = Text

DER 格式的 SECP256K1 签名

类型类

class HasToHex a

方法:

  • toHex : a -> BytesHex 将键入的数据值转换为十六进制编码的字符串。

实例:

  • instance HasToHex Party
  • instance HasToHex Int
  • instance HasToHex Text

class HasFromHex a

方法:

  • fromHex : BytesHex -> a 将十六进制编码的字符串转换为类型化数据值。

实例:

  • instance HasFromHex (Optional Party)
  • instance HasFromHex (Optional Int)
  • instance HasFromHex (Optional Text)

函数

isHex

isHex : Text -> Bool

如果 t 不为空且仅包含以下内容,则 isHexTrue 十六进制或十六进制字符。

sha256

sha256 : BytesHex -> BytesHex

计算 Text 的已解码 UTF8 字节的 SHA256 哈希值,并以其十六进制编码形式返回 形式。 The hex encoding uses lowercase letters.

keccak256

keccak256 : BytesHex -> BytesHex

计算 Text UTF8 字节的 KECCAK256 哈希值,并以其十六进制编码形式返回 形式。十六进制编码使用小写字母。

secp256k1WithEcdsaOnly

secp256k1WithEcdsaOnly : SignatureHex -> BytesHex -> PublicKeyHex -> Bool

在给定十六进制编码消息和十六进制编码 DER 格式公钥的情况下验证 SECP256K1 签名。

secp256k1

secp256k1 : SignatureHex -> BytesHex -> PublicKeyHex -> Bool

给定十六进制编码消息的 SHA256 哈希值和十六进制编码 DER 格式的公钥,验证 SECP256K1 签名。

numericViaStringToHex

numericViaStringToHex : NumericScale n => Numeric n -> BytesHex

numericViaStringFromHex

numericViaStringFromHex : NumericScale n => BytesHex -> Optional (Numeric n)

byteCount

byteCount : BytesHex -> Int

字节编码字符串中存在的字节数。

minBytes32Hex

minBytes32Hex : BytesHex

Minimum Bytes32 hex value

`maxBytes32Hex````haskell theme={“theme”:{“light”:“github-light”,“dark”:“github-dark”}}

maxBytes32Hex : BytesHex


最大 Bytes32 十六进制值

<span id="function-da-crypto-text-isbytes32hex-1801" />

### `isBytes32Hex`

```haskell theme={"theme":{"light":"github-light","dark":"github-dark"}}
isBytes32Hex : BytesHex -> Bool

验证字节编码字符串是否为 Bytes32Hex

minUInt32Hex

minUInt32Hex : BytesHex

最小 UInt32 十六进制值

maxUInt32Hex

maxUInt32Hex : BytesHex

最大 UInt32 十六进制值

isUInt32Hex

isUInt32Hex : BytesHex -> Bool

验证字节编码字符串是否为 UInt32Hex

minUInt64Hex

minUInt64Hex : BytesHex

最小 UInt64 十六进制值

maxUInt64Hex

maxUInt64Hex : BytesHex

最大 UInt64 十六进制值

isUInt64Hex

isUInt64Hex : BytesHex -> Bool

验证字节编码字符串是否为 UInt64Hex

minUInt256Hex

minUInt256Hex : BytesHex

最小 UInt256 十六进制值

maxUInt256Hex

maxUInt256Hex : BytesHex

最大 UInt256 十六进制值

isUInt256Hex

isUInt256Hex : BytesHex -> Bool

Validate that the byte encoded string is UInt256Hex

packHexBytes

packHexBytes : BytesHex -> Int -> Optional BytesHex

将字节编码字符串打包为给定的字节计数大小。如果字节串比 pad 短 size,然后以 00 字节字符串作为前缀。如果字节串较大,则截断该字节串。

sliceHexBytes

sliceHexBytes : BytesHex -> Int -> Int -> Either Text BytesHex

提取从 startByte 开始直到(但不包括 endByte)的字节字符串。字节索引从 1 开始。


本文由 CC Privacy Club 根据 Canton Network 官方文档(CC-BY-4.0)整理翻译,仅供学习;实现细节以官方最新版本为准。