proto

package
v0.3.2 Latest Latest
Warning

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

Go to latest
Published: Oct 4, 2014 License: GPL-3.0-or-later Imports: 4 Imported by: 20

Documentation

Overview

Package proto contains the baseline message container and the endpoint crypto methods.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Header struct {
	Meta interface{} // Metadata usable by upper network layers
	Key  []byte      // AES key if the payload is encrypted (nil otherwise)
	Iv   []byte      // Counter mode nonce if the payload is encrypted (nil otherwise)
}

Baseline message headers.

type Message

type Message struct {
	Head Header // Baseline headers
	Data []byte // Payload in plain or ciphertext form
	// contains filtered or unexported fields
}

Iris message consisting of the payload and attached headers.

func (*Message) Decrypt

func (m *Message) Decrypt() error

Decrypts a ciphertext message using the given key and IV.

func (*Message) Encrypt

func (m *Message) Encrypt() error

Encrypts a plaintext message with a temporary key and IV.

func (*Message) KnownSecure

func (m *Message) KnownSecure()

Internal, used by the link package to assert known security.

func (*Message) Secure

func (m *Message) Secure() bool

Internal, used by the link package to verify security.

Directories

Path Synopsis
Package bootstrap is responsible for randomly probing and linearly scanning the local network (single interface) for other running instances.
Package bootstrap is responsible for randomly probing and linearly scanning the local network (single interface) for other running instances.
Package iris implements the iris communication primitives on top of scribe.
Package iris implements the iris communication primitives on top of scribe.
Package link contains the encrypted network link implementation.
Package link contains the encrypted network link implementation.
Package pastry contains a simplified version of Pastry, where proximity is not taken into consideration (i.e.
Package pastry contains a simplified version of Pastry, where proximity is not taken into consideration (i.e.
Package scribe contains a simplified version of Scribe, where no topic based ACLs are defined.
Package scribe contains a simplified version of Scribe, where no topic based ACLs are defined.
topic
Package topic implements a carrier topic tree with functionality to unicast, broadcast and load balance between nodes of the tree.
Package topic implements a carrier topic tree with functionality to unicast, broadcast and load balance between nodes of the tree.
Package session implements an encrypted data stream, authenticated through the station-to-station key exchange.
Package session implements an encrypted data stream, authenticated through the station-to-station key exchange.
Package stream wraps a TCP/IP network connection with the Go gob en/decoder.
Package stream wraps a TCP/IP network connection with the Go gob en/decoder.

Jump to

Keyboard shortcuts

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