Acredito que a implementação tem alguma coisa errada, pois o valor retornado não está batendo com o valor esperado pelo servidor.
Alguém saberia me esclarecer como fazer tal implementação???
Cuidado que 0 não é um elemento neutro no ou exclusivo.
E
entanglement
Desconfio que esteja acontecendo aquele maldito problema de que o byte do Java é o signed char do C ,ou seja, vai de -128 a +127. Isso faz com que, se o byte resultante for em hexadecimal algo entre 0x80 e 0xFF, apareça como negativo em vez do valor esperado no manual. Eu aconselharia retornar um int, em vez de um byte, para evitar surpresas desagradáveis.
Não é necessário se preocupar com o 0; 0 XOR x é sempre x.
Além disso, neste caso em particular é melhor usar um for, em vez de um while.
Embora o código gerado seja exatamente o mesmo, o for expressa melhor a operação de “executar a mesma operação sobre todos os elementos de uma coleção”.