I suppose that could work. I'm just still a bit squiffy on the proposals I've seen.
I am skeptical of more complex algorithms. But one that simply varifies that the account is "in network" is good enough to stop spam. If one of your friends or friend's friends etc is an idiot and keeps friending bots, keep that friend but ignore their contacts. Spam vector closed.