Application native moderne en Go : connectons-nous à Internet !
Nous avons tout juste commencé à utiliser l'écosystème Go dans notre précédent article, mais nous n’avons pas tiré avantage du plus important bénéfice de Go, le réseau !
Contenu Premium
Ces articles techniques n'ont jamais fait l'objet d'une publication papier. Ils sont exclusivement disponibles sur ce site et réservés aux abonnés de la plateforme Connect.
Nous avons tout juste commencé à utiliser l'écosystème Go dans notre précédent article, mais nous n’avons pas tiré avantage du plus important bénéfice de Go, le réseau !
Navigation web, échanges de courriers électroniques, diffusions audio ou vidéo, conférences en ligne, communications entre équipements embarqués, automatisation… Autant de services nécessitant la mise en place d’un niveau de confidentialité important, dont l’un des impératifs est de garantir la protection des données pour ne pas les voir fuiter dans la nature. C’est avec ces contraintes que la société Netscape a conçu au début du XXIe siècle ce qui est aujourd’hui devenu le standard pour offrir ce niveau de sécurité. D’abord dénommé SSL puis rebaptisé TLS, ce protocole, ainsi que son collègue DTLS furent élaborés pour répondre à toutes ces exigences.
Si vous lisez Hackable, c’est probablement parce que vous aimez tenir dans vos mains un objet qui est le résultat de votre travail, un symbole physique et tangible de votre ingéniosité, une récompense pour vos investissements, vos efforts et votre patience. Mais vous devrez lutter contre un ennemi bien plus puissant et dévastateur que l’obsolescence programmée, la crise économique, les délais de livraison, les composants douteux à des prix improbables, les aléas du traçage des colis ou le livreur qui ne sonne même pas à la porte. Cet ennemi est plus ancien et plus internalisé que la conjoncture socio-économique industrielle, et son unique solution pourrait vous faire passer pour un luddite ou un excentrique. Il ne tient qu’à vous de décider, et cette question cruciale n’est pas posée au bac philo : voulez-vous vraiment vous amuser, et accessoirement, à quel point est-il acceptable de se laisser enfermer dans un monde virtuel ?
Les vols de comptes, en particulier à cause de l'utilisation de mots de passe trop faibles, sont monnaie courante et la situation ne risque pas de s'améliorer dans le futur. Une solution possible pour se protéger de cette menace consiste à utiliser une authentification multifacteurs. Le nom de compte et le mot de passe seuls ne sont alors plus suffisants pour se connecter, et un code temporaire à usage unique vient renforcer la sécurité. Il existe des matériels et logiciels (sur smartphone) dédiés à cela, mais pourquoi ne pas créer le sien avec une petite touche personnelle ?
LEGO Dimensions est un jeu vidéo sorti en 2015 et reposant sur un concept original, également utilisé par d'autres éditeurs à la même époque, comme Nintendo avec Amiibo ou Disney Interactive Studios avec Disney Infinity. L'idée de base consiste à utiliser des objets ou figurines équipés d'un tag NFC et permettant des interactions entre le jeu vidéo et le monde physique/réel. Ce type de jeux semble aujourd'hui passé de mode, mais le matériel reste très intéressant et surtout, réutilisable dans un autre contexte.
Dans le précédent article, nous avons fait le tour des différents éléments matériels qui composent notre ordinateur 8 bits, pour l'instant assez minimaliste, construit sur platine à essais autour d'un processeur Zilog Z80. Si vous avez suivi les indications que j'ai détaillées, vous devez, en principe, avoir quelque chose de fonctionnel, et il est temps de vérifier tout cela avec un peu de code.
Vous prêtez votre appartement, mais lorsque le voyageur l’a quitté, vous constatez que la chasse d’eau fuyait avec un chauffage à fond. Nous allons programmer un Raspberry Pi pour éteindre l’eau et l’électricité à distance en fonction d'une messagerie SMS. Cerise sur le gâteau : la porte s’ouvrira si on se connecte au réseau Wi-Fi du Raspberry Pi.
Dans l'épisode précédent, nous avons fait connaissance avec une carte industrielle à base de Z180 et nous sommes fixé comme objectif d'en faire notre « ordinateur 8 bits ». Nous avons chargé et exécuté notre programme en EEPROM et l'avons fait communiquer via une liaison série. Pour aller plus loin, nous devons cependant régler un problème qui consiste à comprendre comment est gérée la RAM et arriver à l'utiliser pour, au minimum, disposer d'une pile (stack) nous permettant d'appeler des sous-routines. Attaquons-nous au problème sans attendre...