« Réunion du 27-02-2024 » : différence entre les versions

De OSWiki
Aller à la navigation Aller à la recherche
 
(4 versions intermédiaires par le même utilisateur non affichées)
Ligne 9 : Ligne 9 :
=== Nouvelles fonctions OSSL ===
=== Nouvelles fonctions OSSL ===
====Explorer l'inventaire des objets====
====Explorer l'inventaire des objets====
'''osGiveLinkInventory'''(integer linkNumber, key destination, string inventory) Donne un objet situé dans l'inventaire d'une prim enfant.[http://opensimulator.org/wiki/OsGiveLinkInventory]
  '''osGetInventoryNames'''(integer type) Retourne une liste de noms d'objets par type (ou INVENTORY_ALL) situés dans l'inventaire de la prim.[http://opensimulator.org/wiki/OsGetInventoryNames]
  '''osGetInventoryNames'''(integer type) Retourne une liste de noms d'objets par type (ou INVENTORY_ALL) situés dans l'inventaire de la prim.[http://opensimulator.org/wiki/OsGetInventoryNames]


Ligne 27 : Ligne 25 :
====Utiliser l'inventaire des objets====
====Utiliser l'inventaire des objets====
  '''osGiveLinkInventoryList'''(integer linkNumber, key destination, string category, list inventory) Renvoie un groupe d'objets situés dans l'inventaire d'une prim enfant.
  '''osGiveLinkInventoryList'''(integer linkNumber, key destination, string category, list inventory) Renvoie un groupe d'objets situés dans l'inventaire d'une prim enfant.
'''osGiveLinkInventory'''(integer linkNumber, key destination, string inventory) Donne un objet situé dans l'inventaire d'une prim enfant.[http://opensimulator.org/wiki/OsGiveLinkInventory]


  '''osRemoveLinkInventory'''(integer linkNumber, string name) Supprime un objet de l'inventaire d'une prim enfant
  '''osRemoveLinkInventory'''(integer linkNumber, string name) Supprime un objet de l'inventaire d'une prim enfant
Ligne 41 : Ligne 41 :
  '''osAESDecryptFrom'''(string secret, string encryptedText, string ivString)
  '''osAESDecryptFrom'''(string secret, string encryptedText, string ivString)


* '''Remarque''' : Il serait  judicieux de combiner les différents algorithmes en une seule fonction de chiffrement et de déchiffrement afin que l'ajout d'un nouvel algorithme ne nécessite pas un nouvel ensemble de fonctions. Exemple osCrypt(string algo, string input).
* '''Remarque''' : Il serait  judicieux de combiner les différents algorithmes en une seule fonction de chiffrement afin que l'ajout d'un nouvel algorithme ne nécessite pas un nouvel ensemble de fonctions. Exemple osCrypt(string algo, string input).


= Projets en cours / Infos=
= Informations=
===Vie privée et chiffrement dans OpenSim ===
===Vie privée et chiffrement dans OpenSim ===
==== Le problème ====
==== Le problème ====

Dernière version du 3 mars 2024 à 14:43

Changements du code de la semaine

Contributions pour OSSL

  • Nouvelles fonctions de script [1]
  • Non testées par Ubit Umarov

Avertissement

Attention : Ce résumé existe pour orienter vos recherches. Des erreurs d'interprétation ne sont pas à exclure. Pour plus de précisions, veuillez vous référer aux sources ou vous adresser directement aux développeurs d'OpenSimulator en assistant aux réunions du mardi ou sur le canal IRC. Je ne fais pas partie des développeurs, ne vous adressez pas à moi pour les joindre. Merci.😉


Scripts

Nouvelles fonctions OSSL

Explorer l'inventaire des objets

osGetInventoryNames(integer type) Retourne une liste de noms d'objets par type (ou INVENTORY_ALL) situés dans l'inventaire de la prim.[2]
osGetLinkInventoryNames(integer linkNumber, integer type) Retourne une liste de noms d'objets par type (ou INVENTORY_ALL) situés dans l'inventaire d'une prim enfant.[3]
osGetInventoryKeys(integer type) Retourne une liste des UUIDs des objets par type (ou INVENTORY_ALL) situés dans l'inventaire de la prim.[4]
osGetLinkInventoryKeys(integer linkNumber, integer type) Retourne une liste des UUIDs des objets par type (ou INVENTORY_ALL) situés dans l'inventaire d'une prim enfant.[5]
osGetLinkInventoryKey(integer linkNumber, string name) Retourne l'UUID de l'article spécifié situé dans l'inventaire d'une prim enfant.[6]
osGetLinkInventoryDesc(integer linkNumber, string itemNameorid) Retourne la description d'un article situé dans l'inventaire d'une prim enfant.[7]
osGetLinkInventoryName(integer linkNumber, key itemId) Retourne le nom d'un objet situé dans l'inventaire d'une prim enfant.[8]

Utiliser l'inventaire des objets

osGiveLinkInventoryList(integer linkNumber, key destination, string category, list inventory) Renvoie un groupe d'objets situés dans l'inventaire d'une prim enfant.
osGiveLinkInventory(integer linkNumber, key destination, string inventory) Donne un objet situé dans l'inventaire d'une prim enfant.[9]
osRemoveLinkInventory(integer linkNumber, string name) Supprime un objet de l'inventaire d'une prim enfant

Chiffrement AES

Advanced Encryption Standard sur Wikipédia

osAESEncrypt(string secret, string plainText)
osAESDecrypt(string secret, string encryptedText)
osAESEncryptTo(string secret, string plainText, string ivString)
osAESDecryptFrom(string secret, string encryptedText, string ivString)
  • Remarque : Il serait judicieux de combiner les différents algorithmes en une seule fonction de chiffrement afin que l'ajout d'un nouvel algorithme ne nécessite pas un nouvel ensemble de fonctions. Exemple osCrypt(string algo, string input).

Informations

Vie privée et chiffrement dans OpenSim

Le problème

  • Web Rain, développeur des nouvelles fonctions OSSL, dit que la vie privée et la sécurité sont des droits de l'homme et doivent être au premier plan. Il aimerait qu’à la place des fonctions ossl qu’il propose, le chiffrement soit implémenté du côté des Viewers pour avoir un peu de sécurité et de vie privée dans OpenSim sans utiliser ssl de bout en bout et protéger également les messages privées côté simulateurs / Robust.

Le chat et la messagerie privée

  • Vincent.Sylvester dit que toute personne qui sait où regarder peut sortir toutes les conversations de la messagerie instantanée vers la console malgré le chiffrement parce que la messagerie instantanée n'est pas chiffrée directement dans le viewer entre les utilisateurs. (Ndrl : je confirme. J'ai déjà écrit un module OpenSim qui envoyait le chat dans la console. Je vous rassure, je ne l'ai JAMAIS utilisé et jamais publié. En revanche, je pense que d'autres moins scrupuleux peuvent le faire sur leur serveur. C'est pourquoi, protégez-vous et ne vous exprimez pas trop en hypergrid sur des serveurs que vous ne maîtrisez pas.)
  • Il est peu probable que les développeurs de viewer soient d'accord pour casser le protocole existant pour trouver un moyen d'échanger les clés de chiffrement. De plus, tout passe par le serveur.
  • Joe Magarac développeur de Sharpview propose/imagine d'utiliser le même canal d'événements existant pour le chat et la messagerie instantanée mais encodée en LSL (Ndlr : SSL ?) avec en réception, une nouvelle capacité pour l'envoi des messages viewer -> simulateur, puis utiliser HTTPS sur Internet. Si une solution HTTPS est acceptable, Joe Magarac en parlera à la réunion de développement SL le jour même.
  • Vincent.Sylvester : Le viewer pourrait demander au serveur l'adresse IP de l'interlocuteur afin de négocier une clé à l'insu du serveur. Il serait possible ainsi d'envoyer des données chiffrées mais, en retour le serveur doit révéler l'identité du destinataire via son IP. Ceci dit, les administrateurs de la grille peuvent déjà enregistrer l'adresse IP puisqu'il s'agit d'une connexion Robust.

Les requêtes HTTP

  • Le chiffrement est utile pour ces requêtes, mais elles supportent déjà SSL et tant que tout ce qui doit être chiffré passe par HTTPS standard, il n'y a rien à faire côté viewer. Pour cela, dans ces conditions, les fonctions de chiffrement ne sont pas nécessaires mais, c'est une alternative à la solution SSL.

Autres questions

  • Gavin.Hird pense que le chiffrement peut aussi servir à mettre des choses illégales sur les serveurs.
  • Vincent.Sylvester est tout à fait pour la vie privée, mais si c'est une préoccupation, il y a plein d'outils plus efficaces qu'OpenSim pour faciliter les discussions privées. Il trouve qu'OpenSim a des problèmes plus urgents à traiter en ce moment.
  • Chiffrement du mot de passe opensim :
md5(md5(mot de passe))

md5 est faible mais la connexion se fait par HTTPS donc md5(md5(mot de passe)) ne voyage jamais en clair sur le réseau. De plus, le double md5 est aussi étonnamment fort malgré ce qu'il semble être et il n'y a techniquement pas de limite sur la taille des mots de passe.

Viewers

Sharpview

  • Passage de frontière : le viewer s'améliore et arrive à passer les frontières mais pas avec toutes les régions. Il semble qu'il y ait un souci avec BulletSim, donc ce n'est pas un problème de viewer, c'est la même chose pour Firestorm.

Source

http://opensimulator.org/wiki/Chat_log_from_the_meeting_on_2024-02-27