Changes: ** Reference_Implementation/SHAvite3-512.h The lines: temp = state[j]; state[j] = state[j+4]; state[j+4] = state[j+8]; state[j+8] = state[j+12]; state[j+12] = temp; were replaced by: temp = state[j+12]; state[j+12] = state[j+8]; state[j+8] = state[j+4]; state[j+4] = state[j]; state[j] = temp; ** Optimized_32bit/SHAvite3.c and Optimized_64bit/SHAvite3.c The lines: u32 IV_384[16] = {0xCEB54AC9, 0xC36EA41F, 0x11D8B088, 0xBB38FF4F, 0xCF73711D, 0xAB282A6E, 0x19D120D7, 0x232F65CD, 0x0209951C, 0x984CE361, 0x91D48BE1, 0xCFF6BBAB, 0x4E31CF3A, 0x4691F157, 0xCC6E4644, 0x0AD83828}; u32 IV_512[16] = {0x6A14BA06, 0xEB784EBD, 0xAB3C0130, 0x63473C2D, 0xFA564CEB, 0x336D2629, 0xE24E213E, 0xDBD15E12, 0x5DA35195, 0xFEC384E7, 0xBE0B4A11, 0x6666ADE6, 0xB4FFED9D, 0xF3E9C1F4, 0x5E683CFA, 0xF34CD4E9}; were replaced by: u32 IV_384[16] = {0x71F48510, 0xA903A8AC, 0xFE3216DD, 0x0B2D2AD4, 0x6672900A, 0x41032819, 0x15A7D780, 0xB3CAB8D9, 0x34EF4711, 0xDE019FE8, 0x4D674DC4, 0xE056D96B, 0xA35C016B, 0xDD903BA7, 0x8C1B09B4, 0x2C3E9F25}; u32 IV_512[16] = {0xD5652B63, 0x25F1E6EA, 0xB18F48FA, 0xA1EE3A47, 0xC8B67B07, 0xBDCE48D3, 0xE3937B78, 0x05DB5186, 0x613BE326, 0xA11FA303, 0x90C833D4, 0x79CEE316, 0x1E1AF00F, 0x2829B165, 0x23B25F80, 0x21E11499}; ** Optimized_32bit/SHAvite3-512.h and Optimized_64bit/SHAvite3-512.h The line: oneround(state[4],state[5],state[6],state[7],state[8],state[9],state[10],state[11],state[12],state[13],state[14],state[15],state[0],state[1],state[2],state[3],x0,x1,x2,x3,y0,y1,y2,y3,rk,32); was replaced by: oneround(state[12],state[13],state[14],state[15],state[0],state[1],state[2],state[3],state[4],state[5],state[6],state[7],state[8],state[9],state[10],state[11],x0,x1,x2,x3,y0,y1,y2,y3,rk,32); The line: oneround(state[12],state[13],state[14],state[15],state[0],state[1],state[2],state[3],state[4],state[5],state[6],state[7],state[8],state[9],state[10],state[11],x0,x1,x2,x3,y0,y1,y2,y3,rk,96); was replaced by: oneround(state[4],state[5],state[6],state[7],state[8],state[9],state[10],state[11],state[12],state[13],state[14],state[15],state[0],state[1],state[2],state[3],x0,x1,x2,x3,y0,y1,y2,y3,rk,96); The line: oneround(state[4],state[5],state[6],state[7],state[8],state[9],state[10],state[11],state[12],state[13],state[14],state[15],state[0],state[1],state[2],state[3],x0,x1,x2,x3,y0,y1,y2,y3,rk,160); was replaced by: oneround(state[12],state[13],state[14],state[15],state[0],state[1],state[2],state[3],state[4],state[5],state[6],state[7],state[8],state[9],state[10],state[11],x0,x1,x2,x3,y0,y1,y2,y3,rk,160); The line: oneround(state[12],state[13],state[14],state[15],state[0],state[1],state[2],state[3],state[4],state[5],state[6],state[7],state[8],state[9],state[10],state[11],x0,x1,x2,x3,y0,y1,y2,y3,rk,224); was replaced by: oneround(state[4],state[5],state[6],state[7],state[8],state[9],state[10],state[11],state[12],state[13],state[14],state[15],state[0],state[1],state[2],state[3],x0,x1,x2,x3,y0,y1,y2,y3,rk,224); The line: oneround(state[4],state[5],state[6],state[7],state[8],state[9],state[10],state[11],state[12],state[13],state[14],state[15],state[0],state[1],state[2],state[3],x0,x1,x2,x3,y0,y1,y2,y3,rk,288); was replaced by: oneround(state[12],state[13],state[14],state[15],state[0],state[1],state[2],state[3],state[4],state[5],state[6],state[7],state[8],state[9],state[10],state[11],x0,x1,x2,x3,y0,y1,y2,y3,rk,288); The line: oneround(state[12],state[13],state[14],state[15],state[0],state[1],state[2],state[3],state[4],state[5],state[6],state[7],state[8],state[9],state[10],state[11],x0,x1,x2,x3,y0,y1,y2,y3,rk,352); was replaced by: oneround(state[4],state[5],state[6],state[7],state[8],state[9],state[10],state[11],state[12],state[13],state[14],state[15],state[0],state[1],state[2],state[3],x0,x1,x2,x3,y0,y1,y2,y3,rk,352); The line: oneround(state[4],state[5],state[6],state[7],state[8],state[9],state[10],state[11],state[12],state[13],state[14],state[15],state[0],state[1],state[2],state[3],x0,x1,x2,x3,y0,y1,y2,y3,rk,416); was replaced by: oneround(state[12],state[13],state[14],state[15],state[0],state[1],state[2],state[3],state[4],state[5],state[6],state[7],state[8],state[9],state[10],state[11],x0,x1,x2,x3,y0,y1,y2,y3,rk,416);