Я хочу создать уникальный хеш (длиной 16 символов) строки произвольной длины. Есть ли хорошая библиотека, которая реализует MD5 или SHA-1 для C ++, с помощью которой я могу добиться этого? (и, возможно, пример того, как его использовать)
Принцип Pigeonhole объясняет, почему то, что вы просите, невозможно в отношении уникальности.
nss предоставляет ряд алгоритмов хеширования и криптографии и имеет более либеральную лицензию, чем OpenSSL.
Вам нужна библиотека openssl. Для этого у него есть реализации стандартных криптографических хешей.