ebsdiff creates a binary patch file using the bsdiff format. The enhancements to bsdiff are that it stores an MD5 hash of the original file (preventing accidental patching of the wrong file) and can limit the memory it uses while creating the patch file.