Как начинающий пентестер, и вообще вайтишник, надо прочитать, запомнить какой алгоритм для чего используется, и для общего кругозора посмотреть как они уже реализованы в разных языках.
Для продвинутого уровня, можно прогнать либы с этими алгоритмами через анализаторы, потыкать самому на предмет типовых ошибок. Но вам это ещё рановато :)