Class EventSubVerifier
java.lang.Object
com.github.twitch4j.eventsub.util.EventSubVerifier
public final class EventSubVerifier
extends java.lang.Object
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringJAVA_HMAC_ALGORITHMJava algorithm name that corresponds toSIGNATURE_HASH_PREFIX -
Method Summary
Modifier and Type Method Description static booleanverifyMessageId(java.lang.String messageId)static booleanverifySignature(byte[] secret, java.lang.String messageId, java.lang.String messageTimestamp, byte[] requestBody, java.lang.String expectedSignature)static booleanverifySignature(java.lang.String secret, java.lang.String messageId, java.lang.String messageTimestamp, byte[] requestBody, java.lang.String expectedSignature)static booleanverifySignature(javax.crypto.spec.SecretKeySpec secret, java.lang.String messageId, java.lang.String messageTimestamp, byte[] requestBody, java.lang.String expectedSignature)static booleanverifyTimestamp(java.lang.String messageTimestamp)Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Field Details
-
JAVA_HMAC_ALGORITHM
public static final java.lang.String JAVA_HMAC_ALGORITHMJava algorithm name that corresponds toSIGNATURE_HASH_PREFIX- See Also:
- Constant Field Values
-
-
Method Details
-
verifyMessageId
public static boolean verifyMessageId(java.lang.String messageId)- Parameters:
messageId- Twitch-Eventsub-Message-Id- Returns:
- whether the message id has not been observed recently
-
verifyTimestamp
public static boolean verifyTimestamp(java.lang.String messageTimestamp)- Parameters:
messageTimestamp- Twitch-Eventsub-Message-Timestamp- Returns:
- whether the event occurred recently
-
verifySignature
public static boolean verifySignature(javax.crypto.spec.SecretKeySpec secret, java.lang.String messageId, java.lang.String messageTimestamp, byte[] requestBody, java.lang.String expectedSignature)- Parameters:
secret- The subscription secret.messageId- Twitch-Eventsub-Message-IdmessageTimestamp- Twitch-Eventsub-Message-TimestamprequestBody- The raw bytes of the request body.expectedSignature- Twitch-Eventsub-Message-Signature- Returns:
- whether the signature indicates an authentic event
-
verifySignature
public static boolean verifySignature(byte[] secret, java.lang.String messageId, java.lang.String messageTimestamp, byte[] requestBody, java.lang.String expectedSignature) -
verifySignature
public static boolean verifySignature(java.lang.String secret, java.lang.String messageId, java.lang.String messageTimestamp, byte[] requestBody, java.lang.String expectedSignature)
-