If you agree that cigarette smoking is something we’d rather be rid of I may have a possible solution:
Set a cut-off date for everyone to register their desire to have the right to buy cigarettes, issue all registered people with a card and make it illegal to buy cigarettes without one.
You could make it irrespective of age just in case you’ve go someone currently underage who is addicted.
Some people who are looking for an excuse to stop smoking will take the opportunity to decline registration as an incentive. Some people who don’t (or rarely) smoke will register just in case they want to in the future.
There will be the inevitable black market for cigarettes but I would imagine it would be tiny compared to the drug market due to the fact that starting smoking is a fairly stomach-churning business with little ‘pleasure incentive’ to pay the inflated black market prices and break the law.
Within a generation or two I would imagine only a few hobby smokers would remain and once everyone who originally registered for the card has died (presumably early) you make it illegal to buy or sell cigarettes. So few people would actually want to take up smoking that you’d not even have to bother policing it.
The “I’m not really a fascist disclaimer”:
I came up with this idea when I was a full-time smoker myself. I figured that whether I wanted to continue smoking, find an incentive to quit or, if I’d already quit, have an incentive to keep from smoking again it would be a win-win situation.