Witnesses told Israel's Yedioth Internet Web site the first explosion triggered several other blasts in nearby vehicles that were also carrying rockets and ammunition.
Estimates of the number of dead ranged from seven to 19.
Hamas blamed an Israeli helicopter, but the Israeli military denied involvement and the Palestinian Interior Ministry said the blast was set off by the mishandling of explosives.
The rally was held in the Jebaliya refugee camp, one of the last military-style parades before a ban on flaunting weapons in public — agreed to by all militant groups — takes effect Saturday evening.
Witnesses said participants, including children, crowded around the pickup truck just before the explosion. The witnesses said the truck carried two homemade rockets.
One man, who only gave his first name, Hussam, said he helped pull three men out of the pickup, two of them dead and one still alive. The side of the pickup was charred.
The witness said he saw five dead children nearby. Dozens more were wounded. The Hamas military wing, Izzedine al Qassam, is popular with youngsters and when the pickup with the gunmen arrived at the rally, many crowded around the vehicle.
After the blast, men carried bodies wrapped in blankets and body parts to nearby cars.
At Shifa Hospital in Gaza, doctors treated patients on the emergency room floor because they ran out of beds. Masked Hamas men wheeled in casualties, including children.
The truck was not heavily damaged by the blast.
One witness, Hazem Abu Rashad, 18, said the truck had two rockets in its bed. Three militants rode in the back and at least three more were inside, he said.
"There was smoke all over, and then we saw people in pieces, but we couldn't make out what really happened," he said.
Also Friday, Palestinians temporarily opened the crossing between Gaza and Egypt, taking control of a border for the first time in their history. Palestinians hoped the two-day opening would set a precedent and pressure Israel to reach a permanent border agreement with them.
It was the first time Palestinians crossed the Gaza border without Israeli supervision in 38 years, reports CBS News Correspondent Robert Berger. Israel still wants supervision of the border, fearing that weapons and terrorists could be smuggled across the border. Israeli and Palestinian negotiators are seeking a compromise.
Earlier, Israeli forces killed three Palestinian gunmen in a West Bank raid.
In the meantime, Palestinians are to use an alternative crossing in Israel, which will open next week.
Israel, however, did not object to the Palestinian plan to open Rafah for two days starting Friday, mainly to allow the passage of people seeking medical treatment or studying or residing abroad.
Several thousand travelers arrived at Rafah on Friday morning, turning over travel documents to Palestinian border police and waiting for border officials to call them to ride buses that would take them to the Rafah terminal and then to Egypt. Some travelers sat on suitcases, napping as they waited.
Inside the gate, new X-ray equipment was in place, and plastic still covered new chairs in the air-conditioned waiting area.
"This is the first time we cross without the Israelis standing over our heads, and that indeed is a blessing," said Manal Hatem, 36, who arrived with her 11-month-old baby and a sister-in-law en route to a religious pilgrimage to Mecca, Saudi Arabia.
Thousands of Palestinians busted through the Gaza-Egypt border last week after Israel withdrew.
Israeli Foreign Ministry spokesman Mark Regev said Israel was concerned by the border chaos last week and does not want the crossing permanently reopened until security is upgraded.
Rafah is important to the economic recovery of Gaza, which was devastated by nearly five years of Israeli-Palestinian fighting. Stable border arrangements there would encourage foreign investment in Gaza and ensure the free flow of people, long cooped up under Israeli travel restrictions.
On Thursday, Israeli Defense Minister Shaul Mofaz indicated Israel would speed up its plans to reopen Rafah, probably by January.
Also Friday, Israeli forces killed three Palestinian gunmen in a West Bank raid.
Israeli forces entered the village of Ilar near Tulkarem after midnight and surrounded a building to arrest senior Islamic Jihad militants inside, the military said. Three gunmen fled and were killed after opening fire on pursuing Israeli troops, the military said.
Palestinians identified the dead men as Jamil Abu Saada, 25; Said Al-Ashkar, 23, a Palestinian policeman whose family is active in Islamic Jihad; and Raed Ajaj, 30, an Islamic Jihad leader from Tulkarem.
Palestinian leader Mahmoud Abbas called the killings a "dangerous and unjustified action. We are exerting efforts to maintain the cease-fire and they are doing this action without any reason."
Despite the cease-fire declared in February, Israel continues to target Islamic Jihad cells. Abbas said he protested to Israel and the United States.
Islamic Jihad has been involved in several attacks on Israeli targets since the cease-fire.