2010-03-30 5 views
2

아시다시피 OAuth는 RSA-SHA1 서명을 지원할 수 있습니다. 나는 다음과 같은 방법Java에서 RSA-SHA1 서명 알고리즘 구현 (OAuth RSA-SHA1 서명과 함께 사용할 개인 키 만들기)

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

내가 성공적으로 구현 (OAuth를 지원) HMAC-SHA1 서명을 테스트뿐만 아니라 일반 텍스트 "서명"이있는 OAuthSignature 인터페이스를 가지고있다.

것은 내가 구글을 검색 한 내가 SHA1withRSA 서명을 사용해야하는 경우 나 개인 키를 생성해야합니다 : 샘플 코드 : 이제

/** 
    * 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(); 
    } 

을, 나는 consumerSecret & = 키 인 OAuth를 키 (취할 수있는 방법 tokenSecret) SHA1withRSA 서명과 함께 사용할 PrivateKey을 만드시겠습니까?

감사 OAuth Core

9.3에서


. [RFC3447] (Jonsson, J. 및 B. Kaliski "공개 키 암호화 표준 (PKCS 항에 RSA-SHA1은

는 RSA-SHA1 서명 방법은 RSASSA-PKCS1-v1_5의 서명 알고리즘 사용 EMSA-PKCS1-v1_5 용 해시 함수로 SHA-1을 사용하는 섹션 8.2 (더 간단히 PKCS # 1이라고 함). 은 이 범위를 벗어난 방식으로 서비스 제공자에게 확인 된 RSA 공개 키를 으로 제공했다고 가정합니다.

그리고 지금은 RSA-SHA1 서명을하고에 대한 참조로이 (http://code.google.com/apis/gdata/docs/auth/oauth.html)를 사용하고 있습니다.

답변

1

OAuthSignature 인터페이스는 어떤 API입니까? RSA 서명에 tokenSecret 매개 변수가 필요하지 않을 수 있습니까?

+0

OAuthSignature는 내 자신의 인터페이스입니다. 그리고 당신이 맞습니다, 구글 예제를 사용하여 (http://code.google.com/apis/gdata/docs/auth/oauth.html) 그것은 토큰 비밀을 필요로하지 않는 것 같습니다. –

관련 문제