Code Monkey home page Code Monkey logo

chargydesktopapp's People

Contributors

ahzf avatar dependabot[bot] avatar sirhcel avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

chargydesktopapp's Issues

Add support for chargepoint charge transparency records

Chargepoint sent a first specification of their approach to the German Eichrecht, which uses charging stations crypto keys instead of smart meter crypto keys. This requires some changes within the internal data processing.

  • Support the chargepoint charge transparency record format
  • Support of secp224k1 signatures
  • Support of secp256r1 signatures

total_energy = 0.0 => Invalid transparency format!

I found a bug to report

Within the charge point data format the value "total_energy = 0.0" will be misinterpreted as a missing value (praise JavaScript magics!).

Expected behavior

Use another method to validate if all mandatory parameters exist and are well defined.

Add support for ALFEN transparency format

Some customers want to use Chargy for ALFEN charging stations

  • Support ALFEN transport via chargeIT JSON container
  • Support ALFEN transport via SAFE XML container
  • Parse and display ALFEN transparency data
  • Verify ALFEN signatures
  • The format uses BigInt internally which is converterd to Number. Could this become an issue somewhen in the future?

Allow separate public key files as input

I would like to request/propose a feature

The public key of Chargepoint charging stations is not part of the charge transparency record, but an external file. Allow this file as additional input and merge it into the other charge transparency records.

Allow to save the list of charging sessions as shown within the app

I would like to request/propose a feature

As a user I want to select multiple charge transparency records/files, to get a consolidated view of all my charging sessions and to save this list of charging sessions as shown within the app on my computer.

This means add a button or similar to the app which will store the given charging sessions using the Chargy data format.

Add support for Mennekes transparency format

Some customers want to use Chargy for Mennekes charging stations

  • Documentation of the Mennekes "metra"-XML received
  • Support Mennekes transport via metra XML
  • Support Mennekes transport via chargeIT JSON container
  • Parse and display Mennekes transparency data
  • Verify Mennekes signatures

VDE-Feedback and change requests on Chargy v1.1 (chargepoint)

  1. Ids in the chargepoint format differ between different firmware versions. Therefore compare them case-insensitive. Let charge point define the default format for presenting those Ids within Chargy to the end user (e.g. 'all upper', 'all lower', ...).

Add a "update available"-notification mechanism

  • Add a "update available"-notification mechanism to notify the user that a new version of the software is available.

  • Show a little red icon when the current version of the software is out of date

  • Do not install anything automagically, as PTB is not a fan of this (at the moment)

  • Use GitHub for serving the version file, as we do not have access to any logfiles (privacy)

general flow

I have a question or need help

hello, come across this implementation and would like to ask you if you can explain more about general works as documentation is actually low.

In particular I cannot understand how data has to be certified and in which format ( all chargepoint uses different format? ) and what exactly the charging station need to create at the end of session to create the certified data.

For my understanding the software simply read a signed file sent from the station ( but I could be wrong) . So if have time can u better explain me this flow ?

Thanks !

Extend measurement verification interface...

Extend measurement verification interface to allow results like: (In)ValidStartValue, (In)ValidIntermediateValue, (In)ValidStopValue and StartValue, IntermediateValue, StopValue (without any verification at all) as this is assumed to be more userfriendly

Improved security via digital certificates and a PKI

  • Add Open Charging Cloud root certificate
  • Make sure, that the versions.json is digitally signed by one or more organizations
  • Verify the certificates/signatures of the entire versions.json
  • Verify the certificates/signatures of a version
  • Verify the certificates/signatures of a version package
  • Verify the certificates/signatures of a energy meter public key
  • Verify the certificates/signatures of another certificates/signature (build a chain/web of trust)
  • Sign entire CTRs

App Skins / White Label Features

Ein Charging Station Operator bzw. ein E-Mobility Provider könnte sich wünschen gewisse Farben und Texte der App nach seinem Corporate Design Vorgaben anzupassen:

  1. Via dem Transparenzdatensatz, d.h. Anpassung erst nach Laden des Datensatzes
  2. Via einer Zusatzdatei bei der Installation der Software (JSON, CSS), d.h. Anpassung nach Start der App

Add support of an accessibility feedback mechanism for people with a disability

The EU directive 2016/2102 of the European Parliament and of the Council of 26 October 2016 on the accessibility of the websites and mobile applications of public sector bodies ( https://eur-lex.europa.eu/legal-content/DE/TXT/?uri=CELEX%3A32016L2102 ) defines an "accessibility" feedback mechanism for people with a disability. This is directive is transformed into local law e.g. in Thueringia in http://parldok.thueringen.de/ParlDok/vorgaenge/69750/1

There is already an optional feedback mechanism within the app, but this is focused on technical issues. This mechanism should be extended.

Show Software Identification

The PTB wants that the software version and its hash value, as printed on the "Baumusterprüfbescheinigung" is shown in the software.

A broken file within a list of files is ignored

When multiple transparency files are load but some of them are broken (invalid transparency format) then those files are ignored and not shown. VDE would like to get an error message instead.

Expected behavior

Add an item "$filename: Invalid transparency format" to the list of loaded charging sessions.

Allow compressed archives as input files and merge their content

I would like to request/propose a feature

Chargepoint charge transparency records are TAR archives compressed via BZIP2. Allow at least BZIP2, GZIP, ZIP files as input. Extract and merge the content of those compressed archives.

A user should also be able to put several charge transparency records/files (and public key files) into a single TAR/ZIP archive and open this file directly.

Chargy should also support archive files within other archive files, as e.g. Chargepoint charge transparency files are tar.bz2-archives and users might want to combine multiple into a single ZIP-archive.

Implement legacy TRuDI-style software-crypto-selfcheck

The PTB want a TRuDI-style self check of "all" files. This means to enumerate all files, calculate the SHA256 hash over all those files, calculate a common hash value and compare it with the stored value. If both are the same the software was not modified.

Strictly speaking this is an obsolete security feature. To make if at least a bit useful we additionally will sign the common hash value with the GraphDefined/OCC private key and verify this signatures via its public key.

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.