%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Copyright: 2010 Integrated Sytems Laboratory, ETH Zurich
%% http://www.iis.ee.ethz.ch/~sha3
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function round_const=keccak_round_constants(rounds_nr)
lfsr=1;
round_const=zeros(1,rounds_nr,'uint64');
for i=1:rounds_nr
for j=0:6
bit_position=bitshift(1,j)-1;
if(~isequal(bitand(lfsr,1),0))
round_const(i)=bitxor(round_const(i),bitshift(uint64(1),bit_position));
end
lfsr=counter(lfsr);
end
end
end