0bin, implémentation Python de zerobin (pastebin chiffré côté client) 14


Max et moi on a merdé beaucoup plus de projets originaux que tout le reste. Du coup pour se remonter le moral, on se fait régulièrement un bon plagiat d’un truc qui marche. C’est terrible d’avoir plus de succès avec les idées des autres que les siennes :-)

Dans la lignée de nos flateries (puisque la copie en est la plus haute forme), voici 0bin, une implémentation Python du projet zerobin. Encore un truc de Sebsauvage. Promis après ça on arrête.

Capture d'écran du logiciel 0bin

0bin.net

Pour faire bonne mesure, c’est du libre sous licence WTF, il y a une doc en français, et le code source est  sur github. Si vous ne connaissez pas Python, c’est facile à installer. Si vous connaissez Python:

pip install zerobin && zerobin

C’est de la version beta alpha planta, donc rapportez-nous les bugs.

Le principe

C’est un pastebin ordinaire, vous collez du code, vous récupérez une URL, et vous l’envoyez à votre voisin qui peut ainsi le lire.

Le petit plus, c’est qu’il est chiffré côté client. C’est à dire que l’hébergeur (ici nous) ne peut pas lire ce que vous postez.

En plus de ça, on a rajouté quelques goodies:

  • coloration syntaxique automatique (pas besoin de préciser le langage);
  • historique des pastes précédents (sur votre navigateur uniquement);
  • upload (plutôt que de faire un gros copier/coller);
  • burn after reading: le paste ne peut être lu qu’une fois;
  • short url et copier dans le presse papier.

On à même réussi à caser VizHash.js là dedans !

Les grands absents (contrairement à zerobin), ce sont les commentaires. En analysant bien le truc, on s’est apperçu que c’était la porte ouverte à toutes les fenêtres, donc on a fait sauté la feature, d’autant que nous ne commentons jamais nous même nos pastes. On a un chat chiffré pour ça.

 

14 thoughts on “0bin, implémentation Python de zerobin (pastebin chiffré côté client)

  • Sam Post author

    Arf, on s’est heurté à un bug majeur le jour de la sortie. Bon, il devrait être corrigé maintenant.

  • Réchèr

    J’ai l’impression que la fonction “Copy to clipboard” ne marche pas. J’ai essayé au boulot avec Chrome, et chez moi avec Firefox.

    Je clique sur le lien, il me dit “The paste is now in your clipboard”, je vais dans un éditeur de texte, je fais “coller”, et j’ai toujours le texte que j’avais copié précédemment.

  • Sam Post author

    Réchèr: tu as flash ? La fonction utilise un applet flash invisible.

  • Recher

    Ben oui. Au boulot j’ai la version 11.4.31.110. Et chez moi je sais plus laquelle j’ai, mais c’en est une récente aussi. (Je passe ma vie à jouer à des jeux débiles en flash).

    Le mystère s’épaissit …

  • Sam Post author

    Ouvre un ticket sur github, on travaillera dessus depuis là bas. C’est plus pratique que les commentaires.

  • Sam Post author

    Pas encore mais c’est une feature request. C’est un gros boulot car il faut :

    – créer une API en js pour ceux qui veulent l’utiliser en web service
    – créer une api en Python pour ceux qui veulent l’utiliser en lib (ou comme exemple pour les autres langages)

    Et ces api doivent inclure le chiffrement puisqu’il se fait côté client.

  • Samuel Martin

    Cela complique en effet les échanges. A chaque réception il faut décoder. Je trouve l’intéret du chiffrement limité pour ce type d’utilisation.

  • Sam Post author

    Le but de 0bin est de dédouané l’hébergeur de la responsabilité en cas de contenu douteux. C’est la même technique que mega utilise.

    Si tu veux un pastebin tout simple, il y en a plein des plus simples. 0bin répond vraiment à un besoin très particulier.

  • boblinux

    Et pour quand la coloration syntaxique comme sur pastebin? (Sauf si elle existe déjà et qu’elle est cachée??)

  • Sam Post author

    Elle est activée automatiquement si le texte pasté est détecté comme du code. Ce n’est pas parfait, mais ça marche souvent pas mal.

Leave a comment

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <pre> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Des questions Python sans rapport avec l'article ? Posez-les sur IndexError.