![JAR search and dependency download from the Maven repository](/logo.png)
com.azure.security.keyvault.keys.cryptography.implementation.SignatureHashResolver Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of azure-security-keyvault-keys Show documentation
Show all versions of azure-security-keyvault-keys Show documentation
This module contains client library for Microsoft Azure KeyVault Keys.
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
package com.azure.security.keyvault.keys.cryptography.implementation;
import com.azure.security.keyvault.keys.cryptography.models.SignatureAlgorithm;
import java.util.HashMap;
import java.util.Map;
final class SignatureHashResolver {
public static final SignatureHashResolver DEFAULT;
static {
Map defaultAlgorithms = new HashMap<>();
defaultAlgorithms.put(SignatureAlgorithm.ES256, HashAlgorithm.SHA_256);
defaultAlgorithms.put(SignatureAlgorithm.ES256K, HashAlgorithm.SHA_256);
defaultAlgorithms.put(SignatureAlgorithm.ES384, HashAlgorithm.SHA_384);
defaultAlgorithms.put(SignatureAlgorithm.ES512, HashAlgorithm.SHA_512);
defaultAlgorithms.put(SignatureAlgorithm.RS256, HashAlgorithm.SHA_256);
defaultAlgorithms.put(SignatureAlgorithm.RS384, HashAlgorithm.SHA_384);
defaultAlgorithms.put(SignatureAlgorithm.RS512, HashAlgorithm.SHA_512);
defaultAlgorithms.put(SignatureAlgorithm.PS256, HashAlgorithm.SHA_256);
defaultAlgorithms.put(SignatureAlgorithm.PS512, HashAlgorithm.SHA_512);
defaultAlgorithms.put(SignatureAlgorithm.PS384, HashAlgorithm.SHA_384);
DEFAULT = new SignatureHashResolver(defaultAlgorithms);
}
private final Map algorithms;
private SignatureHashResolver(Map algorithms) {
this.algorithms = algorithms;
}
/**
* Returns the hash algorithm used for signature algorithm.
*
* @param signatureAlgorithm The signature algorithm.
* @return The hash algorithm or null.
*/
public HashAlgorithm get(SignatureAlgorithm signatureAlgorithm) {
return algorithms.get(signatureAlgorithm);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy