Coreclrプロジェクトでこれを使用しようとしています class ですが、SHA256Managedの正しいパッケージが見つからないようです。 System.Security.Cryptography.Algorithms ":" 4.0.0-beta-23409 "を使用してみましたが、SHA2565Managedの実装が含まれていません。coreclrでハッシュ値を計算する他の方法はありますか?
名前空間からSHA256.Create()
を使用できますSystem.Security.Cryptography
(アセンブリ:System.Security.Cryptography.Algorithms
)
using (var algorithm = SHA256.Create())
{
// Create the at_hash using the access token returned by CreateAccessTokenAsync.
var hash = algorithm.ComputeHash(Encoding.ASCII.GetBytes(response.AccessToken));
// Note: only the left-most half of the hash of the octets is used.
// See http://openid.net/specs/openid-connect-core-1_0.html#CodeIDToken
identity.AddClaim(JwtRegisteredClaimNames.AtHash, Base64UrlEncoder.Encode(hash, 0, hash.Length / 2));
}