Documentation
¶
Index ¶
Constants ¶
View Source
const ( PKSize = 29 SKSize = 32 )
View Source
const ( PubStart = "copub:" SecStart = "cosec:" // lel )
View Source
const AddressLen = 16
Variables ¶
View Source
var ( ZeroSK = new([32]byte) ZeroPK = func() (publicKey *[32]byte) { publicKey = new([32]byte) curve25519.ScalarBaseMult(publicKey, ZeroSK) return }() )
ephemeral 32 keypair that everyone knows
View Source
var ZeroNonce = new([24]byte)
Who needs nonces anyway? Every request is idempotent becaue every computation is deterministic. Exactly-once delivery 4 tha win
Functions ¶
Types ¶
type Address ¶
type Address [AddressLen]byte // can be whatever (probably an ipv6 lel)
type Keypair ¶
func GenerateKeys ¶
type PK ¶
func DecodePK ¶
Takes a string representation of a public key and returns the byte representation of it
type SK ¶
func DecodeSK ¶
Takes a string representation of a secret key and returns the byte representation of it
type ThisPeer ¶
Click to show internal directories.
Click to hide internal directories.