Porphyria is caused by problems with how your body makes heme. Heme is found throughout the body, especially in your blood and bone marrow. Eight different enzymes are needed to make heme. If the body does not have enough of one of the enzymes, a person has porphyria.