2016-08-06 3 views
1

Je suis nouveau dans l'écosystème de Javacard et je me demandais quel est le consensus concernant les calculs (modulaires) avec de grands nombres dans Javacard.Les grands nombres de Javacard et l'arithmétique modulaire

Plus précisément, je suis à la recherche d'une lib qui supporte l'exponentiation modulaire et en général les opérations arithmétiques modulaires entre les grands nombres. J'ai connaissance de BigNumber et de ds.ov2.bignat. Cependant, le premier ne fournit pas de méthodes pour l'arithmétique modulaire. Ds.ov2.bignat semble être plus pertinent, mais je ne savais pas s'il était courant d'utiliser bignat ou s'il existait une autre lib plus populaire.

Merci! A souligné le texte

Répondre

1

Le consensus est une sorte de pas effectuer exponentiation modulaire. bignat semble s'appuyer sur les opérations RSA pour l'arithmétique modulaire. De nos jours, cela devrait probablement être remplacé par des calculs DH.

Mais en général, JC n'est pas vraiment la plate-forme pour créer votre propre cryptographie. Certaines plates-formes ont des extensions spécifiques au fournisseur pour permettre aux utilisateurs d'implémenter leur propre cryptographie.

Les cartes à puce s'appuient cependant sur de nombreuses protections contre les attaques par canal latéral. Vous auriez besoin d'une très bonne compréhension de la cryptographie pour mettre en œuvre quoi que ce soit pour une utilisation «sur le terrain».

+0

Merci pour la réponse! C'est un projet de recherche donc nous ne nous attendons pas à ce que notre applet sera utilisé dans les milieux commerciaux. Pourriez-vous nous en dire un peu plus sur les opérations RSA et ce que vous voulez dire en les remplaçant par des calculs DH? Merci! :-) –

+1

Je pense qu'il y a déjà plusieurs threads à ce sujet dans la section javacard –

0

Répondant à jour, comme le paysage a changé depuis la dernière réponse:

En effet, au moment où il n'y avait pas de bibliothèque et les réponses précédentes étaient correctes.

Ce manque de BigNumbers (et d'autres fonctionnalités de base) était très ennuyeux, donc nous avons construit la bibliothèque nous-mêmes.

Il réalise beaucoup de choses dont j'avais besoin mais que je n'ai pas pu trouver, y compris BigNumbers. Pour les personnes qui rencontrent cette question à l'avenir, vous pouvez le télécharger ici et voir si cela vous aide: opencryptojc.org