11.07.2015 Views

Improving Web Application Security: Threats and - CGISecurity

Improving Web Application Security: Threats and - CGISecurity

Improving Web Application Security: Threats and - CGISecurity

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

362 Part III: Building Secure <strong>Web</strong> <strong>Application</strong>sClientProxyHost ProcessObjectFormatter SinkFormatter SinkCustomEncryption SinkCustomEncryption SinkSinkSinkTransport SinkChannelTransport SinkChannelChannelFigure 13.4Using custom encryption sinksAn encryption sink is a custom channel sink that you can use when you use a customhost with the TcpChannel. On the client side, the sink encrypts request data before itis sent to the server <strong>and</strong> decrypts any encrypted response data received from theserver. On the server side, the sink decrypts the request data <strong>and</strong> then encryptsresponse data.Implementing a Custom Encryption SinkThe sink should use asymmetric encryption to exchange session level encryptionkeys. After exchanging a session key, the client <strong>and</strong> server maintain a copy of the key<strong>and</strong> either side may choose to create a new key at any time during the lifetime of thechannel sink. The server should maintain a different key for each client itcommunicates with.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!