public DSAPublicKey(InputStream is) throws IOException, CryptFormatException { DSAGroup g = (DSAGroup) DSAGroup.read(is); if(g == Global.DSAgroupBigA) g = null; group = g; y = Util.readMPI(is); if(y.compareTo(getGroup().getP()) > 0) throw new IllegalArgumentException("y must be < p but y=" + y + " p=" + getGroup().getP()); }