public static byte[] generateInputOOBAuthenticationValue(final InputOOBAction inputOOBAction, final byte[] input) {
        final int authLength = 16;
        final ByteBuffer buffer = ByteBuffer.allocate(authLength).order(ByteOrder.BIG_ENDIAN);
        switch (inputOOBAction) {
            case PUSH:
            case TWIST:
            case INPUT_NUMERIC:
                buffer.position(8);
                final long longValue = Long.valueOf(MeshParserUtils.bytesToHex(input, false), 16);
                buffer.putLong(longValue);
                return buffer.array();
            case INPUT_ALPHA_NUMERIC:
                buffer.put(input);
                return buffer.array();
            default:
                return null;
        }
    }
Generates the Input OOB Authentication value

@param inputOOBAction selected {@link InputOOBAction}
@param input          Input authentication
@return 128-bit authentication value
mesh/src/main/java/no/nordicsemi/android/mesh/utils/InputOOBAction.java