@Test
    public void testCreateSaltedPassword() throws Exception
    {
        // Setup test fixture.
        final byte[] salt = StringUtils.decodeHex("4125c247e43ab1e93c6dff76");
        final String password = "pencil";
        final int iterations = 4096;

        // Execute system under test.
        final byte[] result = ScramUtils.createSaltedPassword(salt, password, iterations);

        // Verify results.
        assertArrayEquals(StringUtils.decodeHex("1d96ee3a529b5a5f9e47c01f229a2cb8a6e15f7d"), result);
    }
Verifies the implementation of {@link ScramUtils#createSaltedPassword(byte[], String, int)} by using test vectors
that are provided by the XSF.

@see <a href="https://wiki.xmpp.org/web/SASL_Authentication_and_SCRAM">XSF SCRAM test vectors.</a>
xmppserver/src/test/java/org/jivesoftware/openfire/auth/ScramUtilsTest.java