Latest Threat Research:SANDWORM_MODE: Shai-Hulud-Style npm Worm Hijacks CI Workflows and Poisons AI Toolchains.Details
Socket
Book a DemoInstallSign in
Socket

@fireproof/core-runtime

Package Overview
Dependencies
Maintainers
2
Versions
63
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@fireproof/core-runtime - npm Package Compare versions

Comparing version
0.24.2-dev-cloud-api
to
0.24.3-dev-20261224
+2
-2
keyed-crypto.d.ts

@@ -6,4 +6,4 @@ import { URI } from "@adviser/cement";

export declare class BlockIvKeyIdCodec implements AsyncBlockCodec<24, Uint8Array, IvKeyIdData> {
readonly code: number;
readonly name: string;
readonly code = 24;
readonly name = "Fireproof@encrypted-block:aes-gcm";
readonly ko: CryptoAction;

@@ -10,0 +10,0 @@ readonly iv?: Uint8Array;

{
"name": "@fireproof/core-runtime",
"version": "0.24.2-dev-cloud-api",
"version": "0.24.3-dev-20261224",
"description": "Live ledger for the web.",
"type": "module",
"main": "./index.js",
"scripts": {
"build": "core-cli tsc"
},
"keywords": [

@@ -34,20 +37,14 @@ "ledger",

"dependencies": {
"@adviser/cement": "^0.4.72",
"@adviser/ts-xxhash": "^1.0.2",
"@fireproof/core-types-base": "0.24.2-dev-cloud-api",
"@fireproof/core-types-blockstore": "0.24.2-dev-cloud-api",
"@fireproof/core-types-protocols-cloud": "0.24.2-dev-cloud-api",
"@fireproof/core-types-runtime": "0.24.2-dev-cloud-api",
"@fireproof/vendor": "0.24.2-dev-cloud-api",
"cborg": "^4.3.0",
"jose": "^6.1.2",
"multiformats": "^13.4.0",
"zod": "^4.1.12"
},
"devDependencies": {
"@fireproof/core-cli": "0.24.2-dev-cloud-api"
},
"scripts": {
"build": "core-cli tsc"
"@adviser/cement": "0.5.5",
"@adviser/ts-xxhash": "1.0.2",
"@fireproof/core-types-base": "0.24.3-dev-20261224",
"@fireproof/core-types-blockstore": "0.24.3-dev-20261224",
"@fireproof/core-types-protocols-cloud": "0.24.3-dev-20261224",
"@fireproof/core-types-runtime": "0.24.3-dev-20261224",
"@fireproof/vendor": "0.24.3-dev-20261224",
"cborg": "4.3.2",
"jose": "6.1.3",
"multiformats": "13.4.2",
"zod": "4.2.1"
}
}
}
import { CoerceURI, Result } from "@adviser/cement";
import { JWTVerifyResult, JWK } from "jose";
import { importJWK as joseImportJWK, JWTVerifyResult, JWK } from "jose";
import { GenerateKeyPairOptions } from "jose/key/generate/keypair";
import { JWKPublic, SuperThis } from "@fireproof/core-types-base";
import { JWKPrivate, JWKPrivateSchema, JWKPublic, JWKPublicSchema, SuperThis } from "@fireproof/core-types-base";
import { BaseTokenParam, FPCloudClaim, TokenForParam } from "@fireproof/core-types-protocols-cloud";
import { z } from "zod";
export declare const envKeyDefaults: {

@@ -11,11 +10,6 @@ SECRET: string;

};
interface SessionTokenServiceParam extends Partial<BaseTokenParam> {
readonly token: string;
export interface ImportJWKResult {
readonly key: CryptoKey;
readonly alg: string;
}
interface SessionTokenServiceFromEnvParam extends Partial<BaseTokenParam> {
readonly privateEnvKey?: string;
readonly publicEnvKey?: string;
}
export declare function jwk2env(jwk: CryptoKey, sthis?: SuperThis): Promise<string>;
export declare function env2jwk(env: string, alg: string, sthis?: SuperThis): Promise<CryptoKey>;
export interface KeysResult {

@@ -29,2 +23,15 @@ readonly alg: string;

}
type CoerceJWKType = string | JWK | {
keys: JWK[];
};
export declare function importJWK(jwk: JWK, alg?: string, options?: Parameters<typeof joseImportJWK>[2]): Promise<Result<ImportJWKResult>>;
interface SessionTokenServiceParam extends Partial<BaseTokenParam> {
readonly token: string;
}
interface SessionTokenServiceFromEnvParam extends Partial<BaseTokenParam> {
readonly privateEnvKey?: string;
readonly publicEnvKey?: string;
}
export declare function jwk2env(jwk: CryptoKey, sthis?: SuperThis): Promise<string>;
export declare function env2jwk(env: string, alg?: string, sthis?: SuperThis): Promise<CryptoKey[]>;
export declare class SessionTokenService {

@@ -43,13 +50,38 @@ #private;

}
export interface VerifyTokenOptions {
readonly fetchTimeoutMs?: number;
readonly sthis?: SuperThis;
readonly fetch?: typeof globalThis.fetch;
readonly verifyToken?: (token: string, pubKey: JWK) => Promise<Result<{
export interface VerifyTokenOptions<T> {
readonly fetchTimeoutMs: number;
readonly sthis: SuperThis;
readonly parseSchema: (payload: unknown) => Result<T>;
readonly fetch: typeof globalThis.fetch;
readonly verifyToken: (token: string, pubKey: JWK) => Promise<Result<{
payload: unknown;
}>>;
}
type CoerceJWKType = string | JWK | JWKPublic;
export declare function coerceJWKPublic(sthis: SuperThis, ...i: (CoerceJWKType | CoerceJWKType[])[]): JWK[];
export declare function verifyToken<S extends z.ZodTypeAny>(token: string, presetPubKey: (string | JWK | JWKPublic)[], wellKnownUrls: CoerceURI[], schema: S, iopts?: VerifyTokenOptions): Promise<Result<z.infer<S>>>;
export declare function coerceJWKWithSchema<V extends typeof JWKPublicSchema | typeof JWKPrivateSchema, R extends V extends typeof JWKPublicSchema ? JWKPublic : JWKPrivate>(sthis: SuperThis, validator: V, ...inputs: (CoerceJWKType | CoerceJWKType[])[]): Promise<Result<R>[]>;
export declare function coerceJWK(sthis: SuperThis, ...i: (CoerceJWKType | CoerceJWKType[])[]): Promise<JWK[]>;
export declare function coerceJWKPublic(sthis: SuperThis, ...i: (CoerceJWKType | CoerceJWKType[])[]): Promise<JWKPublic[]>;
export declare function coerceJWKPrivate(sthis: SuperThis, ...i: (CoerceJWKType | CoerceJWKType[])[]): Promise<JWKPrivate[]>;
export declare function verifyToken<R>(token: string, presetPubKey: (string | JWK | JWKPublic)[], wellKnownUrls: CoerceURI[], iopts?: Partial<VerifyTokenOptions<R>>): Promise<Result<R>>;
export interface FetchWellKnownJwksResultOk {
readonly type: "ok";
readonly keys: JWKPublic[];
readonly url: string;
}
export declare function isFetchWellKnownJwksResultOk(r: FetchWellKnownJwksResult): r is FetchWellKnownJwksResultOk;
export interface FetchWellKnownJwksResultErr {
readonly type: "error";
readonly error: Error;
readonly url: string;
}
export declare function isFetchWellKnownJwksResultErr(r: FetchWellKnownJwksResult): r is FetchWellKnownJwksResultErr;
export interface FetchWellKnownJwksResultTimeout {
readonly type: "timeout";
readonly url: string;
}
export declare function isFetchWellKnownJwksResultTimeout(r: FetchWellKnownJwksResult): r is FetchWellKnownJwksResultTimeout;
export type FetchWellKnownJwksResult = FetchWellKnownJwksResultOk | FetchWellKnownJwksResultErr | FetchWellKnownJwksResultTimeout;
export declare function fetchWellKnownJwks(urls: CoerceURI | CoerceURI[], iopts: {
readonly fetch?: typeof globalThis.fetch;
readonly fetchTimeoutMs?: number;
}): Promise<FetchWellKnownJwksResult[]>;
export {};

@@ -1,8 +0,8 @@

import { BuildURI, KeyedResolvOnce, Result, exception2Result, timeouted } from "@adviser/cement";
import { exportJWK, importJWK, jwtVerify, SignJWT } from "jose";
import { BuildURI, KeyedResolvOnce, Option, Result, exception2Result, timeouted } from "@adviser/cement";
import { exportJWK, importJWK as joseImportJWK, jwtVerify, SignJWT, importSPKI } from "jose";
import { generateKeyPair } from "jose/key/generate/keypair";
import { base58btc } from "multiformats/bases/base58";
import { ensureSuperThis, mimeBlockParser } from "../utils.js";
import { JWKPublicSchema } from "@fireproof/core-types-base";
import { z } from "zod";
import { ensureSuperThis, mimeBlockParser, filterOk } from "../utils.js";
import { JWKPrivateSchema, JWKPublicSchema, toJwksAlg } from "@fireproof/core-types-base";
import { z } from "zod/v4";
export const envKeyDefaults = {

@@ -12,2 +12,20 @@ SECRET: "CLOUD_SESSION_TOKEN_SECRET",

};
export async function importJWK(jwk, alg, options) {
let algorithm;
if (alg) {
algorithm = alg;
}
else {
const rAlg = toJwksAlg(jwk);
if (rAlg.isErr()) {
return Result.Err(rAlg);
}
algorithm = rAlg.Ok();
}
const rKey = await exception2Result(() => joseImportJWK(jwk, algorithm, options));
if (rKey.isErr()) {
return Result.Err(rKey);
}
return Result.Ok({ key: rKey.Ok(), alg: algorithm });
}
export async function jwk2env(jwk, sthis = ensureSuperThis()) {

@@ -18,4 +36,15 @@ const inPubKey = await exportJWK(jwk);

export async function env2jwk(env, alg, sthis = ensureSuperThis()) {
const inJWT = JSON.parse(sthis.txt.decode(base58btc.decode(env)));
return importJWK(inJWT, alg, { extractable: true });
const jwks = await coerceJWK(sthis, env);
if (jwks.length === 0) {
throw new Error("No valid JWK found in env");
}
const keys = [];
for (const jwk of jwks) {
const rKey = await importJWK(jwk, alg, { extractable: true });
if (rKey.isErr()) {
throw rKey.Err();
}
keys.push(rKey.Ok().key);
}
return keys;
}

@@ -47,4 +76,7 @@ export class SessionTokenService {

static async create(stsparam, sthis = ensureSuperThis()) {
const key = await env2jwk(stsparam.token, stsparam.alg ?? "ES256", sthis);
return new SessionTokenService(key, stsparam);
const keys = await env2jwk(stsparam.token, stsparam.alg, sthis);
if (keys.length !== 1) {
throw new Error(`Expected exactly one JWK, found ${keys.length}`);
}
return new SessionTokenService(keys[0], stsparam);
}

@@ -104,11 +136,13 @@ constructor(key, stsparam) {

});
function testEncodeJWK(k, decodeFn) {
const res = exception2Result(() => decodeFn(k));
if (res.isErr()) {
return Result.Err(res);
function coercesJWKplainOrkeysObject(keyOrkeys, validator) {
const keys = [];
const isKeys = z.object({ keys: z.array(z.any()) }).safeParse(keyOrkeys);
if (isKeys.success) {
keys.push(...isKeys.data.keys);
}
const resStr = res.Ok();
const key = exception2Result(() => JSON.parse(resStr));
if (key.isOk()) {
const parsed = JWKPublicSchema.safeParse(key.Ok());
else {
keys.push(keyOrkeys);
}
return keys.map((key) => {
const parsed = validator.safeParse(key);
if (parsed.success) {

@@ -118,34 +152,106 @@ return Result.Ok(parsed.data);

else {
return Result.Err(`Invalid JWK format: ${parsed.error.message}`);
return Result.Err(parsed.error);
}
}
return key;
});
}
export function coerceJWKPublic(sthis, ...i) {
return i
.flat()
.map((k) => {
if (typeof k === "string") {
for (const { content } of mimeBlockParser(k)) {
for (const decodeFn of [(a) => a, sthis.txt.base64.decode, sthis.txt.base58.decode]) {
const rKey = testEncodeJWK(content, decodeFn);
if (rKey.isOk()) {
return [rKey.Ok()];
export async function coerceJWKWithSchema(sthis, validator, ...inputs) {
return Promise.all(inputs.flat().map(async (keys) => {
if (typeof keys === "string") {
const jwkKeys = [];
for (const { content, begin, end } of mimeBlockParser(keys)) {
if (begin && end) {
const pem = `${begin}\n${content}\n${end}\n`;
const rKey = await exception2Result(() => importSPKI(pem, "RS256"));
if (rKey.isErr()) {
jwkKeys.push(Result.Err(rKey.Err()));
continue;
}
const key = rKey.Ok();
const jwk = await exportJWK(key);
const parsed = validator.safeParse({ ...jwk, alg: "RS256" });
if (parsed.success) {
jwkKeys.push(Result.Ok(parsed.data));
}
else {
jwkKeys.push(Result.Err(parsed.error));
}
continue;
}
let encodingFailed = Option.Some(Result.Err("Failed to decode JWK string with any known encoding"));
for (const decodeFn of [
(a) => a,
(a) => sthis.txt.base64.decode(a),
(a) => sthis.txt.base58.decode(a),
]) {
const res = exception2Result(() => decodeFn(content));
if (res.isErr()) {
continue;
}
const resStr = res.Ok();
const keyOrkeys = exception2Result(() => JSON.parse(resStr));
if (keyOrkeys.isErr()) {
continue;
}
encodingFailed = Option.None();
for (const rKey of coercesJWKplainOrkeysObject(keyOrkeys.Ok(), validator)) {
jwkKeys.push(rKey);
}
}
if (encodingFailed.IsSome()) {
jwkKeys.push(encodingFailed.Unwrap());
}
}
return [];
return jwkKeys;
}
else {
return [k];
return coercesJWKplainOrkeysObject(keys, validator);
}
})
.flat();
})).then((a) => a.flat());
}
export async function verifyToken(token, presetPubKey, wellKnownUrls, schema, iopts = {}) {
export async function coerceJWK(sthis, ...i) {
const priv = await coerceJWKWithSchema(sthis, JWKPrivateSchema, ...i);
const pub = await coerceJWKWithSchema(sthis, JWKPublicSchema, ...i);
if (priv.length !== pub.length) {
throw new Error("Mismatched number of private and public keys");
}
const ret = [];
for (let idx = 0; idx < priv.length; idx++) {
const rPriv = priv[idx];
const rPub = pub[idx];
if (rPriv.isOk()) {
ret.push(rPriv);
}
else if (rPub.isOk()) {
ret.push(rPub);
}
else {
if (rPriv.Err()) {
ret.push(Result.Err(rPriv.Err()));
}
else {
ret.push(Result.Err(rPub.Err()));
}
}
}
return filterOk(ret);
}
export async function coerceJWKPublic(sthis, ...i) {
return filterOk(await coerceJWKWithSchema(sthis, JWKPublicSchema, ...i));
}
export async function coerceJWKPrivate(sthis, ...i) {
return filterOk(await coerceJWKWithSchema(sthis, JWKPrivateSchema, ...i));
}
export async function verifyToken(token, presetPubKey, wellKnownUrls, iopts = {}) {
const opts = {
fetchTimeoutMs: 1000,
fetch: globalThis.fetch,
parseSchema: (payload) => {
return Result.Ok(payload);
},
fetch: (...args) => globalThis.fetch(...args),
verifyToken: async (token, pubKey) => {
const rRes = await exception2Result(() => jwtVerify(token, pubKey));
const rKey = await importJWK(pubKey);
if (rKey.isErr()) {
return Result.Err(rKey);
}
const rRes = await exception2Result(() => jwtVerify(token, rKey.Ok().key));
if (rRes.isErr()) {

@@ -164,5 +270,5 @@ return Result.Err(rRes);

for (const pubKey of presetPubKey) {
const coercedKeys = coerceJWKPublic(opts.sthis, pubKey);
const coercedKeys = await coerceJWKPublic(opts.sthis, pubKey);
for (const key of coercedKeys) {
const rVerify = await internVerifyToken(token, key, schema, opts);
const rVerify = await internVerifyToken(token, key, opts);
if (rVerify.isOk()) {

@@ -174,53 +280,35 @@ return rVerify;

const errors = [];
for (const cUrl of wellKnownUrls) {
const url = BuildURI.from(cUrl);
const p = url.URI();
if (p.pathname === "" || p.pathname === "/") {
url.pathname("/.well-known/jwks.json");
}
const rPubKeys = await fetchWellKnownJwks(url.toString(), opts);
if (rPubKeys.isErr()) {
errors.push(rPubKeys.Err());
continue;
}
for (const pubKey of rPubKeys.Ok()) {
const rVerify = await internVerifyToken(token, pubKey, schema, opts);
if (rVerify.isOk()) {
return rVerify;
for (const url of wellKnownUrls) {
const rPubKeys = await fetchWellKnownJwks([url], opts);
for (const pubKey of rPubKeys) {
switch (true) {
case isFetchWellKnownJwksResultErr(pubKey):
case isFetchWellKnownJwksResultTimeout(pubKey):
errors.push(pubKey);
continue;
case isFetchWellKnownJwksResultOk(pubKey):
{
for (const key of pubKey.keys) {
const rVerify = await internVerifyToken(token, key, opts);
if (rVerify.isOk()) {
return rVerify;
}
else {
errors.push({
type: "error",
error: rVerify.Err(),
url: pubKey.url,
});
}
}
}
break;
default:
throw new Error("unreachable");
}
// console.log("xxx", pubKey, rVerify.Err());
}
}
return Result.Err(`No well-known JWKS URL could verify the token: ${errors.map((e) => e.message).join("; ")}`);
return Result.Err(`No well-known JWKS URL could verify the token:\n${JSON.stringify(errors, null, 2)}`);
}
async function fetchWellKnownJwks(url, opts) {
return keysFromWellKnownJwksCache.get(url).once(async () => {
const timeout = await timeouted((opts.fetch ?? fetch)(url, {
method: "GET",
}).then((res) => {
if (!res.ok) {
throw new Error(`Failed to fetch well-known JWKS from ${url}: ${res.status} ${res.statusText}`);
}
return res.json();
}), {
timeout: opts.fetchTimeoutMs ?? 1000,
});
switch (timeout.state) {
case "timeout":
return Result.Err(`Timeout fetching well-known JWKS from ${url}`);
case "error":
return Result.Err(`Error fetching well-known JWKS from ${url}: ${timeout.error.message}`);
case "success": {
const parsed = z.object({ keys: JWKPublicSchema.array() }).safeParse(timeout.value);
if (!parsed.success) {
return Result.Err(parsed.error);
}
return Result.Ok(parsed.data.keys);
}
default:
return Result.Err("Unknown error fetching well-known JWKS");
}
});
}
async function internVerifyToken(token, presetPubKey, schema, opts) {
async function internVerifyToken(token, presetPubKey, opts) {
const rVerify = await opts.verifyToken(token, presetPubKey);

@@ -230,8 +318,83 @@ if (rVerify.isErr()) {

}
const parsed = schema.safeParse(rVerify.Ok().payload);
if (!parsed.success) {
return Result.Err(parsed.error);
}
return Result.Ok(parsed.data);
return opts.parseSchema(rVerify.Ok().payload);
}
export function isFetchWellKnownJwksResultOk(r) {
return r.type === "ok";
}
export function isFetchWellKnownJwksResultErr(r) {
return r.type === "error";
}
export function isFetchWellKnownJwksResultTimeout(r) {
return r.type === "timeout";
}
export async function fetchWellKnownJwks(urls, iopts) {
const opts = {
fetchTimeoutMs: 1000,
fetch: (...args) => globalThis.fetch(...args),
...iopts,
};
return Promise.all((Array.isArray(urls) ? urls : [urls])
.flat()
.map((u) => {
if (!u) {
return undefined;
}
const buri = BuildURI.from(u);
const url = buri.URI();
if (url.pathname === "" || url.pathname === "/") {
buri.pathname("/.well-known/jwks.json");
}
return buri.toString();
})
.filter((u) => !!u)
.map(async (url) => {
const onceFn = keysFromWellKnownJwksCache.get(url);
return onceFn.once(async () => {
const timeout = await timeouted(opts
.fetch(url, {
method: "GET",
})
.then((res) => {
if (!res.ok) {
throw new Error(`Failed to fetch well-known JWKS from ${url}: ${res.status} ${res.statusText}`);
}
return res.json();
}), {
timeout: opts.fetchTimeoutMs || 1000,
});
switch (timeout.state) {
case "timeout":
onceFn.reset();
return {
type: "timeout",
url,
};
case "error":
onceFn.reset();
return {
type: "error",
error: timeout.error,
url,
};
case "success": {
const parsed = z.object({ keys: JWKPublicSchema.array() }).safeParse(timeout.value);
if (!parsed.success) {
return {
type: "error",
error: new Error(`Invalid JWKS format from ${url}: ${parsed.error.message}`),
url,
};
}
return {
type: "ok",
keys: parsed.data.keys,
url,
};
}
default:
throw new Error("unreachable");
}
});
}));
}
//# sourceMappingURL=index.js.map

@@ -1,1 +0,1 @@

{"version":3,"file":"index.js","sourceRoot":"","sources":["../../jsr/sts-service/index.ts"],"names":[],"mappings":"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"}
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../jsr/sts-service/index.ts"],"names":[],"mappings":"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"}
{
"extends": [
"/__w/fireproof/fireproof/tsconfig.dist.json"
"/home/runner/work/fireproof/fireproof/tsconfig.dist.json"
],

@@ -5,0 +5,0 @@ "compilerOptions": {

import { Logger, Result, URI, CoerceURI } from "@adviser/cement";
import { StoreType, SuperThis, SuperThisOpts, PromiseToUInt8, ToUInt8, HasLogger } from "@fireproof/core-types-base";
import { CID } from "multiformats/cid";
import { z } from "zod";
import { z } from "zod/v4";
export declare function onSuperThis(fn: (sthis: SuperThis) => void): () => void;

@@ -57,1 +57,2 @@ export declare function ensureSuperThis(osthis?: Partial<SuperThisOpts>): SuperThis;

export declare function mimeBlockParser(mime: string): MimeBlock[];
export declare function filterOk<T, E>(results: Result<T, E>[]): T[];

@@ -1,2 +0,2 @@

import { LoggerImpl, IsLogger, Result, ResolveOnce, isURL, URI, envFactory, toCryptoRuntime, JSONFormatter, YAMLFormatter, param, AppContext, } from "@adviser/cement";
import { LoggerImpl, IsLogger, Result, ResolveOnce, isURL, URI, envFactory, toCryptoRuntime, JSONFormatter, YAMLFormatter, param, AppContext, toSortedArray, toSorted, } from "@adviser/cement";
import { PARAM, } from "@fireproof/core-types-base";

@@ -7,5 +7,4 @@ import { base58btc } from "multiformats/bases/base58";

import * as json from "multiformats/codecs/json";
import { toSortedArray, toSorted } from "@adviser/cement/utils";
import { XXH } from "@adviser/ts-xxhash";
import { z } from "zod";
import { z } from "zod/v4";
const _globalLogger = new ResolveOnce();

@@ -643,2 +642,11 @@ function globalLogger() {

}
export function filterOk(results) {
const okValues = [];
for (const res of results) {
if (res.isOk()) {
okValues.push(res.Ok());
}
}
return okValues;
}
//# sourceMappingURL=utils.js.map

@@ -1,1 +0,1 @@

{"version":3,"file":"utils.js","sourceRoot":"","sources":["../jsr/utils.ts"],"names":[],"mappings":"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"}
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../jsr/utils.ts"],"names":[],"mappings":"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"}