C#で文字列をSHA512にするには?

文字列を受け取り、それをsha512する関数を書こうとしているのですが、以下のような感じでしょうか?

public string SHA512(string input)
{
     string hash;

     ~magic~

     return hash;
}

マジックはどうすればいいのでしょうか?

512/8 = 64`なので、64は確かに正しいサイズです。おそらく、SHA512アルゴリズムの後で*16進数に変換したいのでしょう。

https://stackoverflow.com/questions/311165/how-do-you-convert-byte-array-to-hexadecimal-string-and-vice-versa-in-c も参照してください。

解説 (5)

128を期待する理由がよくわからない。

1バイトは8ビット。64バイトです。8 * 64 = 512ビットのハッシュです。

解説 (0)

MSDNドキュメント]1より:
SHA512Managedアルゴリズムのハッシュサイズは、512ビットです。

解説 (0)