I found the remains a of a porcupine in the woods, with nothing left but quills and hair.
As porcupines are pretty well protected by their quills, what types of animals would be capable of killing them?
What animals can kill a porcupine?
Porcupines are covered with quills that painfully stick into almost any predator that tries to attack them. For this reason, porcupines do not have to fear being eaten by very many animals.
Three animals, however, has figured out how to eat porcupines. Bobcats, cougars and fishers have learned that a porcupine has no quills on its stomach. So one of these predators will sometimes kill and eat a porcupine by flipping it onto its back and biting into its vulnerable belly.
Source: What eats a porcupine?
Wolves in a pack can do this to porcupines. Once it has been turned over, the game is up.
Some mountain lions, in fact, seem to be especially fond of porcupines—perhaps they like the taste, perhaps porcupines are just easy prey, but whatever the reason, some cougars clearly seek them out. In fact, mountain lion predation of porcupines can be so intense, that its been speculated that they’ve wiped out local porcupine populations throughout the west. For example, Sweitzer et al. (1997) reported that a small population of 80 porcupines in Nevada was reduced to less than 5 animals in just three years—and that the primary reason was predation by mountain lions.
Source: Mountain Lions Versus Porcupines
According to the University of Michigan, Dept. of Zoology, porcupines are preyed on by lynx, bobcats, mountain lions, wolves, wolverines and great horned owls.
I'm surprised this reference doesn't mention the fisher, which I thought was the best known porcupine predator. I was also surprised to learn that wolves prey on porcupines.
A third thing that strikes me as odd is the number of references to pumas and bobcats...with no mention of the lynx. In fact, the lynx's range probably overlaps the porcupine's range more than any other member of the cat family; pumas and bobcats ranges into grasslands and deserts.
Trivia: Great horned owls are also the only predators that routinely prey on skunks.
Finally, your question obviously focuses on the common porcupine, which ranges across temperate and northern North America and Eurasia. However, other species of porcupines are found in South America and Africa, and they have many predators. If you check YouTube, you can probably find a video of a leopard dying of wounds inflicted by a crested porcupine it attacked. Snakes have also died after swallowing porcupines.
The answer to the question of what kills porcupines can be highly dependent on location.
Here in southeast Alaska porcupines regularly make their way into or near towns, villages, residential areas, recreational areas, and trails, so interactions with dogs can be common in areas where people frequent. Sometimes the porcupine is killed (I know one dog that has killed porcupines multiple times), but most encounters I've heard of end with the porcupine uninjured and the dog owner with a $400 vet bill if the dog has to be sedated to remove quills.
Source: The dozens of dogs and dog owners I know (including myself).