SSH keys aren't, IMHO, that complicated. (Of course, most things are easy when you know how to do them). Anyway, here's a DigitalOcean guide that seems pretty straight forward.
Learn SSH essentials, including servers, clients, and SSH keys, to securely connect to and manage remote systems.
www.digitalocean.com
The stuff at the beginning might prove useful to you for better understanding it, but I think you might be able to skip right to the section Generating and Working With SSH Keys. There's a table of contents on the left and you can just go to that part. I just skimmed the article, so, in case it doesn't mention it, in my opinion set up the key for a username and have that user be able to su to root (or use sudo, doas or mdo--assuming you're using FreeBSD, if using Linux sudo is probably easiest) rather than setting up an ssh key for root.