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

Uploaded Python 3manylinux: glibc 2.28+ ARM64

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

Uploaded CPython 3.10+Windows x86-64

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

Uploaded CPython 3.10+Windows x86

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

Uploaded CPython 3.10+macOS 11.0+ ARM64

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

File metadata

  • Download URL: opendp-0.14.2a20260427001.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.2a20260427001.tar.gz
Algorithm Hash digest
SHA256 3c1c6ce9e0a5b3bf9fbea1763dd428eb0e28111da114b3679ced945040b8feed
MD5 c2297f1ac201f9ae269da2fcc2a20285
BLAKE2b-256 6feef5a7361c79f9f0531eced977faad66ed3d33f7a5652471dbf02338a7af4b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260427001-py3-none-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 0c223c279d6f4eab46485653af7fc213534fcb4f7c384bf6464d6f80e4c8282d
MD5 9ef01bfa141e1aa4b97b904b326ebfbd
BLAKE2b-256 b31373529f63c57c06d6aa3bf2c84f79431bd650d395715c5fa196408bea8972

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260427001-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 4a39c22bac6d9e5f8ae8e029a7c81ce7839a8f589bcc803350b7c2529ec0ed71
MD5 1e34a070701f4b49c12e66523a9d93a6
BLAKE2b-256 00231317fb102829488f7bc211e5937b0094fa7601f9767bace758cac73020cc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260427001-cp310-abi3-win32.whl
Algorithm Hash digest
SHA256 138a47dba05b575a64a74428b9b9e9d9e1775664f8df88c2db4a9c09a491aa0c
MD5 57e6e4c892e66f225cf8951f3e2c633a
BLAKE2b-256 708e26dadd5a5a498fa61b1fd2a383e657f16d005721488038540b8ae209113f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260427001-cp310-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 7476d0b9d361f5a952451ca1827e4213d2852810759a44d8b6a5fcf4b0e6665d
MD5 186aa1b2151e55e80a93083c36cea4cd
BLAKE2b-256 63a999ee6c044cee3e05c4c85e89ff30ca1547491af7e85c29c18893949a092c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260427001-cp310-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 5f43e721f351ddcb9d8a74b7e16640aa33bbf6f063cbddc014144ab13762a8a5
MD5 1622128512abb135c70e145f5d94c120
BLAKE2b-256 65d6f7edc9f56a8accb50302357570727de97752a27b2d9d909c9d9d0b1ed991

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260427001-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b4f163cf67c85ea784c9c9c1bcfbf0f6ab813646c0e3c33dedbe4487d4be7110
MD5 7c70276f7274d99c3deb287f78358dd6
BLAKE2b-256 f6e9584a10716ece73ab440f1e97d4473e3b901db1c508f77f47a7d6c64f1b68

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260427001-cp310-abi3-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 f526fa495f1cfd3a767d48a3120816bc9a527681d4bffe383872e54c1329ef47
MD5 47d0fb43683378dae6872e5754064227
BLAKE2b-256 536a119092083d36346b276020113a02d85bd7956782f767f65024f6b479fe04

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