Microsoft почти наверняка имеет свою собственную реализацию.
SHA-1 - это (детерминистическая) хеш-функция, поэтому вы должны получить одинаковые результаты с двумя разными реализациями, если примените ее к одним и тем же входным данным.Если вы этого не сделаете, это не только означает, что две реализации различны, это также означает, что одна из них глючит.