-
Notifications
You must be signed in to change notification settings - Fork 16
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
29 changed files
with
1,110 additions
and
484 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,6 +1,7 @@ | ||
misk | ||
build | ||
build_lib_test | ||
build_reports | ||
*.log | ||
.vscode | ||
*.cproject | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,54 @@ | ||
# Benchmark and comparison of OSCORE+EDHOC vs. (D)TLS | ||
|
||
## Flash | ||
|
||
| Platform | uoscore-uedhoc 3.0.x | TLS 1.3 | DTLS 1.3 | | ||
| -------------------- | -------------------- | ----------- | ----------- | | ||
| nRF52840 (Cortex M4) | 41,156 Byte | 52,023 Byte | 58,097 Byte | | ||
|
||
Notes: | ||
|
||
1) uOSCORE-uEDHOC and (D)TLS are used with P256/AES-128-CCM and X509 certificates. | ||
2) usocore-uedhoc uses [tinycrypt](https://github.com/intel/tinycrypt) as crypto engine for this evaluation and [zcbor](https://github.com/NordicSemiconductor/zcbor) as CBOR engine. The table shows the total footprint including tinycrypt and zcbor. | ||
3) The (D)TLS data is obtained with [mbedTLS](https://github.com/Mbed-TLS/mbedtls) and published in Table II in [Low-Power IoT Communication Security: On the Performance of DTLS and TLS 1.3](https://inria.hal.science/hal-03035402/document) | ||
|
||
## RAM | ||
|
||
| uoscore-uedhoc 3.0.x with FLA | uoscore-uedhoc 3.0.x with VLA | TLS 1.3 | DTLS 1.3 | | ||
| --------------------------------------------- | --------------------------------------------- | ---------- | ---------- | | ||
| 6916 Byte (initiator) / 6656 Byte (responder) | 6440 Byte (initiator) / 6160 Byte (responder) | 21692 Byte | 22026 Byte | | ||
|
||
Notes: | ||
|
||
1. uOSCORE-uEDHOC uses only stack memory. The (D)TLS data includes stack and heap memory as given in Table V in [Low-Power IoT Communication Security: On the Performance of DTLS and TLS 1.3](https://inria.hal.science/hal-03035402/document) | ||
|
||
## Bytes-Over-Air | ||
|
||
| EDHOC | TLS 1.3 | DTLS 1.3 | | ||
| ----------------------------------------------------------- | ------- | -------- | | ||
| 808 Byte (exchanging two 293 Byte X.509 certificates) | 1371 | 1500 | | ||
| 242 Byte (Using pre-established X.509 certificates) | - | - | | ||
| 101 Byte (Using pre-established static Diffie-Hellman keys) | - | - | | ||
|
||
## Latency | ||
|
||
### Latency for a key exchange with uEDHOC | ||
|
||
| Platform | EDHOC exchanging X.509 certificates | EDHOC Using pre-established X.509 certificates | | ||
| --------------------------- | ------------------------------------ | ----------------------------------------------- | | ||
| ESP32 (Xtensa LX6 @ 160MHz) | 0,402 s | 0,294 s | | ||
| nRF52840 (Cortex M4 @64MHz) | 1,1735 s | 0,8615 s | | ||
| nRF51822 (Cortex M0 @16MHz) | 11,7205 s | 8,622 s | | ||
|
||
### Latency for encrypting/decrypting payload data with uOSCORE | ||
|
||
| Platform | Payload 20 Byte | Payload 50 Byte | Payload 100 Byte | Payload 200 Byte | Payload 500 Byte | Payload 1000 Byte | | ||
| --------------------------- | --------------- | --------------- | ---------------- | ---------------- | ---------------- | ----------------- | | ||
| ESP32 (Xtensa LX6 @ 160MHz) | 475 us | 671 us | 977 us | 1585 us | 3500 us | 6600 us | | ||
| nRF52840 (Cortex M4 @64MHz) | 1801 us | 2533 us | 3723 us | 6073 us | 13519 us | 25665 us | | ||
| nRF51822 (Cortex M0 @16MHz) | 9613 us | 14069 us | 20508 us | 33356 us | 74005 us | 140381 us | | ||
|
||
Notes: | ||
|
||
1. All latency numbers are pure latency caused by computations. No data was send or received. The sending/receiving was emulated off-line. | ||
2. [Tinycrypt](https://github.com/intel/tinycrypt) was used as cryptographic engine. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.