diff --git a/lib/crypto.js b/lib/crypto.js index 1e53aa9d..74470549 100644 --- a/lib/crypto.js +++ b/lib/crypto.js @@ -15,5 +15,5 @@ export function salt() { export function uuid(...args) { if (!args.length) return v4(); - return v5(args.join(''), salt()); + return v5(hash([...args, salt()]), v5.DNS); } diff --git a/pages/api/collect.js b/pages/api/collect.js index dec2f28d..7fd7ffdf 100644 --- a/pages/api/collect.js +++ b/pages/api/collect.js @@ -5,7 +5,7 @@ import { createToken, unauthorized, send, badRequest, forbidden } from 'next-bas import { savePageView, saveEvent } from 'queries'; import { useCors, useSession } from 'lib/middleware'; import { getJsonBody, getIpAddress } from 'lib/request'; -import { uuid } from 'lib/crypto'; +import { secret, uuid } from 'lib/crypto'; export default async (req, res) => { await useCors(req, res); @@ -87,7 +87,7 @@ export default async (req, res) => { return badRequest(res); } - const token = createToken({ website_id, session_id, session_uuid }); + const token = createToken({ website_id, session_id, session_uuid }, secret()); return send(res, token); };