Tory leadership hopeful Michael Gove criticised "middle-class professionals" who took drugs and wanted them to be legalised in a 1999 column for The Times newspaper, it has emerged.
The former journalist has come under fire this weekend after admitting that he took cocaine "on several occasions" 20 years ago.
He has said he "deeply regrets" using the drug and acknowledged it was "a mistake".
In a column for The Times just before the turn of the millennium, the now-Environment Secretary criticised Channel 4 for plans to mark the occasion with a night of programmes about cocaine and said there were three reasons preventing him from "joining London's liberal consensus".
"The first is my belief that the energy with which so many journalists campaign for legalisation is driven not by logic but emotion. Guilt in particular," he wrote.
"There is no greater sin in journalistic eyes than hypocrisy. It justifies a score of tabloid stings, a hundred broken careers. How dare the minister endorse family values while himself straying? And how can I live with my occasional spliff unless I use my column to campaign for legalising drugs?"
But a "greater sin than hypocrisy" was "the refusal to uphold values because one may oneself have fallen short of them", he said.
The consequences of drug use to "middle-aged professionals" may be easier to cope with than to those from less fortunate backgrounds, he warned.
Mr Gove also highlighted the effect of drugs liberalisation in The Netherlands, claiming the country had twice as many heroin addicts per capita as Britain, and said his third reason against relaxing policy was that there was no "countervailing force against the power of drugs" other than the law itself.
According to the Mail on Sunday, Mr Gove hosted a party the night before the column was published in which the Class A drug was allegedly taken by guests.
Following the revelations about his past drug use, some MPs pushed for Mr Gove to campaign for reform and the potential decriminalisation of some drugs.
Tory former prisons minister Crispin Blunt said Mr Gove's drug use "whilst illegal, was wholly unexceptional" and said he should have acknowledged the need for reform of the law.
"The time has come for all serious politicians to engage with the debate around these issues," said Mr Blunt, chairman of the all-party parliamentary group for drug policy reform.
"Sadly Michael – like others before him – has delivered a politically crafted and deeply unconvincing handwringing statement of regret for committing a victimless crime. The victims have largely been created by policy and the law.
"As a leadership candidate he should have used the opportunity of his own confession to join a vital and urgent policy debate."
Green MP Caroline Lucas said it was "rank hypocrisy" to admit to "mistakes" while "backing policies that perpetuate harm".
But Labour leader Jeremy Corbyn said he was "unconcerned about Michael Gove's past life or behaviour", while leadership rival Dominic Raab said his admission should not prevent him from running to be the next prime minister.
Mr Gove told the Daily Mail: "I took drugs on several occasions at social events more than 20 years ago.
"At the time I was a young journalist. It was a mistake. I look back and think 'I wish I hadn't done that'.
"It was 20 years ago and yes, it was a mistake. But I don't believe that past mistakes disqualify you."