code:     public byte[] asSerializedByteArray() {
          int kdfInfo = cipherText_.getKDFInfo();
          debug("asSerializedByteArray: kdfInfo = " + kdfInfo);
          long timestamp = cipherText_.getEncryptionTimestamp();
          String cipherXform = cipherText_.getCipherTransformation();
          assert cipherText_.getKeySize() < Short.MAX_VALUE :
                              "Key size too large. Max is " + Short.MAX_VALUE;
          short keySize = (short) cipherText_.getKeySize();
          assert cipherText_.getBlockSize() < Short.MAX_VALUE :
                              "Block size too large. Max is " + Short.MAX_VALUE;
          short blockSize = (short) cipherText_.getBlockSize();
          byte[] iv = cipherText_.getIV();
          assert iv.length < Short.MAX_VALUE :
                              "IV size too large. Max is " + Short.MAX_VALUE;
          short ivLen = (short) iv.length;
          byte[] rawCiphertext = cipherText_.getRawCipherText();
          int ciphertextLen = rawCiphertext.length;
          assert ciphertextLen >= 1 : "Raw ciphertext length must be >= 1 byte.";
          byte[] mac = cipherText_.getSeparateMAC();
          assert mac.length < Short.MAX_VALUE :
                              "MAC length too large. Max is " + Short.MAX_VALUE;
          short macLen = (short) mac.length;
          
          byte[] serializedObj = computeSerialization(kdfInfo,
                                                      timestamp,
                                                      cipherXform,
                                                      keySize,
                                                      blockSize,
                                                      ivLen,
                                                      iv,
                                                      ciphertextLen,
                                                      rawCiphertext,
                                                      macLen,
                                                      mac
                                                     );
          
          return serializedObj;
      }
      
      /**
       * Return the actual {@code CipherText} object.
       * @return The {@code CipherText} object that we are serializing.
       */
  