decentralised message store
1import { SERVER_PORT, SERVICE_DID } from "@/lib/env";
2import { didDocResolver } from "@/lib/utils/atproto";
3import { ServiceJwtVerifier } from "@atcute/xrpc-server/auth";
4
5export const verifyServiceJwt = async (jwt: string) => {
6 const serviceDid = SERVICE_DID.startsWith("did:web:localhost")
7 ? (`${SERVICE_DID}%3A${SERVER_PORT.toString()}` as `did:${string}:${string}`)
8 : SERVICE_DID;
9 const verifier = new ServiceJwtVerifier({
10 resolver: didDocResolver,
11 serviceDid,
12 });
13 return await verifier.verify(jwt);
14};