This module implements Signed Envelope.
Types
Envelope {.proto3.} = object publicKey* {.fieldNumber: 1, ext.}: PublicKey payloadType* {.fieldNumber: 2.}: seq[byte] signature* {.fieldNumber: 5, ext.}: Signature
- Source Edit
EnvelopeError = enum EnvelopeInvalidProtobuf, EnvelopeFieldMissing, EnvelopeInvalidSignature, EnvelopeWrongType
- Source Edit
SignedPayload[T] = object envelope*: Envelope data*: T
- Source Edit
Procs
proc decode(_: type Envelope; buf: seq[byte]; domain: string): Result[Envelope, EnvelopeError] {....raises: [].}
- Source Edit
proc decode[T](_: typedesc[SignedPayload[T]]; buffer: sink seq[byte]): Result[ SignedPayload[T], EnvelopeError] {....raises: [].}
- Source Edit
proc decode[T](_: typedesc[SignedPayload[T]]; envelope: Envelope): Result[ SignedPayload[T], EnvelopeError] {....raises: [].}
- Source Edit
proc encode(envelope: Envelope): seq[byte] {....raises: [], tags: [RootEffect], forbids: [].}
- Source Edit
proc encode[T](msg: SignedPayload[T]): seq[byte] {....raises: [].}
- Source Edit
proc init(T: typedesc[Envelope]; privateKey: PrivateKey; payloadType: sink seq[byte]; payload: sink seq[byte]; domain: string): Result[ Envelope, CryptoError] {....raises: [].}
- Source Edit
proc init[T](_: typedesc[SignedPayload[T]]; privateKey: PrivateKey; data: T): Result[ SignedPayload[T], CryptoError] {....raises: [].}
- Source Edit
Exports
-
computeFieldSize, Signature, exclIfIt, shortLog, init, supportsPacked, toBytes, DigestSheme, ephemeral, ECDHEScheme, init, filterIt, shortLog, init, sign, Rng, macOpenArray, PublicKey, Secret, supportsPacked, $, mac, init, selectBest, init, ephemeral, withValue, readFieldInto, init, stretchKeys, generateBytes, withValue, readFieldInto, write, init, init, init, generate, toBytes, write, random, getBytes, toOpt, init, newRng, supportsPacked, withValue, getPublicKey, init, init, random, write, ivOpenArray, init, iv, init, CryptoError, ==, key, SupportedSchemes, generate, RsaDefaultKeySize, init, keyOpenArray, SupportedSchemesInt, toBytes, capLen, shuffle, supported, ==, toRawBytes, libp2p_pki_schemes, random, pickOne, init, random, CryptoResult, shortLog, writeField, getBytes, verify, writeField, PKScheme, getBytes, init, toChunks, generate, PrivateKey, take, supportsPacked, toOpt, newBearSslRng, orError, $, generate, goffset, getRawBytes, pick, getOrder, computeFieldSize, KeyPair, init, toOpt, init