M2M
@cap.js/solver est une bibliothèque autonome qui permet de résoudre des défis Cap depuis le serveur. Elle est extrêmement simple (aucune dépendance, un seul fichier) tout en étant aussi rapide et efficace que le widget. Notez qu'elle ne fonctionne qu'avec Bun.
Ce paquet ne contourne aucune preuve de travail réelle. Il ne prend pas en charge les défis d'instrumentation.
Installation
bun add @cap.js/solverUtilisation
À partir de défis avec graine
import solver from "@cap.js/solver";
console.log(
await solver("challenge token", {
c: 50, // nombre de défis
s: 32, // taille du sel
d: 4, // difficulté
}),
);À partir d'une liste de défis
import solver from "@cap.js/solver";
const challenges = [
["a5b6fda4aaed97cf61d7dd9259f733b5", "d455"],
["286bcc39249f9ee698314b600c32e40f", "f0ff"],
["501350aa7c46573cb604284554045703", "4971"],
["a55c02f3b9b4cd088a5a7ee3d4941c14", "eab7"],
["5f3362c12e2779f56f4ef75b4494f5e6", "999f"],
/* ... */
];
console.log(await solver(challenges));Sortie :
[67302, 64511, 40440, 27959, 71259 /* ... */]Le second argument est facultatif mais peut toujours être fourni. C'est toujours un objet.
Pour tous les types de défis,
workerCountindique le nombre de workers à utiliser (par défaut, le nombre de cœurs CPU).Pour tous les types de défis,
onProgresspermet aussi de fournir un callback de suivi de progression.Pour les défis avec graine uniquement, il sert à préciser le nombre de solutions à générer, la taille des défis et la difficulté.
