Мне понадобилась реализация BCrypt при перемещении чего-либо из PostgreSQL (в котором есть pg_crypto) в SQLite (в котором его нет), поэтому я написал свой собственный. Видя из этого сообщения, я не единственный, кому это нужно, я решил дать ему лицензию и выпустить ее. URL-адрес:
http://zer7.com/software.php?page=cryptsharp
Реализация Blowfish, стоящая за ней, является портом общедоступной реализации Брюса Шнайера C и успешно выполняется во всех официальных тестовых векторах.
Код BCrypt, который я написал сам на основе спецификации. Я также создал PHP-скрипт, который генерирует случайные пароли длиной от 0 до 100 и солит, шифрует их и выводит их в тестовый файл. Код C # до сих пор соответствует этим 100% времени. Вы можете использовать скрипт и протестировать его самостоятельно.
Библиотека также включает код PBKDF2, который работает для любого HMAC, в отличие от реализации .Net только для SHA-1 (добавлено сегодня - я собираюсь вскоре сделать SCrypt на C #, для чего требуется PBKDF2 с HMAC-SHA256). Если хотите, вы можете сами составить схему, основанную на этом.