Trudność obliczeniowa i kryptografia Najtrudniejszymi przypadkami dla znanych metod klasycznych są zwykle duże, losowo dobrane liczby półpierwsze. Ich czynniki pierwsze mają zbliżoną długość bitową, lecz nie leżą zbyt blisko siebie. Właśnie takie liczby pojawiają się w zastosowaniach kryptograficznych. W RSA moduł publiczny jest iloczynem dwóch dużych liczb pierwszych. Bez znajomości tych czynników odwrócenie operacji używanej w systemie jest obliczeniowo trudne, co stanowi podstawę praktycznego bezpieczeństwa RSA.
W 2019 roku zespół badaczy, w którym uczestniczył m.in. Paul Zimmermann, rozłożył 240-cyfrową liczbę RSA-240 o długości 795 bitów. Obliczenia wymagały około 900 lat pracy pojedynczego rdzenia procesora, czyli około 900 rdzeniolat. Autorzy oszacowali, że moduł RSA o długości 1024 bitów wymagałby około 500 razy większego nakładu. W lutym 2020 roku rozłożono RSA-250, 250-cyfrową liczbę półpierwszą. Obliczenia wykonane z użyciem CADO-NFS wymagały około 2700 rdzeniolat pracy. Paul Zimmermann prowadzi zestawienie rekordów faktoryzacji, które wskazuje RSA-250 jako największy opublikowany rozkład liczby RSA wykonany algorytmem ogólnego przeznaczenia.