# Packages
No description provided by the author
# Functions
AddrInfoFromP2pAddr 将多地址转换为 AddrInfo 参数: - m: ma.Multiaddr 要转换的多地址
返回值: - *AddrInfo: 转换后的 AddrInfo 指针 - error: 如果转换过程中发生错误,返回相应的错误信息.
AddrInfoFromString 从多地址的字符串表示构建 AddrInfo 参数: - s: string 多地址的字符串表示
返回值: - *AddrInfo: 构建的 AddrInfo 指针 - error: 如果转换过程中发生错误,返回相应的错误信息.
AddrInfosFromP2pAddrs 将一组多地址转换为 AddrInfo 结构体集合 参数: - maddrs: 可变参数,表示要转换的多地址列表
返回值: - []AddrInfo: 转换后的 AddrInfo 结构体切片 - error: 如果转换过程中发生错误,返回相应的错误信息.
AddrInfosToIDs 从 AddrInfo 切片中提取对等节点ID列表 参数: - pis: []AddrInfo AddrInfo 结构体切片
返回值: - []ID: 按顺序提取的对等节点ID切片.
AddrInfoToP2pAddrs 将 AddrInfo 转换为多地址列表 参数: - pi: *AddrInfo 要转换的 AddrInfo 指针
返回值: - []ma.Multiaddr: 转换后的多地址切片 - error: 如果转换过程中发生错误,返回相应的错误信息.
Decode 接受编码的对等节点 ID 并在输入有效时返回解码后的 ID
编码的对等节点 ID 可以是密钥的 CID 或原始 multihash (identity 或 sha256-256) 参数: - s: string 要解码的对等节点 ID 字符串
返回值: - ID: 解码后的对等节点 ID - error: 如果发生错误,返回错误信息.
FromCid 将 CID 转换为对等节点 ID 参数: - c: cid.Cid 要转换的 CID
返回值: - ID: 转换后的对等节点 ID - error: 如果发生错误,返回错误信息.
IDFromBytes 将字节切片转换为 ID 类型,并验证该值是否为 multihash 参数: - b: []byte 要转换的字节切片
返回值: - ID: 转换后的对等节点 ID - error: 如果发生错误,返回错误信息.
IDFromP2PAddr 从 p2p 多地址中提取对等节点ID 参数: - m: ma.Multiaddr p2p 多地址
返回值: - ID: 提取的对等节点ID - error: 如果地址无效则返回错误.
IDFromPrivateKey 返回与私钥 sk 对应的对等节点 ID 参数: - sk: ic.PrivKey 用于生成对等节点 ID 的私钥
返回值: - ID: 生成的对等节点 ID - error: 如果发生错误,返回错误信息.
IDFromPublicKey 返回与公钥 pk 对应的对等节点 ID 参数: - pk: ic.PubKey 用于生成对等节点 ID 的公钥
返回值: - ID: 生成的对等节点 ID - error: 如果发生错误,返回错误信息.
NewPeerRecord 创建一个具有基于时间戳的序列号的新 PeerRecord 返回值: - *PeerRecord: 返回的记录为空,应由调用者填充.
PeerRecordFromAddrInfo 从 AddrInfo 结构创建 PeerRecord 参数: - info: AddrInfo 包含对等节点的地址信息
返回值: - *PeerRecord: 返回的记录将具有基于时间戳的序列号.
PeerRecordFromProtobuf 从 protobuf PeerRecord 结构创建 PeerRecord 参数: - msg: *pb.PeerRecord protobuf 消息
返回值: - *PeerRecord: 创建的 PeerRecord 实例 - error: 如果发生错误,返回错误信息.
SplitAddr 将 p2p 多地址分割为传输地址和对等节点ID 参数: - m: ma.Multiaddr 要分割的多地址
返回值: - transport: ma.Multiaddr 传输地址部分,如果地址仅包含 p2p 部分则返回 nil - id: ID 对等节点ID,如果地址不包含 p2p 部分则返回空字符串.
TimestampSeq 是一个帮助函数,用于为 PeerRecord 生成基于时间戳的序列号 返回值: - uint64: 返回生成的序列号.
ToCid 将对等节点 ID 编码为公钥的 CID
如果对等节点 ID 无效(例如为空),将返回空 CID 参数: - id: ID 要编码的对等节点 ID
返回值: - cid.Cid: 编码后的 CID.
# Constants
PeerRecordEnvelopeDomain 是用于包含在 Envelope 中的 peer records 的域字符串.
# Variables
AdvancedEnableInlining 启用自动将短于 42 字节的密钥内联到对等节点 ID 中(使用"identity" multihash 函数)
警告:此标志在将来可能会设置为 false,并最终被移除,改为使用密钥本身指定的哈希函数
除非你知道自己在做什么,否则不要更改此标志
目前默认为 true 以保持向后兼容性,但在确定升级路径后可能会默认设置为 false.
ErrEmptyPeerID 表示空的对等节点 ID 错误.
ErrInvalidAddr 表示无效的 p2p 多地址错误.
ErrNoPublicKey 表示对等节点 ID 中未嵌入公钥的错误.
PeerRecordEnvelopePayloadType 是用于在 Envelope 中标识 peer records 的类型提示 在 https://github.com/multiformats/multicodec/blob/master/table.csv 中定义,名称为 "dep2p-peer-record".
# Structs
AddrInfo 是一个小型结构体,用于传递包含一组地址和对等节点ID的信息.
PeerRecord 包含与其他对等节点共享的广泛有用的信息 目前,PeerRecord 包含对等节点的公共监听地址,未来预计会包含其他信息.