def __init__(self, data): self.p = p = long(data["p"], 16) self.q = q = long(data["q"], 16) self.g = g = long(data["g"], 16) self.y = y = long(data["y"], 16) if "x" not in data: self.x = None self.dsa = _DSA.load_pub_key_params(int2mpint(p), int2mpint(q), int2mpint(g), int2mpint(y)) else: self.x = x = long(data["x"], 16) self.dsa = _DSA.load_key_params(int2mpint(p), int2mpint(q), int2mpint(g), int2mpint(y), int2mpint(x))