2011-01-21 4 views
2

PEM 형식의 내 RSA 공개 키 및 개인 키 (모두 p, q, e, n, d)가 있습니다. 내가 알고 궁금 : (OpenSSL을/모질라 NSS 라이브러리에서 ) PK11_Sign(), PK11_Verify()PK11_VerifyRecover()는 RSA와 함께 작동하는 방법OpenSSL/Mozilla NSS RSA 서명 및 확인 (PK11_Sign, PK11_Verify, PK11_VerifyRecover 기능)은 어떻게 작동합니까?

  • ?
  • 서명 할 입력 메시지에 패딩이 적용되는 방식은 무엇입니까?

내 질문의 컨텍스트는 : PK11_Sign()이 서명하는 동안 입력 데이터에 패딩을 추가하는 것을 보았습니다.

 
my input = 31323334353036373839 
padded input = 1FFFFFFFFFFFFFFFF0031323334353036373839 

내가 알고 싶습니다 : 예를 들어 (키 크기가 162 비트 부여)

  • 어떻게 작동하는지에이 패딩 방식과 포인터의 이름은 무엇입니까

    ?
  • 위에서 언급 한 OpenSSL 기능의 기본 채우기 구성표는 무엇입니까? 예를 들어 "openssl rsautl -in input.txt -inkey mykey.pem -out signed.txt"을 수행하면 어떤 패딩 구성표가 사용됩니까?

답변

3
  • PK11_Sign 등의 PKCS # 당신이 언급 패딩을 포함 1 v.1.5에 서명을 사용합니다.

  • 패딩 구성표는 EMSA-PKCS1-V1_5-ENCODE라는 알고리즘의 일부입니다. 비공식적으로 "PKCS # 1 v.1.5 서명 패딩"이라고해도 이름이 있다고는 생각하지 않습니다. the PKCS#1 standard에 정의되어 있습니다.

  • openssl rsautl의 기본값은이 패딩을 의미하는 PKCS # 1 v.1.5 서명을 사용하는 것입니다.