Skip to content

Librairies Clientes ​

Choisissez la librairie client Sharokey qui convient le mieux à votre stack de développement. Toutes les librairies fournissent un chiffrement Zero Knowledge et sont conçues pour être conviviales pour les développeurs.

🎯 Comparaison Rapide ​

LibrairieIdéale PourFonctionnalités Clés
CLI C#Scripts shell, CI/CD, automatisationExécutable cross-platform, support pipe
JavaScript SDKApps Node.js, projets web complexesFonctionnalités complètes, package npm, support TypeScript
JavaScript CDNIntégration navigateur rapide, projets simplesFichier unique, aucun build requis, plug-and-play
Python SDKApps Python, science des données, MLAsync/await, API cohérente avec CLI

📦 Installation ​

bash
# Télécharger la dernière version
curl -L https://github.com/sharokey/cli/releases/latest/download/sharokey.exe -o sharokey.exe

# Ou via gestionnaire de packages
winget install Sharokey.CLI
bash
npm install sharokey-client
# ou
yarn add sharokey-client
html
<!-- Inclusion directe du script -->
<script src="https://cdn.sharokey.com/js/sharokey.js"></script>

<!-- Ou télécharger localement -->
<script src="/js/sharokey.js"></script>
bash
pip install sharokey
# ou
poetry add sharokey

⚡ Exemples de Démarrage Rapide ​

Créer un Secret ​

bash
sharokey create "Mon mot de passe secret" --hours 24 --views 1
javascript
import { SharokeyClient } from 'sharokey-client';

const client = new SharokeyClient({ token: 'votre-token' });
const secret = await client.createSecret('Mon mot de passe secret', {
  expirationHours: 24,
  maximumViews: 1
});
console.log(secret.shareUrl);
javascript
// Disponible globalement après inclusion du script
Sharokey.config({ token: 'votre-token' });
const secret = await Sharokey.create('Mon mot de passe secret', 24, 1);
console.log(secret.share_url);
python
import sharokey

client = sharokey.SharokeyClient(token='votre-token')
secret = await client.create('Mon mot de passe secret', 24, 1)
print(secret.share_url)

Avec Pièces Jointes ​

bash
sharokey create "Documents confidentiels" --hours 48 --views 3 \
  --attach contrat.pdf --attach specs.docx
javascript
const secret = await client.createSecret('Documents confidentiels', {
  expirationHours: 48,
  maximumViews: 3,
  attachments: [
    { name: 'contrat.pdf', data: contractBuffer },
    { name: 'specs.docx', data: specsBuffer }
  ]
});
javascript
const secret = await Sharokey.create('Documents confidentiels', 48, 3, {
  attachments: [contractFile, specsFile] // Objets File
});
python
secret = await client.create(
  'Documents confidentiels', 48, 3,
  attachments=['contrat.pdf', 'specs.docx']
)

🔐 Fonctionnalités de Sécurité ​

Toutes les librairies implémentent le même chiffrement Zero Knowledge :

  • AES-GCM-256
  • Dérivation de clé PBKDF2 (10 000 itérations)
  • Chiffrement côté client - vos données ne quittent jamais votre appareil non chiffrées
  • Système à deux clés - CléA (serveur) + CléB (fragment URL de partage)
  • Perfect Forward Secrecy - chaque secret utilise des clés de chiffrement uniques

📊 Matrice des Fonctionnalités ​

FonctionnalitéCLI C#JavaScript SDKJavaScript CDNPython SDK
Opérations de Base
Créer des secrets✅✅✅✅
Lister les secrets✅✅✅✅
Détails d'un secret✅✅✅✅
Supprimer des secrets✅✅✅✅
Statistiques d'usage✅✅✅✅
Options de Sécurité
Protection par mot de passe✅✅✅✅
OTP par email✅✅✅✅
OTP par SMS✅✅✅✅
Support de Fichiers
Pièces jointes✅✅✅✅
Fichiers multiples✅✅✅✅
Validation limite 10Mo✅✅✅✅
Fonctionnalités Avancées
Filtrage avancé❌✅❌❌
Secrets actifs uniquement❌✅❌❌
Entrée Stdin/pipe✅❌❌❌
Formats de Sortie
Sortie JSON✅✅✅✅
Format tableau✅❌❌❌
Mode verbeux✅❌❌❌
Développement
Support TypeScriptN/A✅✅N/A
Async/awaitN/A✅✅✅
Gestion d'erreurs✅✅✅✅
Tests unitaires✅✅✅✅

📋 Cohérence des Méthodes ​

Toutes les librairies utilisent un nommage cohérent pour les opérations équivalentes :

OpérationCLIJavaScript SDKJavaScript CDNPython
CréercreatecreateSecret()create()create()
ListerlistgetSecrets()list()list()
Obtenirget SLUGgetSecret(slug)get(slug)get(slug)
Supprimerdelete SLUGdeleteSecret(slug)delete(slug)delete(slug)
StatistiquesstatsgetStatistics()stats()stats()

🎯 Choisir la Bonne Librairie ​

Utilisez CLI C# quand : ​

  • Vous construisez des scripts shell ou de l'automatisation
  • Vous intégrez avec des pipelines CI/CD
  • Vous devez utiliser des données en pipe depuis d'autres commandes
  • Vous préférez les outils en ligne de commande

Utilisez JavaScript SDK quand : ​

  • Vous construisez des applications web complexes
  • Vous avez besoin de filtrage et recherche avancés
  • Vous travaillez avec des serveurs Node.js
  • Vous voulez un support TypeScript complet

Utilisez JavaScript CDN quand : ​

  • Vous avez un prototype rapide ou une intégration simple
  • La taille de bundle minimale est importante
  • Les opérations de base sur les secrets sont suffisantes
  • Vous débutez avec Sharokey

Utilisez Python SDK quand : ​

  • Vous construisez des applications Python
  • Vous travaillez avec des projets de science des données/ML
  • Vous avez besoin du support async/await
  • Vous préférez des noms de méthodes cohérents avec le CLI

📚 Documentation des Librairies ​

🖥️ CLI C#

Outil en ligne de commande cross-platform pour automatisation et scripts.

Voir la Documentation →

🟨 JavaScript SDK

Librairie complète pour applications web complexes et Node.js.

Voir la Documentation →

⚡ JavaScript CDN

Librairie légère pour intégrations rapides et projets simples.

Voir la Documentation →

🐍 Python SDK

Client Python async avec nommage de méthodes cohérent avec le CLI.

Voir la Documentation →

🔗 Ressources Associées ​

Released under the MIT License.