Если SHA256 этих двух документов совпадает
то по определению устойчивость к столкновениям, эти два документа идентичны, или (включая и ) нарушена устойчивость к коллизиям SHA-256. Среди экспертов существует консенсус в отношении того, что устойчивость к коллизиям SHA-256 невозможно взломать с помощью доступных сегодня средств (то есть никто не может создавать отдельные документы с одним и тем же хэшем SHA-256).
Следовательно, согласно цитируемому предположению, существует консенсус экспертов в отношении того, что эти два документа должны быть идентичными; что, безусловно, является самым слабым местом в демонстрации, поскольку зависит от того, как хранятся (обязательно цифровые) документы, а также получается и сравнивается их хэш.
Вышеизложенное отвечает на поставленный вопрос, но мы теперь сказал что-то совсем другое:
когда подпись.txt (расширенная электронная подпись) расшифровывается с использованием предоставленного открытого ключа, это приводит к хэшу документа SHA256, который соответствует хэшу SHA256 FinalTestament.txt.
Это неправильная терминология: открытым ключом никогда не расшифруешь. Цель шифрования состоит в том, чтобы преобразовать часть данных, чтобы сделать их неразборчивыми до тех пор, пока они не будут расшифрованы держателем некоторого секрета; и, как следует из названия, открытый ключ не является секретным. Здесь мы не расшифровываем. Мы должны читать: "signature.txt является проверено используя предоставленный открытый ключ».
И в целом неверно, что проверка подписи восстанавливает хэш, а затем сравнивает его с хэшем документа, чтобы решить, применима ли подпись к этому документу. Это правильно для учебника RSA-подписи хэша¹, RSA-FDH, и (хотя это и необычно) может быть исправлено для RSASSA-PKCS1-v1_5. Но это не относится ко многим другим схемам подписи: РСАССА-ПСС, ECDSA, EdDSA, DSA, где хэш (или документ для проверки) должен быть входом процесса проверки подписи. Таким образом, мы, вероятно, должны прочитать: «signature.txt является проверено против хэш FinalTestament.txt с использованием предоставленного открытого ключа"
Самое главное: ничто в постановке задачи или дополнительных комментариях не говорит о том, что открытый ключ является открытым ключом умершего человека (и, если мы хотим быть придирчивыми, предназначенным для используемой системы проверки подписи). Таким образом, проверка, сделанная с помощью этого открытого ключа, не является технически действительным признаком того, что это лицо одобрило завещание.
Даже если мы добавим, что открытый ключ принадлежит умершему, нет никаких указаний на то, что FinalTestament.txt является окончательный завещание²; что подпись не была сделана под принуждением; что умерший имел правоспособность составить действительное завещание; что используемая система подписи является юридически обязательной (правила для этого различаются).
¹ Но стандартная подпись RSA хэша SHA-256 уязвима для экзистенциальная подделка, из-за Атака Десмедта и Одлызко.
² Или даже единственное завещание, которое сверяется с подписью.txt и открытым ключом: некоторые системы подписи, такие как оригинальная короткая подпись Шнорра, позволяют подписавшему создавать очень разные документы с одинаковой подписью. Таких систем подписи лучше избегать в юридических контекстах!