This is a method that has been done for hard ad-blocking for a several years. Instructions for doing this with ad sites is located at this site: Blocking Unwanted Connections with a Hosts File.
If you follow those instructions and install the updated hosts file, that will cut out most any ad site.
Then if you add this list of pr0n sites to the end of the modified "hosts" file, you will have a very effective way to eliminate most of the garbage.
Obviously, though, there are pr0n sites that pop up (no pun intended) all the time. If you understand what you're doing by following the instructions above, you can easily add any new sites to the end of your modified "hosts" file in order to keep it continuously up-to-date.
And, by the way, the total cost for this is NOTHING.
If you want to block these sites to protect kids/grandkids, just create a computer account for each of them...make them use that account...and make sure that the account doesn't have administrative permissions. Then it would be very difficult for them to modify the hosts file.
Blessings