Skip to main content

Python bindings for the OpenDP Library

Project description

OpenDP logo

Project Status: WIP – Initial development is in progress, but there has not yet been a stable, usable release suitable for the public. License: MIT

Python R Rust

main CI nightly CI doc-check CI

The OpenDP Library is a modular collection of statistical algorithms that adhere to the definition of differential privacy. It can be used to build applications of privacy-preserving computations, using a number of different models of privacy. OpenDP is implemented in Rust, with bindings for easy use from Python and R.

The architecture of the OpenDP Library is based on a conceptual framework for expressing privacy-aware computations. This framework is described in the paper A Programming Framework for OpenDP.

[!NOTE] This software is part of the OpenDP Commons. As such, the OpenDP Executive Committee commits to:

  • Releasing this software under an OSI approved licence, in this case the MIT License.
  • Ensuring there are at least two maintainers, in this case Michael Shoemate (Shoeboxam) and Chuck McCallum (mccalluc), who will respond within a week to new issues and PRs.
  • Only making changes on main through PRs, and getting approval on these PRs before merging.
  • On an annual basis, recruiting one or more volunteers (not active contributors) who will conduct a health-check, focussed not on the details of the algorithms but on the health of this repo as open source software. Their report will be linked here. The next (and first) health-check is scheduled for September 2026.

Status

OpenDP is under development, and we expect to release new versions frequently, incorporating feedback and code contributions from the OpenDP Community. It's a work in progress, but it can already be used to build some applications and to prototype contributions that will expand its functionality. We welcome you to try it and look forward to feedback on the library! However, please be aware of the following limitations:

OpenDP, like all real-world software, has both known and unknown issues. If you intend to use OpenDP for a privacy-critical application, you should evaluate the impact of these issues on your use case.

More details can be found in the Limitations section of the User Guide.

Installation

Install OpenDP for Python with pip (the package installer for Python):

$ pip install opendp

Install OpenDP for R from an R session:

install.packages("opendp", repos = "https://opendp.r-universe.dev")

More information can be found in the Getting Started section of the User Guide.

Documentation

The full documentation for OpenDP is located at https://docs.opendp.org. Here are some helpful entry points:

Getting Help

If you're having problems using OpenDP, or want to submit feedback, please reach out! Here are some ways to contact us:

Contributing

OpenDP is a community effort, and we welcome your contributions to its development! If you'd like to participate, please contact us! We also have a contribution process section in the Contributor Guide.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

opendp-0.14.2a20260510001.tar.gz (757.9 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

opendp-0.14.2a20260510001-py3-none-manylinux_2_28_aarch64.whl (52.3 MB view details)

Uploaded Python 3manylinux: glibc 2.28+ ARM64

opendp-0.14.2a20260510001-cp310-abi3-win_amd64.whl (45.8 MB view details)

Uploaded CPython 3.10+Windows x86-64

opendp-0.14.2a20260510001-cp310-abi3-win32.whl (39.8 MB view details)

Uploaded CPython 3.10+Windows x86

opendp-0.14.2a20260510001-cp310-abi3-musllinux_1_2_x86_64.whl (54.0 MB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ x86-64

opendp-0.14.2a20260510001-cp310-abi3-manylinux_2_28_x86_64.whl (51.1 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.28+ x86-64

opendp-0.14.2a20260510001-cp310-abi3-macosx_11_0_arm64.whl (48.0 MB view details)

Uploaded CPython 3.10+macOS 11.0+ ARM64

opendp-0.14.2a20260510001-cp310-abi3-macosx_10_13_x86_64.whl (50.3 MB view details)

Uploaded CPython 3.10+macOS 10.13+ x86-64

File details

Details for the file opendp-0.14.2a20260510001.tar.gz.

File metadata

  • Download URL: opendp-0.14.2a20260510001.tar.gz
  • Upload date:
  • Size: 757.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for opendp-0.14.2a20260510001.tar.gz
Algorithm Hash digest
SHA256 9c5fcd50a219322c5f08d1ca35acf612147874dd10320935ed4c896811b4837f
MD5 9eeb9eddb9196d11929dd9e418f972ca
BLAKE2b-256 7429919c019709906a61dd3c6eded974d7d0d1d0e55038326780b0d1d1d67313

See more details on using hashes here.

File details

Details for the file opendp-0.14.2a20260510001-py3-none-manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for opendp-0.14.2a20260510001-py3-none-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 9de2918b96b81cf3239f70a1e5a90608af57352a86b1e0660b97f1638e8dcc9c
MD5 d93896f2b8af7c093ae6bd7fc192d60b
BLAKE2b-256 960d83b4154b33f50d4843aaf53663778f2374431b4fb01ca32ae2d81f7e95a8

See more details on using hashes here.

File details

Details for the file opendp-0.14.2a20260510001-cp310-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for opendp-0.14.2a20260510001-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 d0edfc11f4beba52b7dc27331a6b6c9e094fe6c762430b9b7fcf407e3f4c9c31
MD5 eb0e9532c45819651c3a1c4617023d27
BLAKE2b-256 390f21f849f4a8f5dea1fa2ae3c80cab9a8e4b0ca85818bf0bd7e1f8ddba0f0a

See more details on using hashes here.

File details

Details for the file opendp-0.14.2a20260510001-cp310-abi3-win32.whl.

File metadata

File hashes

Hashes for opendp-0.14.2a20260510001-cp310-abi3-win32.whl
Algorithm Hash digest
SHA256 64ca37dee1b507746f4a4c7de6540d8d0c23cefd2ad676f2d40ffaa08b25e5cd
MD5 0f1a68cdadb2fec24decd7ebcab79eb5
BLAKE2b-256 acfcfe1fd9a751ca26210276d75aaca5ec7be26c8855a88b673cb9aa3aad6f52

See more details on using hashes here.

File details

Details for the file opendp-0.14.2a20260510001-cp310-abi3-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for opendp-0.14.2a20260510001-cp310-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 06bb44e671698a866b6f8f147a710be551dcac6f87c529b064df985934c6d246
MD5 4449ee69b0c5ff2a937227219fb587c6
BLAKE2b-256 10766ba0989ed90c30e4e2cbf903c9ec6ead801534d794616523a9927485af26

See more details on using hashes here.

File details

Details for the file opendp-0.14.2a20260510001-cp310-abi3-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for opendp-0.14.2a20260510001-cp310-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 13f38c684241a878b5aeb4341baceb3e36147ec6eac73893c0672cbf8f35d824
MD5 c5660ed2d1a97aa849ca1cf59e6d7ba9
BLAKE2b-256 7a38cda2676bb1f4660d9fc841b55e9a99069c0084cae26e1407c78fe75e6210

See more details on using hashes here.

File details

Details for the file opendp-0.14.2a20260510001-cp310-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for opendp-0.14.2a20260510001-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d69c43b6c1c23ea392610f9773c6861409a14d47e03fedb48e5eb42e1a17655e
MD5 0f77596aa42a6b0c18d5ea09e9003501
BLAKE2b-256 57072ad7b08da37a94c7ec673a82ba88b5bac3f0da6e6ade17fc019ace7e1e56

See more details on using hashes here.

File details

Details for the file opendp-0.14.2a20260510001-cp310-abi3-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for opendp-0.14.2a20260510001-cp310-abi3-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 d1c0278d687b9f027654601bb30bd43bcf07a25dfba173b790d3b7d8974bc869
MD5 9a1c72c5696446d7cc62150f1cd34641
BLAKE2b-256 6d7bd0a9e8922dd6f7e5574ec02898785b1217d3b57b6d7167ef3ae9c093de53

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page