Najeeb Rehman, a senior policeman, said the attack, possibly the work of more than one suicide bomber, had taken place as worshippers left the mosque and walked towards a local hotel.
“We have found the body parts of the attackers,” he said.
Hospital sources in Peshawar, a sprawling, dusty city on Pakistan’s unstable frontier with Afghanistan, said at least 28 people had been wounded.
The explosion, which echoed around the city center, happened at a time when the government is trying to engage Pakistani Taliban militants in peace negotiations.
Any major assault on civilians or security forces could upset those efforts. Some radical Sunni splinter groups operate outside central Taliban control, and the Taliban were likely to distance themselves from the attack.
Writing by Maria Golovnina; Editing by Kevin Liffey