PROJET AUTOBLOG


BohwaZ

Site original : BohwaZ

⇐ retour index

Mise à jour

Mise à jour de la base de données, veuillez patienter...

Sauvegarder et jouer à des jeux Wii sur disque ou clé USB

mercredi 18 juillet 2012 à 02:01

Il est possible grâce aux outils développés par la communauté de lancer de multiples applications et jeux non-validés "officiellement" par Nintendo sur Wii : des lecteurs de vidéo, des émulateurs, des jeux libres, ou même une distribution Linux. Mais il existe aussi une possibilité qui devrait exister d'origine sur chaque console : la possibilité de sauvegarder et re-jouer les sauvegardes de ses jeux Wii. Car les supports DVD ne sont pas éternels, et vu le prix d'un jeu ça serait bête de le perdre. Voici donc un petit HOW-TO sur comment sauvegarder et jouer à des jeux stockés sur une clé ou un disque dur USB sur sa Wii.

Vous aurez besoin de :

Installer le HomeBrew Channel

Pour commencer, il faut que votre Wii soit en version 4.3, pour cela, à l'écran d'accueil, cliquer sur le bouton "Options Wii" en bas à gauche, puis choisir "Paramètres Wii" (bouton de droite), et là la version apparaît en haut à droite de l'écran. Si vous avez 4.3E c'est bon, le "E" indique juste que c'est la version européenne. Si vous êtes à une version inférieure, choisissez "Mise à jour de la Wii" dans ce menu, et re-vérifiez à la fin de la mise à jour que la version est la bonne.

Ensuite, toujours dans le menu "Paramètres Wii", choisir "Internet" puis "Informations générales". Là notez bien l'adresse MAC de la console.

Rendez-vous maintenant sur le site http://please.hackmii.com/ et rentrez l'adresse MAC de voter Wii, après avoir coché la case qui correspond à votre version de console (normalement 4.3E pour l'europe), et vérifié que la case "Bundle the HackMii Installer for me!" est bien cochée. Cliquez l'un des boutons "blue" ou "red" (aucune différence).

Le site vous propose de télécharger un fichier ZIP, décompressez-le et recopiez son contenu sur votre carte SD. N'oubliez pas d'éjecter correctement la carte SD.

Insérez la carte SD dans la Wii allumée, et rendez-vous dans la messagerie (icône enveloppe en bas à droite de l'écran d'accueil). Allez au jour précédent et cliquez sur l'enveloppe rouge. Suivez ensuite les instructions, choisissez "Install Homebrew Channel" puis "Install Bootmii".

Et voilà vous avez installé le HomeBrew Channel qui vous permet déjà de télécharger et installer des centaines d'applications et jeux homebrew !

Pour pouvoir sauvegarder et lancer des jeux sauvegardés via une clé USB

Installation de Pimp My Wii

Pimp My Wii est un utilitaire bien pratique qui va se charger à votre place d'installer les IOS (versions spécifiques de l'OS de la Wii) qui sont patchées pour pouvoir lancer les jeux depuis un support qui n'est pas un DVD original.

Télécharger la dernière version, par exemple ici le 2.30. Dé-zipper le fichier, puis copier le répertoire apps sur la carte SD. Remettre la carte SD dans la Wii, et dans le Homebrew Channel choisir "Pimp My Wii" puis "Charger". Dans le menu de Pimp My Wii, choisir "Hacker sa Wii / Installation minimale", puis appuyer sur le bouton A pour valider les options proposées (ne rien modifier) jusqu'à ce que l'installation soit en cours. Cela va prendre un peu de temps pour télécharger et installer tout ça.

USB Loader GX

Ce petit utilitaire va permettre de créer et charger des sauvegardes de jeu, que ça soit depuis un disque ou une clé USB ou la carte SD.

D'abord télécharger le fichier .DOL sur le site officiel. Ensuite sur la carte SD, créer un répertoire nommé usbloader_gx dans le répertoire apps, y placer le fichier .DOL et le renommer en boot.dol.

Voilà c'est bon !

Créer une partition pour les jeux Wii

La Wii utilise un type de partition particulier pour stocker les jeux : WBFS. Il n'est pas reconnu par défaut sous Linux ou Windows, donc il faut des outils spécifiques.

Prenons le cas le plus simple, où vous voulez consacrer l'intégralité de l'espace de votre disque/clé USB aux jeux Wii, il va donc falloir procéder comme suit.

En premier il faut identifier le disque que vous voulez utiliser avec sudo fdisk -l en ligne de commande. Par exemple dans mon cas :

Disk /dev/sdc: 74.4 GB, 74355769344 bytes

Maintenant on va formater le disque en lançant sudo fdisk /dev/sdc (Attention, si vous vous trompez de lettre, et utilisez par exemple sda, vous risquez de perdre les données de votre disque principal), et dans fdisk taper o puis Entrée pour effacer toute partition existante, puis n et Entrée pour créer une nouvelle partition (choisir p pour primary puis le chiffre 1). Enfin, taper t puis Entrée et choisir le type de partition 0. Pour sauvegarder, taper w puis Entrée. Pour quitter q.

Maintenant on a une partition vierge, il faut la formater en WBFS. Pour cela installer qwbfsmanager, excellent logiciel libre de gestion de partition WBFS. Y sélectionner ensuite la partition (/dev/sdc1 dans mon cas) et la formater. Le logiciel permet aussi d'importer et exporter des ISOs des jeux dans la partition.

Optionnel : ajouter USB Loader GX au menu de la Wii

Pour ne pas avoir à passer par le HomeBrew Channel à chaque fois, on peut ajouter le USB Loader GX comme chaîne Wii. Pour cela télécharger la dernière version du Forwarder pour USB Loader GX, puis copier le fichier sur la carte SD. Mettre la carte SD dans la Wii, lancer Pimp My Wii, sélectionner "WAD" au menu, puis sélectionner "Wii SD Slot" et enfin sélectionner le fichier qu'on vient de mettre dans la carte SD, et choisir "Installer" puis quitter Pimp My Wii.

Comment stocker les mots de passe

vendredi 29 juin 2012 à 23:27

Une seule réponse possible : avec bcrypt !

Pourquoi bcrypt ? Je ne m'étendrais pas sur le sujet, d'autres l'ont déjà fait avant moi, et mieux.

Comme dis et répété depuis longtemps par mes petits camarades (et notamment mat), c'est la seule méthode qu'on devrait utiliser. Et je suis également fautif, jusqu'à quelques années j'utilisais toujours une méthode perso à base de sha1($password . $salt) mais c'est pas pareil ! Alors pourquoi ne pas déjà le faire ? Pourquoi ne pas l'avoir déjà fait depuis longtemps ? Et bien en partie car PHP ne donne pas d'accès simple à bcrypt, qu'il faut passer par la syntaxe un peu ésotérique de crypt pour y avoir accès. Mais pas de panique, c'est quand même simple à faire. Démonstration.

Premièrement nous allons hasher notre mot de passe. Pour cela nous devons générer le salt nous-même, PHP n'ayant pas de méthode native pour le faire, donc on va se baser sur un sha1 de uniqid() qui est nourri par rand(). rand() n'est pas réputé pour être un bon générateur de hasard, il vaudrait mieux utiliser directement /dev/urandom ou openssl, mais pour un cas simple rand() devrait suffire amplement, surtout avec Suhosin qui donne à rand() une vrai capacité de générer du vrai hasard.

$salt = substr(sha1(uniqid(mt_rand(), true)), 0, 22);

Ensuite nous allons hasher le mot de passe avec le salt :

$password = crypt($password, '$2a$08$' . $salt);

Nous avons donc désormais un mot de passe hashé, que nous pouvons stocker tel quel dans la base de données par exemple. Maintenant imaginons que nous voulions vérifier ce mot de passe, par exemple après que l'utilisateur l'ait entré dans un formulaire de connexion à un site ? Et bien c'est très simple, on reprends notre $password que nous avons stocké et on le donne à crypt en second argument, qui va se charger tout seul d'en extraire le salt et renvoyer un hash. Si le hash diffère du hash stocké, c'est que le mot de passe entré est erroné.

if ($password == crypt($_POST['password'], $password))
{
    echo "Connexion réussie !";
}

Et voilà, maintenant vous n'avez plus d'excuse !

Passphrase - Générer des phrases secrètes en PHP

vendredi 29 juin 2012 à 22:46

Récemment, un comic de XKCD sur la résistance des mots de passe a fait parler de lui en faisant revenir au goût du jour l'idée de Diceware, c'est-à-dire que plutôt que d'utiliser un mot de passe comme Gl0ubiBoulg4, il est probablement plus simple de tirer au hasard plusieurs mots du dictionnaire. Dans le comic de XKCD l'exemple donné est corriger cheval batterie agrafe, et effectivement ça semble plus simple.

Mais d'un point de vue sécurité qu'en est-il ? Et bien c'est beaucoup mieux. Par exemple si on dit que notre premier mot de passe ne peut contenir que des lettres et des chiffres, ainsi que par exemple des points et des virgules, cela fait que chaque caractère peut avoir 64 possibilités différentes, et 64 possibilités, ça fait 6 bits (26 lettres majuscules + 26 lettres minuscules + 10 chiffres + 2 signes de ponctuation = 64). Si le mot de passe fait 8 caractères cela donne donc 6 x 8 = 48 donc 48 bits d'entropie.

Revenons à notre phrase secrète (passphrase en anglais), elle est composée de mots issus d'une liste de 3.725 mots du dictionnaire du français fondamental. Ce qui donne presque 12 bits pour chaque mot. Une phrase au hasard de quatre mots donnera ainsi 12 x 4 = 48 donc également 48 bits d'entropie. Alors pourquoi prétendre que c'est mieux ?

Et bien très simplement nous n'utilisons quasiment jamais des mots de passe qui correspondent aux 48 bits décrits précédemment (par exemple Znq3HvGD), mais des mots de passe lisibles, avec des voyelles qui suivent des consonnes, et souvent un ou plusieurs chiffres à la fin. Par exemple Bohwaz95 correspond à cette description, tout comme ChaCho32, et cela réduit l'entropie réelle d'autant, par exemple à 28 bits. Le passage aux phrases secrètes donne donc directement une entropie 20 bits supérieure, avec une simplicité de mémorisation sans commune mesure.

Passphrase est une simple implémentation de cette idée de phrase secrète, en PHP, en un seul fichier qui comprends le dictionnaire de 3.725 mots. La bibliothèque est très simple à utiliser et est sous licence WTFPL pour pouvoir être réutilisée n'importe où.

Exemple :

<?php
require __DIR__ . '/lib.passphrase.french.php';
echo Passphrase::generate(4); // Nombre de mots à générer
?>

À télécharger ici : http://svn.kd2.org/svn/misc/libs/i18n/passphrase/

À noter que Passphrase est utilisé pour suggérer des mots de passe par défaut dans Garradin.

De l'espace public et de l'abandon du débat

vendredi 29 juin 2012 à 02:11

« L’objet de cet espace public est évident : il est censé être le lieu de ces standards et de ces mesures qui n’appartiennent à personne mais s’appliquent à tout le monde. Il est censé être le lieu de l’universel. Le problème est qu’il n’y a pas d’universel – l’universel, la vérité absolue, existe, et je sais ce que c’est. Le problème, c’est que vous le savez aussi, et que nous connaissons des choses différents, ce qui nous place quelques phrases en arrière, armés de nos jugements universels irréconciliables, apprêtés mais sans nulle part où obtenir un jugement d’autorité. Que faire ? Eh bien, vous faites la seule chose que vous pouvez faire, la seule chose honnête : vous affirmez que votre universel est le seul véritable, même si vos adversaires ne l’acceptent clairement pas. Et vous n’attribuez pas leur esprit récalcitrant à la folie, ou à la pure criminalité – les catégories publiques de condamnation – mais au fait, bien que regrettable, qu’ils soient sous l’emprise d’une série d’opinions erronées. Et il vous faut abandonner, parce que la prochaine étape, celle qui tend à prouver l’inexactitude de leurs opinions au monde, même à ceux qui sont sous leur emprise, n’est pas une étape possible pour nous, humains finis et situés.

Il nous faut vivre en sachant deux choses : que nous sommes absolument dans le juste, et qu’il n’y a pas de mesure globalement acceptée par laquelle notre justesse peut être validée de façon indépendante. C’est comme ça, et on devrait simplement l’accepter, et agir en cohérence avec nos opinions profondes (que pourrait-on faire d’autre?) sans espérer qu’un quelconque Dieu descendra vers nous, comme le canard dans cette vieille émission de Groucho Marx, et nous dire que nous avons prononcé le mot juste. »

— Stanley Fish, Postmodern warfare: the ignorance of our warrior intellectuals, Harper’s Magazine, Juillet 2002 (via Owni)

Garradin, gestionnaire d'association en ligne

vendredi 15 juin 2012 à 03:40

(Également publié sur LinuxFR.)

Cher journal, si je prends le clavier en ce jour c'est pour t'annoncer, de manière discrète, la création de Garradin, un gestionnaire d'association en ligne.

Il existait déjà Piwam, mais qui est abandonné, et Galette, qui était aussi abandonné au moment de la création de Garradin, mais qui a repris du service depuis (bonne nouvelle !), et maintenant il y a aussi Garradin.

Garradin, écrit en PHP (non ne fuyez pas), s'installe en une décompression et 1 clic (utilisation de SQLite comme base de données), est relativement léger (250Ko compressé, moins de 1,5Mo décompressé), et se veut être une solution complète de gestion de petite et moyenne association. Il est prévu de pouvoir :

Vous l'avez vu, ça va un peu plus loin que Piwam ou Galette, le but étant qu'une association ait avec Garradin tout ce dont elle ait besoin de base pour son fonctionnement, et que tout soit abordable de manière simple, mais qu'en même temps rien ne bloque pour évoluer (export des membres et de la compta dans des formats usuels, API, être proche de SPIP sur le wiki permet de remplacer le site public par SPIP sans tout chambouler les habitudes, etc.).

La licence choisie est l'AGPLv3.

Pour le moment ce qui est fonctionnel dans la version courante (0.3.3) :
- ajout, gestion, modification d'adhérents ;
- échange de message entre adhérents ;
- envoi de message collectif aux adhérents ;
- newsletter ;
- wiki complet avec historique des pages, recherche, etc. ;
- site web public (qui se repose sur le wiki et utilise des squelettes similaires à SPIP) ;
- catégories de membres ;
- etc.

Par contre Garradin ne fera pas :
- de l'impression d'étiquettes ou de cartes de membres ;
- de la gestion ERP : pas de génération de facture, de gestion des salaires, etc. ;
- du CMS complet, pas d'intérêt à refaire un second SPIP.

La prochaine version de Garradin, la 0.4.0, se concentrera sur l'ajout de la comptabilité, par un journal comptable complet (ajout, édition, suppression, liste, et recherche d'opérations dans le journal), relié au plan comptable associatif français, mais pas encore l'établissement d'exercices comptables par exemple.

Si je poste aujourd'hui c'est pour vous inciter à essayer ce petit logiciel, à faire des retours, et si certain-e-s sont intéressé-e-s, à participer au développement. À ce sujet, le développement est assuré avec Fossil, de manière ouverte, et j'accueillerais avec plaisir tout contributeur au sein du projet, que ça soit pour rédiger la documentation ou participer au code.

La page du projet : http://dev.kd2.org/garradin/

Des images de l'interface web : Liste des membres - Édition de page dans le wiki