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

Uploaded Python 3manylinux: glibc 2.28+ ARM64

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

Uploaded CPython 3.10+Windows x86-64

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

Uploaded CPython 3.10+Windows x86

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

Uploaded CPython 3.10+macOS 11.0+ ARM64

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

File metadata

  • Download URL: opendp-0.14.2a20260426001.tar.gz
  • Upload date:
  • Size: 753.6 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.2a20260426001.tar.gz
Algorithm Hash digest
SHA256 82879a41fc4e9c8fdf987abfcc0a6557a2e999b062f1c5d2a17eb74acfca6ef7
MD5 5e86e0ab8dad67dfbbec873912c27965
BLAKE2b-256 9f2e0e07ef2131fcc9ce0ac0375bc2371e88be69781168145b84ee31423c3db9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260426001-py3-none-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 0a5c0cbcaedd1e095c0c2342310b5daf61ba24ad98b6fb08cb306c3d15dc906a
MD5 c9744347f1aaf4a4840a07952b8b64a0
BLAKE2b-256 b5112c6387c4189aeff7e43cbd549c0bb41de65524814b9a2efb0f4ac35b37c1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260426001-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 a786ec4ef64c415934870bd0a337494dade814d1cf934f445809247ef72a9f9b
MD5 a5b14bbd958dd2f456352da4175e2594
BLAKE2b-256 988339d454831c9faf8a1db7645e921cadf092e2a56a94c27757c9dad25b035e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260426001-cp310-abi3-win32.whl
Algorithm Hash digest
SHA256 2f402b04191e8bafa6a90cab2e16fa5cdab36eaa6adfea50efae1720acaec070
MD5 3346166f4a93b7b1cc06637a7213f0fa
BLAKE2b-256 6a4c48b3b39311cdd4d2a37ef30675766151ff845238d86012a933a771cd8069

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260426001-cp310-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 bf7935e8f4bb2c0c257f2c0b1ad8e21430e4ad13031913dd2f55c8c07c72c58e
MD5 e0b201133ba44cc103a99238ce067a4d
BLAKE2b-256 536711dcfc2e8443e02e3791524c7e7f0373433eb1806d2a5af73e66294c8423

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260426001-cp310-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b019a7f8a17b9d5c8ab4d67c0b1a308f575d9897cb1d999266f5b16f18e12627
MD5 0f37b19b17ae8a480c3959035e0d1e2b
BLAKE2b-256 e79edd3cbc8bcd4e0e222f2dca80fe8c99a280aaafae26107b131b8c312495a8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260426001-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 96895ed8c11b8dfa86cdef869803dcead22790bc29313589045ce2dfa0e90751
MD5 6743584c6c5bdb5dd18ce9ef42107cf7
BLAKE2b-256 e7619a3dbce5b088dfdcb0d1d7e8da05e95912be3e7b98974ace17b80850ee3c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260426001-cp310-abi3-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 2cf243c601dc577bff07bf1eb9072bed57d79266d2f8c7452d17056873099a31
MD5 c412661cddc7c90bd3f196774002973f
BLAKE2b-256 750ba49dce7209ed0d8b1f9b959199c76f0eea6f63b6919c01cce83828a93457

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