Skip to main content

No project description provided

Project description

pypuf: Cryptanalysis of Physically Unclonable Functions

pypi DOI

pypuf is a toolbox for simulation, testing, and attacking Physically Unclonable Functions.

Getting Started

Please check out the pypuf hello world in the documentation.

Studies and Results

pypuf is used in a number of PUF-related research projects. If you would like to add your project to the list, please open an issue or send an email. In reverse chronological order:

Please check out the archived version of pypuf v1 to find the original code used some of the older projects.

Citation

To refer to pypuf, please use DOI 10.5281/zenodo.3901410. pypuf is published via Zenodo. Please cite this work as

Nils Wisiol, Christoph Gräbnitz, Christopher Mühl, Benjamin Zengin, Tudor Soroceanu, Niklas Pirnay, & Khalid T. Mursi. pypuf: Cryptanalysis of Physically Unclonable Functions (Version 2, June 2021). Zenodo. https://doi.org/10.5281/zenodo.3901410

or use the following BibTeX:

@software{pypuf,
  author       = {Nils Wisiol and
                  Christoph Gräbnitz and
                  Christopher Mühl and
                  Benjamin Zengin and
                  Tudor Soroceanu and
                  Niklas Pirnay and
                  Khalid T. Mursi},
  title        = {{pypuf: Cryptanalysis of Physically Unclonable
                   Functions}},
  year         = 2021,
  publisher    = {Zenodo},
  version      = {v2},
  doi          = {10.5281/zenodo.3901410},
  url          = {https://doi.org/10.5281/zenodo.3901410}
}

Contribute

Testing, linting, licensing.

Run Tests

  1. install sphinx-build xdoctest
  2. xdoctest pypuf
  3. cd docs
  4. make clean
  5. make doctest && make html
  6. cd to project root
  7. python3 -m pytest test

Maintainer: Prepare New Release

  1. Make sure docs are testing and building without error (see above)
  2. Commit all changes
  3. Clean up dist/ folder
  4. Set up new release version: RELEASE=x.y.z
  5. Update version to x.y.z in setup.py and docs/conf.py
  6. Commit with message "Release Version vx.y.z": git commit -p -m "Release Version v$RELEASE"
  7. Tag commit using git tag -as v$RELEASE -m "Release Version v$RELEASE"
  8. If applicable, adjust dev and/or stable tags.
  9. Push
    1. branch: git push
    2. tag: git push origin v$RELEASE
  10. Set environment variables GITHUB_TOKEN to a GitHub token, TWINE_USERNAME and TWINE_PASSWORD to PyPi credentials.
  11. Publish using publish nils-wisiol pypuf
  12. At zenodo.org, make sure the author list is up to date.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pypuf-3.1.0.tar.gz (69.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pypuf-3.1.0-py2.py3-none-any.whl (53.6 kB view details)

Uploaded Python 2Python 3

File details

Details for the file pypuf-3.1.0.tar.gz.

File metadata

  • Download URL: pypuf-3.1.0.tar.gz
  • Upload date:
  • Size: 69.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.5.0.1 requests/2.22.0 requests-toolbelt/0.8.0 tqdm/4.51.0 CPython/3.8.10

File hashes

Hashes for pypuf-3.1.0.tar.gz
Algorithm Hash digest
SHA256 4ad98f7e3f95b3dd5ce282a0f3b0cf1bf79f05706e0299efe29d9fd7f5151c17
MD5 812f83fd56cafac6dc94fb6f934256c0
BLAKE2b-256 5608e5e90c47fdb20b61a39981d59bf8cc62f380f35dcd7b79cd5d2e22e10e56

See more details on using hashes here.

File details

Details for the file pypuf-3.1.0-py2.py3-none-any.whl.

File metadata

  • Download URL: pypuf-3.1.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 53.6 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.5.0.1 requests/2.22.0 requests-toolbelt/0.8.0 tqdm/4.51.0 CPython/3.8.10

File hashes

Hashes for pypuf-3.1.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 f3e922f5ebc08dfc013a3d5f1fb0c4ecfab08edf95cbbdb41fe3666e880a1f08
MD5 c4b76e0c4df521202b38e139ed777975
BLAKE2b-256 d790e78b9f0e2f922352957be6f0afb7d5cbea848fd099853252687f1a1fc80a

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