Aiuto per conversione byte.Parse in ruby

Ciao, devo tradurre un algoritmo da C# in Ruby.
Vorrei chiedervi un aiuto per tradurre un paio di istruzioni…

string value = “sequenza_di_caratteri”;
Encoding ecAscii = Encoding.GetEncoding(“Windows-1252”);

Byte[] bWordBytes = ecAscii.GetBytes(value);

int iAsciiInt = 112
Byte[] bappoByte = new Byte[1];
bappoByte[0] = byte.Parse(iAsciiInt.ToString());
string out = ecAscii.GetString(bappoByte);

potete aiutarmi?

On 18 May 2011 20:45, Mattia xxx [email protected] wrote:

Ciao, devo tradurre un algoritmo da C# in Ruby.
Vorrei chiedervi un aiuto per tradurre un paio di istruzioni…

Ciao Mattia, secondo me meglio se prendi l’algoritmo e lo implementi
in Ruby lasciando perdere la traduzione “letterale” da C#.
Non detto infatti che la sintassi di C# possa essere ricondotta
“pari pari” a codice Ruby.

Magari se ci spieghi il problema che l’algoritmo risolve possiamo
darti una mano :slight_smile:
Paolo

“… static analysis is fun, again!”

life from an application security guy ~> http://thesp0nge.com

Paolo P. wrote in post #999584:

On 18 May 2011 20:45, Mattia xxx [email protected] wrote:

Ciao Mattia, secondo me meglio se prendi l’algoritmo e lo implementi
in Ruby lasciando perdere la traduzione “letterale” da C#.
Non detto infatti che la sintassi di C# possa essere ricondotta
“pari pari” a codice Ruby.

Magari se ci spieghi il problema che l’algoritmo risolve possiamo
darti una mano :slight_smile:
Paolo

“… static analysis is fun, again!”

life from an application security guy ~> http://thesp0nge.com

Ciao,
si tratta di un algoritmo di cifratura di cui non conosco le specifiche.
L’algoritmo è abbastanza lungo, ma gli unici punti di cui volevo essere
sicuro sono quelli sopra riportati.

Partendo dalla stringa crittografata, l’algoritmo ricava la sequenza di
bytes con Byte[] bWordBytes = ecAscii.GetBytes(value).
Io l’ho tradotta in questo modo:

bWordBytes = []
value.each_byte { |byte| bWordBytes << byte }

Poi viene calcolato un numero intero, salvato nella variabile iAsciiInt.
A questo punto vengono eseguite le 2 istruzioni:

bappoByte[0] = byte.Parse(iAsciiInt.ToString());
string out = ecAscii.GetString(bappoByte);

Ho cercato sulla documentazione msdn ma non riesco a comprendere
l’utilità della funzione byte.Parse()… infatti sembra che, a partire
da un intero sotto forma di stringa (es. “65”), restituisce il byte
associato al carattere ascii… quindi “65” corrisponde al carattere A.
Il byte è di nuovo 65…

successivamente con GetStrin() da 65 ottiene ancora “A”…

grazie della risposta!