A computer-implemented method, comprising: encrypting , by a sender computer, payload data comprising a plurality of payload elements using protocol data and a plurality of payload encryption keys to generate encrypted payload data, wherein encrypting the payload data comprises encrypting each payload element of the plurality of payload elements using a corresponding payload encryption key to generate a plurality of encrypted payload elements, wherein the protocol data comprises: (i) a cipher suite; and (ii) a plurality of data-protocol mappings respectively corresponding to the plurality of payload elements, each of the plurality of data-protocol mappings comprising a key identifier and an algorithm identifier, the key identifier identifying the corresponding payload encryption key used to encrypt each payload element, and the algorithm identifier identifying a respective cryptographic algorithm used to encrypt each payload element; encrypting , by the sender computer, the cipher suite using a first protocol encryption key to generate an encrypted cipher suite; encrypting , by the sender computer, the data-protocol mappings using the cipher suite and a second protocol encryption key to generate encrypted data-protocol mappings; and transmitting , by the sender computer to a receiver computer, a message comprising the plurality of encrypted payload elements, the encrypted cipher suite and the encrypted data-protocol mappings. encrypting , by a sender computer, payload data comprising a plurality of payload elements using protocol data and a plurality of payload encryption keys to generate encrypted payload data, wherein encrypting the payload data comprises encrypting each payload element of the plurality of payload elements using a corresponding payload encryption key to generate a plurality of encrypted payload elements, wherein the protocol data comprises: (i) a cipher suite; and (ii) a plurality of data-protocol mappings respectively corresponding to the plurality of payload elements, each of the plurality of data-protocol mappings comprising a key identifier and an algorithm identifier, the key identifier identifying the corresponding payload encryption key used to encrypt each payload element, and the algorithm identifier identifying a respective cryptographic algorithm used to encrypt each payload element; (i) a cipher suite; and (ii) a plurality of data-protocol mappings respectively corresponding to the plurality of payload elements, each of the plurality of data-protocol mappings comprising a key identifier and an algorithm identifier, the key identifier identifying the corresponding payload encryption key used to encrypt each payload element, and the algorithm identifier identifying a respective cryptographic algorithm used to encrypt each payload element; encrypting , by the sender computer, the cipher suite using a first protocol encryption key to generate an encrypted cipher suite; encrypting , by the sender computer, the data-protocol mappings using the cipher suite and a second protocol encryption key to generate encrypted data-protocol mappings; and transmitting , by the sender computer to a receiver computer, a message comprising the plurality of encrypted payload elements, the encrypted cipher suite and the encrypted data-protocol mappings. <EOS>