private byte[] ISetupKeys(plBufferedStream s, int gval) { BigNum b = BigNum.Random(512); BigNum n = new BigNum(fN); BigNum x = new BigNum(fX); // Calculate seeds BigNum client_seed = x.PowMod(b, n); BigNum server_seed = new BigNum(gval).PowMod(b, n); byte[] cliSeed = client_seed.ToLittleArray(); IWriteNetClientConnect(s, server_seed.ToLittleArray()); // Dispose of this crap... b.Dispose(); n.Dispose(); x.Dispose(); client_seed.Dispose(); server_seed.Dispose(); return cliSeed; }