static byte[] toByteArray(String bytesStr, int byteLength) {
        if (bytesStr == null) {
            return new byte[byteLength];
        }
        if (bytesStr.length() != (byteLength * 2)) {
            return null;
        }
        final byte[] result = new byte[byteLength];
        for (int index = 0; index < byteLength; index++) {
            final int offset = index * 2;
            final int value = Integer.parseInt(bytesStr.substring(offset, offset + 2), 16);
            result[index] = (byte) value;
        }
        return result;
    }