コード例 #1
0
def _get_cached_cert(domain, cert_id):
    if domain in g._certificates:
        cert, chain, key = g._certificates[domain]
        # We check the fingerprint only when fetching certs from the cache, not
        # when storing. Doesn't really matter if the cert we get from Vault
        # doesn't have the right ID, it will hopefully be the right cert when
        # we next try to fetch from Vault.
        # NOTE: We compare "raw" bytes here. This way, binascii will take of
        # uppercase vs lowercase hex encoding.
        if cert_fingerprint(cert) == binascii.dehexlify(cert_id):
            return cert, chain, key

    return None
コード例 #2
0
ファイル: Name.py プロジェクト: tairun/PiCN
 def from_json(self, s: str) -> str:
     n = json.loads(s)
     self.suite = n['suite']
     self._components = [binascii.dehexlify(c) for c in n['comps']]
     self.digest = binascii.dehexlify(n['dgest']) if 'dgest' in n else None
     return self
コード例 #3
0
import sys
# From https://stackoverflow.com/questions/9475241/split-string-every-nth-character
from itertools import islice


def split_every(n, iterable):
    i = iter(iterable)
    piece = list(islice(i, n))
    while piece:
        yield piece
        piece = list(islice(i, n))


if len(sys.argv) != 1:
    print('You have to drag the file onto the player first...')
    exit(1)
with open(sys.argv[1], 'rb') as f:
    print('Bytecode opened. Now Preparing...')
    hexdata = binascii.hexlify(f.read())
    print('Hex data created...')
    print('Creating common variables')
    fvars = {}
    print('Done')
    print('Launching...')
    splithex = split_every(8, hexdata)
    # Now we check the first byte to see our instruction
    if splithex[:2] == b'01':
        # Debug print, dehexlify the next 3 bytes.
        print(binascii.dehexlify(splithex[2:8]))
    # That's all for now, testing time :)