Seriously, if their goal was to make a profit on this, why would they give away a free version and advertise it prominently? The (at or near cost) dongle version is to give people without a smartphone an option. For everyone else, it is free.
No security is perfect, and Blizzard knows this. There exists a third party system that significantly increases security because it isn't at Blizzard - it is sitting on the customer's desk. A hacker would have to be in your living room to get the code.
It isn't 'mandatory' - if you don't want it, you'd still get the same level of security you'd get with any major online service.
Furthermore, this isn't about Blizzard's security, it is about yours. This is a counter to the sheer number of people who were getting their accounts hacked, not through compromises at Blizzard, but through trojans, obvious passwords and similar crappy personal security. This is an extra line of security on the customer's end.