The following correction was printed in the Guardian's Corrections and clarifications column, Monday 31 May 2010

The story below spoke of papal criticism of a 2007 Portuguese law allowing abortion. To clarify, what the 2007 law introduced was abortion on demand up to the tenth week of pregnancy.

The pope admitted today that the Catholic church was entirely responsible for the child abuse scandal that has spread across Europe, silencing conspiracy theorists in the church as he arrived in Portugal to be met by hundreds of protesters distributing condoms.

In his most strongly worded condemnation of the priests involved in paedophile cases, Pope Benedict said the church's greatest enemy was "sins from within", not the campaigners who have exposed its culture of laxity and secrecy.

"The greatest persecution of the church doesn't come from enemies on the outside but is born from the sins within the church," Benedict told journalists travelling with him to Portugal. "The church needs to profoundly relearn penitence, accept purification, learn forgiveness but also justice." It was a first sign that the pope was prepared to stop church officials trying to blame the abuse scandal on a supposed conspiracy hatched by outsiders, including pro-choice and pro-gay marriage groups.

Despite the Vatican's initially defensive response to reports of hundreds of cases of clerical abuse across Europe, Benedict has recently pledged the church will protect children and make abusive priests face justice. He has already accepted the resignations of several bishops who either admitted they had molested young people or covered up for priests who did.

In some countries, such as Spain, the church itself has begun to report suspected cases of sexual abuse to the police.

In Portugal today the pope was greeted by thousands of faithful lining the streets of Lisbon, alongside a protest against the Vatican's refusal to sanction the use of condoms as a way of fighting HIV and Aids.

The protest began as a modest Facebook group only seven weeks ago but has since become a nationwide campaign backed by thousands of mostly young people in one of the most devoutly Roman Catholic countries in Europe. "We never imagined that we would one day have 14,500 people supporting us," the campaigners said yesterday after their Facebook group, formed on 20 March, mushroomed into a full-scaled protest against the Vatican's stance on Aids.

Hundreds of those supporters turned up at 22 distribution points around Lisbon and the northern city of Porto in order to hand out some 28,000 free condoms today. "Millions of people are still dying around the world because of this virus," the campaigners said. "Our initiative is not an affront to the pope," one of the organisers, Diogo Figueira, said yesterday. "Aids is not a question of religion, but of public health." The pope's visit comes as Portugal, where 90% of people say they are Roman Catholics, increasingly turns its back on the Vatican's preaching. President Aníbal Cavaco Silva, who met the pope today, is expected to sign off shortly a bill passed by parliament that will make Portugal the sixth European country to permit gay marriages.

Portugal's centre-left Socialist government has also introduced a law allowing a judge to grant a divorce even if one spouse is against it. The same government, led by Prime Minister José Socrates, passed a law in 2007 finally allowing abortion in Portugal. Benedict sharply criticised the abortion law today, saying public officials must give "essential consideration" to issues that affect human life. "The point at issue is not an ethical confrontation between a secular and religious system, so much as a question about the meaning that we give to our freedom," he said.

Half a million people are expected at a mass at the shrine in Fatima, northern Portugal, on Thursday on the anniversary of the day in 1917 when three Portuguese shepherd children reported having visions of the Virgin Mary.

The condom campaign has promised to stay away from what, for devout Roman Catholics, is the holiest site in Portugal.