Il existe une variété de méthodes de cryptage que vous pouvez utiliser pour sécuriser votre trafic, et chacune a une consommation d'énergie légèrement différente, donc je vais choisir quelques choix populaires. La méthodologie que j'utilise pour évaluer chaque méthode devrait être applicable à tout autre chiffre que vous trouverez et souhaitez comparer.
AES
AES est l'un des algorithmes de chiffrement à clé symétrique les plus populaires (ce qui signifie que vous utilisez la même clé pour chiffrer et déchiffrer). En termes de sécurité, AES est une valeur sûre:
Meilleure cryptanalyse publique
Des attaques ont été publiées qui sont plus rapides sur le plan informatique qu'une attaque par force brute complète, bien qu'aucune en 2013 ne soit réalisable sur le plan informatique.
- Wikipédia
Le document Biclique Cryptanalysis of the Full AES décrit que AES-128 nécessite 2 126,1 opérations, AES-192 nécessite 2 189,7 opérations et AES-256 nécessite 2 254,4 opérations pour se casser. Sur un processeur à 2,9 GHz, en supposant que chaque «opération» représente 1 cycle CPU (probablement faux), la rupture de l'AES-128 prendrait très longtemps . Avec 10 000 d'entre eux en marche, cela prendra encore presque toujours . Donc, la sécurité n'est pas une préoccupation ici; considérons l'aspect puissance.
Ce document montre (à la page 15) que le chiffrement d'un bloc avec AES a utilisé 351 pJ. Je comparerai cela un peu plus tard après avoir parlé d'autres algorithmes courants.
SIMON
J'ai déjà posé une question sur SIMON et SPECK , qui vaut la peine d'être lue. SIMON excelle dans les situations où vous devez crypter un peu de données, fréquemment . L'article que j'ai lié plus tôt indique que SIMON 64/96 utilise 213 pJ pour 64 bits, ce qui est pratique lorsque vous n'avez besoin d'envoyer que 32 bits de charge utile.
SIMON 64/96 est cependant beaucoup plus facile à casser que AES; l'article que j'ai lié suggère une opération de 2 63,9 , de sorte que notre configuration de 10 000 CPU pourrait casser le cryptage en seulement quelques années , par opposition à des millions de millénaires.
Est-ce que c'est vraiment important?
Au rythme que vous prévoyez de transmettre, la réponse est presque certainement non ; la consommation d'énergie de la cryptographie sera entièrement négligeable. Pour AES, vous utiliseriez 50 544 pJ par jour , donc une batterie AA carbone-zinc bon marché avec 2340 J d'énergie durerait bien au-delà de la durée de vie de l'appareil . Si vous réévaluez les calculs avec SIMON, vous constatez qu'il a également une très longue durée de vie
Bref, à moins que vous n'émettiez très fréquemment, la radio est bien plus un souci de puissance . Wikipedia cite la consommation d'énergie entre 0,01 et 0,5 W. Si vous transmettez pendant 1 seconde à 0,01 W , vous avez déjà utilisé plus de puissance que AES pendant toute la journée .
Pour BLE, cependant, vous êtes probablement bien en vous basant uniquement sur la sécurité par défaut; BLE utilise AES-CCM par défaut pour la sécurité de la couche liaison :
Le cryptage Bluetooth à faible énergie utilise la cryptographie AES-CCM. Comme BR / EDR, le contrôleur LE effectuera la fonction de cryptage. Cette fonction génère des données chiffrées de 128 bits à partir d'une clé de 128 bits et de données en clair de 128 bits à l'aide du chiffrement de bloc AES-128 bits tel que défini dans FIPS-1971.
Il y a cependant une certaine inquiétude quant à la mise en œuvre de la sécurité de la couche liaison par BLE; ce n'est pas une faille dans AES; Bluetooth SIG a plutôt décidé de déployer son propre mécanisme d'échange de clés en 4.0 et 4.1 . Le problème est désormais résolu en 4.2 car la courbe elliptique Hellman-Diffie est désormais prise en charge.