Skip to content

Comparaison des Fonctionnalités ​

Comparaison complète des 4 librairies client Sharokey pour vous aider à choisir le bon outil pour votre projet.

🎯 Guide de Décision Rapide ​

🖥️ Utilisez CLI C# si vous avez besoin :

  • Scripts shell & automatisation
  • Intégration pipeline CI/CD
  • Données en pipe depuis d'autres commandes
  • Exécutable cross-platform

📦 Utilisez JavaScript SDK si vous avez besoin :

  • Applications Node.js
  • Applications web complexes
  • Support TypeScript complet
  • Filtrage et recherche avancés

🌐 Utilisez JavaScript CDN si vous avez besoin :

  • Intégration navigateur rapide
  • Aucun processus de build
  • Projets HTML simples
  • Configuration minimale

🐍 Utilisez Python SDK si vous avez besoin :

  • Applications Python
  • Projets science des données & ML
  • API cohérente avec CLI
  • Support Async/await

📊 Matrice des Fonctionnalités ​

Configuration & Installation ​

FonctionnalitéCLI C#JavaScript SDKJavaScript CDNPython SDK
Configuration Token✅✅✅✅
URL API Personnalisée✅✅✅✅
Test de Connexion✅✅✅✅
Variables d'Environnement✅✅✅✅

Gestion des Secrets ​

FonctionnalitéCLI C#JavaScript SDKJavaScript CDNPython SDK
Créer des Secrets✅✅✅✅
Lister les Secrets✅✅✅✅
Détails d'un Secret✅✅✅✅
Supprimer des Secrets✅✅✅✅
Opérations Groupées✅❌❌❌

Fonctionnalités de Sécurité ​

FonctionnalitéCLI C#JavaScript SDKJavaScript CDNPython SDK
Chiffrement Zero Knowledge✅✅✅✅
Protection par Mot de Passe✅✅✅✅
OTP par Email✅✅✅✅
OTP par SMS✅✅✅✅
Expiration Personnalisée✅✅✅✅
Limites de Vues✅✅✅✅

Support de Fichiers ​

FonctionnalitéCLI C#JavaScript SDKJavaScript CDNPython SDK
Pièces Jointes✅✅✅✅
Fichiers Multiples✅✅✅✅
Validation Taille 10Mo✅✅✅✅
Validation Type de Fichier✅✅✅✅
Glisser & DéposerN/A✅✅N/A

Fonctionnalités Avancées ​

FonctionnalitéCLI C#JavaScript SDKJavaScript CDNPython SDK
Filtrage Avancé❌✅❌❌
Fonctionnalité de Recherche✅✅❌✅
Secrets Actifs Uniquement❌✅❌❌
Pagination✅✅❌✅
Entrée Stdin/Pipe✅❌❌❌

Sortie & Formatage ​

FonctionnalitéCLI C#JavaScript SDKJavaScript CDNPython SDK
Sortie JSON✅✅✅✅
Format Tableau✅❌❌❌
Mode Verbeux✅❌❌❌
Sortie Colorée✅N/AN/A❌

Expérience Développeur ​

FonctionnalitéCLI C#JavaScript SDKJavaScript CDNPython SDK
Support TypeScriptN/A✅✅N/A
Annotations de TypeN/A✅✅✅
Async/Await✅✅✅✅
Gestion d'Erreurs✅✅✅✅
Tests Unitaires✅✅✅✅
Documentation✅✅✅✅

🔄 Cohérence de l'API ​

Toutes les librairies maintiennent un nommage de méthode cohérent pour les opérations principales :

Créer un Secret ​

bash
sharokey create "secret" --hours 24 --views 1
javascript
await client.createSecret("secret", {expirationHours: 24, maximumViews: 1});
javascript
await Sharokey.create("secret", 24, 1);
python
secret = await client.create("secret", 24, 1)

Lister les Secrets ​

bash
sharokey list --limit 10 --status active
javascript
await client.getSecrets({limit: 10, status: 'active'});
javascript
await Sharokey.list({limit: 10});
python
secrets = await client.list(limit=10, status='active')

Supprimer un Secret ​

bash
sharokey delete ABC123
javascript
await client.deleteSecret('ABC123');
javascript
await Sharokey.delete('ABC123');
python
await client.delete('ABC123')

📦 Installation & Configuration ​

LibrairieInstallationConfiguration
CLI C#winget install Sharokey.CLIsharokey config --token xxx
JavaScript SDKnpm install sharokey-jsnew SharokeyClient({token})
JavaScript CDN<script src="sharokey.js">Sharokey.config({token})
Python SDKpip install sharokeySharokeyClient(token='xxx')

🔐 Compatibilité de Chiffrement ​

Toutes les librairies utilisent un chiffrement Zero Knowledge identique :

  • Algorithme : AES-GCM-256
  • Dérivation de Clé : PBKDF2 avec 10 000 itérations
  • Sel : 16 octets aléatoires par secret
  • IV : 16 octets aléatoires par secret
  • Compatibilité croisée : Les secrets créés par n'importe quelle librairie peuvent être déchiffrés par toute autre

📊 Comparaison de Performance ​

MétriqueCLI C#JavaScript SDKJavaScript CDNPython SDK
Taille Bundle~15Mo~2.1Mo~850Ko~45Mo
Démarrage à Froid~100ms~50ms~20ms~200ms
Utilisation Mémoire~25Mo~15Mo~8Mo~35Mo
Vitesse de ChiffrementRapideRapideRapideMoyen
Efficacité RéseauHauteHauteHauteHaute

🎯 Matrice des Cas d'Usage ​

Cas d'UsageLibrairie RecommandéePourquoi ?
Scripts ShellCLI C#Intégration shell native, support pipe
Pipelines CI/CDCLI C#Exécutable cross-platform, sortie JSON
Applications ReactJavaScript CDNBundle petit, intégration facile
APIs Node.jsJavaScript SDKFonctionnalités complètes, support TypeScript
Projets Vue.jsJavaScript CDNLéger, configuration minimale
Applications Web PythonPython SDKIntégration Python native
Science des DonnéesPython SDKSupport async, compatibilité Jupyter
Applications DesktopCLI C#Intégration système, gestion fichiers
MicroservicesJavaScript SDK ou Python SDKSelon la stack
Scripts d'AutomatisationCLI C# ou Python SDKTous deux excellents pour l'automatisation

🚀 Migration Entre Librairies ​

Du CLI vers Python SDK ​

python
# CLI: sharokey create "secret" --hours 24 --views 1
secret = await client.create("secret", 24, 1)

# CLI: sharokey list --limit 5
secrets = await client.list(limit=5)

# CLI: sharokey delete ABC123
await client.delete("ABC123")

Du JavaScript CDN vers JavaScript SDK ​

javascript
// JavaScript CDN
await Sharokey.create("secret", 24, 1);

// JavaScript SDK équivalent
await client.createSecret("secret", {
  expirationHours: 24,
  maximumViews: 1
});

📈 Maturité des Librairies ​

LibrairieVersionStabilitéDernière Mise à Jour
CLI C#v2.1.0Stable2025-01-10
JavaScript SDKv1.8.3Stable2025-01-12
JavaScript CDNv1.5.2Stable2025-01-08
Python SDKv1.0.0Nouveau2025-01-14

🎉 Conclusion ​

  • Pour l'automatisation : Choisissez CLI C# ou Python SDK
  • Pour le développement web : Choisissez JavaScript SDK ou JavaScript CDN
  • Pour l'entreprise : Choisissez CLI C# ou JavaScript SDK
  • Pour la simplicité : Choisissez JavaScript CDN ou Python SDK

Toutes les librairies fournissent une sécurité identique et un chiffrement Zero Knowledge. Votre choix dépend de votre environnement de développement et des exigences fonctionnelles.

Released under the MIT License.