Well, Tenebrix' reasoning is essentially a more circumspect variant of what I wrote/what Wikipedia also states. The  reason it is resistant to efficient SoC/ASIC implementations (not so much GPU because of its increasing RAM) is its memory requirement. You can trade this against throwing much more significant computing power at it (to compute the vector again and again) and I'm somewhat convinced that some of the lower end ASICs actually go this route, but it's not a sensible trade-off, usually.