Ich versuche, die API von ankoder.com zu testen und habe Probleme mit der Digest-Berechnung für Authentifizierungstoken . Das Beispiel ist Ruby, während ich versuche, von C # anzurufen. Wenn ich das Digest-Ergebnis zwischen HMAC-SHA1 vergleiche, habe ich Probleme mit dem Passkey-Ergebnis.
Um es hier einfach zu testen, ist der Code:
%Vor%Was mir das Ergebnis gibt: "X / 0EngsTYf7L8e7LvoihTMLetlM = \ n" Wenn ich das in C # mit dem folgenden versuche:
%Vor%Das Salz-Ergebnis ist das gleiche, aber das Passwort-Ergebnis ist anders - C # gibt mir:
QLC68XjQlEBurwbVwr7euUfHW / k =
Beide erzeugen das Salz: f5cab5092f9271d43d2e
Gibt es eine gute Idee, was passiert ist?
Sie haben PrivateKey
und salt
an die falsche Stelle in Ihrem C # -Code gesetzt; pro Ruby-Code ist PrivateKey
der geheime Schlüssel des HMAC.
Beachten Sie auch, dass Sie am Ende des von Ihrem Ruby-Programm erzeugten Hashes einen Zeilenumbruch eingefügt haben (entsprechend Ihrer Beispielausgabe). Sie müssen nicht den Zeilenumbruch einbeziehen oder die Hashes stimmen nicht überein.
Dieses C # -Programm korrigiert das erste Problem:
%Vor%Ich sehe 2 Probleme,