# Distributed.net

Distributed.net (officiellement Distributed Computing Technologies, Inc. ou DCTI) est un projet mondial de calcul distribué qui tente de résoudre des problèmes mathématiques en utilisant les processeurs CPU ou GPU inactifs. Ce projet fut créé en avril 1997 par Jeff Lawson. Le projet est officiellement reconnu comme une organisation à but non lucratif selon le code des impôts américain 501(c)(3).

## Histoire

Un effort commun fut démarré par Earle Ady et Christopher G. Stach II, de Hotjobs.com et New Media Labs fame, pour casser la partie restante du « RC5-56 challenge », un algorithme 56-bit de chiffrement avec un prix de 10 000 $ pour le premier qui trouvera la clé de chiffrement correcte. Malheureusement, cet effort initial fut suspendu par des attaques SYN flood de participants sur le serveur.
Un autre effort, nommé distributed.net, fut coordonné par Jeffrey A. Lawson, Adam L. Beberg, et David C. McNett, avec l'aide d'autres personnes qui s'occupèrent de l'administration et de l'infrastructure. Fin mars 1997, de nouveaux proxies furent lancés pour continuer le « challenge RC5-56 » et le travail continua sur ces nouveaux clients. Le « challenge RC5-56 » fut finalement résolu le 19 octobre 1997 après 250 jours.
À cette occasion, une tête de vache fut sélectionnée comme icône de l'application et mascotte du projet.
Le projet suivant fut le « RC5-64 challenge », qui fait partie de la compétition de clé secrète RSA. La clef correcte (0x63DE7DC154F4D039) fut trouvée en à peu près cinq ans, le 14 juillet 2002, permettant de décoder le message suivant : « some things are better left unread » (« certaines choses valent mieux ne pas être lues »).

## Le logiciel client

Le logiciel client utilisé pour participer au projet a pour nom « dnetc ». Ce logiciel récupère des clés sur un serveur, les traite, puis les renvoie sur le serveur.
Depuis mai 2009, le logiciel client le plus utilisé est la version 32 bits pour Windows sur Intel x86, vient ensuite la version Linux sur Intel x86, et la troisième place est tenue par le client Mac OS X sur PowerPC.
Des portions du code source du logiciel client sont disponibles pour le grand public.

## Développement de clients pour les processeurs graphiques

* NVIDIA
    À la fin de l'année 2007, les développeurs ont commencé le travail pour l'implémentation de nouveaux cœurs de calculs RC5-72 afin de les faire fonctionner sur le matériel NVIDIA CUDA. Le calcul distribué sur architecture CUDA permet des calculs rapides des unités de calcul RC5-72. Sur des cartes NVIDIA haut de gamme, plus de 300 millions de clés calculées par seconde ont été reportées. Sachant qu'un processeur haut de gamme permet de calculer environ 50 millions de clés par seconde, l'introduction du calcul avec l'aide de CUDA a permis une augmentation des performances de 500 %.
* ATI
    Similairement, à la fin de l'année 2008, les développeurs ont commencé le travail pour l'implémentation de nouveaux cœurs de calculs RC5-72 afin de les faire fonctionner sur le matériel ATI STREAM. Le calcul distribué sur architecture STREAM permet des calculs rapides des unités de calcul RC5-72 de manière comparable à CUDA. À l'automne 2009, ATI a lancé l'Evergreen GPU family, fournissant à Distributed.net le moteur de calcul le plus puissant à ce jour. Certains des produits de cette famille atteignent 1,8 milliard de clés par seconde.

## Projets en cours
### Chiffrement

* RSA Lab's 72-bit RC5 Encryption Challenge (RC5-72)
En cours, 7,371 % complété au 20 janvier 2021

### Règles de Golomb

* Règles de Golomb optimales (OGR-28)
En cours, 80 % complété au 20 janvier 2021

## Projets terminés
### Chiffrement

* RSA Lab's 56-bit RC5 Encryption Challenge : Terminé le 19 octobre 1997 (après 250 jours et 47 % des clés testées)
* RSA Lab's 56-bit DES II-1 Encryption Challenge : Terminé le 24 février 1998 (après 39 jours)
* RSA Lab's 56-bit DES II-2 Encryption Challenge : Terminé le 17 juillet 1998 (clé trouvée par EFF's Deep Crack custom DES cracké après 2,5 jours)
* RSA Lab's 56-bit DES-III Encryption Challenge : Terminé le 19 janvier 1999 (après 22,5 heures avec l'aide de EFF's Deep Crack custom DES cracker)
* CS-Cipher Challenge (CSC) : Terminé le 16 janvier 2000 (après 60 jours et 98 % des clés testées)
* RSA Lab's 64-bit RC5 Encryption Challenge (RC5-64) : Terminé le 14 juillet 2002 (après 1757 jours et 83 % des clés testées)

### Règles de Golomb

* Règles de Golomb optimales (OGR-24) : Terminé le 13 octobre 2004 (après 1572 jours de calculs)
* Règles de Golomb optimales (OGR-25) : Terminé le 25 octobre 2008 (après 3006 jours de calculs)
* Règles de Golomb optimales (OGR-26) : Terminé le 24 février 2009 (après 24 jours de calculs)
* Règles de Golomb optimales (OGR-27) : Terminé le 19 février 2014 (après 1822 jours de calculs)

## Historique des projets

* Historique des projets distributed.net

## Projets futurs

* Règles de Golomb optimales (OGR-29)