Криптографическая функция, о которой вы думаете, называется «аутентификацией», и существует много устоявшихся подходов. Вы должны строго избегать изобретать свои собственные, особенно используя давно устаревший хеш, такой как MD5. Когда система шифрования аутентифицирована, она может обнаружить изменения в зашифрованном тексте.
Ваш лучший подход - использовать режим шифрованного аутентификации, такой как AES-GCM. Используется правильно, что сочетает в себе шифрование и аутентификацию в одной операции. При расшифровке аутентифицированной схемы дешифрование завершится неудачей, если был изменен текст шифра.
Если у вас нет доступа к AES-GCM, следующим вариантом является AES-CBC + HMAC, который использует более вездесущий AES-CBC со случайным IV и добавляет тип зашифрованного хэша (называемый HMAC) до конца сообщения, чтобы подтвердить его. Для проверки подлинности вам необходимо удалить HMAC, использовать его для проверки того, что зашифрованный текст не изменен, и затем продолжить обычную расшифровку. Эта схема обычно называется «шифровать, а затем MAC».
Детали реализации будут зависеть от вашего языка и фреймворков.