diff --git a/libp2p/libp2p.py b/libp2p/libp2p.py index 2c0b1eb..1f88240 100644 --- a/libp2p/libp2p.py +++ b/libp2p/libp2p.py @@ -3,6 +3,7 @@ from ..peer.peerstore import PeerStore from ..network.swarm import Swarm from ..host.basic_host import BasicHost from ..transport.upgrader import TransportUpgrader +from Crypto.PublicKey import RSA class Libp2p(object): @@ -16,7 +17,10 @@ class Libp2p(object): self.idOpt = idOpt else: # TODO generate RSA public key pair - + new_key = RSA.generate(2048, e=65537) + self.idOpt = new_key.publickey().exportKey("PEM") + self.private_key = new_key.exportKey("PEM") + self.transportOpt = transportOpt self.muxerOpt = muxerOpt self.secOpt = secOpt @@ -24,7 +28,7 @@ class Libp2p(object): def new_node(self): - swarm = Swarm(self.id, self.peerstore) + swarm = Swarm(self.idOpt, self.peerstore) host = BasicHost(swarm) upgrader = TransportUpgrader(self.secOpt, self.transportOpt) diff --git a/requirements.txt b/requirements.txt index a788ed4..95dfbe6 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,3 +1,4 @@ asyncio pylint pytest +pycryptodome