thekof
Tous les projets

17 · 2025

FingerLock

Système de verrouillage desktop intelligent : schéma tactile 3×3, détection automatique d'inactivité, stockage hashé SHA-256 — publié sur PyPI (`fingerlock`). Python, tkinter / evdev : un lock local simple, sans gadget cloud, installable en une commande.

Client
Open source
Rôle
Auteur Python
Durée
Lib
Stack
Python, tkinter, evdev, PyPI, SHA-256
FingerLock — visuel principal

Étude de cas

Package PyPI · schéma 3×3

  • PyPIfingerlock
  • Schéma3×3
  • HashSHA-256

Le contexte

Verrouiller une session desktop rapidement, hors cloud, avec une UX type schéma mobile — sans exposer le secret en clair et sans dépendre d'un service tiers.

L'approche

Spec schéma 3×3 + timeout d'inactivité, hash SHA-256 du motif, UI tkinter, écoute d'activité via evdev, packaging setuptools et publication PyPI avec docs d'install et d'usage.

Le résultat

Un outil Python installable (`pip install fingerlock`), documenté, utile en local et démontrant une démarche open source complète (code, sécurité basique, distribution).

  1. 01 · Problème

    Le point de douleur

    Besoin d'un verrouillage local simple et sûr : les solutions cloud ou trop lourdes ne conviennent pas à un lock rapide sur machine personnelle.

  2. 02 · Cadrage

    Ateliers & périmètre

    Spécification du schéma 3×3, politique de timeout, exigences de hash (pas de secret en clair) et cibles OS Linux.

  3. 03 · Conception

    Architecture & maquettes

    UI tkinter, couche evdev, module de hashing SHA-256, structure de package PyPI (metadata, entrypoints).

  4. 04 · Développement

    Itérations courtes

    Implémentation, tests manuels de reprise après inactivité, durcissement des erreurs périphérique, packaging.

  5. 05 · Mise en production

    Bascule maîtrisée

    Publication PyPI, README d'installation, tag de version GitHub.

  6. 06 · Solution

    Mesure & évolution

    Docs, issues communautaires et correctifs mineurs selon les retours d'install.

FingerLock — illustration 1
FingerLock — illustration 2

Projets suivants