001package com.nimbusds.openid.connect.provider.spi.crypto; 002 003 004import net.jcip.annotations.ThreadSafe; 005 006 007/** 008 * Interface exposed by the Connect2id server for computing Hash-based Message 009 * Authentication Codes (HMAC). 010 */ 011@ThreadSafe 012public interface HMACComputer { 013 014 015 /** 016 * Computes the SHA-256 based HMAC for the specified input. Uses the 017 * secret key with JWK ID "hmac" configured for the OpenID Provider / 018 * Authorisation Server. 019 * 020 * @param input The input. 021 * 022 * @return The HMAC SHA-256. 023 */ 024 byte[] computeHMACSHA256(final byte[] input); 025}