Впровадити MAC з ключем SHA-1

Знайдіть реалізацію SHA-1 мовою, якою ви кодуєте.

Не обманюй. Це не спрацює.

Не використовуйте реалізацію SHA-1, яку вже надає ваша мова (наприклад, не використовуйте бібліотеку «Digest» у Ruby або не викликайте OpenSSL; у Ruby вам потрібен чистий Ruby SHA-1).

Напишіть функцію для автентифікації повідомлення під секретним ключем за допомогою секретного префікса MAC, який просто:

SHA1(key || message)

Переконайтеся, що ви не можете підробити повідомлення, не порушивши створений вами MAC, і що ви не можете створити новий MAC, не знаючи секретного ключа.