/*****************************************************************************/
/* */
/* LEFT-SHIFT 256 BITS */
/* 10/16/09 (dkc) */
/* */
/*****************************************************************************/
void lshift256(unsigned int A[8], unsigned int B[8], unsigned int shift) {
B[0]=A[0];
B[1]=A[1];
B[2]=A[2];
B[3]=A[3];
B[4]=A[4];
B[5]=A[5];
B[6]=A[6];
B[7]=A[7];
while (shift>31) {
B[0]=B[1];
B[1]=B[2];
B[2]=B[3];
B[3]=B[4];
B[4]=B[5];
B[5]=B[6];
B[6]=B[7];
B[7]=0;
shift=shift-32;
}
if (shift==0)
return;
B[0]=(B[0]<<shift)|(B[1]>>(32-shift));
B[1]=(B[1]<<shift)|(B[2]>>(32-shift));
B[2]=(B[2]<<shift)|(B[3]>>(32-shift));
B[3]=(B[3]<<shift)|(B[4]>>(32-shift));
B[4]=(B[4]<<shift)|(B[5]>>(32-shift));
B[5]=(B[5]<<shift)|(B[6]>>(32-shift));
B[6]=(B[6]<<shift)|(B[7]>>(32-shift));
B[7]=B[7]<<shift;
return;
}