Obtendo o erro java.text.ParseException: Data não analisável: (no deslocamento 0), mesmo que o formato da data simples e o valor da sequência sejam idênticos

Estou sempre recebendo a exceção de análise, mesmo que o formato a ser verificado e o valor da string sejam os mesmos. Aqui está o código:

String format = "EEE MMM dd HH:mm:ss z yyyy";
String value = "Mon Sep 18 10:30:06 MST 2017";
public static boolean isValidFormat(String format, String value) {
    Date date = null;
    try {
        SimpleDateFormat sdf = new SimpleDateFormat(format);
        date = sdf.parse(value); // here it breaks
        if (!value.equals(sdf.format(date))) {
            date = null;
        }
    } catch (ParseException ex) {
        ex.printStackTrace(); //java.text.ParseException: Unparseable date: 
                                "Mon Sep 18 10:30:06 MST 2017" (at offset 0)
    }
    return date != null;
}

questionAnswers(3)

yourAnswerToTheQuestion