(a) A party to an offense under this code may be required to furnish evidence or testimony about the offense.
(b) Evidence or testimony required to be furnished under this section, or information directly or indirectly derived from that evidence or testimony, may not be used against the party providing the evidence or testimony in a criminal case except for a prosecution of aggravated perjury or contempt.