code: private static long getCipherBlockUpperBound(final long rightmostBytePosition) {
          long cipherBlockSize = JceEncryptionConstants.SYMMETRIC_CIPHER_BLOCK_SIZE;
          long offset = cipherBlockSize - (rightmostBytePosition % cipherBlockSize);
          long upperBound = rightmostBytePosition + offset + cipherBlockSize;
          return upperBound < 0 ? Long.MAX_VALUE : upperBound;
      }
docs: Takes the position of the rightmost desired byte of a user specified
  range and returns the position of the end of the following cipher block;
  or {@value Long#MAX_VALUE} if the resultant position has a value that
  exceeds {@value Long#MAX_VALUE}.