crypto

package
v2.11.2+incompatible Latest Latest
Warning

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

Go to latest
Published: Dec 21, 2016 License: MIT Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrAuthenticationFailed = errors.New("Authentication failed.")
)

Functions

func NewAesDecryptionStream

func NewAesDecryptionStream(key []byte, iv []byte) cipher.Stream

NewAesDecryptionStream creates a new AES encryption stream based on given key and IV. Caller must ensure the length of key and IV is either 16, 24 or 32 bytes.

func NewAesEncryptionStream

func NewAesEncryptionStream(key []byte, iv []byte) cipher.Stream

NewAesEncryptionStream creates a new AES description stream based on given key and IV. Caller must ensure the length of key and IV is either 16, 24 or 32 bytes.

func NewChaCha20Stream added in v1.1.0

func NewChaCha20Stream(key []byte, iv []byte) cipher.Stream

NewChaCha20Stream creates a new Chacha20 encryption/descryption stream based on give key and IV. Caller must ensure the length of key is 32 bytes, and length of IV is either 8 or 12 bytes.

Types

type AEADAuthenticator added in v1.1.0

type AEADAuthenticator struct {
	cipher.AEAD
	NonceGenerator          BytesGenerator
	AdditionalDataGenerator BytesGenerator
}

func (*AEADAuthenticator) Open added in v1.1.0

func (v *AEADAuthenticator) Open(dst, cipherText []byte) ([]byte, error)

func (*AEADAuthenticator) Seal added in v1.1.0

func (v *AEADAuthenticator) Seal(dst, plainText []byte) ([]byte, error)

type AuthenticationReader added in v1.1.0

type AuthenticationReader struct {
	// contains filtered or unexported fields
}

func NewAuthenticationReader added in v1.1.0

func NewAuthenticationReader(auth Authenticator, reader io.Reader, aggressive bool) *AuthenticationReader

func (*AuthenticationReader) CopyChunk

func (v *AuthenticationReader) CopyChunk(b []byte) int

func (*AuthenticationReader) EnsureChunk

func (v *AuthenticationReader) EnsureChunk() error

func (*AuthenticationReader) NextChunk

func (v *AuthenticationReader) NextChunk() error

func (*AuthenticationReader) Read

func (v *AuthenticationReader) Read(b []byte) (int, error)

type AuthenticationWriter added in v1.1.0

type AuthenticationWriter struct {
	// contains filtered or unexported fields
}

func NewAuthenticationWriter added in v1.1.0

func NewAuthenticationWriter(auth Authenticator, writer io.Writer) *AuthenticationWriter

func (*AuthenticationWriter) Write

func (v *AuthenticationWriter) Write(b []byte) (int, error)

type Authenticator added in v1.1.0

type Authenticator interface {
	NonceSize() int
	Overhead() int
	Open(dst, cipherText []byte) ([]byte, error)
	Seal(dst, plainText []byte) ([]byte, error)
}

type BytesGenerator added in v1.1.0

type BytesGenerator interface {
	Next() []byte
}

type CryptionReader added in v1.1.0

type CryptionReader struct {
	// contains filtered or unexported fields
}

func NewCryptionReader

func NewCryptionReader(stream cipher.Stream, reader io.Reader) *CryptionReader

func (*CryptionReader) Read added in v1.1.0

func (v *CryptionReader) Read(data []byte) (int, error)

func (*CryptionReader) Release added in v1.11.1

func (v *CryptionReader) Release()

type CryptionWriter added in v1.1.0

type CryptionWriter struct {
	// contains filtered or unexported fields
}

func NewCryptionWriter

func NewCryptionWriter(stream cipher.Stream, writer io.Writer) *CryptionWriter

func (*CryptionWriter) Release added in v1.11.1

func (v *CryptionWriter) Release()

func (*CryptionWriter) Write added in v1.1.0

func (v *CryptionWriter) Write(data []byte) (int, error)

type NoOpBytesGenerator

type NoOpBytesGenerator struct {
	// contains filtered or unexported fields
}

func (NoOpBytesGenerator) Next

func (v NoOpBytesGenerator) Next() []byte

type StaticBytesGenerator

type StaticBytesGenerator struct {
	Content []byte
}

func (StaticBytesGenerator) Next

func (v StaticBytesGenerator) Next() []byte

Directories

Path Synopsis
GENERATED CODE.
GENERATED CODE.

Jump to

Keyboard shortcuts

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