Ax_Handoff est un module Python qui fournit un protocole de bas niveau et une enveloppe de haut niveau encapsulation d'un certain nombre de caractéristiques complexes fournis & nbsp; par d'autres bibliothèques et expose une interface simple qui permet à un développeur d'échange ou de "main de" morceaux sécurisés de manière flexible données structurées (rien JSON-mesure) sur des canaux de communication entre les composants distribués non fiables d'un système.
Les détails complexes de la cryptographie et de la compression sont cachés par le développeur intégration avec le code, tels que l'obligation de distribuer des morceaux de données de cette manière devient trivial et sécurisé avec peu d'effort nécessaire et de moins de 5 lignes de code. (!)
Une motivation première de ce paquet est le cas où un utilisateur est redirigé d'une application Web à un autre sur un domaine différent (là où les cookies ne peuvent pas être partagés), mais des informations importantes doivent être transmises garantissant leur intégrité et l'opacité totale.
Exemples d'utilisation:
- Un utilisateur un lien vers une 3e soutien du parti ou de site de téléchargement supplémentaire qui offre un contenu basé sur le niveau de l'utilisateur de l'abonnement, l'emplacement, et d'autres activités de métadonnées et les documents associés à l'utilisateur qui peut être corrélée vers le site d'origine.
- Échanger des données de session (enregistrés dans l'état) entre deux applications web gérés par la même société, mais desservies par différentes plates-formes sans ressources partagées pour permettre seemless "single sign on» sans nécessiter des ressources centrales supplémentaires.
Montrez-moi le code!
Ce bref exemple montre combien il est facile pour coder et décoder des objets complexes:
de axonchisel.handoff importation Ax_Handoff
secrète = "Mon secret phr passe @ soi! Oui !!"
obj1 = {'foo': "Big Foo», «bar»: [10, 20.5, 30]}
enc = Ax_Handoff.encode (obj, secret)
# Enc = 'XHADPtqHlzJuuFBpFnTmBz8Uk3tYTczT1oChKQyho9flBqlRbSTSgXBybJ59CI1N4_wnGl3nsuMwJ7ItMxixm8H9bCIsjv5M00At1rElGvuuJ7u4v4WAHX'
obj2 = Ax_Handoff.decode (enc, secret)
# Obj2 = {u'foo ': u'Big Foo', u'bar ': [10, 20.5, 30]}
Utilisez-le dans un URL:
url = "http://my.app2.com/xfer/?data=" + Ax_Handoff.encode (user_data, shared_secret)
redirect_to (URL)
Et sur la fin de réception:
user_data = Ax_Handoff.decode (request.GET («données»), shared_secret)
Documentation supplémentaire
Vaste documentation claire, analyse cryptographique, et d'utilisation des exemples sont inclus dans le fichier README.txt
Ce qui est nouveau dans cette version:.
- Mises à jour Doc reflétant nouvelle repo bitbucket public.
Ce qui est nouveau dans la version 0.9.1:.
- clarifications Crypto doc suite de l'examen de sécurité positive
- Mise à jour majeure de la documentation et la mise en forme.
Exigences :
- Python
Limitations :
- Cette bibliothèque est actuellement le statut de bêta. Il passe des tests unitaires rigoureuses et est susceptible prêt pour la production.
Commentaires non trouvées