Biernacki jest absolwentem liceum ogólnokształcącego w Pruszczu Gdańskim oraz Wydziału Prawa i Administracji Uniwersytetu Gdańskiego (1985). Od 1980 działał w Ruchu Młodej Polski. W latach 80. był działaczem podziemnych struktur NSZZ "Solidarność". Od 1991 pełnił funkcję likwidatora majątku Polskiej Zjednoczonej Partii Robotniczej w Gdańsku. Wygrał kilka procesów o rewindykację majątku PZPR przejętego przez SdRP. W 1996 wojewoda gdański Henryk Wojciechowski (SLD) cofnął mu pełnomocnictwa do egzekwowania majątku od SdRP.
W 1997 zaangażował się w działalność w Akcji Wyborczej Solidarność. Został jej posłem z rekomendacji Prawicy Narodowej, a następnie należał do Komitetu Założycielskiego Ruchu Społecznego AWS. Był posłem na Sejm III kadencji z listy AWS (1997–2001). Przewodniczył Komisji ds. Służb Specjalnych, był współautorem ustawy powołującej Instytut Pamięci Narodowej. Od 7 października 1999 do 19 października 2001 sprawował funkcję ministra spraw wewnętrznych i administracji w rządzie Jerzego Buzka. W tym czasie stał się jednym z autorów wniosku o wznowienie śledztwa w sprawie tzw. moskiewskiej pożyczki. W okresie jego urzędowania utworzono Centralne Biuro Śledcze. W 2001 bez powodzenia kandydował do Senatu z ramienia Bloku Senat 2001.
Od 2002 związał się z Platformą Obywatelską. Od lutego 2002 do października 2004 był wicemarszałkiem województwa pomorskiego, pełnił też do 2005 mandat radnego sejmiku. W wyborach parlamentarnych w 2005 został posłem na Sejm V kadencji z okręgu gdyńskiego. 13 stycznia 2006 objął funkcję rzecznika w tzw. gabinecie cieni PO odpowiedzialnego za sprawy wewnętrzne i służby specjalne. 3 listopada 2005 został członkiem Sejmowej Komisji ds. Służb Specjalnych, w ramach rotacji był jej przewodniczącym. W wyborach parlamentarnych w 2007 po raz trzeci uzyskał mandat poselski, otrzymując 84 157 głosów. 20 lutego 2009 został przewodniczącym komisji śledczej do zbadania okoliczności porwania i zabójstwa Krzysztofa Olewnika. W wyborach do Sejmu w 2011 z powodzeniem ubiegał się o reelekcję, dostał 66 019 głosów.