Giter Site home page Giter Site logo

teskalabs / c-its-itss Goto Github PK

View Code? Open in Web Editor NEW
9.0 2.0 5.0 40 KB

C-ITS ITS-S reference implementation focused on a security meant for testing and studying of TeskaLabs SeaCat CA API

Home Page: https://teskalabs.com/solutions/seacat-cits-security

License: MIT License

Python 100.00%
c-its python3 certificate-authority v2x car2x

c-its-itss's Introduction

C-ITS ITS-S Reference Implementation

This is a reference implementation of the ITS-S (a client side) as defined in ETSI C-ITS standards. Its main purpose is to enable implementators of the ITS-S software to study and validate their implementations from a security perspective. The server side (Enrollment Authority, Authorization Authority and Certification Authority) is provided by TeskaLabs' SeaCat CA. It also contains a simple ITS-G5 network simulator that utilizes UDP IPv4 multicast.

Cooperative Intelligent Transport Systems (C-ITS) allow road users and traffic managers to share information and use it to coordinate their actions. It is a set of standards that describes data exchange between high-speed vehicles and between the vehicles and the roadside infrastructure, so called V2X communication.

Quick start

  1. Ensure that you have Python 3.5, 3.6 or 3.7 installed.
    Please referrer to a documentation of your OS or to a Python official documentation how to install Python. We assume, that your python interpretter is available as python3 binary.
    Supported OS are: Linux, Windows, Mac OSX.

  2. Ensure that you have pip, the python installer.

  3. Install dependencies

     pip3 install -U asn1tools
     pip3 install -U cryptography
     pip3 install -U requests
    
  4. Clone the repository

     git clone https://github.com/TeskaLabs/c-its-itss.git
    

Usage

     $ ./itss.py --help
     usage: itss.py [-h] [-e EA_URL] [-a AA_URL] [--g5-sim G5_SIM] DIR
     
     C-ITS ITS-S reference implementation focused on a security.
     C-ITS standards: ETSI TS 102 941 v1.1.1, ETSI TS 103 097 v1.2.1
     It also contains a simple ITS-G5 network simulator that utilizes UDP IPv4 multicast.
     
     (C) 2018 TeskaLabs

     positional arguments:
       DIR                   A directory with persistent storage of a keying
                             material
     
     optional arguments:
       -h, --help            show this help message and exit
       -e EA_URL, --ea-url EA_URL
                             URL of the Enrollment Authority
       -a AA_URL, --aa-url AA_URL
                             URL of the Authorization Authority
       --g5-sim G5_SIM       Configuration of G5 simulator

First start

    $ mkdir itssA
    $ ./itss.py itssA
    Enrollment finished successfuly.
    Authorization ticket obtained successfuly.
    ITS-S identity: 14bc1ff472886760f630d7a50607013e8dc079d23b54cd62ac014ae4cffecd79e3f9d94268acd1411bce9554487653a6
    AT digest: 3618365b33dc6a3d
    Ready.
    Received verified message b'payload' from [3618365b33dc6a3d/authorization_ticket]
    ...

C-ITS standards

  • ETSI TS 102 941 v1.1.1
  • ETSI TS 103 097 v1.2.1

c-its-itss's People

Contributors

ateska avatar martinkubajda avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  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.