public boolean[] arePasswordsInitialised() {
        boolean[] arePasswordsInitialised = new boolean[4];
        byte[] response = null;

        try {
            response = worker.getResponse(worker.select(DatabaseOfEF.MF.getFID()));

            for (int i = 0; i < 4; i++) {
                String binaryForm;
                int j = response[18 + i]; //position of PIN1/PUK1/PIN2/PUK2
                binaryForm = Integer.toBinaryString(j).substring(24);
                if (binaryForm.charAt(0) == '0') {
                    arePasswordsInitialised[i] = false;
                } else {
                    arePasswordsInitialised[i] = true;
                }
            }
        } catch (Exception ex) {
            Logger.getLogger(CardManager.class.getName()).log(Level.SEVERE, null, ex);
        }

        return arePasswordsInitialised;
    }