Not quite the answer you asked for BUT . . . I had this prob: In a "asynchronous" job I zipped the logs (primarily to reduce network load), copied them to standby and the unzip detected the corruption. What I think (pretty sure) was happening was that the zip was taking place as the log was still being written. My solution was to MOVE the logs to a different directory first. The move fails with a sharing violation if it is still being written - the log gets moved, zipped & copied in the next cycle.
(There is an init.ora param which will PUSH the logs to a remote location - presumably this will be synchronised correctly, but the logs will not be zipped.)