docs: private Nonce verifyUnknownNonce(final String nonce, final int nonceCount) {
          byte[] complete;
          int offset;
          int length;
          try {
              ByteBuffer decode = FlexBase64.decode(nonce);
              complete = decode.array();
              offset = decode.arrayOffset();
              length = decode.limit() - offset;
          } catch (IOException e) {
              throw MESSAGES.invalidBase64Token(e);
          }
  
          int timeStampLength = complete[offset + 8];
          // A sanity check to try and verify the sizes we expect from the arrays are correct.
          if (hashLength > 0) {
              int expectedLength = 9 + timeStampLength + hashLength;
              if (length != expectedLength) {
                  throw MESSAGES.invalidNonceReceived();
              } else if (timeStampLength + 1 >= length)
                  throw MESSAGES.invalidNonceReceived();
          }
  
          byte[] prefix = new byte[8];
          System.arraycopy(complete, offset, prefix, 0, 8);
          byte[] timeStampBytes = new byte[timeStampLength];
          System.arraycopy(complete, offset + 9, timeStampBytes, 0, timeStampBytes.length);
  
          String expectedNonce = createNonce(prefix, timeStampBytes);
  
          if (expectedNonce.equals(nonce)) {
              try {
                  long timeStamp = Long.parseLong(new String(timeStampBytes, StandardCharsets.UTF_8));
  
                  return new Nonce(expectedNonce, timeStamp, nonceCount);
              } catch (NumberFormatException dropped) {
              }
          }
  
          return null;
      }