The Dynamic Symmetric Key Provisioning Protocol (DSKPP) is a clientserver protocol for initialization (and configuration) of symmetric keys to locally and remotely accessible cryptographic modules. The protocol can be run with or without private key capabilities in the cryptographic modules and with or without an established public key infrastructure. Two variations of the protocol support multiple usage scenarios. With the four-pass variant@ keys are mutually generated by the provisioning server and cryptographic module; provisioned keys are not transferred over-the-wire or over-the-air. The two-pass variant enables secure and efficient download and installation of pregenerated symmetric keys to a cryptographic module.