Skip to content

Curve support zmq::CurveKeyPair::new(); #401

Open

Description

@glennpierce

Hi I am running on debian 12,5

I have a zeromq python client script working fine that includes the line

context = zmq.Context()
public_key, secret_key = zmq.curve_keypair()

this script works fine and i need to translate it to rust
but I get errors when doing

// Generate curve keypair
let keypair_result = zmq::CurveKeyPair::new();

I get the error

Err(Operation not supported)

Is the a feature I need to enable. I can see one from the docs

I am using versions

zmq = { version = "0.10", optional = true }
zmq-sys = { version = "0.12.0", optional = true }

Thanks

Activity

  1. esemeniuc commented on Jun 23, 2024

    @esemeniuc

    My pr fixes it: #400

  2. havok4u commented on Mar 17, 2025

    @havok4u

    Is this getting fixed in 0.10.0? Seems like a lot of time has gone by and still get Err on the call, but if I back down to the following config
    [dependencies] zmq = { version = "0.9.2", features = ["vendored"] }
    Then it seems to work.

  3. Nightrat commented on Mar 20, 2025

    @Nightrat

    Is there any chance that #400 gets merged?
    In my project it is mandatory to use CurveZMQ and I'm now forced to go back to version 0.9.2 of the zmq crate.

  4. rdaum commented on Nov 18, 2025

    @rdaum

    I also need this merged, and am currently running off the #400 branch. What's the hold up here?

  5. paddor commented on Jul 22, 2026

    @paddor

    If you're looking for an alternative: OMQ.rs is a pure-Rust, ZMQ-compatible implementation with native CURVE support, including keypair generation. It keeps libzmq-style socket ergonomics without the libzmq build pain, follows the same IO-thread architecture with linear scaling, has benchmarked higher throughput and lower latency in common cases, and adds an lz4+tcp:// compression transport.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions