You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.
A simple C-library to perform an extended variant of the Needham-Schroeder-protocol
Notifications You must be signed in to change notification settings
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Go to filePlease note: this project is only for archiving reasons on Github. You may use the code as you like (on your own risk), but I'm neither working on it anymore nor have time to answer questions about its usage or the Needham Schroeder protocol.
The library provides callback functions so the user may decide how keys will be stored/retrieved and how events will be handled. Encryption of the protocol messages is done via CCM.
The library has been tested with Debian/Linux Systems and OS X. Basic compatibility with Contiki-OS is there, but needs improvements.
It is intended, that the user may choose lengths for all attributes of the NS-protocol (e.g. The length of identities, nonces and keys). While those for identities and nonces can be freely chosen, the lengths of the keys must be 16 Bytes, so they can be used for CCM.
The NS-client performs retransmissions to deal with lossy networks. To adjust its parameters change NS_RETRANSMIT_TIMEOUT and NS_RETRANSMIT_MAX accordingly.
See needham.h for a description of all modifiable values.
seNS was written by Andreas Bender
This software is published under MIT License
Some parts of the code are taken (e.g. the CCM implementation) or based on code from tinydtls by Olaf Bergmann, published under MIT License
A simple C-library to perform an extended variant of the Needham-Schroeder-protocol