コード例 #1
0
    def setUp(self):
        self.keyfiles = [
            ".node_a_keypair", ".node_b_keypair", ".torrent_keypair"
        ]
        for filename in self.keyfiles:
            if not os.path.exists(filename):
                print "Generating", filename
                keypair = permid.generate_keypair()
                permid.save_keypair(keypair, filename)

        self.node_a_keypair = permid.read_keypair(".node_a_keypair")
        self.node_b_keypair = permid.read_keypair(".node_b_keypair")
        self.torrent_keypair = permid.read_keypair(".torrent_keypair")

        self.torrent_id = "1234"

        # Shortcuts
        self.node_a_pub_permid = str(self.node_a_keypair.pub().get_der())
        self.node_b_pub_permid = str(self.node_b_keypair.pub().get_der())
        self.torrent_pubkeys = [
            encodestring(str(self.torrent_keypair.pub().get_der())).replace(
                "\n", "")
        ]

        # Create the certificate for this torrent ("proof of access")
        self.poa_a = ClosedSwarm.create_poa(self.torrent_id,
                                            self.torrent_keypair,
                                            self.node_a_pub_permid)

        self.poa_b = ClosedSwarm.create_poa(self.torrent_id,
                                            self.torrent_keypair,
                                            self.node_b_pub_permid)

        self.cs_a = ClosedSwarm.ClosedSwarm(self.node_a_keypair,
                                            self.torrent_id,
                                            self.torrent_pubkeys, self.poa_a)

        self.cs_b = ClosedSwarm.ClosedSwarm(self.node_b_keypair,
                                            self.torrent_id,
                                            self.torrent_pubkeys, self.poa_b)