code: def _cross_check(self, pub_key):
          
          if self.curve_name != pub_key.curve.name:
              raise ValueError(
                  "The curve in private key {} and in algorithm {} don't "
                  "match".format(pub_key.curve.name, self.curve_name))
docs: In Ecdsa, both the key and the algorithm define the curve.
          Therefore, we must cross check them to make sure they're the same.
  
          :param key:
          :raises: ValueError is the curves are not the same