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

Uploaded Python 3manylinux: glibc 2.28+ ARM64

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

Uploaded CPython 3.10+Windows x86-64

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

Uploaded CPython 3.10+Windows x86

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

Uploaded CPython 3.10+macOS 11.0+ ARM64

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

File metadata

  • Download URL: opendp-0.14.2a20260511001.tar.gz
  • Upload date:
  • Size: 757.7 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.2a20260511001.tar.gz
Algorithm Hash digest
SHA256 540f803c8e8859b75f392f62d028b75aa6128f940a772b6c2ed3f98dd2f6800a
MD5 11bf30cf18839c94db89bb173af09c6d
BLAKE2b-256 b646ffe4f50c53f348d68841de3c9600102df581282e3f688540e74fbab4e371

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260511001-py3-none-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 477a347c1a462707131e2a7bb7bfdb903b3ede6b1e313b02bff9d4bce7d0d2a2
MD5 338f457240157e5481076f6b2b5bac10
BLAKE2b-256 6264c960fbbb6196b3f778202486bc4933b676d1737af509a3c7a8afc0c33b3d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260511001-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 85a94432efedd7efef64140a45394bddf9ff076ed872e04f67ad2cb595fa4780
MD5 c23dfa6f17e0f8ab8ae21917027e5292
BLAKE2b-256 348944ad08165da921d1d542fc7ab32ff504b071964c69879d0d5eff0f5e96f3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260511001-cp310-abi3-win32.whl
Algorithm Hash digest
SHA256 4af29bff27e36533d3b24c1797e2f8d950bc0bd088dae0b8fa1d4a01b80b73c4
MD5 32d1ca09de6c755d53e042900bd44666
BLAKE2b-256 c1eb6c2473fb929854989b07ddf6de17b0502a4385b69be6b2053ef708343c32

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260511001-cp310-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 a8acc91adc1c6ba95dc6c1b94b41a4019121c584c7967b36925d80c2359fc770
MD5 47e915f38caa42236c5cad6fc548c99e
BLAKE2b-256 1cf3d54016828bcaf86bab98c2a26c747556ca1e5c45b5dc9f8d325eebfbf91e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260511001-cp310-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f847518d84314e97b7f5c6c532be7828a0180456ee321b898d91e185397129dd
MD5 671ba5af482d49a2b106f7fbe96e6e1f
BLAKE2b-256 131912bd78e898dbbde056c31fda2529703136ce8bbffcdb257d76ac9bc031ca

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260511001-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 286267012c043cb6f5554e31daff5eff425401daf7df0afea1b2a814540e50c1
MD5 5db69d3844cf061e4c0435a2acbd988d
BLAKE2b-256 1568835db6b1e856eaa00764c246addfba64d42bde40b8e090f8053c3f9e6819

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260511001-cp310-abi3-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 e766653e1737656e013658fd459358a8130e4884572d49f317e0fdcdd3b4c9eb
MD5 9d03e4778328f5aafc21da969c58d001
BLAKE2b-256 49a3f4044e1da00916712667a29fcbabdecb798693059626f9074c5acef2034d

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