Documentation ¶
Overview ¶
Package full implements the full white-box AES construction, with decomposed S-boxes. An attack on this construction is not implemented.
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.
Click to show internal directories.
Click to hide internal directories.