etric key be generated? What will decide the size of the symmetric key? How will IVs be generated? For some algorithms, what will decide the size of the block? What mode of the symmetric algorithm will be used? What wider provisions must be set up at both communicating parties in order to allow the possibil- ity of safe recovery of the session if cryptographic errors or losses prohibit the correct decryption of some block? For instance, will one have to go back and reconstitute the stack buffers with prior ciphertext and previously scheduled subkeys in order to recover the session (and if so, up to what extent) or should a system drop a session altogether? How is all of this communicated to and enforced on the other party? What will be the session key exchange protocol? Downloaded from Digital Engineering Library @ McGraw-Hill (www.digitalengineeringlibrary.com) Copyright © 2004 The McGraw-Hill Companies. All rights reserved. Any use is subject to the Terms of Use as given at the website. SECURITY COPROCESSORS SECURITY COPROCESSORS 385 How will the communicating parties ensure that none of the generated symmetric keys are weak? How will the authentication be handled? Will it be unidirectional or bidirectional? Will it be necessary to certify either party's credentials? Will it be necessary to perform integrity checking and other security mechanisms? If so, which ones? Will it be necessary to rekey the underlying symmetric algorithm periodically? If so, how often will rekeying have to be reinitiated? Based on which protocol? How are rekeyed IVs generated and communicated to other parties every time? How are IVs generated and communicated to the other party every time? Which one of the communicating parties will initiate it? Who enforces the mechanism? Will the communicating parties spend the rest of their lives trying to handshake a multitude of pro- tocols in order to set up a meaningful session or will they eventually time out and drop the effort? Under what conditions does this occur and what event logging take