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.2a20260512001.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.2a20260512001-py3-none-manylinux_2_28_aarch64.whl (52.3 MB view details)

Uploaded Python 3manylinux: glibc 2.28+ ARM64

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

Uploaded CPython 3.10+Windows x86-64

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

Uploaded CPython 3.10+Windows x86

opendp-0.14.2a20260512001-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.2a20260512001-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.2a20260512001-cp310-abi3-macosx_11_0_arm64.whl (48.0 MB view details)

Uploaded CPython 3.10+macOS 11.0+ ARM64

opendp-0.14.2a20260512001-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.2a20260512001.tar.gz.

File metadata

  • Download URL: opendp-0.14.2a20260512001.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.2a20260512001.tar.gz
Algorithm Hash digest
SHA256 c5819a7273d06c78298afc295e3969b0443353aa428fc2868e45ce5d2a9bab95
MD5 c79c5721d8fb97fde05709c42570827d
BLAKE2b-256 8b89f02bbdc770c42deb60e694dfed9fa182eb059ca8f44d8ca37ab16e69ac5b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260512001-py3-none-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 5dc60481639d718dc00bfdc522996d56eccc4fe567509c5a6da7c9199fdef11c
MD5 58b034d8203b01fa7b77d0ddcd6b193a
BLAKE2b-256 6aa37f4e12095aaa4230dbcceb79e46f624c2eb0627fec6920c19b8135efcb76

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260512001-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 c5ee53ff7709c09dc7a257c5df02f63358a3002d5e794ed26f5058d9648c21ac
MD5 9822a600249da9cf6c264229354aca6e
BLAKE2b-256 7b5d7cda12548fc25ef0cfe055350a4a2ce3fd2606d90a8beb7a232a1dda9fb7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260512001-cp310-abi3-win32.whl
Algorithm Hash digest
SHA256 409f3db0430ff5be1427b05e5f3983ad6aedae35c244e2ae2adb12894cf6b84e
MD5 8ddae1ffe9a137567e35dbdb17fe6e44
BLAKE2b-256 6ee58a5824a7abb9cbd986e97800ae477b3146f270dc197f41b23665c6e4d402

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260512001-cp310-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 0a5307eab8d147818f6ec3fc34e3c78f2f6f51caadd49b5e9fbc325ba53f4ef1
MD5 5ae8e24ae56f7df300232b415487cb4e
BLAKE2b-256 12e08f8920ad87b7378b2f968b2776f2ab5f2042265e5626e641c13372505a91

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260512001-cp310-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f580d70cb65289a273d7f45167b90346bf91550fe063e1c72a6cf4f34514bc29
MD5 f0b3273024ac8ae9e0190a2cc0b60307
BLAKE2b-256 1b978a45aee250bf49638588c7d950e1af2b20d5330cc436bfb436ae64d4847c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260512001-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 206d7e3097231f743dbf3e40cf0d5340b1e2afcc0167dd80e6c64d1a956bc697
MD5 0eb4808ded9179ba3096c0f63afc57e4
BLAKE2b-256 e03c8489e67f1989c7eb8b8edaa3be1d5553256e52c0eab08a2d7811835e5fce

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260512001-cp310-abi3-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 3e1b782d89616b492e9cbc8812c94054158f25385391d1d7f274fe6ee0c47a14
MD5 2e61fdc44e051c206fa2fc3ef527f5b5
BLAKE2b-256 03442922f16fd2ac4830c46d2585598a09d4a54cc3303a2cd37c87320bea9438

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