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.2a20260425001.tar.gz (753.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.2a20260425001-py3-none-manylinux_2_28_aarch64.whl (52.2 MB view details)

Uploaded Python 3manylinux: glibc 2.28+ ARM64

opendp-0.14.2a20260425001-cp310-abi3-win_amd64.whl (45.6 MB view details)

Uploaded CPython 3.10+Windows x86-64

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

Uploaded CPython 3.10+Windows x86

opendp-0.14.2a20260425001-cp310-abi3-musllinux_1_2_x86_64.whl (53.9 MB view details)

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

opendp-0.14.2a20260425001-cp310-abi3-manylinux_2_28_x86_64.whl (51.0 MB view details)

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

opendp-0.14.2a20260425001-cp310-abi3-macosx_11_0_arm64.whl (47.9 MB view details)

Uploaded CPython 3.10+macOS 11.0+ ARM64

opendp-0.14.2a20260425001-cp310-abi3-macosx_10_13_x86_64.whl (50.2 MB view details)

Uploaded CPython 3.10+macOS 10.13+ x86-64

File details

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

File metadata

  • Download URL: opendp-0.14.2a20260425001.tar.gz
  • Upload date:
  • Size: 753.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.2a20260425001.tar.gz
Algorithm Hash digest
SHA256 ce5b34bd5129fda053bdc0a319740422d86eadd6f69a9942e70aaf68d2092198
MD5 98c8a4da65bbc6800aeb892040a411a8
BLAKE2b-256 9c68b323efc0007d797d596e707b8abf562bd4c937ce40c8b45359c9c3ff8788

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260425001-py3-none-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 05955b2dd434449b92cbfede690b916fc01d64fe6094d7f14f9773975099dd1c
MD5 d0786f7b0d1d4111c03b97449bcd7c6e
BLAKE2b-256 eabace473536950556b407f37c3645a015f85ae65ccdcdf07493105c5ea2e717

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260425001-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 e9e0428ef74db35f3285b6ead4ed99e72a0d284231d8dc8233445d027ee74a94
MD5 a53c53b69509225617ef637cb39ba60e
BLAKE2b-256 452fc48a665b041229b2bac0e71cf09dd61e94e8fb56c48ac9e29f1df2174290

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260425001-cp310-abi3-win32.whl
Algorithm Hash digest
SHA256 b2c70066ac07a90d9a0b4ea1fdf22d3f8bad5633f0f0296078577caef1a1c653
MD5 a6b7b3beb6f54d776e5dcbe99fe31ef7
BLAKE2b-256 fbf720337b2e1302a2dfc46e4b9287bd0cfa1874437f3ecedb878daa7fc022c0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260425001-cp310-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 446766f0041a83e103f2e37ed776628ad56c30e4354447093d29a0ba8ca340fc
MD5 84343d39a01ea59c4ab126873b9edeee
BLAKE2b-256 4a02e2ca9afff5b129e8f8fdb0f2578ac36454b5c4b8904a5161cd28d74728a0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260425001-cp310-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 2435b09ef034be62fa6c8f9d4ad4dfccfc6dd82698cf474fee05010107520f97
MD5 7a7d936cefd18ffcd9cd039bd98892ec
BLAKE2b-256 d9f2e31bd351efb92a9bb902db3178a4df0afd50472ddc8b009e8eb35ba0b926

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260425001-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 99707d9befe13b862e09a3f6261f8442c62178c68cd406b26a705a0f61077374
MD5 9d537d2c1995f1b5b7b1f0680f4f6f05
BLAKE2b-256 525771283d9d3a91d11604633200d03d7e858cebb4f993d64042d0b8b69a8a6b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260425001-cp310-abi3-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 b01fb41b9e2430c6c138864f93c92f6a742615f8dfa320adb68067051bc7a557
MD5 98102d286c4c2fb8ca3af7258acaac26
BLAKE2b-256 a93137a38ee8fa707b7c51a106af01748500a7fa9eb0958888c3020b8991f5a6

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