code: protected byte[] initPlainData(int payloadSize, @Nullable byte[] initVector) {
      byte[] plainData = new byte[OVERHEAD_SIZE + payloadSize];
  
      if (initVector == null) {
        ByteBuffer byteBuffer = ByteBuffer.wrap(plainData);
        byteBuffer.putLong(INITV_TIMESTAMP_OFFSET, millisToSecsAndMicros(System.currentTimeMillis()));
        byteBuffer.putLong(INITV_SERVERID_OFFSET, ThreadLocalRandom.current().nextLong());
      } else {
        System.arraycopy(initVector, 0, plainData, INITV_BASE, min(INITV_SIZE, initVector.length));
      }
  
      return plainData;
    }
docs: Packages plaintext payload for encryption; returns {@code initVector || payload || zeros:4}.