-
Notifications
You must be signed in to change notification settings - Fork 36
Description
Submitting Author: Louis Dubois (@ldbo)
Package Name: Phileas
One-Line Description of Package: Phileas — reproducible automation for hardware security experiments
Repository Link (if existing): https://github.com/ldbo/phileas
EiC: TBD
Code of Conduct & Commitment to Maintain Package
- I agree to abide by pyOpenSci's Code of Conduct during the review process and in maintaining my package after should it be accepted.
- I have read and will commit to package maintenance after the review as per the pyOpenSci Policies Guidelines.
Description
Phileas is a Python package that improves the sustainability of hardware security experiments. This domain heavily relies on automated experiments, which rely on laboratory instruments to gather many measurements on the device under test. Phileas has different features that improve the scientific sustainability — including reproducibility, maintainability, reliability and transparency — of this process.
- It uses simple, human-readable configuration files to describe complex experiments. This improves the readability and maintainability of the research process, while facilitating information exchange between researchers.
- It provides composable parameter generation strategies that ease the design of simple as well as complex experiments.
- It provides an abstraction layer for configuring heterogeneous instruments and retrieving their state.
Combined, these features enable automation of data-acquisition experiments, producing more reliable procedures that are easy to replicate, extend, and share.
Community Partnerships
We partner with communities to support peer review with an additional layer of
checks that satisfy community requirements. If your package fits into an
existing community please check below:
- Astropy: My package adheres to Astropy community standards
- Pangeo: My package adheres to the Pangeo standards listed in the pyOpenSci peer review guidebook
Scope
-
Please indicate which category or categories this package falls under:
- Data retrieval
- Data extraction
- Data processing/munging
- Data deposition
- Data validation and testing
- Data visualization
- Workflow automation
- Citation management and bibliometrics
- Scientific software wrappers
- Database interoperability
Domain Specific
- Geospatial
- Education
- Explain how and why the package falls under these categories (briefly, 1-2 sentences). For community partnerships, check also their specific guidelines as documented in the links above. Please note any areas you are unsure of:
Phileas automates the experimental data acquisition workflow. It facilitates the configuration of laboratory instruments used to acquire datasets.
- Who is the target audience and what are the scientific applications of this package?
It targets experimental researchers in the field of hardware cybersecurity. They can use it when acquiring datasets, usually to carry out side-channel or fault injection attacks. It has been built in a generic manner, which could make it relevant to other fields requiring the automated configuration of test and measurement instruments.
It is useful for experiment reproducibility (creating a similar dataset on the same or a different test bench), adaptability (modifying the acquisition procedure), and transparency (facilitating sharing of experimental setup and procedures).
- Are there other Python packages that accomplish similar things? If so, how does yours differ?
Some tools focus on instruments and drivers (ChipWhisperer, ChipSHOUTER, Scaffold, pypdm). Others focus on data processing (lascar, SCALib, SCAred, secbench) or provide GUIs for specific experiments (laserstudio). However, to my knowledge, there is no tool that automates complex data acquisition procedures.
- Any other questions or issues we should be aware of:
I'm waiting to retrieve access to my PyPI account before publishing it. In the meantime, the package can be installed from source by following the developer notes.
P.S. Have feedback/comments about our review process? Leave a comment here
Metadata
Metadata
Assignees
Labels
Type
Projects
Status
Status