Encodage UTF-8 dans les noms et mots de passe Wi-Fi (Emoji)

En 2012, il est devenu possible d'utiliser des caractères UTF-8 au nom d'un réseau Wi-Fi. La première chose qui me vient à l'esprit est de se démarquer de la masse grise et d'utiliser des émoticônes Emoji dans le nom du réseau. Et aussi, vous pouvez créer un mot de passe Emoji, puis vous pouvez en toute sécurité dire à vos amis: "Connectez-vous à un réseau Wi-Fi pour du fromage gratuit, un mot de passe: une bière et un cookie."


Tout le monde n'a pas immédiatement commencé à soutenir cette norme. Cependant, 7 ans se sont écoulés et le boom des émoticônes au nom des routeurs à domicile ne s'est pas produit. Alors organisons ce boom maintenant!
C'est dommage, tous les micrologiciels ne le permettent pas, par exemple, ZyXel Keenetic 4G II avec le dernier firmware bêta en 2017 ne sait pas comment utiliser UTF-8 en SSID. Peut-être que vous pouvez configurer en quelque sorte via la CLI, mais je n'ai pas réussi. Dans les nouvelles versions du firmware ZyXel, cette fonctionnalité a été ajoutée, mais un matériel plus récent est nécessaire. Que ce soit une autre raison de mettre à jour le routeur. Je n'ai pas essayé ASUS, TP-Link et autre zoo, j'ai immédiatement pris MikroTik, car là ça marche définitivement.

MikroTik


J'ai mené mes expériences sur MicroTik hAP lite avec le dernier firmware stable pour aujourd'hui. Très probablement, cette astuce fonctionnera sur tous les microtiques avec n'importe quel firmware.

SSID UTF-8


Changer le nom est assez simple, allez sur le site , copiez tous les caractères de la plaque dans le formulaire, appuyez sur Go et copiez le résultat sur le terminal:

/interface wireless set [find name="wlan1"] ssid="\F0\9F\86\93\F0\9F\A7\80" 

Sur l'iPhone, cela ressemble à ceci:

Mot de passe UTF-8


Lorsque les invités se sont dispersés, le réseau Wi-Fi doit être protégé par mot de passe. Nous allons également faire de la ligne UTF-8 un mot de passe. Tout le monde sur le même site sélectionne le mot de passe approprié pour nous, cliquez sur Go. Du résultat, nous prenons uniquement la valeur entre guillemets et écrivons sur le terminal:

 /interface wireless security-profiles set [find name="default"] mode=dynamic-keys authentication-types=wpa2-psk wpa2-pre-shared-key="\F0\9F\86\93\F0\9F\A7\80" 

Connexion avec un mot de passe UTF-8


Et maintenant la partie la plus difficile. Comment saisir le mot de passe UTF-8? Lorsque vous entrez du texte dans des messageries instantanées, il existe une disposition de clavier spéciale avec des icônes Emoji. Mais lors de la saisie du mot de passe Wi-Fi, seul le clavier standard est disponible! Vous pouvez deviner pour copier le texte du message à partir du messager et le coller à la place du mot de passe, mais cela ne fonctionnera probablement pas. Vous pouvez demander cette tâche à vos administrateurs système familiers.

L'utilisateur ky0 a suggéré d' utiliser un code QR avec les détails de la connexion . Cependant, sur mon iPhone, cette astuce n'a pas fonctionné.

Connectez Mac, iPhone, iPad


Voici comment j'ai surmonté cette limitation sur les appareils Apple: j'ai connecté le Mac via la console et les autres iDevices ont téléchargé le profil du réseau Wi-Fi depuis le cloud!

Nous scannons les réseaux Wi-Fi avec la commande:

 /System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport -s 

Et nous nous connecterons à notre réseau avec le mot de passe donné (le terminal peut le faire en UTF-8, contrairement au Habr):

 networksetup -setairportnetwork en1 [] [] 

J'ai une carte réseau assise sur en1, la vôtre peut différer. Vérifiez avec la commande:

 networksetup -listallhardwareports 



Maintenant, le Mac s'est connecté avec succès au réseau, après un court laps de temps, il synchronise les mots de passe dans iCloud, et l'iPhone va bientôt les télécharger et se connecter indépendamment à notre Wi-Fi.

PS: Dans le système de combat, de tels mots de passe ne devraient certainement pas être définis. Bien que le nom du réseau ne leur nuise pas, même si l'émoticône n'est pas affichée, l'appareil pourra se connecter au réseau. Mais définir un mot de passe UTF-8 dans un café ou un bureau ne devrait certainement pas l'être - les visiteurs et les collègues n'apprécieront pas l'humour.

À la maison - pourquoi pas? De plus, si tous les appareils acceptent normalement un tel mot de passe, il est peu probable que le voisin de Vaska puisse se connecter à un tel réseau. Un avantage sera la protection contre la force brute et contre les fuites de mots de passe dans des bases de données comme 3wifi.stascorp.com . Le cracker populaire des routeurs RouterScan utilise le codage ASCII, donc lors de la conversion d'une émoticône en ASCII, il y aura soit un crack, soit une chaîne vide. Au fait, vérifiez votre routeur, il se trouve peut-être dans la base de données 3wifi depuis longtemps ...

La chose cool est le mot de passe UTF-8! Les émoticônes sont faciles à retenir, vous pouvez utiliser différentes langues, pas seulement l'anglais + les chiffres + certains caractères spéciaux. Il ne manque que le support natif dans les gadgets. J'espère que les fabricants implémenteront le support pour UTF-8 avec WPA3 .

Zyxel keenetic


ZyXel Keenetic OS prend en charge le SSID dans le codage UTF-8 dans le firmware 2.13.0 du 20/09/2018
liste des appareils
Keenetic Giga (KN-1010)
Démarrage vif (KN-1110)
Keenetic 4G (KN-1210)
Keenetic Lite (KN-1310)
Keenetic Omni (KN-1410)
Keenetic City (KN-1510)
Keenetic Air (KN-1610)
Keenetic Extra (KN-1710)
Keenetic Ultra (KN-1810)
Zyxel Keenetic Start II
Zyxel Keenetic Lite III rev.B
Zyxel Keenetic 4G III rév. B
Zyxel Keenetic Giga III
Zyxel Keenetic Ultra II
Zyxel keenetic air
Zyxel Keenetic Extra II

Pour les appareils pris en charge, le SSID est modifié via l'interface Web.

Xiaomi


Le firmware en stock prend en charge UTF-8.
Commentaire de extrawelt

Routeurs Padavan


Le routeur Xiaomi avec le firmware Padavan par défaut ne vous permet pas de spécifier les emojis comme SSID. Mais depuis la validation a lieu dans JS, elle est assez facilement résolue via la console développeur, par exemple, dans Chrome.

Il vous suffit d'écrire dans la console sur la page d'édition du SSID:
 window.validate_ssidchar = function () { return true; }; 


Pour que les emojis puissent être spécifiés dans le mot de passe, vous devez désactiver une fonction de validation supplémentaire:
 window.validate_string = function () { return true; }; 

Source: www.reddit.com/r/javascript/comments/5zcb8m/can_you_help_me_allow_my_router_to_accept_as_the
Merci à ferosod pour ce commentaire !

Android


Samsung Galaxy S8 + (tarte Android) vous permet de coller des emojis copiés à partir du tampon dans le nom et le mot de passe du réseau. Le clavier est standard du Samsung. ( info de DaemonGloom ).

UPD: Merci à tous pour les commentaires, je continue à mettre à jour le sujet avec vos observations. Je me demande s'il s'est avéré se connecter en utilisant le code QR ? Les routeurs sont également intéressés par Asus, Tp-link, D-Link.

TODO:

  • Prise en charge du SSID UTF-8 dans les routeurs ASUS / TP-Link / D-Link / etc?
  • Se connecter avec un mot de passe UTF-8 sous Windows / Linux / Android?
  • Essayez un code QR pour vous connecter
  • Animation de script

Source: https://habr.com/ru/post/fr438672/


All Articles