# Shareaza

Shareaza est un logiciel poste-à-poste (P2P) multi-protocoles fonctionnant sous un environnement 32 ou 64 bits permettant de se connecter aux protocoles : Gnutella (G1 et G2), eDonkey2000 (eD2k), BitTorrent ainsi que depuis la version 2.5.4.0. à DirectConnect++ (DC++). Il permet aussi de télécharger depuis les protocoles FTP, HTTP et HTTPS en tant que simple gestionnaire de téléchargements. Il utilise les liens magnet, ed2k, les fichiers torrent ainsi que les dépréciés et anciens liens gnutella et piolet.
Initialement développé par Michael Stokes jusqu'à la version 2.0.0.0 où Shareaza voit son code source libéré en date du 1er juin 2004. Il est depuis développé par un groupe de volontaires en tant que logiciel libre selon les termes de la licence publique générale GNU.

## Caractéristiques \ Fonctionnalités
### Multi-protocoles

Shareaza permet se connecter à GnutellaG2, eDonkey, BitTorrent et à DirectConnect ++ (DC++). Shareaza hache ses fichiers pour tous les réseaux et diffuse ces valeurs de hache sur G2. Cela lui permet d'envoyer un fichier sur plusieurs réseaux en une fois. Quand un client Shareaza trouve un tel fichier, il lui donne des valeurs de haches pour tous les réseaux et peut ainsi effectuer une recherche sur les autres réseaux avec des valeurs de haches respectives au fichier.
Cela augmente le nombre de sources et la vitesse du téléchargement du fichier. Shareaza utilise aussi son réseau G2 pour trouver plus de sources torrents.

### Filtre de Sécurité

De base Shareaza possède un filtre de contenu incluant des filtres contre la pornographie enfantine et la Pornographie adulte, ainsi que d'autres filtres optionnels, permettant de filtrer les fichiers sous DRM…
Le filtre de sécurité de Shareaza peut être étendu avec des définitions d'utilisateur tel que des mots clés et/ou des adresses IP. Les dernières versions de Shareaza, permettent d'utiliser des expressions courantes ou de filtrer par haches.
Ces filtres augmentent les chances de trouver les fichiers que veulent les utilisateurs et diminue le risque de tomber sur un faux fichier ou malicieux. Le format du fichier utilisé pour le filtre est un extensible XML Schema. Le fichier est éditable depuis Shareaza et peuvent être exportés pour être partagés.

### Modules

Shareaza met en œuvre une structure pour les modules d'extensions. L'installateur de Shareaza contient plusieurs modules d'extensions. Plusieurs d'entre eux sont utilisés pour lire et extraire les métadonnées des fichiers qui sont hachés et les converti en fichiers externe basé sur le format XML, ou encore pour décoder les fichiers multimédia et ainsi créer des prévisualisations pour les autres clients G2.
D'autres sont utilisés par le lecteur multimédia intégré de Shareaza et améliorent ses fonctionnalités. Des modules complémentaires tiers parti peuvent être utilisés, par exemple, "Sharemonkey", qui lors d'un téléchargement ou de la recherche d'un fichier sous droits d'auteur, ajoute un lien sur l'interface de Shareaza vers un site qui propose ce fichier en téléchargement légal.

### Thèmes

Pratiquement toute l'interface utilisateur graphique (GUI) peut être habillée d'un ou de plusieurs thèmes. Cela inclut les barres d'outils, les icônes, le fond d'écran et les boutons. Shareaza peut ainsi complètement changer d'apparence… Une liste de thèmes est incluse lors de l'installation de Shareaza, d'autres thèmes sont aussi disponibles en téléchargement sur internet$^,$et depuis la recherche de Shareaza avec le mot clé "*.sks" ("shareaza skin files") sur le réseau Gnutella2.
Les thèmes sont dans le format fichier *.ZIP renommés avec l'extension ".sks". Ils contiennent icônes et images, ainsi que des fichiers XML qui lient couleurs et images à l'interface graphique.
Cette fonctionnalité est aussi utile pour le langage utilisé par l'utilisateur finale. Les fichiers "langue" sont des fichiers XML qui contiennent la traduction de certaines parties du programme. Cela permet de modifier, mettre à jours, les fichiers de traduction sans avoir à compiler un fichier binaire.

### Modes

Shareaza permet trois modes d'utilisation.
Le mode normal : Ce premier mode est destiné aux utilisateurs lambda. C'est le mode par défaut, il possède une interface utilisateur simple et dépouillé d'options avancées. Certains réglages sont cachés pour éviter de mauvaises manipulations qui pourraient être nuisibles. Ce mode permet toutefois d'accéder aux fonctions essentielles du programme.
Le mode expert : Le second mode est destiné aux utilisateurs avancés, il permet l'accès aux réglages "réseaux" et "avancés".
Le mode fenêtré : Le troisième mode, permet lui tout comme le second d'avoir accès aux réglages cachés, mais à l'avantage de pouvoir afficher simultanément plusieurs fenêtres, permettant ainsi un contrôle sur plusieurs fonctions (cf image et note à droite). Ce mode permet de personnaliser totalement Shareaza aux besoins respectifs de chaque utilisateur.

### IRC

Shareaza possède un client IRC (tchat) intégré, qui permet aux utilisateurs de communiquer entre eux. Ce sont plusieurs salons de discussion dans plusieurs langues pour l'aide et le support à l'utilisation de Shareaza. Ces salons sont localisés sur le serveur P2PChat.net et peuvent être joint par tous clients IRC ou via l'applet Java de la page d'aide du site officiel de Shareaza.

## Historique
### De Shareaza 1.0 à Shareaza 2.0

À la mi 2002, Mike Stokes libère la première version de son client Gnutella qu'il nomme "Shareaza". Son but était d'intégrer des fonctions que d'autres clients Gnutella n'avaient pas. Les deux ans qui ont suivi Stockes coda le support pour les réseaux eDonkey2000, BitTorrent et écrit un protocole basé sur Gnutella qu'il nomma Gnutella2.
Dès le début, Shareaza prévient qu'il est totalement gratuit, sans publicité, qu'il ne contient pas de logiciel espion (spyware) et qu'il est inutile de payer pour évoluer vers une version commerciale. Il en est resté ainsi pour toutes les versions qui ont suivi.
Depuis la première version, Shareaza gère la reprise des téléchargements interrompus, les métadonnées, une bibliothèque et un hachage automatique des fichiers.
Le 1er juin 2004, Shareaza 2.0 a été libéré avec son code source, sous GNU GPLv2, devenant ainsi un logiciel libre. Et rejoignant ainsi LimeWire, Gnucleus et d'autres clients du réseau Gnutella qui sont Open Source. La version 2.1 est sortie le 19 septembre 2004, incluant des réparations de bogues et une meilleure compatibilité pour Windows XP Service Pack 2. La version 2.2 est sortie le 10 septembre 2005, incluant des réparations de bogues et des optimisations.

### Prise de contrôle du nom de domaine

Le 19 décembre 2007, le nom de domaine shareaza.com est redirigé vers un site qui se clame être le site officiel de Shareaza, qui promeut le téléchargement d'un client connu sous le nom de Shareaza V4 (suivirent la version V5, V6 et V7 en 2010) n'ayant aucun rapport aux sorties réalisées par l'Équipe de développement de Shareaza.
Il s'agit en fait d'un clone du client iMesh avec des modifications mineurs et le logo de Shareaza version 1 (voir image ci-contre)pour vaguement ressembler à Shareaza. Ce client est une interface réseau pour le catalogue des magasins de musiques de Discordia Ltd., et ne se connecte à aucun des réseaux P2P ouverts tel que G2, eDonkey ou BitTorrent. Le contenu est limité à des titres de musique protégés par DRM qui peuvent être acheté depuis les magasins de musique en ligne de Discordia.
Discordia dont le siège se trouve en Chypre est étroitement lié à la RIAA et n'a aucun rapport avec l'Équipe de développement de Shareaza.
En réponse, l'Équipe de développement de Shareaza déplaça leur site internet sur les serveurs de SourceForge.net sous le nom d'un nouveau projet, le Projet Panthera…
Les versions antérieurs à la 2.3.1.0 du Shareaza original se connectaient à www.shareaza.com pour vérifier s'il y avait des mises à jour logicielles. Le 1er janvier 2008, le propriétaire du domaine shareaza.com, à savoir, Discordia Ltd. utilise ce système de vérification pour suggérer aux utilisateurs que ShareazaV4 est une mise à jour du client Shareaza original.
Depuis la version 2.3.1.0 qui est sortie le 3 janvier 2008, la vérification des mises à jour est liée aux pages de Shareaza sur SourceForge.net.
Yahoo, qui utilise SiteAdvisor pour filtrer ses résultats de recherches, ne fut pas long à retirer le nom de domaine "shareaza.com" de ses résultats car listé par le SiteAdvisor comme étant un risque de sécurité.
D'autres sites internet d'évaluation, tel que WOT (Web of Trust) évalue Shareaza.com comme dangereux.
Après la perte du nom de domaine shareaza.com, le projet a donc rapidement été remis en ligne sous l'adresse http://shareaza.sourceforge.net et s'est plus tard reconstruit autour d'un nouveau nom de domaine, pantheraproject.net, dans lequel il a été maintenu durant un temps par la communauté Shareaza.
Cependant, le 11 juin 2009, ce domaine a été saboté par William Shields Erwin, qui était alors l'administrateur du forum communautaire et postait sous le pseudo de 'Rhythm'. À la suite de ces actions, le contenu du site a désormais changé et n'est plus contrôlé par la communauté Shareaza, mais par la société Discordia étant à l'origine du vol du nom de domaine Shareaza.com. William Erwin essaya par la suite de saboter certaines parties du code source ainsi que du site hébergé sur SourceForge, mais elles furent alors restaurés par le staff SourceForge et William Erwin fut banni du projet Shareaza.
Le 15 juin 2009, les forums ont été remis en ligne et le nouveau domaine pantheraproject.net n'est alors plus maintenu par la communauté Shareaza, il pointe désormais vers le logiciel « ShareazaV6 » incluant des mouchards et n'étant pas le véritable Shareaza.

### Tentative d'enregistrement de « Marque Déposée »

Le 10 janvier 2008, les propriétaires de Shareaza.com, Discordia Ltd. (iMesh Inc.), dépose un enregistrement de « marque déposée » pour le nom Shareaza, dans l'intention de stopper les développeurs originaux qui utilisent ce nom. Ils revendiquent être les premiers à avoir utilisé ce nom le 17 décembre 2007.
L'Équipe de développement de Shareaza a obtenu une représentation légale pour contester l'enregistrement ainsi qu'un fonds de défense légal a été fondé.

### Les versions historiques

v2.3.1.0 La version 2.3.1.0 est la dernière version stable de Shareaza qui supporte Windows 9x. Elle est sortie 2 jours après que Discordia Ltd. (voir la prise de contrôle de shareaza.com) exploite le mécanisme de mise à jour pour émettre une fausse mise à jour… La v2.3.1.0 corrige entre autres ce problème de sécurité.
v2.4.0.0 La version 2.4.0.0 de Shareaza est sortie le 1er octobre 2008, avec plusieurs corrections de bogues et des modifications majeures pour fournir une meilleure stabilité du client. C'est aussi la première version stable à inclure le support d'IRC. Des modifications majeures ont aussi été réalisées dans le mécanisme de manipulation de BitTorrent, ainsi le support de Windows 98 et Windows Me a été arrêté.
Quand la v2.4 est sortie, la feuille de route de sorties pour la version suivante (2.4.1.0 - v2.5 Release Candidate) a été réglée pour le 1er octobre 2009. Elle a été suivie par la 2.5.0.0 qui est sortie un mois plus tard.
v2.5.x.0 La version 2.5.0.0 est sortie le 31 octobre 2009. Elle est significativement plus stable et moins consommatrice de ressources par rapport aux versions précédentes. Elle apporte aussi de nouvelles améliorations sur le support de BitTorrent, comme le téléchargement sélectif des fichiers contenu dans le torrent et la priorisation des téléchargements. Il y a eu aussi des mises à jour sur l'implémentation de Gnutella et eDonkey2000, comme le support étendu pour le GGEP des larges fichiers (+de 4 Go) et le tchat. L'implémentation d'IRC de la v2.4.0.0 a été retravaillé et il est maintenant libre de bugs qui le rendaient partiellement inutilisable dans la version précédente. Le gestionnaire de téléchargement a été aussi étendu, l'intégration d'Internet Explorer a été ajoutée et un BugTrap (piège à bogues) a été inclus pour accélérer et simplifié pour rapporter les crashes.
La version 2.5.1.0 de Shareaza est sortie le 1er décembre 2009. Elle est significativement plus stable que les précédentes et plus fonctionnelle en raison des bogues signalés et corrigés sur la 2.5.0.0. Amélioration et compatibilité de BitTorrent rentabilisée selon la plupart des suggestions. Pour cela des jeux d'instructions SSE sont requis et utilisés et requièrent au moins un processeur Pentium III ou Athlon XP.
La version 2.5.2.0 de Shareaza est sortie le 6 février 2010. Elle apporte de nouvelles améliorations de stabilité. Cette version et les suivantes sont disponibles avec des jeux d'instructions SSE ou non-SSE, pour permettre une utilisation sur des processeurs plus vieux, à la différence la version 2.5.1.0 qui était seulement SSE. Pour cette sortie et les suivantes, le SSE est optimisé et utilise SSE2. Un processeur Pentium 4 (ou supérieur), ou Athlon 64 (ou supérieur) sont requis.
Shareaza 2.5.3.0 est sortie le 13 juin 2010, la seule nouvelle fonctionnalité est un nouveau programmateur qui permet un contrôle complet sur ce que doit faire l'application à un moment donné sans surveillance.
Shareaza v2.5.4.0 est sortie le 12 février 2011, le support de l'UPnP est amélioré et le support au réseau DC++ est ajouté, ainsi que la compatibilité peer exchange avec μTorrent aussi bien que l'échange avec les trackers de BitTorrent. Ont été aussi corrigés les bogues du tchat IRC et quelques autres rares crashes.

## Shareaza et Linux

Shareaza peut fonctionner sous Linux en utilisant Wine, bien que le lecteur multimédia ne fonctionne pas, les téléchargements fonctionnent impeccablement.
Actuellement, deux projets logiciels se concentrent sur le portage des fonctionnalités de Shareaza, sur une autre plate-forme système que Windows. Sharelin est un client Gnutella2 pour Linux en cours de développement depuis 2009. Il n'est pas basé sur Shareaza et il ne supportera pas d'autres réseaux P2P autres que Gnutella2. Cependant, sur SourceForge, il est lié au projet Shareaza car développé par l'un des collaborateurs de l'équipe de développement de Shareaza.
Un autre projet nommé Quazza, concentre son développement sur une plate-forme client multi-réseaux similaire à Shareaza, il est basé sur la bibliothèque Qt, il permettra la connectivité à Gnutella2, Ares et eDonkey2000, ainsi qu'il sera capable de télécharger depuis les protocoles FTP, HTTP et des sources BitTorrent. Il est entré « dans les premières étapes du développement » en août 2010.

## Récompenses et Revues

* En novembre 2008, Shareaza est représenté sur SourceForge.net comme "Projet du mois".
* En décembre 2009, Shareaza est classé numéro 5 sur SourceForge.Net dans le classement « What's Hot for Windows ? » parmi les logiciels de partage de fichiers, avec 78 % de recommandation (le 1er étant recommandé à 81 %). Le 24 août 2010, il gardait la même position. Les classements sont basés sur les recommandations, les opinions et les téléchargements de logiciels effectués sur SourceForge.
* Windows 7 Software Compatibility Testing - Shareaza. Revues par Lucas Artigas (en anglais)
* En octobre 2010, les statistiques de SourceForge annoncent que Shareaza est au 12e rang des logiciels les plus téléchargés.