Journaling filesystems (such as Ext3 or ReiserFS) are now being used by
default by most Linux distributions. No secure deletion program that
does filesystem-level calls can sanitize files on such filesystems,
because sensitive data and metadata can be written to the journal,
which cannot be readily accessed. Per-file secure deletion is better
implemented in the operating system.
Encrypting a whole partition with cryptoloop, for example, does not
help very much either, since there is a single key for all the parti‐
tion.
Therefore wipe is best used to sanitize a harddisk before giving it to
untrusted parties (i.e. sending your laptop for repair, or selling your
disk). Wiping size issues have been hopefully fixed (I apologize for
the long delay).
Be aware that harddisks are quite intelligent beasts those days. They
transparently remap defective blocks. This means that the disk can
keep an albeit corrupted (maybe slightly) but inaccessible and
unerasable copy of some of your data. Modern disks are said to have
about 100% transparent remapping capacity. You can have a look at
recent discussions on Slashdot.
I hereby speculate that harddisks can use the spare remapping area to
secretly make copies of your data. Rising totalitarianism makes this
almost a certitude. It is quite straightforward to implement some sim‐
ple filtering schemes that would copy potentially interesting data.
Better, a harddisk can probably detect that a given file is being
wiped, and silently make a copy of it, while wiping the original as
instructed.