v0.0.0-...-8b1022e Latest Latest

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

Go to latest
Published: Jun 17, 2016 License: Apache-2.0, BSD-3-Clause Imports: 0 Imported by: 0



Package salsa provides low-level access to functions in the Salsa family.



This section is empty.


View Source
var Sigma = [16]byte{'e', 'x', 'p', 'a', 'n', 'd', ' ', '3', '2', '-', 'b', 'y', 't', 'e', ' ', 'k'}

Sigma is the Salsa20 constant for 256-bit keys.


func Core208

func Core208(out *[64]byte, in *[64]byte)

Core208 applies the Salsa20/8 core function to the 64-byte array in and puts the result into the 64-byte array out. The input and output may be the same array.

func HSalsa20

func HSalsa20(out *[32]byte, in *[16]byte, k *[32]byte, c *[16]byte)

HSalsa20 applies the HSalsa20 core function to a 16-byte input in, 32-byte key k, and 16-byte constant c, and puts the result into the 32-byte array out.

func XORKeyStream

func XORKeyStream(out, in []byte, counter *[16]byte, key *[32]byte)

XORKeyStream crypts bytes from in to out using the given key and counters. In and out may be the same slice but otherwise should not overlap. Counter contains the raw salsa20 counter bytes (both nonce and block counter).


This section is empty.

Jump to

Keyboard shortcuts

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