This question sort of falls under the basic question of
"How much security should I incorporate in my product?"
There are many ways you can secure a product but I think that the general approach is to layer enough security such that the economics of buying the product are cheaper than the economics of breaking the security of that product.
Thus if you are selling a product worth $10 then you only need to incorporate a security system that would "cost" the hacker $15 and the incentive will be to buy the product rather than hack. Likewise for a product that costs $10,000 you could spend resources to ensure that the hacking "cost" was well over $10,000. However you would also need to factor in things such as the likelyhood of your broken product being served up on the Internet.
As long as the breaking costs are less than the product cost there will always be financial incentive to break your program. (So part of your development should be playing hacker and trying to figure out how easy it would be to break your own security)
But to play Devil's advocate, the people trying to break your program may be interested in the challenge and not be interested in economics, in which case it doesn't really matter how much security you layer on your product as eventually it will be hacked.