Many US banks will text or email you a one-time authentication code. It's certainly a lot cheaper than buying a piece of hardware.
They aren't doing it this way...why?
In a five year period we can get one superb programming language. Only we can't control when the five year period will begin.