Shared posts

20 Sep 10:46

Ephémérides du 20 septembre au 24 octobre 2013

by Ciel & Espace Radio
Voici la liste des évènements dont il sera question dans cette émission, qui couvre la période du 20 septembre et 24 octobre : Europe et de l'ombre de Io passent devant Jupiter le 28 septembreUranus est à l'opposition le 3 octobreVénus et la Lune se couchent ensemble le 8Callisto, Europe, et Io projettent leur 3 ombres sur Jupiter, le 12Mars et Régulus rivalisent d'éclat le 15Et la comète Ison passe à seulement 1 degré de Mars, le 18
Avec Jean-Luc Dauvergne, journaliste à Ciel et Espace , David Fossé, journaliste à Ciel et Espace, Éphémérides, Guillaume Cannat, Astronome amateur, auteur du Guide du ciel et du blog "Autour du ciel" sur LeMonde.fr, Éphémérides
19 Sep 11:49

Non, Voyager 1 n’a pas quitté le système solaire

by Dr. Goulu
Je vous propose ci-dessous une traduction de l'article "Voyager 1 Reaches Interstellar Space. But Has It Left the Solar System? Wellllll…" de Phil Plait le "Bad Astronomer" qui introduit une intéressante distinction entre "entrer dans l'espace interstellaire" et "quitter le système solaire" … Lire la suite →
Continue reading →
19 Sep 11:25

How Xen Virtualization Got Its Zen Back: LinuxCon

eWEEK: The open-source Xen virtualization hypervisor has undergone a transformation in recent years, revitalizing its community and generating new interest. How did it do it?

19 Sep 11:25

Une bibliothèque de bibliothèques Javascript

by Korben

Si vous cherchez une bibliothèque JavaScript pour vos projets web, arrêtez d'écumer le web avec des requêtes Google totalement tordues et foncez sur JSDB.

Ce site regroupe de très très nombreuses bibliothèques JS classées par catégories avec pour chacune d'entre elles une petite description et les liens qui vont bien pour la télécharger. Il y a même un classement des bibliothèques du "moment".

Ce qui est sympa avec DBJS, c'est que si vous hésitez entre plusieurs bibliothèques qui font sensiblement la même chose, il suffit de regarder la note attribuée par le site (et calculée à partir de données Github) pour savoir laquelle les internautes préfèrent. En général, c'est un bon indicateur de qualité.

+ d'infos ici

19 Sep 10:56

Trouver la documentation d’un composant électronique

by Korben

Bien qu'à la maison, j'ai ce bouquin qui explique l'électronique aux débutants, je n'ai pas encore réellement eu le temps de bien me former. Mais je sais que le jour où j'aurai besoin de documentation sur un composant électronique, peu importe sa marque, je n'aurai qu'à aller sur DatasheetLib.

Ce site regroupe plus de 700 000 PDF contenant de la doc et des spécifications techniques sur des composants électroniques ou des machines professionnelles.

electronique composant Trouver la documentation dun composant électronique

Le moteur de recherche est bien pensé et propose des suggestions au fur et à mesure que vous entrez le nom de votre composant et sur la home, vous pouvez retrouver les principaux fabricants et des manuels des composants les plus demandés.

Bref, si vous bricolez, je pense que ce site vous sera bien utile. Moi je retourne plonger le nez dans mon bouquin ;-)

18 Sep 16:41

Firefox 24

by thamieu

Alors que la nouvelle interface de Firefox pour Windows prenait du retard et que le gestionnaire de bug se refaisait une beauté, Mozilla a livré juste à temps Firefox 24.

24

Firefox au Q.G.

Que vous ayiez établi vos quartiers à votre domicile ou à votre bureau, l'agent Firefox 24.0 peut intervenir sur les plate-formes GNU/Linux, Windows et Mac OS X.

Nouveautés

Firefox 24, c'est l'apparition bienvenue d'une fonctionnalité présente de longue date dans Chromium : la fermeture des onglets à droite de l'onglet pointé par un clic droit.

Le panneau de messagerie instantanée (souvenez-vous de « l'API sociale » apparue dans la 23 de Firefox), peut être glissé en dehors de la fenêtre.

Nous en avions aussi parlé dans la précédente dépêche, mais ce n'est que maintenant que les barres de défilement de Mac OS 10.7 sont officiellement prises en charge. On n'aura pas fait d'erratum mais comme on ne se prétend pas journaliste vous ne nous en voudrez pas trop.

Enfin, les APIs d'accessibilité de Firefox permettent désormais la distinction entre les onglets épinglés (les onglets qui n'affichent que l'icône de la page web et restent visibles quelque soit le groupe d'onglet ouvert) et les autres.

Développeurs

Le rendu d'images au format SVG fait l'objet d'améliorations avec la correction d'un bug vieux de 3 ans.

La console d'erreur est désormais désactivée au profit d'une console unifiée, permettant de nombreuses choses, comme l'analyse du trafic réseau et le débogage javascript.

Firefox sur le terrain

Nous vous rappelons que Firefox peut intervenir sur n'importe quel terrain opérationnel grâce à son agent Android. Grâce au programme d'entraînement de Mozilla, l'agent a parfaitement intégré 3 nouvelles langues ainsi qu'une vision de nuit.

Utilisateurs

Le WebRTC est pris en charge.
Les terminaux équipés du NFC peuvent, avec cette nouvelle version, partager entre eux les onglets ouverts.
Plein de nouveautés pour les utilisateurs des lecteurs d'écran !
Le lecteur est maintenant doté d'un mode nuit, pour faciliter la lecture dans les lieux sombres.
Les .apk comprenant plusieurs jeux de paramètres régionaux intègrent désormais l'anglais, le suédois et le catalan.
Pour les chinois, Baidu devient le moteur de recherche par défaut.

La suite

Firefox 26 pour GNU/Linux devrait pouvoir décoder les vidéos H264 et les sons AAC et MP3 lorsqu'ils sont installés sur nos distributions (en s'appuyant sur GStreamer). En réalité cette prise en charge existe dès cette version (la 24, donc) mais il y a un réglage à modifier pour l'activer… Comme nous sommes joueurs, nous vous laissons le dévoiler en commentaires ;)

Lire les commentaires

18 Sep 16:41

Les "parasites" contaminent le bureau!

Il arrive en retard aux réunions, n'accepte pas de nouveaux dossiers, car il se dit surchargé (ce qui n'est pas vrai) et repousse sans cesse les échéances sous divers prétextes. Voilà des...
18 Sep 16:40

VLC Media Player Adds Support For H.265 / HEVC

The VLC project has merged support for x265 to provide support for HEVC/H.265 in the popular open-source cross-platform media player...
18 Sep 16:40

Au cœur de l’école "42" en compagnie de Xavier Niel

by La Chaîne Techno
Visite de l'école 42

Découvrez dans cette vidéo exceptionnelle les coulisses d’une école d’informatique pas comme les autres : l’école 42. Crée par le PDG de Free-Illiad Xavier Niel, cet établissement gratuit accueille les jeunes, même non-bacheliers, pour les former à la programmation informatique. Mais encore faut-il réussir l’épreuve de sélection, la « piscine », qui se déroule actuellement en attendant la première rentrée prévue pour la mi-novembre 2013. L’école 42 nous a ouvert ses portes. Nous sommes allés à la rencontre de ces jeunes de tous milieux et de tous horizons qui planchent avec acharnement pour être acceptés. Découvrez les salles de cours bourrées d’ordinateurs, le dortoir improvisé et l’arrivée de Xavier Niel sur place sous les acclamations. Un reportage exclusif de La Chaîne Techno – 01net signé Jérôme Colombain, François Sorel et Florian Beaufreton.

Voir aussi : 42 : Une école pour trouver les génies de l’informatique français

18 Sep 16:39

Une extension pour ressusciter une page web

by Korben

Ressusciter des morts sans être Jésus ou Frankenstein, ce n’est pas forcement simple. Enfin, si, mais il faut les bons outils !

Et c'est ce que je vous propose aujourd'hui grâce à l'extension Firefox Resurrect Pages qui permet de ressusciter les pages web décédées.

Comment ? Et bien, à chaque fois qu'un site répond aux abonnés absents, l'extension prend le relai et vous propose une recherche dans les systèmes de cache suivants :

ressurect Une extension pour ressusciter une page web

Terriblement, pratique en cas de difficultés d'accès ou de censure. À garder sous le coude ;-)

18 Sep 16:36

Jet World Masters 2013

by Korben

Si vous aimez le modélisme, je pense que vous apprécierez cette vidéo tournée lors des Jet World Masters 2013, qui a rassemblé durant une semaine, la crème de la crème des jets à échelle réduite.

Vraiment, classe ces petits avions pour Schtroumpfs ! Ça me fait penser que sur ma todo list, je n'ai pas encore rayé la mention "Faire un tour en avion de chasse". Bon, ceux-là, je ne risque pas d'y mettre mon cul mais parait qu'il en existe aussi pour des gens de taille normale ;-)

Pour voir chaque équipe et leur modèle, cliquez ici et si vous souhaitez voir un peu plus de vidéos du Jet WM2013, c'est par ici.

 

18 Sep 16:28

Virgin Mobile Telib : smartphone et 10 Go pour 19,99 €

by Anne Onyme
Virgin Mobile frappe fort en proposant une nouvelle offre sans engagement, Telib, proposant pour 19,99 € par mois le tout illimité avec 10 Go en 3G+ inclus, le tout avec mise à disposition d'un smartphone Android ! Une offre alléchante au premier abord, mais il faudra s'accommoder de quelques restrictions. Dans le détail, l'offre comprend : la mise à disposition d'un smartphone sous Android (Acer Liquid Z3), les appels illimités en France et vers 50 destinations (3h max/appel et vers 199 (...)
17 Sep 11:55

0 a.d. Alpha 14 Naukratis

Plus besoin de présenter le jeux de stratégie open source qu'est 0 a.d. Très bon projet de la part de Wildfire Games, ceux ci nous gates avec une mise à jour sortit le 4 septembre et nommé Alpha 14 Naukratis. En plus de nouveautés sur le jeux que je citerais plus tard, il est important de souligner le fait que 0 a.d. a lancé un crowdfunding pour son jeux. Celui-ci étant d'une valeur de 160.000 euro à réunir en 47 jours au total. Bien sur Wildfire précise plusieurs chose concernant son crowfunding. Son jeux restera gratuit et open source ce qui est une très bonne nouvelle et deuxièmement les don seront non profitable à l'éditeur (Tout l'argent donné sera utilisé pour le jeux et pas autre chose).

Passons maintenant aux nouveautés qui vous intéresses, celle du jeux en lui même. Concernant le gameplay on peut noté diverse ajouts et améliorations. L'arrivé de nouveaux bâtiments, les forges². Modification concernant les fermes, celle-ci produisant maintenant de la nouriture à l'infini. Vous n'aurez donc plus besoin de reconstruire celles-ci mais en contre-parti celles-ci produiront moins de nourriture par rapport à avant. La limite de récolteur passant elle à 5 sur chaque ferme. Vos unités peuvent maintenant entrer en garnisons dans plus de bâtiments. Vous gagnez à commercer avec vos alliés plutot qu'avec vous même (le bonus étant de 25%). Les unités à distance tirent plus loin si elles sont en hauteur. Il n'y a plus besoin d'une distance minimum pour que vos unités à distance se mettent à tirer.

Concernant les améliorations graphique, sonore et interface. L'ajout d'un bouton permanent permettant de situer votre héro peut importe ou il est sur la map. En mode solo vous pouvez changez la vitesse du jeux. L'ajout de raccourcis concernant les vues de caméras (permettre de revenir à une vue sauvegardé en appuyant sur un raccourci défini je crois). L'amélioration du Gui permettant une interaction plus rapide. Quelque améliorations sonore, comme le fait que maintenant plusieurs se joue pendant votre partie, ainsi que l'ajout de sons pour votre interface. Terrain anchoring : Units now move more realistically on hills. (pas compris désolé) Vous pouvez maintenant rajouter une description pour vos sauvegarde en jeux ainsi qu'écraser et supprimer vos sauvegarde en jeux. Quelques maps ont été amélioré afin d'avoir un meilleur rendu visuel ainsi que d'être plus jouable. Le rendu de l'eau est maintenant amélioré et plus rapide. Le rendu de vos bateaux quand ceux-ci coule est amélioré.

Et pour finir la résolutions de quelque bug, et diverse optimisation (je vous invite à voir le site officiel pour cela).

*http://www.indiegogo.com/projects/s...
²http://wildfiregames.com/0ad/images...

17 Sep 11:55

OpenRA - Release 20130915

Une nouvelle version officielle de OpenRA vient de paraître ! Cette version comporte son lot de nouveautés : plus de 1100 changements et améliorations ont été effectués par 17 contributeurs.

Les principaux changements de cette version sont :

  • Nouveau comportement du brouillard de guerre (les bâtiments ainsi que les minerais/tiberium/épices sont maintenant montrés tels qu'ils ont été aperçus la dernière fois par le joueur).
  • L'admin peut maintenant choisir certaines options de début de partie : avec quelles unités commencer, combien d'argent, permettre d'installer sa base près d'un coéquipier, afficher ou non le voile et/ou le brouillard de guerre.
  • L'ingénieur adopte maintenant le comportement des anciens jeux CnC, la capture d'un bâtiment de l'extérieur (comme dans C&C General).
  • Révision des tirs, projectiles et explosions pour tous les mods.
  • Support natif des fichiers D2K, ce qui accroit le réalisme graphique et sonore de ce mod.
  • Problèmes d'installation sous Windows réglés.
  • De nombreux bugs, crashs, et problèmes de performance réglés.

Veuillez noter que ce OpenRA utilise maintenant l'accélération graphique (GPU). Ceci ne devait poser aucun problème pour les ordinateurs récents (de plus de 5-7 ans), par contre, pour les plus anciens...

La liste des changements est trop longue pour être affichée ici, mais vous pouvez la consulter ici (plus lisible) ou ici (toutes les modifs du code sur github). Si vous souhaitez aider, ou contacter les développeurs, vous pouvez les joindre sur le canal IRC #openra (webchat).

Cette version comprend également le support expérimental de Tiberian Sun et Red Alert 2. Le travail a débuté sur un mod Tiberian Sun, mais rien ne sera vraiment jouable avant plusieurs mois. Entre temps, les auteurs de mods peuvent tester le support des unités et bâtiments en voxel et shp(ts).

D2K utilise désormais les effets d'explosion semi-transparents.

L'interface a été améliorée, ainsi que certaines options du jeu.

Il est maintenant possible d'ajouter des unités en « voxel » dans OpenRA.

Le site web a également été modifié. http://openra.res0l.net/

17 Sep 11:54

Le Centre Inria Bordeaux - Sud-Ouest participe à la Nuit des Chercheurs

Venez à la rencontre des femmes et hommes qui font la science à l'occasion de la Nuit des Chercheurs.

lire la suite

16 Sep 19:02

Je crée mon jeu vidéo E01 : les systèmes à entités

by rewind

«Je crée mon jeu vidéo» est une série d'articles sur la création d'un jeu vidéo, depuis la feuille blanche jusqu'au résultat final. On y parlera de tout : de la technique, du contenu, de la joie de voir bouger des sprites, de la lassitude du développement solitaire, etc. Vous pourrez suivre cette série grâce au tag gamedev.

Cet article est le premier de la série. Avant de vous dévoiler l'idée de jeu que j'ai (et qui n'est pas révolutionnaire, rassurez-vous) dans un prochain article, on va commencer par un peu de technique et parler des systèmes à entités. C'est un nouveau paradigme de programmation assez intéressant, en particulier dans le cadre des jeux vidéos où il est beaucoup utilisé depuis quelques années, en particulier dans le moteur de jeu (propriétaire) Unity.

Sommaire

Introduction

Le problème de la programmation orientée objet

Les systèmes à entités (entity systems) sont nés des limites du paradigme orienté objet appliqué aux jeux vidéos. Tout programmeur qui a pratiqué l'orienté objet suffisamment a déjà rencontré ce cas où il ne sait pas où placer une classe dans l'arbre d'héritage parce qu'elle irait bien à deux endroits différents. Petit exemple :

            /---+ Volant +---+ Avion
            |            |
Vehicule ---+            +---+ Soucoupe
            |
            \---+ Roulant +---+ Voiture
                          |
                          +---+ Moto

Voici une belle hiérarchie comme on en rencontre souvent. Mais dans cette hiérarchie, où placer la classe VoitureVolante ? C'est une voiture, donc elle devrait être une fille de la classe Voiture. Mais elle vole donc elle devrait être une fille de Volant. Certains langages permettent l'héritage multiple, mais comme tout le monde le sait, ça pose des problèmes. Que faire ?

Les non-solutions objets

Surtout que ce genre de cas arrive assez fréquemment dans les jeux vidéos où il y a une foultitude d'objets avec une chiée de propriétés.

Du coup, si on reste avec de l'orienté objet, on se retrouve avec deux solutions qui n'en sont pas vraiment :

  1. Remonter les propriétés dans l'arbre des classes. Mais du coup, on se retrouve avec des classes de base énormes qui ont des tonnes de propriétés inutiles pour de nombreuses sous-classes. Dans notre exemple, on pourrait très bien mettre une propriété nombreDeRoues dans la classe Vehicule et mettre cette propriété à 0 pour les objets volants non-roulants. Notre voiture volante serait alors une fille de Volant mais avec un nombre de roues strictement positif. Et on sent bien que c'est crade.
  2. Dupliquer le code entre les classes. L'inconvénient classique est qu'il faut maintenir deux copies du code et que c'est à coup sûr un échec programmé. Notre voiture volante sera alors une fille de Voiture et on dupliquera le code d'une méthode vole() tiré de la classe Volant. Bref, saimal.

C'est là qu'interviennent les systèmes à entités.

La programmation orientée donnée

Avant de rentrer dans le vif du sujet, disons tout de suite ce que les systèmes à entités ne sont pas. Ce n'est pas une évolution de la programmation orientée objet, c'est même une approche complètement orthogonale. Ce n'est pas de la programmation orientée composants, même si par certains côtés, ça se ressemble, de loin, dans le brouillard, la nuit.

Les systèmes à entités sont ce qu'on pourrait appeler de la programmation orientée donnée dans le sens où ce qui est au centre, ce sont les données et pas les fonctions, contrairement à l'orienté objet où le code (les méthodes) sont au cœur même du paradigme. La programmation orientée donnée partage quelques concepts avec les bases de données, et on verra qu'un système à entités pourrait être décrit comme une base de données.

Quoi qu'il en soit, si vous découvrez les systèmes à entités, vous devez totalement oublier tout ce qu'on vous a appris et notamment la programmation orientée objet. Dès que vous essaierez de rapprocher les concepts des systèmes à entités de ceux de la programmation orientée objet, vous aurez perdu et vous ne pourrez pas profiter de la puissance des systèmes à entités.

Après, qu'on s'entende bien, les systèmes à entités ne signent pas la mort de la programmation orientée objet. Chaque paradigme a ses avantages et ses inconvénients et il convient de choisir le meilleur pour chaque usage. Il se trouve que dans les jeux vidéos, les systèmes à entités trouvent une application assez naturelle.

Les concepts des systèmes à entités

Il y a dans les systèmes à entités quelques concepts qu'on retrouve dans toutes les descriptions. Ces concepts portent parfois des noms différents mais globalement, ils ont la même fonction.

Entité

Une entité (entity) représente un objet dans le jeu (game object), c'est-à-dire n'importe quel élément d'un jeu. Une entité ne possède pas de données propres, ni de méthodes propres. Une entité est une sorte d'identifiant de l'objet du jeu, rien de plus.

Mais alors, où sont les données ? Elles sont dans les composants.

Composants

Un composant (component) représente un aspect d'un objet ou d'un ensemble d'objet. Par exemple, la couleur est un composant, la position est un composant, la valeur en pièce d'or est un composant, etc. Les données inscrites dans le composant lui permettent de faire fonctionner l'aspect en question. Une entité va donc être caractérisée par un ensemble de composant, pas forcément constant d'ailleurs. Prenez une Voiture, ajoutez lui un composant Ailes et hop, vous avez une VoitureVolante.

Donc, si les composants sont un tas de données, comment met-on tout cela en route ? Dans les systèmes.

Systèmes

Un système (system) contient tout le code pour mettre à jour les composants. Tout le code se trouve dans les systèmes et pas ailleurs (notamment pas dans les composants). Un système va donc avoir besoin d'un ensemble de composants qu'il va lire et/ou écrire. Un système va être exécuté en permanence sur toutes les entités qui possèdent les composants adéquats. Par exemple, un système Rendu va prendre toutes les entités qui possèdent le composant Representation, va lire les informations du composant et rendre l'entité sur l'écran.

Voilà, on pourrait en rester là mais on va aborder un dernier concept, les archétypes.

Archétypes

Un archétype est un type d'entité, c'est-à-dire une liste de composants qu'on va utiliser pour représenter un type d'objet. Techniquement, on pourrait se passer des archétypes mais ils se révèlent bien pratique pour gérer l'initialisation des entités et en particulier des différents composants des entités.

Comment peut-on implémenter ce bouzin ?

Généralités

Vient alors la question de comment on peut implémenter ce machin. Il y a en gros deux manières de faire : la mauvaise et la bonne. Enfin, question de point de vue. Disons que si on ne veut pas trop s'écarter du paradigme, il vaut mieux utiliser la seconde. Dans la vraie vie, on trouve un peu de tout, même de l'orienté objet !.

La mauvaise manière de faire est d'implémenter les entités comme des listes de composants. Ça semble assez naturel, mais ça pose des problèmes. Notamment quand il faut accéder à la mémoire. En effet, un système va mettre à jour tout un tas de composants auquel il va accéder de manière linéaire. Si tous les composants d'un même type sont alloués les uns à côté des autres (genre dans un tableau), ça va aider le cache et donc améliorer les performances. Si les composants sont stockés dans l'entité, on va perdre cet avantage.

La bonne manière de faire, c'est donc d'implémenter les entités comme des entiers. En fait, si on pousse l'orienté donnée jusqu'au bout, on peut imaginer les systèmes à entités comme des bases de données où les entités seraient des identifiants qui serviront de clefs primaires pour les différentes tables. Chaque composant aurait sa table avec les données. Ensuite, on aurait quelques tables pour faire le lien entre les entités et les composants. On pourrait ajouter également quelques tables pour définir des archétypes.

Cette dernière manière de faire a été plus ou moins normalisée dans une API qui s'appelle ES alpha. C'est à mon avis la bonne vision à avoir. Même si après, on va être obligé de s'écarter un peu du dogme pour des raisons pratiques parmi lesquelles le besoin de communiquer entre entités qui est généralement géré à part.

Un des énormes avantages des systèmes à entités, c'est que la sauvegarde d'un jeu devient triviale : comme toutes les données sont dans les composants, il suffit de sauvegarder les composants. L'ensemble des composants forment l'état du jeu à l'instant t. En les sérialisant sur le disque, on crée une photo instantanée du jeu qu'on pourra recharger pour reprendre le jeu exactement dans le même état.

libes, une implémentation d'un système à entité

Je vous propose donc mon implémentation d'un système à entité, qui est ma première contribution pour cette série d'articles (licence ISC). libes, c'est son nom, est une bibliothèque qui essaie de suivre au mieux l'API ES alpha en l'adaptant à C++. Le code n'est pas très long et reste relativement lisible et compréhensible.

J'ai produit un tutoriel pour montrer comment on peut utiliser la bibliothèque sur un exemple tout bête : des balles rebondissantes. Le code complet de ce tutoriel est bien entendu disponible.

Et bien entendu, j'utiliserai cette bibliothèque et les concepts des systèmes à entités pour mon jeu.

D'autres implémentations

Vous pouvez également aller voir d'autres implémentations existantes (souvent plus complexe à mon sens) :

  • Artemis, Arni Arent, 2012, Java
  • EntityX, Alec Thomas, 2012, C++
  • anax, Miguel Martin, 2013, C++

Pour aller plus loin…

Pour écrire cet article, je me suis largement inspiré des articles mis en lien dans cette dépêche et qui sont de très bonnes sources d'information complémentaires.

N'hésitez pas à dire si ce genre d'article vous plaît. Si c'est le cas, j'en ferai d'autres.

Lire les commentaires

16 Sep 11:11

Unvanquished Is Rewriting, Modernizing The Quake 3 Engine

The Unvanquished open-source game is one of the most fascinating open-source game projects as they've strived for fundamental improvements in the ioquake3 engine and also to deliver high quality art assets and in-game content. Unvanquished is powered by the Daemon Engine, which is derived from the ioquake3 engine at its core -- the open-source version of id's Quake III engine. With the original code being the better part of two decades old, the developers are seeking to modernize and rewrite the code-base...
15 Sep 16:38

Utiliser le port WAN de votre routeur comme port Ethernet

by Korben

Si comme moi, vous êtes équipé d’un routeur sur lequel vous avez installé DD-WRT, voici comment faire pour récupérer un port Ethernet supplémentaire.

En effet, sur les routeurs, il y a un port Internet, alias port WAN sur lequel vous devez connecter un modem DSL. Si vous ne vous en servez pas pour ça, sachez qu’il est possible d’utiliser ce port pour brancher une machine de plus en Ethernet.

Alors, comment faire ?

Et bien c’est hyper simple. Loggez-vous sur votre interface d’admin DD-WRT, puis allez dans Setup -> Basic Setup et désactivez la connexion WAN en choisissant « Disabled » dans la liste. À partir de cet instant, la case à cocher « Assign WAN port to switch » devrait apparaitre. Cochez là puis appliquez les modifications.

Au besoin, relancez votre routeur.

ddwrt Utiliser le port WAN de votre routeur comme port Ethernet

Et voilà un port Ethernet de gagné !

14 Sep 21:23

irccd, un robot IRC en C++ et Lua

by David Demelier

Irccd (IRC Client Daemon) est une petite application C++ qui fonctionne comme un daemon. C'est un robot IRC personnalisable qui permet d'exécuter des scripts Lua d'après certains évènements IRC.

Robot

Par exemple, irccd est capable d'appeler plusieurs scripts Lua lorsque le robot se connecte à un serveur IRC, que quelqu'un parle sur le canal, qu'une personne est arrivée, etc…

Irccd est très simple et léger et ne nécessite que peu de dépendances. Il a aussi l'avantage d'être multi serveurs et multi identités, ce qui signifie qu'il peut se connecter à un serveur avec un certain nom, puis sur un autre avec un autre pseudo.

Irccd est écrit en C++11 et utilise Lua 5.2 pour les scripts, il a un outil associé nommé irccdctl qui permet de communiquer avec une instance d'irccd. Cette fois-ci c'est vous le client et vous pouvez faire parler irccd, le faire joindre un canal, etc.

Cette fonctionnalité permet par exemple d'utiliser irccd comme un relayeur de message (notification de commit notamment).

Pour résumer voici les fonctionnalités principales d'irccd :

  • Se connecte à plusieurs serveurs
  • Peut utiliser différentes identités par serveurs
  • Peut appeler des scripts Lua (optionel)
  • A le support SSL (nécessite libircclient >= 1.7)
  • Documentation très complète (y compris pages de man)
  • Possède une API Lua compréhensible et simple
  • Très léger, rapide et performant
  • Compatible Windows !
  • Peut-être contrôlé via des sockets (ou irccdctl)
  • Comporte déjà quelques plugins

Lire les commentaires

12 Sep 19:43

Comment trouver quelle page provoque une augmentation du CPU de votre serveur

by Korben

Mon serveur faisait des piques au niveau CPU avec MySQL sans que je puisse déterminer avec précision quel était le problème.

J'imaginais qu'un bot bombardait une page bien précise qui faisait tourner MySQL. Du coup, j'ai cherché comment déterminer la source du problème et voici comment j'ai fait.

J'ai installé ce paquet

sudo apt-get install sysstat

Ce qui m'a permis d'avoir le soft SAR qui permet de mesure la charge serveur. J'ai ouvert une première console et j'y ai entré la commande suivante :

sar -q 1

Ce qu'on va observer, c'est la colonne ldavg-1... Laissez tourner ce truc...

enorme Comment trouver quelle page provoque une augmentation du CPU de votre serveur

Au départ, c'était énorme chez moi. Donc j'ai stoppé tous les process MySQL, Apache, Nginx. J'ai attendu que la charge baisse puis j'ai relancé tout ça...

Ensuite, j'ai patienté en observant SAR. La charge stagnait autour de 10, puis d'un coup, ça s'est mis à monter progressivement.

charge Comment trouver quelle page provoque une augmentation du CPU de votre serveur

18, 31, 44...etc.

En regardant l'heure, ça a démarré vers 12h00.... Donc j'ai décidé de voir combien de requêtes j'avais reçues entre 12h00 et 12h01. Voici la commande :

egrep "10/Sep/2013:12:00|10/Sep/2013:12:01" /var/log/apache2/korben/access.log | wc -l

Bingo ! 1215 requêtes sur 1 minute. C'est beaucoup, mais Apache le supporte sans difficulté. Ce qui coince chez moi, c'est MySQL. Allons voir quelles requêtes sont faites à Apache durant ce laps de temps...

Pour cela, il faut entrer la commande suivante :

egrep "10/Sep/2013:12:00|10/Sep/2013:12:01" /var/log/apache2/korben.info/access.log | cut -d\" -f2 | awk '{print $1 " " $2}' | cut -d? -f1 | sort | uniq -c | sort -n | sed 's/[ ]*//'

Cela sortira classé par GET ou par POST, les pages appelées durant ce laps de temps d'une minute... Voici les 2 plus gros de cette liste.

317 GET /feed
329 GET /wp-content/plugins/s2member/s2member-o.php

Quand j'ai vu /feed, mon cerveau a fait tilt... En effet, j'avais retiré par erreur cette page de la mise en cache, ce qui fait qu'à chaque fois que les agrégateurs RSS venaient taper sur mon serveur, ils se faisaient remouliner une page entière de contenu (mon flux RSS est complet), torturant par la même occasion mon serveur MySQL.

J'ai corrigé le problème et maintenant tout roule. Bon, faut que je creuse le côté s2member car ce n'est pas non plus très propre à ce niveau, mais maintenant je suis déjà un peu plus serein et mon serveur respire mieux.

J'ai conscience que cette explication s'applique à mon cas particulier, mais je pense que vous pouvez reprendre à votre compte certaines des commandes expliquées dans votre article pour mener vous aussi l'enquête.

12 Sep 19:25

VMware Workstation 10 Brings In New Features

While Oracle is readying VirtualBox 4.3, VMware has released VMware Fusion 6 and VMware Workstation 10 as their latest desktop virtualization offerings. There's a great number of new features present...
12 Sep 19:17

VirtualBox 4.3 Beta 2 Fixes Ubuntu 13.04 3D Desktop Rendering Issues

Softpedia: The big news for Linux users is that VirtualBox 4.3 Beta 2 fixes 3D desktop rendering issues with the Ubuntu 13.04 (Raring Ringtail) operating system from Canonical.

12 Sep 19:15

Le Sénat rejette les amendements vente forcée après un argumentaire honteux du ministre Benoît Hamon

by jtadeusz

Mise à jour du 13 septembre 2013 : ajout de la transcription de l'intégralité des débats.

Dans le cadre de l'examen du projet de loi consommation, les sénateurs ont débattu le mercredi 11 septembre 2013 de trois amendements portant sur la vente forcée ordinateurs/logiciels. Malgré une attente forte de la part des consommateurs et un avis favorable du rapporteur, les amendements ont finalement été rejetés suite à un argumentaire honteux du ministre délégué à l'Économie sociale et solidaire et à la Consommation Benoît Hamon.

En effet Alain Fauconnier, le rapporteur du projet de loi, avait émis un avis favorable mais souhaitait connaître l'avis du ministre avant de se prononcer définitivement.

Le ministre Benoît Hamon a émis un avis défavorable avec un argumentaire honteux, qui invoquait l'action de la Commission européenne comme raison de ne pas agir. Selon lui, la Commission agirait déjà contre les pratiques déloyales de Microsoft. Il est vrai que la Commission européenne a fini par imposer une amende à la firme de Redmont en 2013, pour ne pas avoir respecté ses propres engagements sur la vente liée malgré des obligations légales1. On ne peut que constater que ces amendes n'ont pas changé les pratiques déloyales de Microsoft.

De même, le ministre a tenté de justifier sa position en expliquant que le candidat Hollande avait fait une promesse à une association de professionnels et non aux consommateurs, et que donc ce n'était pas le bon projet de loi ; il a noyé le poisson avec des histoires hors sujet sur les mobiles et tablettes ; a parlé de vente liée et non de vente forcée...

Au final, les amendements ont été soumis au vote sans que le rapporteur ait le temps de dire s'il maintenait son avis favorable après les explications du ministre. Après le vote, un sénateur a signalé ce problème. Le rapporteur a alors maintenu son avis favorable mais le président de séance a considéré que le vote avait déjà eu lieu. On peut regretter tout de même que les sénateurs n'aient pas eu toutes les clés en main avant de voter.

Pour plus d'information, des sources supplémentaires :

Voici le compte-rendu des débats, tels que rapportés sur le site du Sénat :

M. le président. - Amendement n°228 rectifié, présenté par M. Labbé, Mmes Aïchi, Ango Ela, Archimbaud, Benbassa, Blandin et Bouchoux, MM. Dantec, Desessard et Gattolin, Mme Lipietz et M. Placé.

Après l'article 4

Insérer un article additionnel ainsi rédigé :

Après l'article L. 113-5 du code de la consommation, il est inséré un article L. 113-... ainsi rédigé :

« Art. L. 113-... - Le matériel informatique proposé à la vente avec des logiciels intégrés constitue une vente par lots.

« Tout professionnel vendeur de matériel informatique fournissant des logiciels intégrés doit, avant tout paiement du prix par le consommateur, l'informer par voie d'affichage des caractéristiques essentielles et du prix public toutes taxes comprises du lot ainsi que du prix de chacun des logiciels composant individuellement le lot. L'indication de ces prix doit figurer sur la facture remise au consommateur.

« La violation de ces dispositions entre dans le champ d'application de l'article L. 122-3. »

M. Joël Labbé. - Mettons fin à la vente forcée de logiciels intégrés au matériel informatique. La vente de matériel informatique fournissant des logiciels intégrés constitue une vente par lots et le tribunal de proximité de Saint-Denis a jugé le 10 janvier 2012 ces pratiques commerciales de fourniture de logiciels non demandés, « déloyales en toutes circonstances ».

M. le président. - Amendement identique n°458, présenté par M. Le Cam et les membres du groupe CRC.

M. Gérard Le Cam. - Défendu.

M. le président. - Amendement n°459, présenté par M. Le Cam et les membres du groupe CRC.

Après l'article 4

Insérer un article additionnel ainsi rédigé :

Après l'article L. 113-5 du code de la consommation, il est inséré un article L. 113-5-... ainsi rédigé :

« Art. L. 113-5-... - Tout professionnel, fabricant ou vendeur d'un ordinateur doté de logiciels intégrés, doit fournir toutes les informations utiles permettant d'informer le consommateur sur les caractéristiques essentielles et le prix public toutes taxes comprises de ces produits, ainsi que sur les conditions d'utilisation et le montant correspondant à chacun des logiciels préchargés.

« L'indication de ces informations doit être faite par voie d'affichage et figurer sur la facture remise au consommateur.

« La violation de ces dispositions constitue une pratique commerciale trompeuse. »

Mme Mireille Schurch. - Amendement de repli. Si nous ne consacrons pas dans la loi la jurisprudence existante qui caractérise comme vente par lots la vente de matériel informatique avec des logiciels intégrés, assurons au moins au consommateur une information claire des différents produits qui composent l'achat.

M. Alain Fauconnier, rapporteur. - Favorable sur le principe aux amendements nos228 rectifié et 458. La vente forcée de logiciels augmente le prix de l'équipement. Quel est l'avis du Gouvernement ?

M. Benoît Hamon, ministre délégué. - Sur ce sujet, les réseaux sociaux sont parfois prompts à lancer des contre-vérités. Le code de la consommation prévoit déjà une information, que ce texte renforce. Sur la jurisprudence, on pourrait citer un arrêt de la cour de Versailles allant dans le même sens, cassé par la Cour de cassation.

La position dominante de Microsoft permet déjà aux autorités d'agir contre la vente forcée : la Commission européenne a sanctionné Microsoft d'une amende de 671 millions d'euros pour ne pas avoir respecté l'obligation de proposer à l'utilisateur l'écran permettant un choix.

L'enquête de l'autorité de la concurrence permettra de mesurer l'ouverture du marché. L'engagement du candidat Hollande, souvent rappelé, était adressé aux professionnels et aux collectivités, non aux associations de consommateurs.

Avis défavorable.

Les amendements identiques n°s228 rectifié et 458 ne sont pas adoptés.

L'amendement n°459 n'est pas adopté.

M. Daniel Raoul, président de la commission des affaires économiques. - Le rapporteur, sur les amendements précédents, avait demandé l'avis du Gouvernement avant de se déterminer. Il aurait fallu lui demander de nouveau son avis.

M. Alain Fauconnier, rapporteur. - Il serait resté favorable.

L'intégralité des débats a été publiée sur le site du Sénat

Articles additionnels après l'article 4

M. le président. Je suis saisi de trois amendements faisant l'objet d'une discussion commune.

Les amendements nos 228 rectifié et 458 sont identiques.

L'amendement n° 228 rectifié est présenté par M. Labbé, Mmes Aïchi, Ango Ela, Archimbaud, Benbassa, Blandin et Bouchoux, MM. Dantec, Desessard et Gattolin, Mme Lipietz et M. Placé.

L'amendement n° 458 est présenté par M. Le Cam, Mmes Didier, Schurch et les membres du groupe communiste républicain et citoyen.

Ces deux amendements sont ainsi libellés :

Après l'article 4

Insérer un article additionnel ainsi rédigé :

Après l'article L. 113–5 du code de la consommation, il est inséré un article L. 113–... ainsi rédigé :

« Art. L. 113–... – Le matériel informatique proposé à la vente avec des logiciels intégrés constitue une vente par lots.

« Tout professionnel vendeur de matériel informatique fournissant des logiciels intégrés doit, avant tout paiement du prix par le consommateur, l'informer par voie d'affichage des caractéristiques essentielles et du prix public toutes taxes comprises du lot ainsi que du prix de chacun des logiciels composant individuellement le lot. L'indication de ces prix doit figurer sur la facture remise au consommateur.

« La violation de ces dispositions entre dans le champ d'application de l'article L. 122–3. »

La parole est à M. Joël Labbé, pour présenter l'amendement n° 228 rectifié.

M. Joël Labbé. Cet amendement vise à mettre fin à la pratique commerciale déloyale que constitue la vente forcée de logiciels intégrés au matériel informatique.

La jurisprudence dit aujourd'hui clairement que la vente de matériel informatique fournissant des logiciels intégrés constitue une vente par lots, comme l'explicite notamment le jugement rendu par le tribunal de proximité de Saint-Denis le 10 janvier 2012, lequel a estimé ces pratiques commerciales de fourniture de logiciels non demandés « déloyales en toutes circonstances », selon les termes de la directive 2005/29 /CE du 11 mai 2005.

M. le président. La parole est à M. Gérard Le Cam, pour présenter l'amendement n° 458.

M. Gérard Le Cam. Il s'agit du même amendement et je le considère donc comme défendu.

M. le président. L'amendement n° 459, présenté par M. Le Cam, Mmes Didier, Schurch et les membres du groupe communiste républicain et citoyen, est ainsi libellé :

Après l'article 4

Insérer un article additionnel ainsi rédigé :

Après l'article L. 113-5 du code de la consommation, il est inséré un article L. 113-5–... ainsi rédigé :

« Art. L. 113-5–... – Tout professionnel, fabricant ou vendeur d'un ordinateur doté de logiciels intégrés, doit fournir toutes les informations utiles permettant d'informer le consommateur sur les caractéristiques essentielles et le prix public toutes taxes comprises de ces produits, ainsi que sur les conditions d'utilisation et le montant correspondant à chacun des logiciels préchargés.

« L'indication de ces informations doit être faite par voie d'affichage et figurer sur la facture remise au consommateur.

« La violation de ces dispositions constitue une pratique commerciale trompeuse. »

La parole est à Mme Mireille Schurch.

Mme Mireille Schurch. Il s'agit d'un amendement de repli qui, s'il ne tend pas à consacrer dans la loi la jurisprudence existante qui considère la vente de matériel informatique avec des logiciels intégrés comme une vente par lots, vise néanmoins à assurer au consommateur une information claire des différents produits qui composent cet achat.

M. le président. Quel est l'avis de la commission ?

M. Alain Fauconnier, rapporteur. Sur le principe, nous serions plutôt favorables aux amendements identiques nos 228 rectifié et 458.

En effet, on peut se demander s'il est normal qu'un consommateur soit forcé d'acheter avec son ordinateur non seulement le logiciel d'exploitation qui l'accompagne, mais également de nombreux logiciels d'application. Cela contribue à augmenter le prix total de l'équipement, alors que, pour beaucoup d'entre eux, ils ne lui sont d'aucune utilité.

Toutefois, nous avons eu un débat en commission sur l'applicabilité de la disposition qui oblige le vendeur à donner les caractéristiques et les prix respectifs au consommateur. Cette obligation peut paraître délicate tant l'imbrication du hard et du soft est étroite.

Aussi, nous avons souhaité recueillir l'avis du Gouvernement sur ces amendements, bien que nous y soyons favorables. Si l'avis de M. le ministre est favorable, je demanderai à Mme Schurch de s'y rallier. Dans le cas contraire, je donnerai un avis défavorable à l'amendement n° 459.

M. le président. Quel est l'avis du Gouvernement ?

M. Benoît Hamon, ministre délégué. Ces amendements visent donc à imposer une information du consommateur sur le prix de chaque élément d'un lot constitué d'un ordinateur et de logiciels préinstallés.

Dans ce débat, j'ai entendu et lu beaucoup de choses. Les réseaux sociaux, notamment, sont parfois prompts à avancer un certain nombre d'arguments. Aussi, je voudrais rétablir quelques vérités.

Tout d'abord, de manière générale, le code de la consommation prévoit déjà une information précontractuelle du consommateur sur les prix et les caractéristiques essentielles des biens qu'il achète. Cette information est d'ailleurs complétée par le présent projet de loi afin d'assurer au consommateur une information renforcée.

Ensuite, s'agissant de caractère « déloyal en toutes circonstances » de la vente liée des logiciels avec les ordinateurs, on cite régulièrement un jugement du tribunal de proximité de Seine-Saint-Denis, mais on pourrait citer également un arrêt de la cour d'appel de Versailles du 5 mai 2011, qui allait dans le même sens, et qui a été cassé par la Cour de cassation.

Les règles communautaires en matière de pratiques commerciales déloyales, traduites dans les dispositions du code de la consommation, sont claires : la vente liée ne peut pas être interdite per se, c'est-à-dire ne peut être interdite en soi.

Pour autant, les pouvoirs publics disposent de plusieurs leviers pour favoriser la liberté de choix du consommateur. S'il apparaît que les dispositions du code de la consommation ne sont pas idoines pour modifier les pratiques commerciales qui ont cours, les dispositions du droit de la concurrence permettent en revanche d'appréhender la problématique au travers de plusieurs angles.

Ainsi, la position dominante de Microsoft sur le marché des systèmes d'exploitation d'ordinateur personnel permet déjà aux autorités de la concurrence d'agir contre les ventes liées de logiciels complémentaires. S'agissant de la préinstallation des logiciels, la Commission européenne avait obtenu que Microsoft s'engage à proposer aux utilisateurs un écran multi-choix permettant de sélectionner facilement le navigateur web de son choix, et non simplement Internet explorer.

Le 6 mars dernier, la Commission a sanctionné Microsoft d'une amende de 561 millions d'euros pour cause de non-respect de cet engagement entre mai 2011 et juillet 2012. Les autorités françaises doivent continuer d'encourager ces actions.

Plus largement, l'Autorité de la concurrence, qui a effectué une perquisition à la fin de juin chez Apple, s'intéresse aux « écosystèmes fermés » qui se développent depuis les systèmes d'exploitation des smartphones et tablettes : iOS et App Store, Androïd et Google Play, Windows Phone et Windows Phone Store, BlackBerry et BlackBerry World.

Dès qu'un consommateur choisit tel ou tel constructeur, il se retrouve lié à une offre précise et il ne peut plus en sortir. Il est verrouillé, en quelque sorte, dans son choix initial. L'enquête de l'Autorité de la concurrence permettra de vérifier que le marché des applications est suffisamment concurrentiel, que les éditeurs d'applications peuvent accéder à cet écosystème et que les tarifs qu'ils payent sont non discriminatoires.

Ce dernier point est important et à mettre en regard d'une évolution majeure du marché : les consommateurs se détournent massivement du marché des PC au profit des tablettes.

L'engagement du candidat François Hollande intitulé « Vente liée - Je laisserai aux utilisateurs la possibilité de choisir leurs logiciels » était adressé aux utilisateurs dans les administrations et collectivités territoriales. Cet engagement a d'ailleurs souvent été rappelé.

ZDNet a rappelé que cette « déliaison » était un engagement du candidat François Hollande. La gazette en ligne a repris à l'appui de cette assertion un courrier en date du 10 avril 2012 à l'Association des développeurs et des utilisateurs de logiciels libres pour les administrations et les collectivités territoriales dans lequel le candidat François Hollande indiquait : « Il est nécessaire de faire en sorte que les prix du matériel et des logiciels préinstallés soient dissociés. »

Cet engagement est non pas adressé à une association de consommateurs, et donc aux consommateurs, mais à une association de professionnels des administrations et collectivités territoriales. En cela, il se distingue de ce que j'ai pu lire ici ou là sur ce qu'auraient été les engagements de François Hollande.

Je le répète, le Gouvernement est fortement mobilisé sur cette question et il l'a déjà prouvé. C'est la raison pour laquelle nous sommes défavorables à ces amendements.

M. le président. Je mets aux voix les amendements identiques nos 228 rectifié et 458.

(Les amendements ne sont pas adoptés.)

M. le président. Je mets aux voix l'amendement n° 459.

(L'amendement n'est pas adopté.)

M. le président. La parole est à M. le président de la commission.

M. Daniel Raoul, président de la commission des affaires économiques. M. le rapporteur, sur les amendements précédents, avait demandé l'avis du Gouvernement avant de se déterminer. Il aurait fallu lui demander de nouveau son avis.

M. Alain Fauconnier, rapporteur. La commission serait restée favorable aux amendements nos 228 rectifié et 458, dont l'adoption aurait fait tomber l'amendement n° 459.

09 Sep 19:21

Podcast science 142 – Science et Fiction, aux frontières des deux mondes

by Podcast Science
  Et c’est la saison 4!! Nous aurions pu mettre à profit les quelque 6 semaines d’absence de l’antenne pour vous mijoter des changements révolutionnaires depuis les coulisses, mais ça ne s’est pas passé comme cela… Si certains d’entre nous se sont certes reposés, d’autres ont été plus hyperactifs que jamais, certains sont partis au […]
08 Sep 09:19

The Z-80 has a 4-bit ALU - here's how it works

The 8-bit Z-80 processor is famed for use in many early personal computers such the Osborne 1, TRS-80, and Sinclair ZX Spectrum, and it is still used in embedded systems and TI graphing calculators. I had always assumed that the ALU (arithmetic-logic unit) in the Z-80 was 8 bits wide, like just about every other 8-bit processor. But while reverse-engineering the Z-80, I was shocked to discover the ALU is only 4 bits wide! The founders of Zilog mentioned the 4-bit ALU in a very interesting discussion at the Computer History Museum, so it's not exactly a secret, but it's not well-known either. I have been reverse-engineering the Z-80 processor using images from the Visual 6502 team. The image below shows the overall structure of the Z-80 chip and the location of the ALU. The remainder of this article dives into the details of the ALU: its architecture, how it works, and exactly how it is implemented. Ken Shirrif's blog is an absolute must for fans of ultra-low-level hardware stuff. This goes way over my head, but interesting nonetheless.
08 Sep 09:17

La grosse frousse

by Korben

Quand on est doué en bricolage et qu'on a les moyens, y'a pas de raison de se priver d'une bonne blaguounette ;-)

C'est une pub virale pour LG mais j'ai trouvé ça très drôle ! A retenir pour le 1er avril de l'année prochaine !

Merci à Kevin

08 Sep 09:15

Les dragons de GoT

by Korben

KEWAAAAAH ?

Ce ne sont pas de vrais dragons dans la série Game of Thrones mais de vulgaires effets spéciaux…

Ralalalala, je suis déçu, déçu, déçu !!!!  (Qui a dit : « Et surement un peu con-con aussi… » ?)

(Attention, spoilers sur la saison 3)

En tout cas, chapeau c’est extrêmement bien fichu !

07 Sep 10:36

Comment extraire une seule base d’un dump SQL complet ?

by Korben

Hier pendant mes aventures extra conjugales avec MySQL, j'ai trouvé une petite astuce qui permet d'extraire une base précise d'un fichier de dump qui contient toutes les bases de votre serveur (le fameux all-databases).

Si cela vous intéresse, voici comment faire... Vous allez voir, c'est très simple.

Pour importer une seule base à partir d'un dump complet, il faut entrer la commande suivante :

mysql -u root -p --one-database BASE_A_RESTAURER < dumpcomplet.sql

Remplacez BASE_A_RESTAURER par le nom de la base de votre choix qui est contenue dans le fichier dumpcomplet.sql.

Ça c'est pour un import direct en base. Mais comment faire si vous souhaitez juste extraire sous forme de fichier SQL, la base qui vous intéresse ?

C'est simple, voici la commande :

sed -n '/^-- Current Database: `BASE_A_EXTRAIRE`/,/^-- Current Database: `/p' dumpcomplet.sql > mabase.sql

Attention toutefois, selon les exports, la langue peut changer et "Current Database" s'écrire alors en français "Base de données". À vous d'adapter cette commande.

07 Sep 10:28

Le chiffrement, maintenant (2)

by Goofy

Voici la deuxième partie du guide sur le chiffrement que nous vous avons présenté la semaine dernière.

Ces derniers jours, les révélations distillées par Snowden n’ont fait que confirmer l’ampleur considérable des transgressions commises par la NSA : le protocole https est compromis, et même un certain type de chiffrement a été « cassé » depuis 2010…

Il est donc d’autant plus justifié de rechercher les moyens de se protéger de ces intrusions de la surveillance généralisée dans nos données personnelles. À titre d’introduction à notre chapitre de la semaine, j’ai traduit rapidement 5 conseils donnés ce vendredi par Bruce Schneier, spécialiste de la sécurité informatique, dans un article du Guardian. Il reconnaît cependant que suivre ces conseils n’est pas à la portée de l’usager moyen d’Internet…

1) Cachez-vous dans le réseau. Mettez en œuvre des services cachés. Utilisez Tor pour vous rendre anonyme. Oui, la NSA cible les utilisateurs de Tor, mais c’est un gros boulot pour eux. Moins vous êtes en évidence, plus vous êtes en sécurité.

2) Chiffrez vos communications. Utilisez TLS. Utilisez IPsec. Là encore, même s’il est vrai que la NSA cible les connexions chiffrées - et il peut y avoir des exploits explicites contre ces protocoles - vous êtes beaucoup mieux protégés que si vous communiquez en clair.

3) Considérez que bien que votre ordinateur puisse être compromis, cela demandera à la NSA beaucoup de travail et de prendre des risques - il ne le sera donc probablement pas. Si vous avez quelque chose de vraiment important entre les mains, utilisez un « angle mort ». Depuis que j’ai commencé à travailler avec les documents Snowden, j’ai acheté un nouvel ordinateur qui n’a jamais été connecté à l’internet. Si je veux transférer un fichier, je le chiffre sur l’ordinateur sécurisé (hors-connexion) et le transfère à mon ordinateur connecté à Internet, en utilisant une clé USB. Pour déchiffrer quelque chose, j’utilise le processus inverse. Cela pourrait ne pas être à toute épreuve, mais c’est déjà très bien.

4) Méfiez-vous des logiciels de chiffrement commerciaux, en particulier venant de grandes entreprises. Mon hypothèse est que la plupart des produits de chiffrement de grandes sociétés nord-américaines ont des portes dérobées utiles à la NSA, et de nombreuses entreprises étrangères en installent sans doute autant. On peut raisonnablement supposer que leurs logiciels ont également ce genre de portes dérobées. Les logiciels dont le code source est fermé sont plus faciles à pénétrer par la NSA que les logiciels open source. Les systèmes qui reposent sur une clé « secrète » principale sont vulnérables à la NSA, soit par des moyens juridiques soit de façon plus clandestine.

5) Efforcez-vous d’utiliser un chiffrement du domaine public qui devra être compatible avec d’autres implémentations. Par exemple, il est plus difficile pour la NSA de pénétrer les TLS que BitLocker, parce que les TLS de n’importe quel fournisseur doivent être compatibles avec les TLS de tout autre fournisseur, alors que BitLocker ne doit être compatible qu’avec lui-même, donnant à la NSA beaucoup plus de liberté pour le modifier à son gré. Et comme BitLocker est propriétaire, il est beaucoup moins probable que ces changements seront découverts. Préférez le chiffrement symétrique au chiffrement à clé publique. Préférez les systèmes basés sur un logarithme discret aux systèmes conventionnels à courbe elliptique ; ces derniers ont des constantes que la NSA influence quand elle le peut.

Type de menace

D’après Encryption Works

(contributeurs : audionuma, goofy, lamessen, Calou, Achille Talon)

La NSA est un puissant adversaire. Si vous êtes sa cible directe, il vous faudra beaucoup d’efforts pour communiquer en toute confidentialité, et même si ce n’est pas le cas, des milliards d’innocents internautes se retrouvent dans les filets de la NSA.

Bien que les outils et conseils présentés dans ce document soient destinés à protéger votre vie privée des méthodes de collecte de la NSA, ces mêmes conseils peuvent être utilisés pour améliorer la sécurité de votre ordinateur contre n’importe quel adversaire. Il est important de garder à l’esprit que d’autres gouvernements, notamment la Chine et la Russie, dépensent d’énormes sommes pour leurs équipements de surveillance et sont réputés pour cibler spécifiquement les journalistes et leurs sources. Aux États-Unis, une mauvaise sécurité informatique peut coûter leur liberté aux lanceurs d’alerte, mais dans d’autres pays c’est leur vie même que risquent à la fois les journalistes et leurs sources. Un exemple récent en Syrie a montré à quel point une mauvaise sécurité informatique peut avoir des conséquences tragiques.

Mais la modification de certaines pratiques de base peut vous garantir une bonne vie privée, même si cela ne vous protège pas d’attaques ciblées par des gouvernements. Ce document passe en revue quelques méthodes qui peuvent vous servir dans les deux cas.

Systèmes de crypto

Nous avons découvert quelque chose. Notre seul espoir contre la domination totale. Un espoir que nous pourrions utiliser pour résister, avec courage, discernement et solidarité. Une étrange propriété de l’univers physique dans lequel nous vivons.

L’univers croit au chiffrement.

Il est plus facile de chiffrer l’information que de la déchiffrer.

— Julian Assange, in Menace sur nos libertés : comment Internet nous espionne, comment résister

Le chiffrement est le processus qui consiste à prendre un message textuel et une clé générée au hasard, puis à faire des opérations mathématiques avec ces deux objets jusqu’à ce qu’il ne reste plus qu’une version brouillée du message sous forme de texte chiffré. Déchiffrer consiste à prendre le texte chiffré et sa clé et à faire des opérations mathématiques jusqu’à ce que le texte initial soit rétabli. Ce domaine s’appelle la cryptographie, ou crypto en abrégé. Un algorithme de chiffrement, les opérations mathématiques à réaliser et la façon de les faire, est un ensemble appelé « code de chiffrement ».

Pour chiffrer quelque chose vous avez besoin de la bonne clé, et vous en avez aussi besoin pour la déchiffrer. Si le logiciel de chiffrement est implémenté correctement, si l’algorithme est bon et si les clés sont sécurisées, la puissance de tous les ordinateurs de la Terre ne suffirait pas à casser ce chiffrement.

Nous développons des systèmes de cryptographie qui relèvent de problèmes mathématiques que nous imaginons difficiles, comme la difficulté à factoriser de grands nombres. À moins que des avancées mathématiques puissent rendre ces problèmes moins complexes, et que la NSA les garde cachées du reste du monde, casser la crypto qui dépend d’eux au niveau de la sécurité est impossible.

La conception des systèmes de chiffrement devrait être complètement publique. Le seul moyen de s’assurer que le code de chiffrement ne contient pas lui-même de failles est de publier son fonctionnement, pour avoir de nombreux yeux qui le scrutent en détail et de laisser les  experts des véritables attaques à travers le monde trouver les bogues. Les mécanismes internes de la plupart des cryptos que nous utilisons quotidiennement, comme le HTTPS, cette technologie qui permet de taper son code de carte bancaire et les mots de passe sur des formulaires de sites internet en toute sécurité, sont totalement publics. Un attaquant qui connaît parfaitement chaque petit détail du fonctionnement du système de chiffrement ne réussira pas à le casser sans en avoir la clé. En revanche, on ne peut pas avoir confiance dans la sécurité d’une cryptographie propriétaire et dans son code sous-jacent.

Voici une question importante à se poser lors de l’évaluation de la sécurité d’un service ou d’une application qui utilise la crypto : est-il possible pour le service lui-même de contourner le chiffrement ? Si c’est le cas, ne faites pas confiance à la sécurité du service. Beaucoup de services comme Skype et Hushmail promettent un chiffrement « de bout en bout », mais dans la majorité des cas cela signifie aussi que les services eux-même ont les clés pour déchiffrer le produit. Le véritable chiffrement « de bout en bout » signifie que le fournisseur de service ne peut pas lui-même regarder vos communications, même s’il voulait le faire.

Un aspect important du chiffrement est qu’il permet bien plus que la protection de la confidentialité des communications. Il peut être utilisé pour « signer électroniquement » les messages d’une manière qui permette de prouver que l’auteur du message est bien celui qu’il prétend être. Il peut également être utilisé pour utiliser des monnaies numériques comme Bitcoin, et il peut être utilisé pour produire des réseaux qui permettent l’anonymat comme Tor.

Le chiffrement peut aussi servir à empêcher les gens d’installer des applications pour iPhone qui ne proviennent pas de l’App Store, à les empêcher d’enregistrer des films directement à partir de Netflix ou encore les empêcher d’installer Linux sur une tablette fonctionnant sous Windows 8. Il peut aussi empêcher des attaques de type « homme du milieu » (NdT : attaque consistant à intercepter les communications entre deux terminaux sans que ces derniers se doutent que la sécurité est compromise) d’ajouter des malwares pour compromettre les mises à jour légitimes de logiciels.

En bref, le chiffrement englobe de nombreux usages. Mais ici nous nous contenterons de regarder comment nous pouvons l’utiliser pour communiquer de façon sécurisée et privée.

(à suivre…)


Copyright: Encryption Works: How to Protect Your Privacy in the Age of NSA Surveillance est publié sous licence Creative Commons Attribution 3.0 Unported License.

07 Sep 10:25

"Petit Frère", la VF du "Little Brother" de Cory Doctorow

by ZeroHeure

Little Brother, de Cory Doctorow, est maintenant disponible en version française. Little Brother est un livre pour jeunes adultes qui traite des libertés civiles à l'ère du numérique, et de diverses techniques de sécurité informatique.

L'intrigue se situe dans un avenir proche, à San Francisco. Marcus Yallow, un hacker de 17 ans, se retrouve précipité dans des aventures qui lui font visiter, et expliquer de façon très didactique, des outils de sécurité divers : Tor, la théorie de l'information, la cryptographie à clef publique, etc.

À la façon dont Le Monde de Sophie introduit sans douleur les concepts les plus importants de la Philosophie, ou dont Le Théorème du Perroquet traitait des mathématiques, Little Brother offre une introduction agréable à des concepts informatiques variés, dont certains, pas évidents à priori pour des débutants, sont rendus avec une didactique brillante (on retiendra en particulier une épique réunion d'échange de clefs cryptographiques).

Il introduit aussi de nombreux éléments de culture, comme les jeux de rôle Grandeur Nature ou l'atmosphère des Hackerspaces, et rend des hommages à Kerouac, Orwell et Bruce Schneier.

Grâce à la licence « Creative Commons Attribution-Noncommercial-ShareAlike », cette œuvre a pu se traduire en français, et peut maintenant se distribuer largement. Les dérivés sont possibles sous les mêmes conditions—n'hésitez pas à convertir le site en e-book, à le re-publier, etc.

Little Brother vous sera particulièrement utile pour faire découvrir l'esprit Cypherpunk à de jeunes aspirants geeks qui ne maîtriseraient pas (encore) l'anglais, voire à des parents, amis ou connaissances plus mûrs. Une bonne façon de commencer des discussions, de faire découvrir des concepts, ou à laisser en cadeau aux curieux quand on n'a pas le temps de se lancer dans un cours improvisé.

NdM: Le livre en français commence par la fin! il vous faudra scroller jusqu'en bas de la page pour voir apparaître le chapitre 1. La traduction est l'oeuvre d'ahphecee, qu'il faut remercier pour cela (c'est un gros travail). Il manque certaines expressions de temps à autre, il y a des fautes d'orthographe… n'hésitez pas à contribuer plutôt qu'à critiquer ;-) !
Enfin, signalons que la version anglaise contient une belle introduction de Cory Doctorow.
Le roman est également disponible en version papier, chez Pocket Jeunesse dans une traduction de Guillaume Fournier. Paradoxalement la version numérique (ePub) contient des DRM, ce qui semble, au vu de l'introduction de Cory Doctorow, non seulement paradoxal, mais illégal.

Lire les commentaires