A component approach is - IMHO - nonsense.
You'd better go with a a hardened MCU, with known-to-work read protection. If you are creating such a great piece of hardware that everyone is wanting to copy it, there are protected MCUs with layers above the flash memory that are almost impossible to remove without destroying the contents.
However, that has to be some genius level software control implemented. Otherwise, probing out the black box in a not too complex system is possible.
After all, you can hardly protect your hardware design, there always is a way to recreate it.
Removing IC markings and potting with something nasty, like 2-component hard epoxy with embedded quartz sand might stop most people.