__peter__ at web.de
Thu Oct 16 23:16:53 CEST 2008
> I write a simple encoder in python and Java; they do the same
> computations, with the same inputs: however they won't produce the same
> Let me explain with code.
> First of all, you need a test file for input:
> $ dd if=/dev/urandom of=test.img bs=1048576 count=1
> I have attached the code.
> As you can see we have xor-red the same inputs (bitlists are the same,
> thus the selected blocks to xor are the same - you can easily see it,
> whenever a block is xor-red both programs will print out its hash).
> But here comes the strange: the random_block that the
> create_random_block function returns is not the same: in Java this block
> has an hash which is different from the Python one.
> random_block = ['0']*blocksize
random_block = ['\0']*blocksize
As John Machin already told you in another thread -- the character "0" is
not the same as the 0-byte "\0".
More information about the Python-list