def _set_curve_keypair(self, socket: zmq.Socket): """ Generate a client keypair using CURVE encryption mechanism, and set the server key for encryption. :param socket: (zmq.Socket) The socket to set CURVE key. """ client_public, client_secret = zmq.curve_keypair() socket.curve_publickey = client_public socket.curve_secretkey = client_secret socket.setsockopt_string(zmq.CURVE_SERVERKEY, self._SERVER_ZMQ_ENCRYPTION_KEY)