Class TokenManager
java.lang.Object
com.haven.havenplugin.accounts.TokenManager
Issues and verifies HMAC-SHA256-signed tokens.
Token format
base64url(payload_json) + "." + base64url(hmac_sha256(payload_json, secret))
Payload fields
uuid— 32-char account UUIDtracker— referral / analytics tracker stringexpiry— Unix timestamp (seconds) as a string
Key persistence
The HMAC key is stored in <pluginDataFolder>/data/tokenKey.
If absent or shorter than 24 bytes a new key is generated and written.
-
Method Summary
Modifier and TypeMethodDescriptionstatic StringcreateToken(String uuid, String tracker) Create a signed token for the given account.static voidMust be called once during plugin enable, before any tokens are created or verified.static StringverifyToken(String token) Verify a token and return the account UUID it encodes.
-
Method Details
-
init
-
createToken
-
verifyToken
Verify a token and return the account UUID it encodes.- Parameters:
token- Token string as returned bycreateToken(String, String)- Returns:
- The UUID from the token payload, or
nullif the token is missing, malformed, has an invalid signature, or has expired
-