I need a minimal diff for similar 1000 byte blocks. These blocks will have at most 20% of the bits different. The flipped bits will be like radio static -- randomly flipped bits with a uniform distribution over the whole block. Here's my pseudo code using XOR and lzo compression:
minimal_diff=lzo(XOR(block1,block2))
Since the blocks are small, I'm using lzo's compression with the hope that this compression format has minimal boilerplate.
I have reviewed algorithms such as xdelta and bsdiff, but these will not work for random static noise like this. These are more oriented around finding shifted sequences of bytes.
Can error correcting codes work here for creating a minimal diff? How exactly?
Exact algorithms would be nice. If it's just a research paper theory and not implemented then I'm not interested.
NOTE: The similar bits in each block line up. There is no shifting. There is just some random noise bit flips that differentiate the blocks.