1. A method for providing communication protocol layer independent security for data transmitted between a first process, executing on a first network node, and a second process, executing on a second network node, wherein the first network node and the second network node each support at least one common communication protocol layer, the method comprising the steps of: establishing a Java secure channel between the first network node and the second network node; establishing a first Java stream between the first process and the Java secure channel; establishing a second Java stream between the second process and the Java secure channel; in response to the data being written to the first Java stream, encrypting the data to generate encrypted data, the encrypting of the data being performed independent of any communication protocol layers used to transport the encrypted data from the first network node to the second network node; causing the encrypted data to be transmitted from the first network node to the second network node according to the at least one communication protocol layer supported by the first and second network nodes; and in response to the encrypted data being read from the second Java stream, decrypting the encrypted data to recover decrypted data which is identical to the data on the first network node before the data was written to the first Java stream, the decrypting of the encrypted data being performed independent of any communication protocol layers used to transport the encrypted data from the first network node to the second network node.