bchwallet: github.com/gcash/bchwallet/internal/zero Index | Files

package zero

import "github.com/gcash/bchwallet/internal/zero"

Package zero contains functions to clear data from byte slices and multi-precision integers.

Index

Package Files

array.go doc.go slice.go

func BigInt Uses

func BigInt(x *big.Int)

BigInt sets all bytes in the passed big int to zero and then sets the value to 0. This differs from simply setting the value in that it specifically clears the underlying bytes whereas simply setting the value does not. This is mostly useful to forcefully clear private keys.

func Bytea32 Uses

func Bytea32(b *[32]byte)

Bytea32 clears the 32-byte array by filling it with the zero value. This is used to explicitly clear private key material from memory.

func Bytea64 Uses

func Bytea64(b *[64]byte)

Bytea64 clears the 64-byte array by filling it with the zero value. This is used to explicitly clear sensitive material from memory.

func Bytes Uses

func Bytes(b []byte)

Bytes sets all bytes in the passed slice to zero. This is used to explicitly clear private key material from memory.

In general, prefer to use the fixed-sized zeroing functions (Bytea*) when zeroing bytes as they are much more efficient than the variable sized zeroing func Bytes.

Package zero imports 1 packages (graph) and is imported by 7 packages. Updated 2018-10-08. Refresh now. Tools for package owners.