Spomky-Labs

Photo Markus Spiske on Unsplash

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.

Des projets malins

Photo Avi Richards on Unsplash

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

1 482 étoiles · MIT · mots de passe à usage unique

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.

Code source et documentation sur GitHub

JWT-Framework

952 étoiles · MIT · signature et chiffrement d’objets JSON

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.

Ce qu’il fait · Documentation

Webauthn-Framework

515 étoiles · MIT · FIDO2, WebAuthn, passkeys

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.

Ce qu’il fait · Documentation

Access-Control-Framework

Vient de paraître · MIT · l’autorisation pour PHP et Symfony

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.

Ce qu’il fait · Documentation

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

  • Déclarer la question là où elle s’applique

    Une politique d’accès est une question déclarée en attribut, à côté du code qu’elle garde, avec un message pour le visiteur et une raison pour…

  • Une décision n’est pas un booléen

    decide() rend le verdict, la raison et chaque vote. C’est ce qui rend un refus diagnosticable longtemps après.

  • L’autorisation sans framework

    La bibliothèque tient en un objet, demande PHP et un contrat de répartiteur d’événements, et ne connaît rien à HTTP. La voici en entier.

  • Ce qui arrive quand personne ne répond

    Tous les votants se sont abstenus, et il faut bien que quelque chose sorte de la question. L’endroit où vit ce réglage dit comment le…

  • Quand l’ordre de vos votants fait la règle

    Trois algorithmes ignorent l’ordre de vos votants. Le quatrième en fait la règle, ce qui est utile exactement aussi souvent que c’est dangereux.

  • Peser les votes plutôt que les compter

    Un algorithme lit le poids derrière un vote. Cela donne plus de voix à un votant sans lui donner de veto, et c’est ce qu’il…

All articles