Skip to content

Commit 52b85f0

Browse files
committed
fix: verifyHandler incorrect implementation with verifyServer
1 parent f18decf commit 52b85f0

28 files changed

Lines changed: 149 additions & 55 deletions

README.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,12 @@ bun run --port 3000 examples/hono-example.ts
9898
deno serve --allow-net --sloppy-imports --port 3000 examples/hono-example.ts
9999
```
100100

101+
**Hono + Sentinel remote verification example (Bun):**
102+
103+
```sh
104+
bun run --port 3000 examples/hono-sentinel-example.ts
105+
```
106+
101107
## Breaking Changes (v2)
102108

103109
Version 2 introduces a new proof-of-work mechanism and challenge format. See the [PoW documentation](https://playground.altcha.org/#/about) for details.

dist/cjs/v2/frameworks/express.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ function create(options) {
3535
});
3636
const verifyHandler = asyncHandler(async (req, res) => {
3737
const payload = await getPayloadFromRequest(req);
38-
const result = await (0, shared_js_1.verify)(payload, deriveKey, hmacSignatureSecret, hmacKeySignatureSecret, store, verifyServerOptions);
38+
const result = await (0, shared_js_1.verify)(payload, deriveKey, hmacSignatureSecret, hmacKeySignatureSecret, store);
3939
res.json(result);
4040
});
4141
const getPayloadFromRequest = async (req, cookieName) => {

dist/cjs/v2/frameworks/fastify.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ function create(options) {
5454
};
5555
const verifyHandler = async (request, reply) => {
5656
const payload = await getPayloadFromRequest(request);
57-
const result = await (0, shared_js_1.verify)(payload, deriveKey, hmacSignatureSecret, hmacKeySignatureSecret, store, verifyServerOptions);
57+
const result = await (0, shared_js_1.verify)(payload, deriveKey, hmacSignatureSecret, hmacKeySignatureSecret, store);
5858
return reply.send(result);
5959
};
6060
const middleware = (options = {}) => {

dist/cjs/v2/frameworks/h3.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ function create(options) {
3535
};
3636
});
3737
const verifyHandler = (0, h3_1.defineEventHandler)(async (event) => {
38-
return await (0, shared_js_1.verify)(await getPayloadFromEvent(event), deriveKey, hmacSignatureSecret, hmacKeySignatureSecret, store, verifyServerOptions);
38+
return await (0, shared_js_1.verify)(await getPayloadFromEvent(event), deriveKey, hmacSignatureSecret, hmacKeySignatureSecret, store);
3939
});
4040
const getPayloadFromEvent = async (event, cookieName) => {
4141
let payload = undefined;

dist/cjs/v2/frameworks/hono.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ function create(options) {
3535
});
3636
};
3737
const verifyHandler = async (c) => {
38-
return c.json(await (0, shared_js_1.verify)(await getPayloadFromContext(c), deriveKey, hmacSignatureSecret, hmacKeySignatureSecret, store, verifyServerOptions));
38+
return c.json(await (0, shared_js_1.verify)(await getPayloadFromContext(c), deriveKey, hmacSignatureSecret, hmacKeySignatureSecret, store));
3939
};
4040
const getPayloadFromContext = async (c, cookieName) => {
4141
let payload = undefined;

dist/cjs/v2/frameworks/nestjs.d.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,9 @@ export declare class AltchaService {
4141
} | undefined;
4242
}>;
4343
getPayloadFromRequest(req: Request, cookieName?: string): string | undefined;
44-
verify(payload: string | undefined): Promise<{
44+
verify(payload: string | undefined, options?: {
45+
allowRemote?: boolean;
46+
}): Promise<{
4547
error: string | null;
4648
payload: import("../types.js").Payload | import("../types.js").ServerSignaturePayload | null;
4749
verification: import("../types.js").VerifySolutionResult | import("../types.js").VerifyServerResult | null;

dist/cjs/v2/frameworks/nestjs.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ function createAltchaMiddleware(options = {}) {
3636
}
3737
async use(req, res, next) {
3838
const payload = this.altchaService.getPayloadFromRequest(req);
39-
const { error, payload: resultPayload, verification, } = await this.altchaService.verify(payload);
39+
const { error, payload: resultPayload, verification, } = await this.altchaService.verify(payload, { allowRemote: true });
4040
req.altcha = {
4141
error,
4242
payload: resultPayload,
@@ -96,8 +96,8 @@ let AltchaService = class AltchaService {
9696
}
9797
return req.body?.[this.fieldName];
9898
}
99-
async verify(payload) {
100-
return (0, shared_js_1.verify)(payload, this.deriveKey, this.hmacSignatureSecret, this.hmacKeySignatureSecret, this.store, this.verifyServerOptions);
99+
async verify(payload, options = {}) {
100+
return (0, shared_js_1.verify)(payload, this.deriveKey, this.hmacSignatureSecret, this.hmacKeySignatureSecret, this.store, options.allowRemote ? this.verifyServerOptions : undefined);
101101
}
102102
};
103103
exports.AltchaService = AltchaService;
@@ -143,7 +143,7 @@ let AltchaMiddleware = class AltchaMiddleware {
143143
}
144144
async use(req, res, next) {
145145
const payload = this.altchaService.getPayloadFromRequest(req, this.altchaService.setCookie?.name);
146-
const { error, payload: resultPayload, verification, } = await this.altchaService.verify(payload);
146+
const { error, payload: resultPayload, verification, } = await this.altchaService.verify(payload, { allowRemote: true });
147147
req.altcha = {
148148
error,
149149
payload: resultPayload,

dist/cjs/v2/frameworks/nextjs.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ function create(options) {
4848
}
4949
async function verifyHandler(req) {
5050
const payload = await getPayloadFromRequest(req);
51-
const result = await (0, shared_js_1.verify)(payload, deriveKey, hmacSignatureSecret, hmacKeySignatureSecret, store, verifyServerOptions);
51+
const result = await (0, shared_js_1.verify)(payload, deriveKey, hmacSignatureSecret, hmacKeySignatureSecret, store);
5252
return Response.json(result);
5353
}
5454
async function getPayloadFromRequest(req, cookieName) {

dist/cjs/v2/frameworks/sveltekit.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ function create(options) {
4949
}
5050
async function verifyHandler(event) {
5151
const payload = await getPayloadFromEvent(event, fieldName);
52-
const result = await (0, shared_js_1.verify)(payload, deriveKey, hmacSignatureSecret, hmacKeySignatureSecret, store, verifyServerOptions);
52+
const result = await (0, shared_js_1.verify)(payload, deriveKey, hmacSignatureSecret, hmacKeySignatureSecret, store);
5353
return (0, kit_1.json)(result);
5454
}
5555
function createHandle(middlewareOptions = {}) {

dist/esm/v2/frameworks/express.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ export function create(options) {
2929
});
3030
const verifyHandler = asyncHandler(async (req, res) => {
3131
const payload = await getPayloadFromRequest(req);
32-
const result = await verify(payload, deriveKey, hmacSignatureSecret, hmacKeySignatureSecret, store, verifyServerOptions);
32+
const result = await verify(payload, deriveKey, hmacSignatureSecret, hmacKeySignatureSecret, store);
3333
res.json(result);
3434
});
3535
const getPayloadFromRequest = async (req, cookieName) => {

0 commit comments

Comments
 (0)