The main drawback to this is that it'll only be a matter of time before spammers wise up. But that interval might be long enough for something better on the horizon, e.g. akismet gets a lot smarter, better blog posts on tracspam, etc.
Also, spammers might be deterred enough to give up and look elsewhere.
Another drawback is that some folks won't actually know the secret handshake. Hopefully those numbers are very small.
p.s. A variant to this that's more search-proof is some trivial haskell: