示例#1
0
    def send_message(self, src, dst, message):
        object = packet.Object(
            nonce=0,
            expires=int(time.time() + 4 * 24 * 60 * 60 +
                        crypto.randint(-60 * 60, 60 * 60)),
            type=objtypes.Type.msg,
            version=1,
            stream=config.NETWORK_STREAM,
            payload=b'',
        )
        msg = objtypes.MsgData(addrver=4,
                               stream=config.NETWORK_STREAM,
                               behavior=0,
                               verkey=src.profile.verkey,
                               enckey=src.profile.enckey,
                               trials=config.NETWORK_TRIALS,
                               extra=config.NETWORK_EXTRA,
                               ripe=dst.address.ripe,
                               encoding=message.encoding,
                               message=message.to_bytes(),
                               ack=b'',
                               signature=b'')
        msg.sign(src.sigkey, object)
        object.payload = crypto.encrypt(dst.enckey, msg.to_bytes())

        self.worker.add_object(object, config.NETWORK_TRIALS,
                               config.NETWORK_EXTRA, int(time.time()))
示例#2
0
    def send_message(self, src, dst, message):
        object = packet.Object(
            nonce=0,
            expires=int(time.time() + 4*24*60*60 + crypto.randint(-60*60, 60*60)),
            type=objtypes.Type.msg,
            version=1,
            stream=config.NETWORK_STREAM,
            payload=b'',
        )
        msg = objtypes.MsgData(
            addrver=4, stream=config.NETWORK_STREAM, behavior=0,
            verkey=src.profile.verkey, enckey=src.profile.enckey,
            trials=config.NETWORK_TRIALS, extra=config.NETWORK_EXTRA,
            ripe=dst.address.ripe,
            encoding=message.encoding, message=message.to_bytes(),
            ack=b'', signature=b''
        )
        msg.sign(src.sigkey, object)
        object.payload = crypto.encrypt(dst.enckey, msg.to_bytes())

        self.worker.add_object(object, config.NETWORK_TRIALS, config.NETWORK_EXTRA, int(time.time()))
示例#3
0
 def encrypt(self, data):
     return crypto.encrypt(self.enckey, data)
示例#4
0
 def encrypt(self, data):
     return crypto.encrypt(self.enckey, data)