當前位置: 首頁>>代碼示例>>Python>>正文


Python ecdsa.keys方法代碼示例

本文整理匯總了Python中ecdsa.ecdsa.keys方法的典型用法代碼示例。如果您正苦於以下問題:Python ecdsa.keys方法的具體用法?Python ecdsa.keys怎麽用?Python ecdsa.keys使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在ecdsa.ecdsa的用法示例。


在下文中一共展示了ecdsa.keys方法的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。

示例1: _find_candidate_keys

# 需要導入模塊: from ecdsa import ecdsa [as 別名]
# 或者: from ecdsa.ecdsa import keys [as 別名]
def _find_candidate_keys(keys, rrsig):
    candidate_keys = []
    value = keys.get(rrsig.signer)
    if value is None:
        return None
    if isinstance(value, dns.node.Node):
        try:
            rdataset = value.find_rdataset(dns.rdataclass.IN,
                                           dns.rdatatype.DNSKEY)
        except KeyError:
            return None
    else:
        rdataset = value
    for rdata in rdataset:
        if rdata.algorithm == rrsig.algorithm and \
                key_id(rdata) == rrsig.key_tag:
            candidate_keys.append(rdata)
    return candidate_keys 
開發者ID:elgatito,項目名稱:script.elementum.burst,代碼行數:20,代碼來源:dnssec.py

示例2: _find_candidate_keys

# 需要導入模塊: from ecdsa import ecdsa [as 別名]
# 或者: from ecdsa.ecdsa import keys [as 別名]
def _find_candidate_keys(keys, rrsig):
    candidate_keys = []
    value = keys.get(rrsig.signer)
    if value is None:
        return None
    if isinstance(value, thirdparty.dns.node.Node):
        try:
            rdataset = value.find_rdataset(thirdparty.dns.rdataclass.IN,
                                           thirdparty.dns.rdatatype.DNSKEY)
        except KeyError:
            return None
    else:
        rdataset = value
    for rdata in rdataset:
        if rdata.algorithm == rrsig.algorithm and \
                key_id(rdata) == rrsig.key_tag:
            candidate_keys.append(rdata)
    return candidate_keys 
開發者ID:MrH0wl,項目名稱:Cloudmare,代碼行數:20,代碼來源:dnssec.py

示例3: _validate

# 需要導入模塊: from ecdsa import ecdsa [as 別名]
# 或者: from ecdsa.ecdsa import keys [as 別名]
def _validate(rrset, rrsigset, keys, origin=None, now=None):
    """Validate an RRset

    @param rrset: The RRset to validate
    @type rrset: dns.rrset.RRset or (dns.name.Name, dns.rdataset.Rdataset)
    tuple
    @param rrsigset: The signature RRset
    @type rrsigset: dns.rrset.RRset or (dns.name.Name, dns.rdataset.Rdataset)
    tuple
    @param keys: The key dictionary.
    @type keys: a dictionary keyed by dns.name.Name with node or rdataset
    values
    @param origin: The origin to use for relative names
    @type origin: dns.name.Name or None
    @param now: The time to use when validating the signatures.  The default
    is the current time.
    @type now: int
    """

    if isinstance(origin, string_types):
        origin = dns.name.from_text(origin, dns.name.root)

    if isinstance(rrset, tuple):
        rrname = rrset[0]
    else:
        rrname = rrset.name

    if isinstance(rrsigset, tuple):
        rrsigname = rrsigset[0]
        rrsigrdataset = rrsigset[1]
    else:
        rrsigname = rrsigset.name
        rrsigrdataset = rrsigset

    rrname = rrname.choose_relativity(origin)
    rrsigname = rrname.choose_relativity(origin)
    if rrname != rrsigname:
        raise ValidationFailure("owner names do not match")

    for rrsig in rrsigrdataset:
        try:
            _validate_rrsig(rrset, rrsig, keys, origin, now)
            return
        except ValidationFailure:
            pass
    raise ValidationFailure("no RRSIGs validated") 
開發者ID:elgatito,項目名稱:script.elementum.burst,代碼行數:48,代碼來源:dnssec.py

示例4: _validate

# 需要導入模塊: from ecdsa import ecdsa [as 別名]
# 或者: from ecdsa.ecdsa import keys [as 別名]
def _validate(rrset, rrsigset, keys, origin=None, now=None):
    """Validate an RRset

    @param rrset: The RRset to validate
    @type rrset: thirdparty.dns.rrset.RRset or (thirdparty.dns.name.Name, thirdparty.dns.rdataset.Rdataset)
    tuple
    @param rrsigset: The signature RRset
    @type rrsigset: thirdparty.dns.rrset.RRset or (thirdparty.dns.name.Name, thirdparty.dns.rdataset.Rdataset)
    tuple
    @param keys: The key dictionary.
    @type keys: a dictionary keyed by thirdparty.dns.name.Name with node or rdataset
    values
    @param origin: The origin to use for relative names
    @type origin: thirdparty.dns.name.Name or None
    @param now: The time to use when validating the signatures.  The default
    is the current time.
    @type now: int
    """

    if isinstance(origin, string_types):
        origin = thirdparty.dns.name.from_text(origin, thirdparty.dns.name.root)

    if isinstance(rrset, tuple):
        rrname = rrset[0]
    else:
        rrname = rrset.name

    if isinstance(rrsigset, tuple):
        rrsigname = rrsigset[0]
        rrsigrdataset = rrsigset[1]
    else:
        rrsigname = rrsigset.name
        rrsigrdataset = rrsigset

    rrname = rrname.choose_relativity(origin)
    rrsigname = rrname.choose_relativity(origin)
    if rrname != rrsigname:
        raise ValidationFailure("owner names do not match")

    for rrsig in rrsigrdataset:
        try:
            _validate_rrsig(rrset, rrsig, keys, origin, now)
            return
        except ValidationFailure:
            pass
    raise ValidationFailure("no RRSIGs validated") 
開發者ID:MrH0wl,項目名稱:Cloudmare,代碼行數:48,代碼來源:dnssec.py


注:本文中的ecdsa.ecdsa.keys方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。