/// <summary> /// Reverse byte order of each UInt32. /// </summary> private void LittleEndianStep(ref uint[] state) { for (int i = 0; i < 16; ++i) { state[i] = ByteUtil.ToUInt32LE(state[i]); } uint[] littleEndianState = (uint[])(state.Clone()); LittleEndianState.Add(littleEndianState); }
private void ClearIntermediateResults() { // matrices OriginalState.Clear(); OriginalStateDiffusion.Clear(); AdditionResultState.Clear(); AdditionResultStateDiffusion.Clear(); LittleEndianState.Clear(); LittleEndianStateDiffusion.Clear(); // qr QRInput.Clear(); QRInputDiffusion.Clear(); QRStep.Clear(); QRStepDiffusion.Clear(); QROutput.Clear(); QROutputDiffusion.Clear(); InputMessage.Clear(); Keystream.Clear(); KeystreamDiffusion.Clear(); Output.Clear(); OutputDiffusion.Clear(); }