First functional version

This commit is contained in:
Pedro Ferreira
2017-06-04 21:50:49 +02:00
commit 66a4149f12
18 changed files with 855 additions and 0 deletions

28
examples/test_client.py Normal file
View File

@@ -0,0 +1,28 @@
import os
import yaml
from asyncio import get_event_loop
from base64 import b64decode
from nacl.signing import SigningKey
from secret_handshake import SHSClient
with open(os.path.expanduser('~/.ssb/secret')) as f:
config = yaml.load(f)
async def main():
async for msg in client:
print(msg)
loop = get_event_loop()
server_pub_key = b64decode(config['public'][:-8])
client = SHSClient('localhost', 8008, SigningKey.generate(), server_pub_key, loop=loop)
client.connect()
loop.run_until_complete(main())
loop.close()

29
examples/test_server.py Normal file
View File

@@ -0,0 +1,29 @@
import os
import yaml
from asyncio import get_event_loop
from base64 import b64decode
from nacl.signing import SigningKey
from secret_handshake import SHSServer
with open(os.path.expanduser('~/.ssb/secret')) as f:
config = yaml.load(f)
async def main():
async for msg in server:
print(msg)
loop = get_event_loop()
client_keypair = SigningKey(b64decode(config['private'][:-8])[:32])
server = SHSServer('localhost', 8008, client_keypair, loop=loop)
server.on_connect(main)
server.listen()
loop.run_forever()
loop.close()