URL: https://linuxfr.org/news/un-nouveau-logiciel-libre-lufi Title: Un nouveau logiciel libre : Lufi Authors: Framasky Davy Defaud, palm123, Benoît Sibaud et Xavier Teyssier Date: 2015年10月05日T15:06:39+02:00 License: CC By-SA Tags: lufi, lutim, lstu, chiffrement, confidentialité, mojolicious et perl Score: 58 Après [Lutim][1], qui permet d’héberger des images, je me suis dit « Pourquoi me limiter aux images ? ». Et puis, ça m’embêtait de chiffrer les images côté serveur. Bien sûr, pour pouvoir utiliser les images dans des balises ``, il fallait que le chiffrement et le déchiffrement se fassent côté serveur. Mais, pour des fichiers, ça ne sert à rien. J’ai donc pris exemple sur [Zerobin][2], qui chiffre le texte côté client, en utilisant la bibliothèque [_Stanford Javascript Crypto_][3] et qui met la clé dans une ancre dans l’adresse URL. Avec ça, j’ai repris le mode de fonctionnement de Lutim (qui lui‐même est fortement pompé sur mon logiciel [Lstu][4]), j’ai saupoudré de [Bootstrap][5] et de [WebSocket][6] et ça a donné [Lufi][7] ! [1]: https://lut.im [2]: http://sebsauvage.net/wiki/doku.php?id=php:zerobin [3]: https://bitwiseshiftleft.github.io/sjcl/ [4]: https://lstu.fr [5]: http://getbootstrap.com/ [6]: https://fr.wikipedia.org/wiki/WebSocket [7]: https://git.framasoft.org/luc/lufi ---- [Démo de Lufi](https://demo.lufi.io) [Code source](https://git.framasoft.org/luc/lufi) [Lutim](https://lut.im) [Lstu](https://lstu.fr) ---- ![Le logo de Lufi][8] ## Let’s Upload that FIle Du temps, de la sueur, des larmes, un [bon éditeur de texte][9], le [meilleur cadriciel Web du monde][10] et voilà Lufi ! Le principe est simple : * on dépose des fichiers dans la zone dédiée à cet effet ; * le JavaScript génère une clé de chiffrement (différente pour chaque fichier) ; * le fichier est découpé en morceaux ; * chaque morceau est chiffré et envoyé via WebSocket au serveur ; * vous récupérez deux liens : un lien de téléchargement et un lien de suppression. Les bonus : * les informations sur les fichiers envoyés sont stockées en [localStorage][11] sur le navigateur et une interface permet de visualiser ces informations ; * on peut demander à ce que le fichier soit supprimé dès le premier téléchargement ; * on peut définir un délai d’expiration après lequel le fichier est supprimé. Pour les administrateurs et les développeurs : * les instructions d’installation sont sur le [wiki][12] ; * on peut définir des paliers de tailles, forçant le délai de suppression. Exemple : les fichiers de moins de 10 Mio pourront rester 60 jours, ceux entre 10 Mio et 50 Mio, 30 jours et au‐delà de 50 Mio, 2 jours. Cela permet de limiter l’utilisation de l’espace disque ; * sous licence [AGPL v3][13], le code est sur le [GitLab de Framasoft][7] avec un miroir sur [GitHub][14] ; * c’est codé en Perl avec le cadriciel [Mojolicious][10], la bibliothèque [Stanford Javascript Crypto][3], du [Twitter bootstrap][5] pour le CSS, des icônes piochées sur [Fontello](http://fontello.com/) et la bibliothèque [Moment.js](http://momentjs.com/). Tout le JavaScript est écrit en [Vanilla JavaScript](http://vanilla-js.com/). Pour le logo : * phonétiquement parlant, en français, Lufi sonne comme [Luffy][15], le personnage principal du manga [_One Piece_][16]. Luffy est surnommé « Chapeau de paille », et comme Lutim avait déjà un chapeau pour logo... Un coup d’[Inkscape][17], et hop ! (Lstu a d’ailleurs récemment gagné un [chapeau comme logo](https://lstu.fr/img/lstu.png)). ## Framadrop Lufi sera le logiciel utilisé par [Framasoft][18] pour proposer le [service Framadrop][19][1][1] dans le cadre de l’opération [_Dégooglisons Internet_][20]. Par ailleurs, la saison 2 de la campagne de _dégooglisation_ a commencé aujourd’hui : n’hésitez pas à [soutenir Framasoft][21] pour qu’on puisse continuer ! ## Bon alors, c’est où qu’on clique ? Contrairement à Lutim, je ne proposerai pas d’instance officielle, juste une instance de test : (hébergée par Framasoft, comme [Erco][22], merci à eux :D). En effet, il risque d’y avoir besoin de pas mal d’espace disque pour opérer un service comme celui‐ci. Je ne peux pas me permettre financièrement de prendre un serveur pour ça, ni demander à Framasoft de me prêter une machine virtuelle, alors qu’on proposera Framadrop à la fin de la semaine. ## Nota Bene Alors, non, c’est pas parce que Framasoft voulait sortir un tel service que j’ai codé Lufi, c’est plutôt parce que je voulais coder Lufi que Framasoft propose Framadrop. Framasoft ne fait toujours pas de code (excepté [Framadate][23]). J’ai codé Lufi en dehors de Framasoft, bien que j’en sois membre. Lufi est encore jeune, donc si vous repérez des problèmes, n’hésitez pas à ouvrir un [ticket](https://git.framasoft.org/luc/lufi/issues) ! Article initialement posté sur mon blog : . [1]: https://lut.im [2]: http://sebsauvage.net/wiki/doku.php?id=php:zerobin [3]: https://bitwiseshiftleft.github.io/sjcl/ [4]: https://lstu.fr [5]: http://getbootstrap.com/ [6]: https://fr.wikipedia.org/wiki/WebSocket [7]: https://git.framasoft.org/luc/lufi [8]: https://fiat-tux.fr/wp-content/uploads/lufi196.png [9]: http://www.vim.org/ [10]: http://mojolicio.us [11]: https://fr.wikipedia.org/wiki/Stockage_web_local [12]: https://git.framasoft.org/luc/lufi/wikis/home [13]: https://git.framasoft.org/luc/lufi/blob/master/LICENSE [14]: https://github.com/ldidry/lufi/commits/master [15]: https://fr.wikipedia.org/wiki/Monkey_D._Luffy [16]: https://fr.wikipedia.org/wiki/One_Piece [17]: https://inkscape.org/fr/ [18]: http://framasoft.org [19]: http://framablog.org/2015/10/05/degooglisons-saison-2-ils-ne-savaient-pas-que-cetait-impossible-alors-ils-lont-fait/ [20]: https://degooglisons-internet.org/ [21]: https://soutenir.framasoft.org [22]: https://erco.xyz [23]: https://framadate.org

AltStyle によって変換されたページ (->オリジナル) /