Exemple #1
0
    def test_doc_example(self):
        import pickle, rehash
        hasher = rehash.sha256(b"foo")
        state = pickle.dumps(hasher)

        hasher2 = pickle.loads(state)
        hasher2.update(b"bar")

        assert hasher2.hexdigest() == rehash.sha256(b"foobar").hexdigest()
Exemple #2
0
 def test_repr(self):
     # Some of the memory at the tail of the hasher state is uninitialized at initial state
     self.assertEqual(
         repr(rehash.sha256())[:64],
         "rehash.sha256(state='eJxLf8aZ1boufXfR5zwbq6/+S+uD+AJ7Mlhnr77ZLC959kE0AxWBAhDfa7Ku5N63OAIAWHETSw==')"[:64]
     )
     rehash.opaque_repr = True
     self.assertEqual(
         repr(rehash.sha256()),
         "rehash.sha256()"
     )
Exemple #3
0
def broadcastGameHash():
    global myGameConf
    if myConf.ID not in gameRes.plyrsSignRes: gameRes.plyrsSignRes[myConf.ID] = {}
    if myConf.ID not in gameRes.plyrsResHash: gameRes.plyrsResHash[myConf.ID] = {}

    gameRes.plyrsRes[myConf.ID] = pickle.dumps(generateGameResult())
    gameResRehash = rehash.sha256(gameRes.plyrsRes[myConf.ID])
    gameResHash = SHA256.new(gameRes.plyrsRes[myConf.ID])
    signedGameResHash = pkcs1_15.new(RSA.import_key(keyPair.priKey)).sign(gameResHash)
    gameRes.plyrsSignRes[myConf.ID][myConf.ID] = signedGameResHash
    gameRes.plyrsResHash[myConf.ID][myConf.ID] = gameResHash
    gameRes.plyrsPubK[myConf.ID] = keyPair.pubKey

    myConf.sock.send({"pickleGameResRehash": pickle.dumps(gameResRehash)
        , "pickleSignedGameResHash": pickle.dumps(signedGameResHash), "picklePubKey": pickle.dumps(keyPair.pubKey)})
    return
Exemple #4
0
    def broadcastGameHash(self, records):
        if self.myConf.ID not in self.plyrData.plyrsSignRes:
            self.plyrData.plyrsSignRes[self.myConf.ID] = {}
        if self.myConf.ID not in self.plyrData.plyrsResHash:
            self.plyrData.plyrsResHash[self.myConf.ID] = {}

        self.plyrData.plyrsRes[self.myConf.ID] = pickle.dumps(records)
        gameResRehash = rehash.sha256(self.plyrData.plyrsRes[self.myConf.ID])
        gameResHash = SHA256.new(self.plyrData.plyrsRes[self.myConf.ID])
        signedGameResHash = pkcs1_15.new(RSA.import_key(
            self.key.priKey)).sign(gameResHash)
        self.plyrData.plyrsSignRes[self.myConf.ID][
            self.myConf.ID] = signedGameResHash
        self.plyrData.plyrsResHash[self.myConf.ID][
            self.myConf.ID] = gameResHash

        self.sk.sock.send({
            "pickleGameResRehash":
            pickle.dumps(gameResRehash),
            "pickleSignedGameResHash":
            pickle.dumps(signedGameResHash)
        })
        return
Exemple #5
0
 def _create_sha(self):
     return rehash.sha256()
Exemple #6
0
 def __init__(self):
     self.chunks = []
     self.hasher = rehash.sha256()