compute the icq password

This form will compute your real password captured with any network logger as ethereal or tcpdump. For instance in ethereal would have to find the packet containing the "encrypted" password. Afterwards paste the hex-bytes you find it in the form below.

Of course this is meant for educational purpose only. In the first place I wrote this script to a) get used to java script and b) to have a fast way to compute passwords given in hex and "crypted" with the so called "roast array".
This roast array is used to compute the password. Take the first byte and XOR it with the first byte in the roast array and you get the first hex number of your password. Take the next password byte and XOR it to the next roast array number ... and so on
roast_array="F3 26 81 C4 39 86 DB 92 71 A3 B9 E6 53 7A 95 7C"
Asking yourself why they did "encryption" at all? Here a few reasons: But why didn't they include a better security mechanism you ask youself?
Are there solutions to this problem? Yes there are altough you won't like them. First would be not using icq while you're in a network you can't trust the gateway (as for example on a lan-party or at a _friend_). But you could use a vpn or a ssh tunnel with port forwarding and bridge the signal flow from your pc to a server in the internet you trust (in most cases this has to be your computer).
please paste your key in hex "83 47 F2 B7 4E E9 A9 F6"


Your password is:
How can I get the hexdump output? I've tried also ngrep with this command:
ngrep -d eth1 "Product of" -x
...
  2a 01 1f 0e 00 84 00 00    00 01 00 01 00 09 33 33    *.............22
  33 33 33 33 33 33 33 00    02 00 06 9f 4f ef b1 41    2222222.....O..A
  fe 00 03 00 33 49 43 51    20 49 6e 63 2e 20 2d 20    ....3ICQ Inc. -
  50 72 6f 64 75 63 74 20    6f 66 20 49 43 51 20 28    Product of ICQ (
...
In Green: number of password bytes
In Red: password xored to roast array
ICQ Number: 222222222 with password: linuxx *hehe* ;-)

Thanks to: http://iserverd.khstu.ru/oscar/cli_ident.html