Ну, криптографический хеш файла - это, вероятно, самое общее решение.И, на самом деле, если файл подписан, хэш уже существует, в форме подписи.(Вам не нужно «проверять» подпись, просто признайте, что это «уникальный» идентификатор, который может раз или два в эпоху юниверса не быть действительно уникальным.)
Если файл не является 'Если вы подписали, вы все еще можете (в меру) легко вычислить хеш, используя java.security.MessageDigest.