Hi, 
<div><br></div><div>I'm trying to write an Erlang WebSocket client and server against the latest spec. It requires message masking, which simply xor the whole message using a 4 bytes key.  <a href="http://tools.ietf.org/html/draft-ietf-hybi-thewebsocketprotocol-10#page-20">Here</a> is the reference. </div>

<div><br></div><div>I did some unit test on my code and felt that it's slow (it can process about  24M byte/s) on a virtual machine. HiPE can double the performance but still not quite enough. So I wrote an NIF to handle this. The speed is about 10~15x faster. Not only that, I feel that the C code is easier to write. Maybe it's due to my inexperienced with Erlang yet.</div>

<div><br></div><div>Here is the <a href="https://gist.github.com/1099160">Erlang </a>and <a href="https://gist.github.com/1099154">NIF </a>code, FYI.</div><div><br></div><div>Thanks</div><div>Andy</div>