Во-первых, давайте уточним некоторые термины.
Цифровая подпись должна быть эквивалентна собственноручной подписи (более подробное описание и обзор см. В http://en.wikipedia.org/wiki/Digital_signature).
Когда цифровая подпись применяется к документу, вы получаете более высокий уровень гарантии подлинности документа (у вас есть лучшее представление, был ли документ подделан или нет).
Ответы Адама и Роберта относятся к методам проверки целостности документа (что документ остается неизменным). Хотя цифровая подпись также обеспечивает это, контрольная сумма (хэш) не обеспечивает подлинность.
Так что важно, чтобы мы установили потребности вашего «файла подписи». Я предполагаю, что вы говорите о цифровых подписях, а не о контрольных суммах, поскольку другие ответы касаются контрольных сумм.
Вы захотите составить отдельную подпись PKCS # 7 (жаргон - подпись стандартного формата, которая не содержит данных, поэтому она может храниться отдельно). Для этого я рекомендую использовать стандартную библиотеку, такую как OpenSSL (которая является переносимой).