Bienvenue
Spomky-Labs écrit des bibliothèques PHP libres et open source pour la sécurité et la protection des données. Cryptographie, authentification, et les standards qui tiennent le tout ensemble.
Ces bibliothèques tournent en production dans des milliers d’applications. Elles sont publiées sous licence MIT, documentées, et maintenues au grand jour sur GitHub.
Derrière elles, Florent Morselli, développeur français qui écrit et maintient ces outils depuis 2014. Au-delà du code, Spomky-Labs répond aux questions, relit des architectures, et aide les équipes à réussir du premier coup leur authentification et leur cryptographie.
Les projets
Trois bibliothèques portent l’essentiel des usages, et une quatrième vient de paraître. Le nombre d’étoiles et la dernière activité sont relevés sur GitHub.
OTPHP
Engendrez et vérifiez des mots de passe à usage unique en PHP, selon la RFC 4226 pour HOTP et la RFC 6238 pour TOTP. Compatible avec Google Authenticator, FreeOTP et les autres applications d’authentification.
JWT-Framework
Une implémentation complète de la famille JOSE : JSON Web Signature, JSON Web Encryption, JSON Web Key et JSON Web Token. Chaque notion des spécifications a une classe PHP derrière elle, avec un bundle Symfony pour l’intégration.
Webauthn-Framework
Les mots de passe ne suffisent pas. WebAuthn permet à vos utilisateurs de s’authentifier avec une clé de sécurité, une empreinte digitale ou leur appareil lui-même. Ce framework l’apporte à PHP, avec un bundle Symfony et un composant Stimulus pour le côté navigateur.
Access-Control-Framework
Décider si un demandeur peut effectuer une action sur un sujet, et dire pourquoi. Des votants, des algorithmes de combinaison et des politiques d’accès, sans utilisateur, sans jeton et sans pare-feu dans le vocabulaire, de sorte qu’une application décide avec ou sans Symfony Security.
Et quelques autres
pwa-bundle pour les manifestes d’applications web progressives, cbor-php pour l’encodage CBOR, web-push pour les notifications poussées, base64url, aes-key-wrap, php-aes-gcm, pki-framework. Toutes sur l’organisation Spomky-Labs.
Derniers articles
-
Trois réponses, pas deux
Un votant accorde, refuse, ou n’a rien à dire. Traiter le troisième cas comme un refus, c’est ainsi que des portes se ferment pour des…
-
Demandeur, attribut, sujet : les mots de ce composant
Quatre champs font une question : demandeur, attribut, sujet, environnement. L’un de ces mots signifie l’inverse de ce que XACML vous a appris.
-
L’autorisation, et rien d’autre
Un nouveau composant qui décide si un demandeur peut effectuer une action sur un sujet, sans utilisateur, sans jeton et sans pare-feu dans son vocabulaire.
-
Ce qu’un service worker ne doit jamais mettre en cache
Mettre en cache la mauvaise réponse ne produit pas une erreur. Cela produit une réponse fausse, servie avec aplomb, aussi longtemps que le cache vit.
-
Rendre une application Symfony installable, sans framework pour ça
Une application web progressive demande un manifeste, un service worker et quelques icônes. L’essentiel du travail est de décider ce qui doit se passer hors…
-
Notifications poussées depuis PHP, sans service intermédiaire
Un abonnement de poussée est une URL, une clé publique et un secret. Tout le reste est votre serveur qui parle directement à l’éditeur du…

