I really need help in the right direction
9:49 LTE Done 1 of 5 Challenge 1:LFS A common technique for obfuscating data is to use exclunive-or OR) with some key it is inepemsive and symmetric. A preblem occurs when this is used on le formats ke portable executable where there are many nul bytes, since X0Ring nuils with the key ends up writing the key out A slightly more complex algorithm uses a Linear Feedback Shift Register [UFSR) to produce a key stream which willbe XORed with the data. Ageneric LFSR is fF is the value which represents the LFSR feedback and S is the current state of the LFSR, the next state of the UFSR is computed as follows if the lowest bit of Siso s 51 fthe lowest bit of S is 1:-(S 1)F For this challenge, you'll be using an LFSR with the feedback value O7654321 The UFSR is initialzed with a value and stepped to produce the key stream, The next key value is read from the UFSR affer eight steps, with the actual key being the lowest byte of the eurrent LFSR value. For example, the initial value of the LFSR is ex, then next value after stepping i eit times will be ee9243#425, meaning that the first key bne isea25. t! the first byte of the input 60x4L the first byte of output will be Os64. Your task is to implement this algorithm (both UFSR and the XOR). We're only interested in algorithm mplementationg other code will be dscarded The function should adhere to one of following signatures: CAC+ unsigned char Crypt(unsigned char "data, int datalength, unsied int initialvalue) static bytel) Cryt Python | Crypt(data, initialvalue) # returns byte string static byte[] Crypt Example Tests datalength initialValue 12145678 datalength Submit Source code containing your implementation of the LFSR based encoding routine Page 2ofs 9:49 LTE Done 1 of 5 Challenge 1:LFS A common technique for obfuscating data is to use exclunive-or OR) with some key it is inepemsive and symmetric. A preblem occurs when this is used on le formats ke portable executable where there are many nul bytes, since X0Ring nuils with the key ends up writing the key out A slightly more complex algorithm uses a Linear Feedback Shift Register [UFSR) to produce a key stream which willbe XORed with the data. Ageneric LFSR is fF is the value which represents the LFSR feedback and S is the current state of the LFSR, the next state of the UFSR is computed as follows if the lowest bit of Siso s 51 fthe lowest bit of S is 1:-(S 1)F For this challenge, you'll be using an LFSR with the feedback value O7654321 The UFSR is initialzed with a value and stepped to produce the key stream, The next key value is read from the UFSR affer eight steps, with the actual key being the lowest byte of the eurrent LFSR value. For example, the initial value of the LFSR is ex, then next value after stepping i eit times will be ee9243#425, meaning that the first key bne isea25. t! the first byte of the input 60x4L the first byte of output will be Os64. Your task is to implement this algorithm (both UFSR and the XOR). We're only interested in algorithm mplementationg other code will be dscarded The function should adhere to one of following signatures: CAC+ unsigned char Crypt(unsigned char "data, int datalength, unsied int initialvalue) static bytel) Cryt Python | Crypt(data, initialvalue) # returns byte string static byte[] Crypt Example Tests datalength initialValue 12145678 datalength Submit Source code containing your implementation of the LFSR based encoding routine Page 2ofs