La flickr API d'authentification est décrite ici:Puis-je stocker des mots de passe hachés?
http://www.flickr.com/services/api/auth.spec.html
J'ai mis en place quelque chose de très similaire pour un protocole XML-RPC, pour autoriser les demandes de signature sans utiliser SSL.
Il fonctionne essentiellement comme suit:
Pour un appel de fonction à distance
doSomething(foo='hello', bar='world')
Je premier argument de tri par nom, ce qui donne:
('bar', 'world'), ('foo', 'hello')
je concaténer la chaîne:
m = "bar:world;foo:hello"
alors j'append la clé secrète:
m = "bar:world;foo:hello;someSecret"
et enfin la signature est un hachage md5 du message m.
Le même processus est effectué sur le serveur pour vérifier si celui qui a appelé la fonction connaissait réellement la clé secrète.
Pour l'instant, les mots de passe sont stockés en texte brut côté serveur. Existe-t-il un moyen de stocker les mots de passe hachés à la place? Je pense que la fonction de hachage MD5 manque d'additivité pour que cela soit possible, mais peut-être peut-il encore être réalisé par une construction intelligente?
Merci,
Est-ce que vous posez des questions sur votre client pour flickr api ou sur votre paire client-serveur? Certaines authentifications vous permettent de ne pas stocker de mot de passe en texte brut sur le serveur ou de ne pas envoyer de mot de passe en clair lors de l'authentification, par ex. SRP http://en.wikipedia.org/wiki/Secure_Remote_Password_Protocol – osgx
pour la signature de base, vous pouvez utiliser HMAC. Si vous ne voulez pas stocker un mot de passe en clair sur le serveur, vous pouvez stocker md5() (ou hachage plus fort, par exemple PBKDF) et utiliser md5 (mot de passe) sur le client et sur le serveur pour signer et vérifier le signe. – osgx
Eh bien, ma première préoccupation est d'éviter d'envoyer le mot de passe (pas de SSL) et sans avoir besoin de stocker ce mot de passe non crypté sur le serveur. Si possible en utilisant le même protocole mais je peux le changer s'il y en a un meilleur. La question de bonus est: est-ce que flickr peut faire cela étant donné son protocole d'authentification actuel? – ascobol