### Question:
SecureRandomSessionIDGenerator implements SessionIDGenerator { @Override public String generate() { final byte[] bytes = new byte[this.length]; this.secureRandom.nextBytes(bytes); final String sessionId = Base64.getUrlEncoder().encodeToString( bytes); return sessionId.substring(0, this.length); } SecureRandomSessionIDGenerator(final SecureRandom secureRandom,
			final int length); @Override String generate();  }### Answer:
@Test public void test() { final SecureRandom secureRandom = new SecureRandom(); IntStream .range(0, 100) .forEach( it -> { final SecureRandomSessionIDGenerator secureRandomSessionIDGenerator = new SecureRandomSessionIDGenerator( secureRandom, 32); final String id = secureRandomSessionIDGenerator .generate(); System.out.println(id); assertThat(id.length(), is(32)); }); }