MAC (например HMAC) подтверждает целостность и аутентичность при общем секрете; цифровая подпись на асимметрии доказывает авторство и целостность с возможностью проверки публичным ключом третьей стороной. Подпись даёт non-repudiation в модели PKI; MAC — нет, если секрет у обеих сторон.
Разбор
- TLS использует оба семейства механизмов на разных этапах.
- Подпись кода (code signing) — типичный кейс асимметрии.
- Утечка HMAC-ключа позволяет подделывать MAC.
- Выбор зависит от модели доверия и распределения ключей.
Итог
MAC — общий секрет; подпись — пара ключей и проверяемость третьей стороной.