The 1 kilobyte of extra data to send to start a session sounds like it could have quite a performance impact, especially on slow connections, or occasions where it causes an extra RTT.
Is there really no way to reduce the size of the data needed? After all, even the fastest supercomputers available won't be counting to even a 64 bit (8 byte) number anytime soon, so you would imagine that if the crypto algorithm was perfect then 128 bits should be plenty for key sizes, and 256 bits gives a decent safety margin.