Guys,
I thought I'd weigh-in here real quick re. this.
The renaming of Nandroid backups to names that include spaces or some special characters will indeed cause the MD5 mismatch error message that the OP reported.
This is true for both Amon_RA and ClockworkMod custom recoveries.
The reason for this is that the custom recoveries try to pass the Nandroid backup filename to the md5sum utility and when there are characters that are "unfriendly" to the parsing mechanism (they are different between Amon_RA and ClockworkMod), the md5sum will return a non-zero error, basically because it simply cannot find / open the Nandroid backup directory.
Amon_RA passes the name of the Nandroid backup directory via an sh shell to the nandroid-mobile.sh script. If the name contains characters that are meaningful to the shell (i.e., spaces, ampersands, asterisks, etc.--i.e., metacharacters), then the filename that the nandroid-mobile.sh script receives will be truncated or modified. Then, when the md5sum command is invoked with the bad filename, you'll get an error.
The same is basically true with ClockworkMod, except that the directory name that gets passed is used directly in the md5sum invocation (via a _system call):
Code:
ui_print("Checking MD5 sums...\n");
sprintf(tmp, "cd %s && md5sum -c nandroid.md5", backup_path);
if (0 != __system(tmp))
return print_and_error("MD5 mismatch!\n");
If the directory name doesn't resolve properly (a space character will, of course, terminate the name), then you'll get the above error.
So, here's the "tl;dr":
just use simple alpha (a-z, A-Z), numeric (0-9), dashes and underscores for your Nandroid backups. You can use whatever utility you want to do the renaming, just keep it clean and simple.
Cheers!