21 U.S. Code § 884 - Immunity and privilege
(a) Refusal to testify
Whenever a witness refuses, on the basis of his privilege against self-incrimination, to testify or provide other information in a proceeding before a court or grand jury of the United States, involving a violation of this subchapter, and the person presiding over the proceeding communicates to the witness an order issued under this section, the witness may not refuse to comply with the order on the basis of his privilege against self-incrimination. But no testimony or other information compelled under the order issued under subsection (b) of this section or any information obtained by the exploitation of such testimony or other information, may be used against the witness in any criminal case, including any criminal case brought in a court of a State, except a prosecution for perjury, giving a false statement, or otherwise failing to comply with the order.
(b) Order of United States district court
In the case of any individual who has been or may be called to testify or provide other information at any proceeding before a court or grand jury of the United States, the United States district court for the judicial district in which the proceeding is or may be held shall issue, upon the request of the United States attorney for such district, an order requiring such individual to give any testimony or provide any other information which he refuses to give or provide on the basis of his privilege against self-incrimination.
(c) Request by United States attorney
A United States attorney may, with the approval of the Attorney General or the Deputy Attorney General, the Associate Attorney General, or any Assistant Attorney General designated by the Attorney General, request an order under subsection (b) of this section when in his judgment—
(1) the testimony or other information from such individual may be necessary to the public interest; and