当前位置: 首页>>代码示例>>Python>>正文


Python SigningKey.from_secret_exponent方法代码示例

本文整理汇总了Python中ecdsa.SigningKey.from_secret_exponent方法的典型用法代码示例。如果您正苦于以下问题:Python SigningKey.from_secret_exponent方法的具体用法?Python SigningKey.from_secret_exponent怎么用?Python SigningKey.from_secret_exponent使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在ecdsa.SigningKey的用法示例。


在下文中一共展示了SigningKey.from_secret_exponent方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: recover_nonce_reuse

# 需要导入模块: from ecdsa import SigningKey [as 别名]
# 或者: from ecdsa.SigningKey import from_secret_exponent [as 别名]
def recover_nonce_reuse(self, other):
        sig2 = other.sig  # rename it
        h2 = other.h  # rename it
        # precalculate static values
        z = self.h - h2
        r_inv = inverse_mod(self.sig.r, self.n)
        #
        # try all candidates
        #
        for candidate in (self.sig.s - sig2.s,
                          self.sig.s + sig2.s,
                          -self.sig.s - sig2.s,
                          -self.sig.s + sig2.s):
            k = (z * inverse_mod(candidate, self.n)) % self.n
            d = (((self.sig.s * k - self.h) % self.n) * r_inv) % self.n
            signingkey = SigningKey.from_secret_exponent(d, curve=self.curve)
            if signingkey.get_verifying_key().pubkey.verifies(self.h, self.sig):
                self.signingkey = signingkey
                self.k = k
                self.x = d
                return self
        assert False  # could not recover private key 
开发者ID:tintinweb,项目名称:ecdsa-private-key-recovery,代码行数:24,代码来源:__init__.py

示例2: __init__

# 需要导入模块: from ecdsa import SigningKey [as 别名]
# 或者: from ecdsa.SigningKey import from_secret_exponent [as 别名]
def __init__(self, wif=None, secret_exponent=None):
        """With no parameters a random key is created

        Parameters
        ----------
        wif : str, optional
            the key in WIF of WIFC format (default None)
        secret_exponent : int, optional
            used to create a specific key deterministically (default None)
        """

        if not secret_exponent and not wif:
            self.key = SigningKey.generate(curve=SECP256k1)
        else:
            if wif:
                self._from_wif(wif)
            elif secret_exponent:
                self.key = SigningKey.from_secret_exponent(secret_exponent,
                                                           curve=SECP256k1) 
开发者ID:karask,项目名称:python-bitcoin-utils,代码行数:21,代码来源:keys.py

示例3: __init__

# 需要导入模块: from ecdsa import SigningKey [as 别名]
# 或者: from ecdsa.SigningKey import from_secret_exponent [as 别名]
def __init__(self, secret_exponent, network=BitcoinMainNet,
                 *args, **kwargs):
        if not isinstance(secret_exponent, six.integer_types):
            raise ValueError("secret_exponent must be a long")
        super(PrivateKey, self).__init__(network=network, *args, **kwargs)
        self._private_key = SigningKey.from_secret_exponent(
            secret_exponent, curve=SECP256k1) 
开发者ID:BlockIo,项目名称:multimerchant-python,代码行数:9,代码来源:keys.py

示例4: __init__

# 需要导入模块: from ecdsa import SigningKey [as 别名]
# 或者: from ecdsa.SigningKey import from_secret_exponent [as 别名]
def __init__(self, name, privkey=None):
        """
        A wallet object is initialized by a private key.
        """
        self.name = name
        if privkey is None:
            secexp = randrange_from_seed__trytryagain(os.urandom(SECP256k1.baselen), SECP256k1.order)
            self.privkey = SigningKey.from_secret_exponent(secexp, curve=SECP256k1)
        else:
            self.privkey = privkey
        self.pubkey = self.privkey.get_verifying_key()
        self.address = tools.make_address([self.pubkey], 1) 
开发者ID:halilozercan,项目名称:halocoin,代码行数:14,代码来源:wallet.py


注:本文中的ecdsa.SigningKey.from_secret_exponent方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。