Nombres au hasard

Des nombres entiers entre deux bornes, incluses.

Entre
Combien

Transparence

Les nombres sont tirés dans votre navigateur, par les scripts listés ci-dessous. Rien ne quitte cette page.

Garanti par votre navigateur
La politique de sécurité du contenu (CSP) de cette page n’autorise qu’une destination, la mesure d’audience du site (connect-src https://stats.r-no.fr, voir plus bas), et interdit tout envoi de formulaire (form-action 'none') : même un bogue ne pourrait envoyer nulle part ce que vous saisissez ou tirez. Vous pouvez lire cette politique en haut du code source de la page.
Mesure d’audience
Comme toutes les pages du site, celle-ci compte sa visite avec Umami, installé sur le serveur de R-no lui-même (stats.r-no.fr). Il reçoit l’adresse de la page, sans paramètres ni ancre, le site d’où vous venez (son nom de domaine seulement), votre navigateur, votre système, votre langue et la taille de votre écran, ainsi que le pays, la région et la ville déduits de votre adresse IP, qui n’est pas conservée. Il ne reçoit jamais ce que vous saisissez, ni le résultat de l’outil. Aucun cookie, rien d’enregistré dans votre navigateur ; si votre navigateur demande à ne pas être suivi (Do Not Track), rien n’est mesuré. Les données sont effacées au bout de 25 mois.
  • /commun/mesure.js : le filtre appliqué avant chaque envoi, écrit pour R-no Toolbox. 1.4 kB
    SHA-256 225eec74fd12623d82fc05ee7d222be629ce454d081c129e8d1e249ed37ee716
  • https://stats.r-no.fr/m.js : le script de suivi d’Umami, libre (MIT), servi par le serveur de mesure. Son empreinte n’est pas affichée ici : elle change à chaque version d’Umami, et vous ne pouvez pas vérifier depuis votre navigateur qu’il s’agit du code publié. Pour cette partie, il faut faire confiance à R-no.
Ce qui est conservé
Aucun cookie, et rien dans l’adresse. Les nombres tirés ne sont jamais conservés : ils disparaissent quand vous rechargez ou fermez la page. La langue est donnée par l’adresse elle-même (/en/ ou /fr/) : rien n’est conservé pour s’en souvenir. Comme tout site web, le serveur note le téléchargement de la page et de ses fichiers dans ses journaux d’accès (adresse IP, date et heure, adresse demandée, nom du navigateur). Il ne reçoit jamais ce que vous saisissez ou tirez.
Le code qui s’exécute ici
  • app.js: le tirage de nombres, écrit pour R-no Toolbox. Non minifié, sans bibliothèque tierce. 7.9 kB
    SHA-256 d6592cf04c9a0df46b0fe9ced042fc0c79456656941ee40711187194d9eecd61
  • textes.js: les messages en français de l’outil, affichés par son script (le reste de la page française est écrit dans son HTML à la construction du site). Il ne fait que définir des textes, sans aucune logique. 4.8 kB
    SHA-256 e93b42dc10d98bb72fabe818901d3b3bebb7875c89b587bc9260773fe15f0e2d
  • /commun/langue.js: l’aide à la traduction, la même sur toutes les pages du site. Elle lit la langue de la page et donne à l’outil ses messages dans cette langue. Elle ne conserve rien. 1.6 kB
    SHA-256 80f76f69773ef628d36d09bf8387cfedebda4529210d7120649b6f5603310631
D’où vient le hasard
Le générateur aléatoire cryptographique de votre navigateur, crypto.getRandomValues (API Web Crypto). Les tirages qui avantageraient certaines valeurs sont rejetés plutôt que ramenés par un modulo : chaque issue a la même probabilité. Le calcul se fait sur des entiers de taille quelconque (BigInt) : on tire juste assez de bits aléatoires pour couvrir l’étendue, et un tirage qui la dépasse est jeté puis refait. Sans doublons, un nombre déjà sorti est tiré à nouveau, ou, si l’étendue est petite, toute l’étendue est mélangée (Fisher-Yates) et on garde les premiers nombres.
Vérifiez vous-même
Téléchargez un script et comparez son empreinte avec celle affichée ci-dessus :
curl -s https://r-no.fr/random/number/app.js | shasum -a 256
Ce que prouve un résultat
Rien, aux yeux d’un tiers. Une capture d’écran ou un résultat copié ne dit pas combien de fois le tirage a été refait avant celui-là, ni si la page a été modifiée. C’est très bien pour décider entre vous ; pour un tirage que d’autres doivent pouvoir contrôler (un concours, par exemple), un outil de tirage vérifiable est prévu.
Limites
Des nombres entiers seulement, avec des bornes de 40 chiffres au plus. 10 000 nombres au plus par tirage ; au-delà de 1 000, seuls les premiers sont affichés, mais la copie les contient tous.