Documentation
¶
Index ¶
- Variables
- func NewDarkStarConn(c net.Conn, cipher cipher.AEAD) net.Conn
- func NewPacketConn(c net.PacketConn, ciph shadowaead.Cipher) net.PacketConn
- func NewReader(r io.Reader, aead cipher.AEAD) io.Reader
- func NewWriter(w io.Writer, aead cipher.AEAD) io.Writer
- func Pack(dst, plaintext []byte, ciph shadowaead.Cipher) ([]byte, error)
- func PublicKeyToBytes(pubKey crypto.PublicKey) ([]byte, error)
- func Unpack(dst, pkt []byte, ciph shadowaead.Cipher) ([]byte, error)
- type DarkStarClient
- func (a *DarkStarClient) Decrypter(salt []byte) (cipher.AEAD, error)
- func (a *DarkStarClient) Encrypter(salt []byte) (cipher.AEAD, error)
- func (a *DarkStarClient) KeySize() int
- func (a *DarkStarClient) PacketConn(conn net.PacketConn) net.PacketConn
- func (a *DarkStarClient) SaltSize() int
- func (a *DarkStarClient) StreamConn(conn net.Conn) net.Conn
- type DarkStarServer
- func (a *DarkStarServer) Decrypter(_ []byte) (cipher.AEAD, error)
- func (a *DarkStarServer) Encrypter(_ []byte) (cipher.AEAD, error)
- func (a *DarkStarServer) KeySize() int
- func (a *DarkStarServer) PacketConn(conn net.PacketConn) net.PacketConn
- func (a *DarkStarServer) SaltSize() int
- func (a *DarkStarServer) StreamConn(conn net.Conn) net.Conn
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrShortPacket = errors.New("short packet")
ErrShortPacket means that the packet is too short for a valid encrypted packet.
Functions ¶
func NewDarkStarConn ¶
NewConn wraps a stream-oriented net.Conn with cipher.
func NewPacketConn ¶ added in v1.0.0
func NewPacketConn(c net.PacketConn, ciph shadowaead.Cipher) net.PacketConn
NewPacketConn wraps a net.PacketConn with cipher
func Pack ¶ added in v1.0.0
func Pack(dst, plaintext []byte, ciph shadowaead.Cipher) ([]byte, error)
Pack encrypts plaintext using Cipher with a randomly generated salt and returns a slice of dst containing the encrypted packet and any error occurred. Ensure len(dst) >= ciph.SaltSize() + len(plaintext) + aead.Overhead().
func PublicKeyToBytes ¶ added in v1.0.0
Types ¶
type DarkStarClient ¶
type DarkStarClient struct {
// contains filtered or unexported fields
}
func NewDarkStarClient ¶
func NewDarkStarClient(serverPersistentPublicKey string, host string, port int) *DarkStarClient
func (*DarkStarClient) Decrypter ¶
func (a *DarkStarClient) Decrypter(salt []byte) (cipher.AEAD, error)
func (*DarkStarClient) Encrypter ¶
func (a *DarkStarClient) Encrypter(salt []byte) (cipher.AEAD, error)
func (*DarkStarClient) KeySize ¶
func (a *DarkStarClient) KeySize() int
func (*DarkStarClient) PacketConn ¶
func (a *DarkStarClient) PacketConn(conn net.PacketConn) net.PacketConn
func (*DarkStarClient) SaltSize ¶
func (a *DarkStarClient) SaltSize() int
func (*DarkStarClient) StreamConn ¶
func (a *DarkStarClient) StreamConn(conn net.Conn) net.Conn
type DarkStarServer ¶
type DarkStarServer struct {
// contains filtered or unexported fields
}
func NewDarkStarServer ¶
func NewDarkStarServer(serverPersistentPrivateKey string, host string, port int) *DarkStarServer
func (*DarkStarServer) Decrypter ¶
func (a *DarkStarServer) Decrypter(_ []byte) (cipher.AEAD, error)
func (*DarkStarServer) Encrypter ¶
func (a *DarkStarServer) Encrypter(_ []byte) (cipher.AEAD, error)
func (*DarkStarServer) KeySize ¶
func (a *DarkStarServer) KeySize() int
func (*DarkStarServer) PacketConn ¶
func (a *DarkStarServer) PacketConn(conn net.PacketConn) net.PacketConn
func (*DarkStarServer) SaltSize ¶
func (a *DarkStarServer) SaltSize() int
func (*DarkStarServer) StreamConn ¶
func (a *DarkStarServer) StreamConn(conn net.Conn) net.Conn
Click to show internal directories.
Click to hide internal directories.