Пароли не зашифрованы, они хешируются. Существует большая разница. Вы не хотите шифровать пароли, так как, когда вы шифруете что-то, вы ожидаете, что сможете расшифровать его. С паролями вы никогда не хотите их расшифровывать: когда вы проверяете, что пользователь правильно ввел свой пароль, вы просто хешируете то, что они ввели, используя тот же алгоритм, а затем сравниваете хэши.
Django не использует какой-либо "странный" алгоритм для хеширования: он просто использует алгоритм sha1
плюс соль. Формат полностью описан здесь . Нет абсолютно никакой причины, по которой вы не могли бы воспроизвести это в .NET.