Hallo allerseits,
ich würde sagen, das Verfahren unter Wikipedia entspricht dem Textbook RSA.
Ich habe nun einen Ciphertext c abgefangen, und weiß, dass dieser durch
c= m^e mod N berechnet wurde. Der Klartext m ist mir unbekannt.
Durch eine Multiplikation lässt sich ein zweiter Ciphertext erzeugen, der von m abhängig ist:
c' = c* (m')^e = (m* m')^e mod N.
Dies ist doch die Malleability?!
Nun zu meiner Frage: In welchem Scenario ist dieser Angriff problematisch?
Da ich keine Informationen über "m" habe, (außer vielleicht den Kontext: Bank, eMail, Vertrag...) ist eine Multiplikation doch bei den meisten Anwendungen problematisch? Ich denke, dass solch eine Modifikation problematisch ist, wenn die Nachricht m in einen Schriftsatz konvertiert wird und in einer Sprache interpretiert werden muss. (Bspw. deutsch)
Bin ich da grade zu engstirnig und denke nicht im angemessenen Umfang darüber nach, oder ist dies tatsächlich so?
Wenn ich jetzt diese Schwachstelle ausbessern will, denke ich zunächst ans Padding der Nachricht. Hänge ich z.B. 0111111 an, erhalte ich nach einer Multiplikation eine Abweichung davon und kann die Nachricht nicht mehr authentifizieren. Generell vermute ich aber, dass man hier einen Hashwert an m anhängen könnte? c=(m || H(m)) ^e mod N ?
Kann mir dies jemand bestätigen? oder ein Verfahren aus der Praxis dazu nennen?
Viele Grüße und vielen Dank
ich würde sagen, das Verfahren unter Wikipedia entspricht dem Textbook RSA.
Ich habe nun einen Ciphertext c abgefangen, und weiß, dass dieser durch
c= m^e mod N berechnet wurde. Der Klartext m ist mir unbekannt.
Durch eine Multiplikation lässt sich ein zweiter Ciphertext erzeugen, der von m abhängig ist:
c' = c* (m')^e = (m* m')^e mod N.
Dies ist doch die Malleability?!
Nun zu meiner Frage: In welchem Scenario ist dieser Angriff problematisch?
Da ich keine Informationen über "m" habe, (außer vielleicht den Kontext: Bank, eMail, Vertrag...) ist eine Multiplikation doch bei den meisten Anwendungen problematisch? Ich denke, dass solch eine Modifikation problematisch ist, wenn die Nachricht m in einen Schriftsatz konvertiert wird und in einer Sprache interpretiert werden muss. (Bspw. deutsch)
Bin ich da grade zu engstirnig und denke nicht im angemessenen Umfang darüber nach, oder ist dies tatsächlich so?
Wenn ich jetzt diese Schwachstelle ausbessern will, denke ich zunächst ans Padding der Nachricht. Hänge ich z.B. 0111111 an, erhalte ich nach einer Multiplikation eine Abweichung davon und kann die Nachricht nicht mehr authentifizieren. Generell vermute ich aber, dass man hier einen Hashwert an m anhängen könnte? c=(m || H(m)) ^e mod N ?
Kann mir dies jemand bestätigen? oder ein Verfahren aus der Praxis dazu nennen?
Viele Grüße und vielen Dank
