Coder Social home page Coder Social logo

tgonzalezorlandoarm / parsec-se-driver Goto Github PK

View Code? Open in Web Editor NEW

This project forked from parallaxsecond/parsec-se-driver

0.0 0.0 0.0 240 KB

PSA Secure Element Driver implementation using Parsec

License: Apache License 2.0

Shell 10.38% C 19.03% Rust 67.87% Makefile 2.72%

parsec-se-driver's Introduction

Parsec Secure Element Driver

This repository contains an implementation of a PSA Secure Element using the Parsec service. It implements the Secure Element Hardware Abstraction Layer and compiles to a library exposing a psa_drv_se_t structure.

How to build and use the driver

When being built, this driver needs to use the same PSA Crypto API interface implementation that is going to register it. You need to specify the location of psa/ header files folder with the environment variable MBEDTLS_INCLUDE_DIR. For example if the mbedtls project is on the same directory:

$ MBEDTLS_INCLUDE_DIR=$(pwd)/mbedtls/include cargo build

This will produce libparsec_se_driver.a in target/debug or target/release. This library contains the psa_drv_se_t symbol defined in the include/parsec_se_driver.h file. That header file should be included under the same include directory than the PSA psa/crypto.h file coming from the PSA Cryptography API implementation.

The build scripts have a dependency on libclang, which is needed on the system.

Compatibility with Mbed TLS

The following tuples have been tested together.

Parsec SE driver version Mbed Crypto/Mbed TLS version
0.4.0 2.22.0
0.5.0 2.25.0
0.6.0 2.27.0

Notice

This implementation is currently work-in-progress and might not implement all operations or parameters of the HAL.

The driver produced currently uses Parsec default authentication method. If Parsec is using the Direct authenticator, the application name of requests made to Parsec by this SE driver will be "Parsec SE Driver".

Make sure to check the Parsec and Parsec Rust Client threat models to make sure that your use-case is secure.

License

The software is provided under Apache-2.0. Contributions to this project are accepted under the same license.

Contributing

Please check the Contribution Guidelines to know more about the contribution process.

Copyright 2020 Contributors to the Parsec project.

parsec-se-driver's People

Contributors

hug-dev avatar gowthamsk-arm avatar ionut-arm avatar marcsvll avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.