def check_dersig (self, sig0): sig1, size = decode (sig0) if size != len(sig0): raise BadDER (sig0) elif not (len(sig1) == 2 and type(sig1[0]) is long and type(sig1[1]) is long): raise BadDER (sig0) else: [r, s] = sig1 if SEQUENCE (INTEGER (r), INTEGER (s)) != sig0: raise BadDER (sig0) elif self.low_s and not (1 <= s <= 0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D576E7357A4501DDFE92F46681B20A0): raise BadDER (sig0) elif not (1 <= r <= 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364140): raise BadDER (sig0)
def check_dersig(self, sig0): sig1, size = decode(sig0) if size != len(sig0): raise BadDER(sig0) elif not (len(sig1) == 2 and type(sig1[0]) is long and type(sig1[1]) is long): raise BadDER(sig0) else: [r, s] = sig1 if SEQUENCE(INTEGER(r), INTEGER(s)) != sig0: raise BadDER(sig0) elif self.low_s and not ( 1 <= s <= 0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D576E7357A4501DDFE92F46681B20A0 ): raise BadDER(sig0) elif not ( 1 <= r <= 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364140 ): raise BadDER(sig0)
def get_keys (der): d = decode (der) pri = bytes (d[0][1]) pub = unbin (d[0][3]._value) return pri, pub
def get_keys (der): d = decode (der) pri = d[0][1] pub = d[0][3][2][0][1][1] return pri, pub