What are the advantages / disadvantages when comparing these tools?
It depends on your goals:
- Are you wiping really sensitive data none should ever see (e.g. medical information)?
- Are you just following a 'I should do this because it is right'?
- Or the even weaker 'I have to wipe to be rules compliant'.
In the last case (3: rules) add the requirements to your post so we can factor those in.
In case 2: For rotating HDDs I just tend to wipe the disks once and then whack them with a hammer. The last is mostly just so people do not grab them from the waste bins and then come back for support.
In case 1: (a secure wipe) I will try two things:
- If it is a SSD then I will tell the drive to secure erase itself. This is quick and safe. (Data on SSD's tend to be encrypted. Throwing away the key to that encryption makes the data worthless).
- If it is a rotating harddisk I will try the same (some model support the command, some do not). If it is not supported I'll use whatever tool I have at hand. Until now that mostly was dd because I am more familiar with it and it always was preinstalled,
Shred seems to be for wiping files. Which means it might well wipe the file but not previously deleted information on the disk. In which case I would not use it to wipe whole disks.
Disclaimer: I have not tried it It can shred /dev/sdb or other block devices. In which case it might well work.
The same is true for wipe.
That leaves 'dd', (or the not mentioned badblock) and secure erase by the drive itself.
The last can be done with a single command issued to the drive via hdparm or by booting from this liveCD. In the last case make sure that you wipe the right disk (e.g. only put the disk to wipe in the computer, then boot from the CD).