Skip to content

kollera/DoorKeeper

Repository files navigation

DoorKeeper

Warning

May contain traces of software.

Hardware

https://www.wemos.cc/product/d1.html
https://en.wikipedia.org/wiki/ESP8266

Software

https://github.com/esp8266/Arduino

Dependencies (Arduino Libraries)

CRC32

https://github.com/bakercp/CRC32/

Crypto

https://github.com/rweather/arduinolibs/tree/master/libraries/Crypto

Sign & verify

Ed25519 https://en.wikipedia.org/wiki/Ed25519

Session key

Curve25519 https://en.wikipedia.org/wiki/Curve25519

Stream Cipher

ChaCha20 https://en.wikipedia.org/wiki/ChaCha20

ESP8266 hacked version of Crypto libs

use internal esp8266 hardware random generator
http://esp8266-re.foogod.com/wiki/Random_Number_Generator
https://github.com/kollera/arduinolibs

NTP

https://github.com/Juppit/esp8266-SNTPClock

Project

What is it all about?

An attempt to enable secure communication, authentication & authorization for my ESP8266 project.

Some details

Take a look here

FAQ

Why dont use SSL/TLS?

When i started my project, TLS for Arduino was not available (to be precise, it was, but not in a stable version).

Whats the advantage of your solution?

No idea. It's this public - private - elliptic - curve - stream - cipher ... thing. For details, ask the NSA!

Do you know how ECDH works?

No. But Wikipedia does.
https://en.wikipedia.org/wiki/Elliptic_curve_Diffie%E2%80%93Hellman

Do you know how StreamCipher works?

No. But Wikipedia does.
https://en.wikipedia.org/wiki/Stream_cipher

Your code looks kind of messy.

Yes, thats right!

I found a bug / I know how to improve your code.

Excellent! Please use the bugtracker

About

DoorKeeper

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages