package org.xdi.oxauth.model.util;
import org.xdi.oxauth.model.configuration.AppConfiguration;
import org.xdi.oxauth.model.crypto.AbstractCryptoProvider;
import org.xdi.oxauth.model.crypto.CryptoProviderFactory;
import org.xdi.oxauth.model.crypto.signature.SignatureAlgorithm;
/**
* @author Javier Rojas Blum
* @version July 31, 2016
*/
public class SubjectIdentifierGenerator {
public static String generatePairwiseSubjectIdentifier(String sectorIdentifier, String localAccountId, String key,
String salt, AppConfiguration configuration) throws Exception {
AbstractCryptoProvider cryptoProvider = CryptoProviderFactory.getCryptoProvider(configuration);
String signingInput = sectorIdentifier + localAccountId + salt;
return cryptoProvider.sign(signingInput, null, key, SignatureAlgorithm.HS256);
}
}