Самая надёжная защита при которой нельзя скопировать информацию с флэшки - это вообще её туда не записывать
Но думаю Вам это не подойдёт.Если оттуда можно будет что-то прочитать (запустить на выполнение), то и скопировать это тоже можно будет.Советую сделать акцент на спец. ключе. Лучше чтобы он был аппаратный и без него программа не могла бы запуститься. А так - какая разница, скопируют вашу программу или нет, всё равно без ключа работать не будет...