N'est-ce pas un double de la réponse de @ devstopfix?
Andrew Grimm
même si c'est le cas, c'est un code ruby assez laid à suggérer, et ne mentionne même pas qu'il a besoin de `require \ 'digest / sha1 \' '-1
Rixius
16
N'oubliez pas que stackoverflow a trop de visiteurs, pourquoi ne nous montrez-vous pas la bonne façon de le faire? Moins de critiques plus d'exemples de code
Davidslv
1
quelle est cette fonction «sérialiser»? cela ne fait pas partie du rubis. Pire encore, la chaîne passée à hexdigest n'est pas du tout dynamique! Cette méthode renverrait le même hachage quelles que soient les données que vous lui donnez!
Blixxy
2
Besoin require 'digest/sha1'afin d'utiliser la SHA1méthode.
Réponses:
la source
Digest::SHA1.base64digest 'foo'
Digest
fait partie de la bibliothèque standard Ruby ( ruby-doc.org/stdlib-1.9.2/libdoc/digest/rdoc/index.html ). Il comprend des implémentations pour SHA1, SHA2, MD5 et d'autres algorithmes de hachage.Pour un hachage encodé en Base64, pour valider une signature Oauth, j'ai utilisé
la source
J'ai créé une gemme d' assistance qui est un simple wrapper autour d'un code sha1
la source
Où «sérialiser» est une fonction utilisateur définie ailleurs.
la source
require 'digest/sha1'
afin d'utiliser laSHA1
méthode.