W 1972 obronił w Instytucie Historii PAN pracę doktorską napisaną pod kierunkiem Aleksandra Gieysztora o pieczęciach książąt mazowieckich, a w 1993 otrzymał stopień doktora habilitowanego (Polskie herby ziemskie. Geneza, treści, funkcje). Tytuł profesora otrzymał natomiast 16 grudnia 1997.
Działalność dydaktyczna Okresowo w latach 1976–1990 wykładał w Instytucie Historii Uniwersytetu Warszawskiego, w latach 1996-1998 w Wyższej Szkole Humanistyczno-Przyrodniczej w Sandomierzu, a w latach 1998-2007 w Mazowieckiej Wyższej Szkole Humanistyczno-Pedagogicznej w Łowiczu. Był również przewodniczącym Rady Archiwalnej Naczelnej Dyrekcji Archiwów Państwowych od 1992.
Działalność w Polskim Towarzystwie Heraldycznym Był członkiem Polskiego Towarzystwa Historycznego, współtwórcą Sekcji Genealogii i Heraldyki tegoż. Należał do ścisłego grona założycieli Polskiego Towarzystwa Heraldycznego, założonego 15 czerwca 1987, a ostatecznie zatwierdzonego przez władze 4 maja 1988. Na pierwszym walnym zgromadzeniu, które odbyło się 15 czerwca 1988, został wybrany na prezesa tego towarzystwa, którym pozostał aż do śmierci. W 1995 był głównym wnioskodawcą ustanowienia Nagrody imienia Adama Heymowskiego, której był wieloletnim przewodniczącym jury.