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

Uploaded Python 3manylinux: glibc 2.28+ ARM64

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

Uploaded CPython 3.10+Windows x86-64

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

Uploaded CPython 3.10+Windows x86

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

Uploaded CPython 3.10+macOS 11.0+ ARM64

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

File metadata

  • Download URL: opendp-0.14.2a20260514001.tar.gz
  • Upload date:
  • Size: 757.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.2a20260514001.tar.gz
Algorithm Hash digest
SHA256 72623f6b1d89ff166a88ad8374cfc739244c4e65d914d2954f50244d4ccd394f
MD5 42c2cd9e8797103c791ee4f8bd690504
BLAKE2b-256 eaa7437a358bb7b0ae38c35186dbb4c6564937afbf9f47d89d4f66c3a0911ad9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260514001-py3-none-manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 6a96cf30449380b938bd8fbb8048c5d537b476f9dc1fcf95eb9233ae40288dff
MD5 9c19b6a4c577d02678c4e87946df82c6
BLAKE2b-256 c264995675966fc8bf6417d5c4d9f8943003fa6646d8dae45a71449feea833ec

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260514001-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 55ca4c716e3cb0b315ef956acef3b22e91e8f8a45bfd14e754d12f3d2973e9d3
MD5 cb9977698cbf9d0abdc53dd56b692d02
BLAKE2b-256 05ab5d273646f085a5d795e55ce18c4ab3dcdc0939030c5823429ae69fcd31a9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260514001-cp310-abi3-win32.whl
Algorithm Hash digest
SHA256 ae685f47bb68a8e22870cc2d132eedae19ee35233f44014de6031ed379aaf437
MD5 53839259cdd494b2db254cbf14827a0c
BLAKE2b-256 f257eca18a86fcd6826ff913b2480de7f2e2d9d9fa97f0008e7eabc309bfe9ef

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260514001-cp310-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 e3a4295eb8a4de898d65cc362728812473cc2b902a92561588fd19e36247f117
MD5 af2ec090cf739ad3fb7a0572c833f655
BLAKE2b-256 82d97422d600960ff0b1d1f24121a29e6f56dd8e57ef0526cc181bb058ca16ee

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260514001-cp310-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6687642c54232e2dd5d8bce6d74ead24b70facde7801632c681609ec9c98e3b8
MD5 0694d734e6f9a0e1b0d5bb3f9053aeaf
BLAKE2b-256 e1771fbc98e4acb33fbd1833adf726021c847c51719c51d6bb357ab3093144b5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260514001-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 213168ceab014faa36d9be3e12d63bdb98385ca881f0892ba0c08ae06b0f756c
MD5 415ab77717d036d15c1bba1b3383650e
BLAKE2b-256 92b75efcb932033f881e656c6308201f9e72e8a512592e1686712b8409e52e0f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for opendp-0.14.2a20260514001-cp310-abi3-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 42c4ef416e79a31407375a73db859e77eddbe44a753d8137e6f8ccc616565b76
MD5 e228c9ac2ce38a99519602e4bb6658f2
BLAKE2b-256 31ca12f8a9c482f88f1b7a35e305ebafc89467c29c6f34d8d50f60bdaa9c50b7

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