WWCP_OCPP
Connectivity between the World Wide Charging Protocol (WWCP) and the Open Charge Point Protocol (OCPP v1.6/v2.0).
https://github.com/OpenChargingCloud/WWCP_OCPP
Category: Consumption
Sub Category: Mobility and Transportation
Keywords
charging chargingstation e-mobility ocpp
Last synced: about 12 hours ago
JSON representation
Repository metadata
Connectivity between the World Wide Charging Protocol (WWCP) and the Open Charge Point Protocol (OCPP v1.6/v2.0.1/v2.1).
- Host: GitHub
- URL: https://github.com/OpenChargingCloud/WWCP_OCPP
- Owner: OpenChargingCloud
- License: agpl-3.0
- Created: 2016-05-23T17:07:44.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2025-04-14T01:26:20.000Z (14 days ago)
- Last Synced: 2025-04-17T21:21:00.303Z (10 days ago)
- Topics: charging, chargingstation, e-mobility, ocpp
- Language: C#
- Homepage:
- Size: 34 MB
- Stars: 64
- Watchers: 14
- Forks: 23
- Open Issues: 9
- Releases: 0
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Security: SECURITY.md
README.md
WWCP OCPP
This software libraries allow you to build Open Charge Point Protocol services and use case specific gateways between OCPP and the World Wide Charging Protocol (WWCP), e.g. for EV roaming. The focus of the Open Charge Point Protocol as defined by the Open Charge Alliance (OCA) is the communication between e-mobility charging stations (charge points), Local Controllers and Charging Station Operator Systems (CSMS).
Versions
-
OCPP v2.1 is a based on the public OCA specification (DRAFT 2024-09-01) and currently under development. This version is tested regularly at Open Charge Alliance Plugfests.
-
OCPP v2.0.1 is provided via OCPP v2.1, as this version is backward compatible to v2.0.1.
-
OCPP v1.6 and the Security Whitepaper extensions are fully implemented and at least one tests exists for every charging station or CSMS message. This version was also tested on multiple Open Charge Alliance Plugfests.
-
OCPP v1.5 is no longer maintained. If you still need support for this version please send us an e-mail.
Implementation Details and Differences
The official protocol specifications of OCPP v1.6, OCPP v2.0.1 and OCPP v2.1 have unfortunatelly still many protocol design flaws and security issues which are still not addressed completely by the Open Charge Alliance Technical Working Group (TWG). Therefore this implementation provides a rich set of vendor extentions, called OCPP CSE, and further work-arounds for most of these issues to simplify the daily operations business, high availability or to support additional concepts/methods.
End-to-End Cyber Security
OCCP currently on ly offers hop-by-hop security via Transport-Layer-Security (TLS). This only provides communication privacy and security against external attackers, but can not secure more complex networking scenarios e.g. with local controllers between the charging stations and the backend(s).
This project provides fills these gaps via Digital Signatures on all requests, responses and main data structures. Additional Signature Policies and User Roles will further limit the attack surface of your critical charging infrastructure and allow you to implement fine-grained access controls.
Overlay Networking
While in the past a single charging station was connected directly to an operator backend, todays charging infrastructure is far more complex. Today we have to support efficient and secure operations for a cluster of colocated charging stations connected to the same grid connection point. Those charging stations often come from different vendors and some sort of local load management shall reduce energy consumption peaks.
This project provides additional data structures and commands to enable overlay networking between charging stations, additional energy meters, local controllers and operator backends. It also provides enhanced network configuration options for high-available networking setups to simplify European AFIR regulations and US NEVI requirements in the US.
German Calibration Law (Eichrecht)
The software aspects of the German Calibration Law (Eichrecht) demand a secure communication of meter values, errors (and charging tariff information for ad hoc charging sessions) and a Charging Transparency Software for end users and regulators. Currently OCPP only supports minimal support for this regulatory requirements and thus the expected security benefit does not reach the end users.
This project provides additional data structures and commands to ensure a secure exchange of cryptographic and metrological data and digital calibration certificates.
Controllable Loads (German §14a EnWG)
Renewable energy sources and smart grids allow an efficient energy demand-side management (DSM) by a mutual information exchange between the distribution grid operator (DSO) and the smart devices in real-time. However all this communication is highly regulated and requires strong cyber security methods to ensure, that this energy management will not become an attack vector against the entire energy grid.
In contrast to the Smart Meter Infrastructure, which only defines perimeter security based on Smart Meter GateWays (SMGW), this project uses end-to-end signatures to control the energy loads and inform the end users about time spans of "dimmed" energy availability.
European General Data Protection Regulation (GDPR)
Neither RFID cards, nor AutoCharge, smartphone apps and even not ISO 15118 Plug & Charge currently provide a GDPR compliant protection of end users and their data.
This project provides new data structures for encrypting privacy sensitive data and new EV driver authorization methods to avoid user tracking and data abuse.
Project Security Policy
We take security very seriously. Therefore we not only created the End-to-End-Security extensions but also the Calibration Law extensions, but also continuously review security vulnerabilities within the code, and provide fixes in a timely manner.
Please report security vulnerabilities in the Issues section of this repository. By keeping security issues visible, we leverage our community in helping fix them promptly.
If you are concerned sharing a vulnerability with the rest of the community, you can also send your report to: [email protected]
Your participation
This software is Open Source under the GNU Affero General Public License (AGPL).. We appreciate your participation in this ongoing project, and your help to improve it and the e-mobility ICT in general. If you find bugs, want to request a feature or send us a pull request, feel free to use the normal GitHub features to do so. For this please read the Contributor License Agreement carefully and send us a signed copy or use a similar free and open license.
Owner metadata
- Name: Open Charging Cloud
- Login: OpenChargingCloud
- Email: [email protected]
- Kind: organization
- Description: The new #eMobility services architecture for 1M+ charging stations based on #SecureIoT, #privacy and #OpenData - https://open.charging.cloud
- Website: https://open.charging.cloud
- Location: Jena, Germany
- Twitter: OCCloud
- Company:
- Icon url: https://avatars.githubusercontent.com/u/17928234?v=4
- Repositories: 73
- Last ynced at: 2025-04-24T07:16:25.873Z
- Profile URL: https://github.com/OpenChargingCloud
GitHub Events
Total
- Watch event: 13
- Push event: 29
- Fork event: 1
Last Year
- Watch event: 13
- Push event: 29
- Fork event: 1
Committers metadata
Last synced: 6 days ago
Total Commits: 744
Total Committers: 1
Avg Commits per committer: 744.0
Development Distribution Score (DDS): 0.0
Commits in past year: 164
Committers in past year: 1
Avg Commits per committer in past year: 164.0
Development Distribution Score (DDS) in past year: 0.0
Name | Commits | |
---|---|---|
Achim Friedland | a****d@g****m | 744 |
Committer domains:
Issue and Pull Request metadata
Last synced: 1 day ago
Total issues: 12
Total pull requests: 12
Average time to close issues: over 1 year
Average time to close pull requests: 14 days
Total issue authors: 9
Total pull request authors: 1
Average comments per issue: 2.08
Average comments per pull request: 1.0
Merged pull request: 0
Bot issues: 0
Bot pull requests: 12
Past year issues: 1
Past year pull requests: 12
Past year average time to close issues: N/A
Past year average time to close pull requests: 14 days
Past year issue authors: 1
Past year pull request authors: 1
Past year average comments per issue: 2.0
Past year average comments per pull request: 1.0
Past year merged pull request: 0
Past year bot issues: 0
Past year bot pull requests: 12
Top Issue Authors
- DgnOnur (3)
- ahzf (2)
- smeatond (1)
- workmyhappy (1)
- zainuvk (1)
- BurakOgutken (1)
- vadrsa (1)
- thumarbhavesh10 (1)
- FuYan (1)
Top Pull Request Authors
- dependabot[bot] (12)
Top Issue Labels
- OCPP v2.1 (1)
- enhancement (1)
- security (1)
Top Pull Request Labels
- dependencies (12)
Dependencies
- Newtonsoft.Json 13.0.1
- Microsoft.NET.Test.Sdk 17.2.0
- NUnit 3.13.3
- NUnit3TestAdapter 4.2.1
- Newtonsoft.Json 13.0.1
- Newtonsoft.Json 13.0.1
- Newtonsoft.Json 13.0.3
- Microsoft.NET.Test.Sdk 17.7.2
- NUnit 3.13.3
- NUnit3TestAdapter 4.5.0
- Newtonsoft.Json 13.0.3
- Newtonsoft.Json 13.0.3
- BouncyCastle.Cryptography 2.2.1
- Newtonsoft.Json 13.0.3
- BouncyCastle.Cryptography 2.2.1
- Microsoft.NET.Test.Sdk 17.7.2
- NUnit 3.13.3
- NUnit3TestAdapter 4.5.0
- Newtonsoft.Json 13.0.3
- Newtonsoft.Json 13.0.3
Score: 4.290459441148391