full

package
v0.0.0-...-b7fcb3c Latest Latest
Warning

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

Go to latest
Published: Nov 14, 2016 License: BSD-3-Clause Imports: 9 Imported by: 3

Documentation

Overview

Package full implements the full white-box AES construction, with decomposed S-boxes. An attack on this construction is not implemented.

http://dl.acm.org/citation.cfm?id=2995314

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Construction

type Construction [41]*blockAffine

func GenerateKeys

func GenerateKeys(key, seed []byte) (out Construction, inputMask, outputMask encoding.BlockAffine)

GenerateKeys creates a white-boxed version of the AES key `key`, with any non-determinism generated by `seed`.

func Parse

func Parse(in []byte) (constr Construction, err error)

Parse parses a byte array into a white-box construction. It returns an error if the byte slice isn't long enough.

func (Construction) BlockSize

func (constr Construction) BlockSize() int

BlockSize returns the block size of AES. (Necessary to implement cipher.Block.)

func (Construction) Decrypt

func (constr Construction) Decrypt(_, _ []byte)

Decrypt is not implemented.

func (Construction) Encrypt

func (constr Construction) Encrypt(dst, src []byte)

Encrypt encrypts the first block in src into dst. Dst and src may point at the same memory.

func (*Construction) Serialize

func (constr *Construction) Serialize() []byte

Serialize serializes a white-box construction into a byte slice.

Jump to

Keyboard shortcuts

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