Esempio n. 1
0
    def hash(self):
        """
        Coordinates hash.

        *Note: To be replaced with the __hash__ method.*
        """

        return hash_alg(self.json.encode('utf-8')).hexdigest()
 def hash(self):
     _raw_blk = str(self.index)
     _raw_blk += str(self.timestamp)
     _raw_blk += str(self.data)
     _raw_blk += str(self.prev_hash)
     _hash = hash_alg()
     _hash.update(_raw_blk.encode('utf-8'))
     return _hash.hexdigest()
Esempio n. 3
0
def hmac(K, m):

    if len(K) > block_size:
        k = hash_alg(K).digest()
    else:
        k = K

    k = k.ljust(block_size, b'\0')

    o_key_pad = k.translate(opad)  # xor(k, k.translate(opad))
    i_key_pad = k.translate(ipad)  # xor(k, k.translate(ipad))

    inner = hash_alg(i_key_pad)
    outer = hash_alg(o_key_pad)

    inner.update(m)
    outer.update(inner.digest())

    return outer.digest()
Esempio n. 4
0
    def hash(self):
        """ hash for this node, used in caching and to determine equality. """

        # deepcopy so that the cached definition property is not modified by the deletes below
        d = deepcopy(self.definition)

        # omit version
        if "podpac_version" in d:
            del d["podpac_version"]

        # omit style in every node
        for k in d:
            if "style" in d[k]:
                del d[k]["style"]

        s = json.dumps(d, separators=(",", ":"), cls=JSONEncoder)
        return hash_alg(s.encode("utf-8")).hexdigest()
Esempio n. 5
0
#!/usr/bin/env python3
# from hashlib import sha256 as hash_alg
from hashlib import sha1 as hash_alg
import codecs
import secrets
import base64

block_size = hash_alg().block_size

opad = bytes((x ^ 0x5c) for x in range(2**8))
ipad = bytes((x ^ 0x36) for x in range(2**8))


# RFC 2104 compliant
def hmac(K, m):

    if len(K) > block_size:
        k = hash_alg(K).digest()
    else:
        k = K

    k = k.ljust(block_size, b'\0')

    o_key_pad = k.translate(opad)  # xor(k, k.translate(opad))
    i_key_pad = k.translate(ipad)  # xor(k, k.translate(ipad))

    inner = hash_alg(i_key_pad)
    outer = hash_alg(o_key_pad)

    inner.update(m)
    outer.update(inner.digest())
Esempio n. 6
0
 def get_hash_val(self, obj):
     return hash_alg(obj).hexdigest()
Esempio n. 7
0
 def hash(self):
     return hash_alg(self.json.encode('utf-8')).hexdigest()