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

Uploaded Python 3manylinux: glibc 2.28+ ARM64

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

Uploaded CPython 3.10+Windows x86-64

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

Uploaded CPython 3.10+Windows x86

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

Uploaded CPython 3.10+macOS 11.0+ ARM64

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

File metadata

  • Download URL: opendp-0.14.2a20260513001.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.2a20260513001.tar.gz
Algorithm Hash digest
SHA256 27059afaffae9bf7c825fc628a0aa4cb5bbd6a1f89f5982b22ffc93dfb46ad29
MD5 a94f60779c0dbf605e15df6291bd9bf6
BLAKE2b-256 b9983f7774ac69444892048ba40709879624898f60fadd70eb0afa51a1c1f2af

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260513001-py3-none-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 c68d4b79ae02112bfa4ed100f9dba36780b75336e2327a56a8b3054882ef8e40
MD5 641fb1c5a66f702c442b371d1853bfa9
BLAKE2b-256 3f4494d561a3b6dd252f803294c83ee35c3db628d2362a2cdf619b0e69e08de5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260513001-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 228bdbe019def6394bef7f3615db330de95a4a130736d031ed499ababad9cdf9
MD5 e0d7c1fdaded35fadd3ddc4fcd57c00d
BLAKE2b-256 4b6797961cb1c74eaf2431643ccaf5690c838e95cb584789ff7b3dad46daa870

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260513001-cp310-abi3-win32.whl
Algorithm Hash digest
SHA256 c8b452340f1caba3e02c28a357021f8215c9232e9e3f65290d277ee9ac72f057
MD5 b0f462c1303a5bb84237e1dd3625b3f3
BLAKE2b-256 5b101af07df17152e96af285000977a46cf7ca14321577d884acffc50a83f023

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260513001-cp310-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 7fcb9ec3d3470968674d02a0a2335070924649b954d7e9d8fadaba27f24b7c38
MD5 b9f6a450119af615ee0b21b2f50a1d2d
BLAKE2b-256 debfa3071d981c60b2c745588e7bbd7eabf1fc80a834e929fee4d3b63145227b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260513001-cp310-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 59cbeb5e514fe2b5580984d1278725c2e259fbe5e7061a55897db0228a677459
MD5 ff384f9909de32e0793ba90df5e2ce54
BLAKE2b-256 d4d9f4cbc5d4dbba76a8986e4939f9ac7b2dba0dffb6f2d58c0c4270ebce3b4d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260513001-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4b082df3e8547ab691be81c3a35f317b8701c09b2b5f2e1977ff4dee0e6b0480
MD5 d6d7bd57eab57c12e463c36c3a61dff3
BLAKE2b-256 18fb2b6300d11ea307269d03da0f0499b15f822210bd986c0f17abfdcc7b3f8d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260513001-cp310-abi3-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 7e7fd0b87687519ae3462502f2a9763d8cb78f4ec66ee4dc6911e48ddab9e474
MD5 167a94b2c08c9f7fb7b857b6d2045e9e
BLAKE2b-256 89209f246cacee05c5a8709b59caa29c53f655b12c7967707921b5411adb6cba

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