RSA-OAEP는 대칭 키 메시지를 어떻게 해독합니까?

Aug 21 2020

RSA-OAEP 암호화 된 대칭 키 (예 : AES) 메시지에서. 그런 다음 R이 상대방이 알지 못하는 난수 일 때 메시지는 상대방에 의해 해독됩니다. 그래서 그것이 A Hash (hash1)로 XOR되었을 때 어떻게 키를 되 찾을 수 있습니까? 나는 그 결과 Hash2가 아무것도 도움 이되지 않는다고 생각합니다 . 권리?

답변

3 kelalaka Aug 21 2020 at 19:59

OAEP는 RSA를위한 최적의 비대칭 암호화 패딩 이며 M. Bellare, P. Rogaway가 1995 년에 개발했으며 PKCS # 1 v2 및 RFC 2437 에서 표준화되었습니다 .

  • 최적의 비대칭 암호화-RSA로 암호화하는 방법. 암호화 발전의 확장 된 초록

OAEP의 일부 내부를 숨기는 이미지. 여기에 더 나은 것이 있습니다.

MFG는 마스크 생성 기능 이 랜덤 오라클이 될 것으로 예상됩니다. MFG는 표준 해시 함수의 출력이 고정 크기 인 반면 MGF가 가변 길이의 출력을 지원한다는 점을 제외하면 암호화 해시 함수와 유사합니다.

OAEP가 XOF ( 확장 가능한 출력 기능 ) 이후에 개발되면 증명이 훨씬 쉬워 질 것입니다.

질문으로 돌아 가기

A Hash (hash1)를 사용하여 XOR 할 때 키를 다시 검색 할 수있는 방법. 나는 Hash2의 출력이 아무것도 도움이되지 않는다고 생각합니다. 권리?

위에서 다음과 같이 공식화 할 수 있습니다.

\begin{align} T &= lhash \mathbin\| PS \| \texttt{01} \mathbin\| Message\\ maskedDB &= MFG1(seed) \oplus T \\ maskedSeed &= MFG2(maskedDB) \oplus seed\\ \end{align}

PKCS # 1 표준에서는 동일한 MFG가 임의의 오라클로 사용됩니다. 번호 매기기로 구분했습니다.$MFG1$ 촬영됩니다 $seed$ 입력으로.

이제 RSA-OAEP에서 보낸 메시지를 받았습니다. 당신은 얻을$maskedSeed$$maskedDB$

그만큼 $seed$ 다음과 같이 계산할 수 있습니다.

$$seed = maskedSeed \oplus maskedDB$$ 이제 우리는 $seed$.

이제 $T$ 다음과 같이 계산할 수 있습니다.

$$ T = MFG1(seed) \oplus maskedDB $$

이제 인코딩 $message$ 차단하고 확인하십시오.

$$T = lhash \mathbin\| PS \| \texttt{01} \mathbin\| Message$$