------------------------------------------------------------
-- Copyright: 2011 Integrated Sytems Laboratory, ETH Zurich
--            http://www.iis.ee.ethz.ch/~sha3
------------------------------------------------------------
library ieee;
use ieee.std_logic_textio.all;
use ieee.std_logic_1164.all;

package keccakpkg is

  constant HWIDTH : integer := 256;

  type state is array (0 to 4, 0 to 4) of std_logic_vector(63 downto 0);
  type sheet is array (0 to 4) of std_logic_vector(63 downto 0);
  type constants is array (0 to 23) of std_logic_vector(63 downto 0);
  type offsets is array (0 to 24) of integer;

  constant ROUNDCONSTANCES : constants :=
    (x"0000000000000001", x"0000000000008082", x"800000000000808A", x"8000000080008000",
     x"000000000000808B", x"0000000080000001", x"8000000080008081", x"8000000000008009",
     x"000000000000008A", x"0000000000000088", x"0000000080008009", x"000000008000000A",
     x"000000008000808B", x"800000000000008B", x"8000000000008089", x"8000000000008003",
     x"8000000000008002", x"8000000000000080", x"000000000000800A", x"800000008000000A",
     x"8000000080008081", x"8000000000008080", x"0000000080000001", x"8000000080008008");
  
  constant RHOOFFSETS : offsets := (0,1,62, 28,27,36,44,6,55,20,3,10,43,25,39,41,45,15,21,8,18,2,61,56,14);

end keccakpkg;

  

Generated on Tue Nov 22 15:16:34 CET 2011
Home