internal

package
v0.0.0-...-babde27 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 14, 2025 License: BSD-3-Clause Imports: 2 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func BaseCaseMultiply

func BaseCaseMultiply(a0, a1, b0, b1 uintq, g intq2) (uintq, uintq)

func ByteDecode

func ByteDecode(b []byte, d int) [256]uint

func ByteDecodeQ

func ByteDecodeQ(b []byte) polynomial

func ByteEncode

func ByteEncode(f [256]uint, d int) []byte

func ByteEncodeQ

func ByteEncodeQ(f polynomial) []byte

func Compress

func Compress(f polynomial, d int) [256]uint

func Decaps_internal

func Decaps_internal(dk, c []byte, k, eta1, eta2, du, dv int) []byte

func Decompress

func Decompress(b [256]uint, d int) polynomial

func Encaps_internal

func Encaps_internal(ek, m []byte, k, eta1, eta2, du, dv int) ([]byte, []byte)

func G

func G(d []byte, k []byte) ([]byte, []byte)

G(𝑑, 𝑘) ∶= SHA3-512(𝑑‖𝑘)

func H

func H(s []byte) []byte

H(𝑠) ∶= SHA3-256(𝑠)

func J

func J(s, t []byte) []byte

J(𝑠, 𝑡) ∶= SHAKE256(𝑠‖𝑡, 8 ⋅ 32)

func KPKEDecrypt

func KPKEDecrypt(dkPKE []byte, c []byte, k, du, dv int) []byte

func KPKEEncrypt

func KPKEEncrypt(ekPKE []byte, m, r []byte, k, eta1, eta2, du, dv int) []byte

func KPKEKeyGen

func KPKEKeyGen(d []byte, k, eta1 int) ([]byte, []byte)

func KeyGen_internal

func KeyGen_internal(d, z []byte, k, eta1 int) ([]byte, []byte)

func MultiplyNTTs

func MultiplyNTTs(f_, g_ polynomial) polynomial

func NTT

func NTT(f polynomial) polynomial

func NTTinv

func NTTinv(f_ polynomial) polynomial

func PRF

func PRF(s []byte, b byte, eta int) []byte

PRF𝜂(𝑠, 𝑏) ∶= SHAKE256(𝑠‖𝑏, 8 ⋅ 64 ⋅ 𝜂)

func SampleNTT

func SampleNTT(b []byte, jj, ii byte) polynomial

func SamplePolyCBD

func SamplePolyCBD(b []byte) polynomial

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL