Die Implementierung der RSA-SHA1-Signatur-Algorithmus in Java (erstellen eines privaten Schlüssels für den Einsatz mit OAuth RSA-SHA1 Signatur)

Wie Sie wissen, OAuth kann die Unterstützung von RSA-SHA1-Signatur. Ich habe eine OAuthSignature - Schnittstelle, die folgende Methode

public String sign(String data, String consumerSecret, String tokenSecret) throws GeneralSecurityException;

Habe ich erfolgreich implementiert und getestet-HMAC-SHA1-Signatur (die OAuth Unterstützt) sowie die KLARTEXT "Signatur".

Ich habe gesucht google, und ich habe so erstellen Sie einen privaten Schlüssel, wenn ich SHA1withRSA Signatur: Beispielcode:

  /**
   * Signs the data with the given key and the provided algorithm.
   */
  private static byte[] sign(PrivateKey key,
                             String data)
      throws GeneralSecurityException {

    Signature signature = Signature.getInstance("SHA1withRSA");
    signature.initSign(key);
    signature.update(data.getBytes());
    return signature.sign();
  }

Nun, Wie kann ich den OAuth-Schlüssel (die Schlüssel = consumerSecret&tokenSecret) und erstellen Sie ein PrivateKey zu verwenden mit SHA1withRSA Signatur?

Dank


Vom OAuth-Core

9.3. RSA-SHA1

Den RSA-SHA1-Signatur-Methode verwendet die
RSASSA-PKCS1-v1_5 Signatur-Algorithmus
wie definiert in [RFC3447] (Jonsson, J.
und B. Kaliski, “Public-Key
Cryptography Standards (PKCS) #1: RSA
Kryptographie; Spezifikationen Version
2.1," .) Abschnitt 8.2 (mehr einfach als bekannt PKCS#1), der mit SHA-1 als
hash-Funktion für die EMSA-PKCS1-v1_5. Es
wird davon ausgegangen, dass die Verbraucher
seinen öffentlichen RSA-Schlüssel in einer
überprüft Weg zum Service-Provider
in einer Weise, die über den Rahmen
dieser Spezifikation.

Und ich bin jetzt mit diesem (http://code.google.com/apis/gdata/docs/auth/oauth.html) als Referenz zu tun, RSA-SHA1-Signatur.

InformationsquelleAutor Buhake Sindi | 2010-03-30

Schreibe einen Kommentar