Example #1
0
 def generate_session_key(self, client_eph, verifier):
     assert self.server_ephemeral
     scramble = Srp._scramble_a_b(client_eph, self.server_ephemeral)
     pow_verifier = pow(verifier, scramble, Srp.MODULUS)
     pow_verifier *= client_eph
     to_interleave = pow(pow_verifier, self.priv_ephemeral, Srp.MODULUS)
     self.session_key = sha1_interleave(to_interleave)
Example #2
0
 def test_sha1_interleave(self):
     big_int = 1555674156741514756417567416567415647156
     expected = \
         b"6\xa0\xf9\xcf\x1f\xe01\x96\xfc\x87\xd7F-\x88\xfd\x9a\xd0\xa5" \
         b"\xe0C\xdb\xdc\xfb\xf7\xf7\x04\x8b\xa8\x12\r/4SjR^7:\x86U"
     result = sha1.sha1_interleave(big_int)
     self.assertEquals(result, expected)
Example #3
0
 def generate_session_key(self, client_eph, verifier):
     assert self.server_ephemeral
     scramble = Srp._scramble_a_b(client_eph, self.server_ephemeral)
     pow_verifier = pow(verifier, scramble, Srp.MODULUS)
     pow_verifier *= client_eph
     to_interleave = pow(pow_verifier, self.priv_ephemeral, Srp.MODULUS)
     self.session_key = sha1_interleave(to_interleave)