C# RSA encryptie/decryptie fout via POST

Pagina: 1
Acties:

Onderwerpen


  • Guldan
  • Registratie: Juli 2002
  • Laatst online: 11-07 12:38

Guldan

Thee-Nerd

Topicstarter
Ik heb het volgende probleem, wat ik wil is een rsa ge-encrypte waarde oversturen via een formulier. Dit gebeurd vanwege de lengte via een Post. ik gebruik daarvoor de volgende code:

C#:
1
2
3
4
byte[] toEncodeAsBytes = Encoding.ASCII.GetBytes("data=" + Uri.EscapeDataString("versleuteldedata"));
WebBrowser b = new WebBrowser();
            b.Visible = false;
            b.Navigate(new Uri("http://127.0.0.1:51935/blaat.aspx"), "_blank", toEncodeAsBytes, "Content-Type: application/x-www-form-urlencoded\r\n");


Als ik op de blaat.aspx pagina kom lees ik die waarden uit via de Request["data"] methode. Wanneer ik deze door de decrypter gooi dan krijg ik een "Padding is invalid and cannot be removed melding". Het gaat mis op de regel waarbij de string naar Base64 geconverteerd wordt. Echter wanneer ik de string 'versleuteldedata' rechtstreeks in de code plak werkt het wel. Kijk ik in de debugger dan zijn de strings ook exact gelijk.(zovel via de post als hard in de code).

Hierdoor vermoed ik dat het zit in de codering van de string, echter zou ik niet weten wat voor formaat deze string moet zijn. zoeken op versturen van RSA geencrypte data via de post levert onrelevante hits op. Ik heb uitgesloten dat de fout in de RSA library aangezien daar de rest van de applicatie ook gebruik van maakt zonder problemen. Het gaat ook altijd goed, behalve als ik het via get/post verstuur. Enige hulp zou zeer welkom zijn :).

You know, I used to think it was awful that life was so unfair. Then I thought, wouldn't it be much worse if life were fair, and all the terrible things that happen to us come because we actually deserve them?


  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 16:38

TeeDee

CQB 241

En wat zegt bijvoorbeeld een tool als Fiddler over alle heen en weer verzonden data?

Heart..pumps blood.Has nothing to do with emotion! Bored


  • stfn345
  • Registratie: Januari 2000
  • Laatst online: 14:17
De string is exact gelijk zeg je. Heb je dit op het oog gedaan of op basis van de byte waarden die worden verzonden? Het kan nl. door een newline/return of een ander special character veroorzaakt worden.

  • farmertjes
  • Registratie: Maart 2010
  • Laatst online: 02-06 20:29
Staat er iets in de encryptiecode over padding? Bijvoorbeeld zoiets:

rijndaelAlg.Padding = PaddingMode.PKCS7;

en staat dat toevallig ge-comment?

flickr


  • Korben
  • Registratie: Januari 2001
  • Laatst online: 22-01-2024

Korben

() => {};

Probeer eens het volgende:

C#:
1
byte[] toEncodeAsBytes = Encoding.ASCII.GetBytes("data=" + HttpUtility.UrlEncode("versleuteldedata"));

.oisyn: Échte programmeurs haten PHP met een passie. Ben jij soms geen echte programmeur?


  • Guldan
  • Registratie: Juli 2002
  • Laatst online: 11-07 12:38

Guldan

Thee-Nerd

Topicstarter
@farmertjes:

Ik heb de padding ook al in de klasse op pkcs7 gezet echter hielp dat niets.

@razorhead,Teedee en korben

Ik zal morgen dat eens bekijken/proberen.

You know, I used to think it was awful that life was so unfair. Then I thought, wouldn't it be much worse if life were fair, and all the terrible things that happen to us come because we actually deserve them?

Pagina: 1