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

Uploaded Python 3manylinux: glibc 2.28+ ARM64

opendp-0.14.2a20260508001-cp310-abi3-win_amd64.whl (45.9 MB view details)

Uploaded CPython 3.10+Windows x86-64

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

Uploaded CPython 3.10+Windows x86

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

Uploaded CPython 3.10+macOS 11.0+ ARM64

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

File metadata

  • Download URL: opendp-0.14.2a20260508001.tar.gz
  • Upload date:
  • Size: 757.8 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.2a20260508001.tar.gz
Algorithm Hash digest
SHA256 53dd913ab416b1bc42df6ee968581360d86bc3c5420f22b1f9ad2a33eb311081
MD5 9fcbfeac372d87838322cc0523c645bc
BLAKE2b-256 5b67a1dd3d7c628c9ee74a7ba92917afd07f60f4c6c1cc8cba12131b919b2855

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260508001-py3-none-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 41f8a77b079108cfedc6d6c11602e33b180ea56fd08d6edce96d27f113be4597
MD5 ebd6bd0d71994cc51f1b9ada43904c5e
BLAKE2b-256 dc7b0229e47112c467f442da4fb7f3b82b5928477c86c67908168b2b5b50cecc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260508001-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 cbd84e489bfe70dab90a36f2102cd546e64e8be99e7737e963d49355fb77cbc6
MD5 a0fba1f43cabfea2a7dbe30fe637831b
BLAKE2b-256 ba81e70fbe7e87671408ea662b575c07171297783fae2fb5d8ccb116d4cd709c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260508001-cp310-abi3-win32.whl
Algorithm Hash digest
SHA256 bbe9cb1d4d2f30179dc1cb0eaa3621a20a2f4e6c8a99176fa8707954eb4ce5a0
MD5 253446813fab3389821444a531210301
BLAKE2b-256 004843e16e9e8da0d43a1298a7954a5429ed51212401ea8f55cc41b9fef06de4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260508001-cp310-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 914bd0a1fdc56c8553483d80d5928332696f51919af091b480a53d55f1c7310c
MD5 c9484e2df673baf362357ec36f3941ac
BLAKE2b-256 8d5b6eade23ae5eb96ad7ceb18814147ca2c6a0a3e64fbd0cee614305028ce21

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260508001-cp310-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6edc4d1df0896a9d09970cdedb67acf01cf8868f4d361dee437cd6e3d0b87582
MD5 11403a610b36e5141d8523354af190ce
BLAKE2b-256 fb0490518b5f991266969a77c740eefa07302ee14bfe714acc9428b111a695c7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260508001-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9d896d04af45cfb662f6366bfa09a2d0a4d43c022acb42617827a5f7a286c16f
MD5 af163074922e538232c4b6904760fa04
BLAKE2b-256 a5365f945fc16787003dc4a24948b2ac6db8fdd7ab161434db79ccf20c90e699

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260508001-cp310-abi3-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 8eb68cd1225d8a6965339e2e9a4d6c46be7c5cb2d66442e20f3826a841ac903d
MD5 07003af86d4619971400a8e67c316c40
BLAKE2b-256 aa57f3ac904dd9e54df4c9523767cbdff78026124ec4d6d5434444522c6486ac

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