
Beaucoup d'entre nous ont remarqué qu'avec la prolifération des services en ligne, le contrôle des données personnelles semble nous échapper. Nos fichiers et nos informations personnelles sont stockés sur des serveurs distants, protégés par des mots de passe et des méthodes d'authentification à deux facteurs, et nous n'y avons accès que tant que nous payons un abonnement.
Mais que se passe-t-il en cas de perte de la carte SIM, d'expiration de l'abonnement ou de blocage soudain du compte pour cause de sanctions ? Existe-t-il un plan pour le cas où le service que nous utilisons pour les mots de passe ou les notes cesserait soudainement d'exister ? Qu'en est-il alors de l'exportation et de l'importation de données ? Ce sont des questions auxquelles chacun d'entre nous réfléchit lorsqu'il explore l'ère numérique et la place qu'il y occupe.
Cet article offre une perspective unique sur la façon dont nous pouvons prendre le meilleur du passé et de l'avenir pour redresser les torts de la gestion des données. Il met en lumière les méthodes permettant de reprendre le contrôle des informations personnelles, de les protéger contre les fuites et d'éviter les restrictions imposées par les fournisseurs de services. En outre, l'article révèle comment rendre les données personnelles à la fois plus ouvertes et plus sûres.
Nous vous proposons un moyen simple d'utiliser l'intelligence artificielle pour travailler avec vos données, en contournant les processus technologiques complexes et les dépendances à l'égard des grandes entreprises. Cela vous permettra de travailler librement avec différents types de données sans être lié à un système d'exploitation ou à un programme spécifique, sans perdre en qualité et même en acquérant de nouvelles capacités.
Cet article s'adresse à ceux qui s'intéressent à la technologie et se projettent dans l'avenir. Il s'adresse aux lecteurs curieux et un peu geeks qui reconnaissent le rôle croissant de l'intelligence artificielle dans la vie quotidienne, y compris dans les logiciels et les systèmes d'exploitation.
Qu'est-ce qui ne va pas avec l'approche actuelle ?
Les chaînes de blocage et la confiance
Les approches modernes du stockage des données supposent généralement que toutes les données sont stockées dans une application, sauvegardées sur le serveur de cette application, ou entièrement sur le serveur, l'application ne servant qu'à les afficher. Cela signifie que nous comptons sur les développeurs et les vendeurs de ces programmes pour traiter nos données. Toutefois, cela soulève la question suivante : dans quelle mesure les données sont-elles stockées en toute sécurité ? De plus, tout stockage centralisé de données peut attirer les pirates informatiques, ce qui en fait une cible potentielle pour les attaques.
Fuites et fiabilité
Même les grandes entreprises comme Google perdent parfois des données d'utilisateurs en raison de mises à jour défectueuses. Des exemples de fuites de données, tels que les incidents liés aux "célébrités nues" d'Apple, montrent que personne n'est à l'abri des erreurs. Même les bases de données d'organisations telles que la police de la route sont menacées. Souvent, les entreprises transmettent des données aux agences de renseignement en vertu d'obligations légales, ce qui accroît les risques. Ces développements soulignent que le stockage des données de millions d'utilisateurs est une tâche complexe et que confier ses données à des tiers comporte de nombreux risques.
Examinons l'importance de la sécurité des données personnelles dans les applications, en particulier celles dans lesquelles nous utilisons nos identifiants et nos mots de passe. Lorsque nous entrons ces informations dans une application, elles risquent de tomber entre les mains de développeurs peu scrupuleux. C'est d'autant plus dangereux que la même combinaison d'identifiant et de mot de passe est souvent utilisée pour accéder à différents comptes, qu'il s'agisse de la messagerie électronique ou de services en nuage tels qu'iCloud. Les exemples de fuites de ce type dans le passé, y compris les incidents d'Apple, soulignent l'importance d'être prudent dans le choix des applications et de prêter attention à la sécurité des données.
Le stockage de données dans la base de données locale d'une application peut également présenter des risques. Parfois, une mise à jour d'une application peut accidentellement corrompre cette base de données, entraînant une perte d'informations. De telles situations se sont déjà produites par le passé.
Isolement et intégrations
Pourquoi pensez-vous que nous avons commencé à stocker des données directement dans les applications au lieu d'utiliser des dossiers standard comme "Documents" ou "Photos" dans nos systèmes d'exploitation ? C'était une pratique courante. Ne pensez-vous pas qu'il est temps de revenir à cette pratique simple et pratique ?
Actuellement, les données stockées dans un programme ne sont pas accessibles aux services externes, à moins que le programme ne dispose d'une API spécialisée, comme l'outil d'indexation des données d'Apple. Vous imaginez, un SDK entier a été développé et intégré dans un système juste pour que les données puissent être stockées dans l'application et synchronisées avec les serveurs du fournisseur. Il semble étonnant que tant d'efforts aient été déployés pour réaliser une telle tâche.
Je ne comprends vraiment pas ce pour quoi nous avons tous été épinglés avec tant d'acharnement, ni le travail supplémentaire qu'il a fallu fournir pour intégrer ce concept...
Parlons du partage des données entre les différentes plateformes. Et c'est encore plus amusant. S'il n'existe pas de logiciel pour votre plateforme, vous ne pouvez pas travailler avec vos données sur cette plateforme. C'est en quelque sorte un appel à rester dans le même écosystème. C'est comme s'ils disaient : "Pourquoi avez-vous besoin d'autres options ? Restez avec nous et devenez complètement dépendant de notre système". Prenons l'exemple de l'application Photos d'Apple.
Qu'en est-il de l'utilisation de l'intelligence artificielle pour améliorer la recherche et organiser nos données, par exemple pour créer des descriptions de photos à des fins de recherche ? Prenons l'exemple de l'application Photos d'Apple : si vous essayez de rechercher "voiture rouge", il se peut que vous n'obteniez aucun résultat ou qu'aucun objet rouge n'apparaisse. En essayant d'utiliser des requêtes significatives, on obtient souvent des résultats non pertinents. Mais nous ne pouvons pas intégrer notre propre IA directement dans cette application. Cela signifie que nous devons chercher un logiciel alternatif plus intelligent qui n'existe pas encore. Nous nous retrouvons donc dans une impasse où nos données sont limitées au champ d'application d'un seul programme qui ne peut pas traiter correctement les photos d'IA.
Dans l'état actuel des choses, nous manquons de connectivité entre les différentes plateformes, chacune offrant ses propres solutions en matière de données. Il arrive souvent qu'une excellente application ne soit disponible que pour une ou deux plateformes, ignorant les autres. Parfois, les applications ne fournissent pas d'API permettant d'intégrer des fonctionnalités supplémentaires, telles que le traitement de l'intelligence artificielle ou même de simples scripts. Pour les développeurs, cela crée des difficultés supplémentaires : vous devez créer et maintenir votre produit sur plusieurs plateformes simultanément.
Nous nous retrouvons avec un problème de :
- des fuites de nos données
- la perte de nos données
- perte de données après la mise à jour d'une application
- fuites de nos données suite à des demandes
- fuites d'accès par le biais de programmes d'accès aux données de tiers
- verrouillage de notre compte de données
- paiement d'une redevance récurrente pour l'utilisation de nos données
- perte éventuelle de la carte SIM ou du mot de passe permettant d'accéder à nos données
- le transfert de données d'un programme à un autre
- transfert de données d'une plateforme à une autre
- les données piégées dans les applications
- développement de logiciels pour chaque plateforme et support
- manque d'API pour travailler avec les données dans chaque programme
Qu'y a-t-il de bon dans la nouvelle approche que vous proposez ?
Pour commencer, je propose de libérer les données, ou plutôt de nous libérer des programmes qui stockent les données en interne. Les données doivent être stockées dans des dossiers.
Les programmes ne devraient afficher que les données de l'utilisateur, sans avoir besoin de se connecter directement à des serveurs ou de stocker des données en eux-mêmes. Ils deviendront ainsi de simples interfaces, ce qui augmentera la facilité d'utilisation. Le traitement principal des données devrait être confié à des services système de confiance. Parallèlement, le stockage des données de l'utilisateur devrait être organisé à l'aide d'un système de fichiers.
En un coup d'œil, nous pouvons suggérer quelques services simples pour extraire des données de diverses sources :
- Courriel
- SMS
- RSS (en lecture seule)
- Dossiers partagés
- Messages de la messagerie
- Téléchargements à partir d'Internet
- Contacts
- Notes
- Calendriers
Imaginons que nous créions un service universel pour chaque type de données. Ce service sera capable d'exécuter des fonctions de base : recevoir, traiter, stocker, supprimer et envoyer des données. La particularité d'un tel service est sa capacité à travailler avec un seul type de données, à un niveau élevé. Pour obtenir de meilleurs résultats, il ne faudra peut-être pas un seul service, mais une combinaison de plusieurs utilitaires. L'objectif principal est de se spécialiser dans le traitement de données provenant d'une source spécifique.
Pour faciliter l'accès à ces services, une interface utilisateur de tout type et de toute qualité peut être développée, qu'il s'agisse d'une application web ou d'un programme piloté par ligne de commande. Il est également possible de créer son propre programme unique et de le proposer aux utilisateurs via des plateformes telles que AppStore.
Donnez-moi un exemple de ce dont nous parlons... ce n'est pas clair du tout
Ok, prenons un cas simple pour mieux comprendre : imaginons que nous ayons une application de courrier électronique. Habituellement, elle se connecte au serveur par elle-même et gère les courriels. Imaginons maintenant qu'au lieu de cette application, nous utilisions un service spécialisé.
Acquisition, traitement et stockage des données
Le service de messagerie télécharge automatiquement les courriels depuis le serveur et les enregistre sous forme de fichiers .eml dans un dossier spécifique. L'IA entre alors en jeu et analyse le contenu de chaque courriel. Elle reconnaît et extrait diverses données, telles que la signature et les coordonnées de l'expéditeur. L'IA détermine également le type d'e-mail, par exemple s'il s'agit d'un spam, d'une notification d'une banque ou d'un message personnel. Sur la base de cette analyse, des étiquettes appropriées sont attribuées à chaque fichier, ce qui facilite l'organisation et la recherche des courriels.
Imaginons que nous disposions d'un service de messagerie SMS. Dès qu'un nouveau message arrive, il est enregistré dans un certain dossier sous la forme d'un fichier texte portant l'extension .txt. Ensuite, le service, basé sur l'intelligence artificielle, analyse ces messages et leur attribue des étiquettes appropriées pour faciliter leur utilisation ultérieure.
Nous utilisons également un service de gestion des contacts qui traite automatiquement les données provenant de sources locales, telles que les dossiers de courrier électronique et de SMS. Ce service analyse les étiquettes et, après avoir détecté les données relatives aux nouveaux utilisateurs qui nous ont écrit, crée automatiquement de nouveaux fichiers de contact au format .vcf dont les champs sont déjà remplis.
Visualisation des données
Disons-le d'emblée, à ce stade déjà, le traitement des données devient plus pratique dès le système d'exploitation. Nous avons maintenant la possibilité d'indexer les données au format texte, contrairement à l'ancienne méthode où tous les messages étaient stockés dans des bases de données au sein de chaque application.
Dans la nouvelle approche, pour consulter les messages, vous pouvez utiliser un gestionnaire de fichiers ordinaire pour accéder au dossier contenant les courriels et les textes. Cela signifie que vous pouvez appliquer à vos messages toutes les commodités d'un gestionnaire de fichiers, y compris la création de dossiers intelligents qui organisent automatiquement vos messages par tags ou par noms d'expéditeurs. En d'autres termes, nous obtenons une sorte d'interface graphique classique où, sur le côté gauche, vous pouvez voir les noms complets des expéditeurs et, lorsque vous cliquez dessus, vous pouvez voir la liste de tous les messages de cet expéditeur, qu'il s'agisse de courriers électroniques ou de SMS.
L'exemple que j'ai donné peut sembler compliqué et peu pratique pour les utilisateurs ordinaires, mais il est important de comprendre qu'il simplifie le travail avec les données. Et si cette approche avait existé il y a longtemps, l'AppStore disposerait d'un grand nombre d'applications pratiques et magnifiques pour travailler avec des données et les visualiser, ce qui rendrait ce processus accessible à tous.
Encore une fois sur la sécurisation
Lorsque nous donnons accès à nos courriels à des applications tierces, nous courons le risque que nos données soient partagées avec des tiers. Un exemple de ce type de situation est l'incident survenu chez Apple lors d'une fuite massive de photos personnelles de célébrités. Tout cela s'est produit à cause de l'utilisation du même identifiant et du même mot de passe pour iCloud et les comptes de messagerie. Cela a permis à des applications de messagerie tierces d'accéder à l'intégralité du contenu d'iCloud des utilisateurs.
Si seul un service du système d'exploitation était chargé de travailler avec le courrier, il recevrait et enverrait des courriers et enregistrerait les données localement. D'autres programmes ne travailleraient qu'avec ces données et avec l'API de ce service, une telle fuite ne pourrait pas se produire.
Une fois de plus. Imaginons que le système d'exploitation dispose d'un service qui récupère les courriers électroniques du serveur et les place dans un dossier local. En outre, tout programme d'interface graphique qui souhaite afficher joliment des listes de courriers électroniques prend simplement ces fichiers et les affiche. C'est-à-dire qu'il ne va pas sur le serveur lui-même, il n'a pas d'informations sensibles qui peuvent fuir à travers lui. En outre, étant donné que l'envoi de courriers électroniques relève de la responsabilité du service et non du programme, un pare-feu peut l'empêcher d'envoyer du trafic sortant. Ainsi, aucune fuite ne peut se produire si on le souhaite.
L'ancienne approche consiste à confier le mot de passe de connexion à chaque nouveau programme de courrier électronique
Nouvelle approche - le programme de messagerie n'affiche que les courriels, le programme est fermé par un pare-feu sur tous les ports et protocoles sortants.
Quelque chose de plus précis ?
Imaginez un programme qui suit automatiquement vos revenus et vos dépenses. Habituellement, pour ce faire, vous devez saisir manuellement des données pour chaque dépense ou revenu, ou utiliser l'API de la banque, ce qui peut être compliqué et pas toujours sûr. De plus, toutes les banques ne disposent pas d'une telle API et il est impossible pour un développeur de couvrir toutes les banques à la fois.
Cependant, de nombreuses banques proposent des notifications par courriel et par SMS, que nous ignorons souvent. Et si nous les utilisions ? En utilisant les services décrits ci-dessus, nous pouvons automatiser la collecte d'informations sur les mouvements sur les comptes en analysant les courriels et les SMS, en reconnaissant les données nécessaires grâce à l'intelligence artificielle.
Ainsi, notre programme financier affichera toutes les recettes et dépenses en temps réel, sans qu'il soit nécessaire de fournir un accès à l'API de la banque. Cela rend le processus non seulement pratique, mais augmente également la sécurité de vos données.
Un autre exemple s'il vous plaît et cette fois-ci sans courrier
Bon, examinons la situation des logiciels de prise de notes. De nos jours, il existe de nombreux programmes de ce type, chacun utilisant sa propre base de données interne. Mais que se passe-t-il si le programme cesse d'exister, comme cela s'est déjà produit ? La question de la sauvegarde et du transfert des données se pose.
Quelle est alors la solution ?
Une solution consiste à stocker les données non pas dans une base de données d'application spécialisée, mais directement dans le système de fichiers dans un format universel pour les notes. Cela permettra la portabilité des données entre différents programmes, car ils travailleront tous avec le même type de fichier en utilisant leur propre interface. De cette manière, vous préservez vos données et vous vous assurez qu'elles peuvent être facilement transférées en cas de besoin.
Eh bien... peut-être un dernier exemple ?
D'accord, la messagerie. Par exemple, nous avons maintenant Whatsapp, Telegram, iMessage et d'autres programmes, y compris l'envoi de messages ordinaires. Que devons-nous faire ? Il faut aller dans chaque programme où l'on nous a envoyé un message pour y répondre. Mais si, pour chaque programme, il existait un service permettant de placer chaque message dans un dossier, tout changerait.
Nous pourrions alors voir tous les messages de n'importe quelle messagerie dans une seule interface et répondre à chacun d'entre eux comme avant, sans avoir à réfléchir à l'endroit d'où quelqu'un vous a écrit. Ce serait pratique.
Cela ne ralentirait-il pas, la base de données est plus rapide, n'est-ce pas ?
Aujourd'hui, le SSD est encore plus rapide que la mémoire d'il y a cinq ans. Mais ce n'est pas l'essentiel, l'essentiel est que personne ne vous oblige à ne pas utiliser la mise en cache dans le programme lui-même. C'est-à-dire de précharger certaines données dans la mémoire, par exemple.
Quels sont donc les avantages ?
Une fois encore, un coup d'œil rapide permet de dégager la série d'avantages suivante :
- nos données nous appartiennent
- pas de fuites, tout est privé
- pas de dépendance à l'égard d'un fournisseur
- pas de dépendance à l'égard des fournisseurs
- traitement facile des données par les propres services d'intelligence artificielle
- les données peuvent être visualisées de n'importe quelle manière, même à partir de la ligne de commande
- aucune possibilité que vos données soient bloquées par des sanctions
- portabilité aisée des données entre les applications
- portabilité aisée entre les plateformes
- personnalisation flexible
Quels sont les inconvénients ?
Le stockage de données sur un appareil prend de la place, c'est-à-dire qu'il doit s'agir d'un appareil de grande capacité. Si nous parlons de téléphones, il va de soi que l'iPhone sera exclu de tous les plans... tant en termes de prix pour un téléphone doté d'un grand disque que de limitations du système d'exploitation. Il vaut mieux envisager un téléphone linux, avec une carte microSD pour toutes les capacités.
Pour ne pas commencer un holivar, je dirai tout de suite que, par exemple, l'application Fichiers sur iOS, dans laquelle j'ai scanné certains documents, doit généralement télécharger les scans et ce processus prend du temps, et lorsque l'Internet laisse beaucoup à désirer, dans ces moments-là, on se rend compte que si les données se trouvaient directement sur l'appareil, la vie serait beaucoup plus facile.
Ces inconvénients sont donc plutôt des avantages.
Résumé
J'ai développé une idée, un concept et je l'ai partagé avec vous pour montrer que les données peuvent être traitées d'une manière différente, plus sûre, plus simple et plus ouverte. J'ai montré à l'aide d'exemples qu'il était tout à fait réaliste de le faire pour n'importe quel système d'exploitation, et j'ai expliqué pourquoi cela n'a pas été fait. J'ai expliqué comment les fournisseurs ont érigé des clôtures autour de leurs écosystèmes, se battant pour chaque parcelle de données utilisateur, et comment cela se termine parfois.
Aujourd'hui, nous avons ce que nous avons, mais j'ai également décrit la manière de sortir de cette situation. En ce qui me concerne, j'ai décidé de commencer par la conception de ce système de travail avec les données. Si quelqu'un comme moi est intéressé par ce sujet, écrivez-moi, j'essaierai de répondre à tout le monde. Si vous souhaitez participer au développement des services, j'en serai également très heureux.