Encryption hardware built on a network interface card is provided by the
present invention for encrypting data sent from a computer to a network. A block
of data is retrieved from the network interface card, encrypted using encryption
hardware, and inserted into a data packet. A flag is set in the packet header to
indicate the encryption type. If the data packet is received by a system equipped
with similar network interface card, decryption algorithm indicated by the flag
is applied to the data using decryption hardware on the network interface card.
The decrypted data is sent to re-assembly logic to rebuild the original message
for the transmitted packets. The original message is sent to a computer memory
via a system bus for further processing. If the data packet is received by a system
not equipped with the network interface card, suitable software is provided to
decrypt the data packet.