Archives de l’auteur : Nicolas Riousset

À propos Nicolas Riousset

Président et fondateur de NeoLegal, développe des solutions logicielles qui facilitent le quotidien des professionnels du droit des sociétés.

Comment sont cryptées les transactions EMV ?

La question suivante a été posée aujourd’hui sur StackOverflow : Quel mécanisme d’encryption est utilisé pour les transactions EMV ?

La réponse est simple : aucun. Les communications entre une carte EMV et un lecteur sans-contact ne sont pas cryptées. Il est facile d’enregistrer les APDUs échangés pendant le dialogue, par exemple à l’aide de l’espion sans-contact Fime SmartSpy.

Pour autant, ça ne signifie pas qu’il est possible d’utiliser ces informations pour cloner la carte ou réaliser des transactions. L’interception du dialogue donne accès à certaines informations (ex : le numéro de carte, l’équivalent des données de la second piste magnétique), mais:

  • il n’y a pas toutes les informations nécessaires au clonage d’une carte magnétique
  • le numéro CVV inscrit au dos de la carte n’est pas disponible, et ne permet donc pas de réaliser des achats en ligne.
  • il est impossible de « rejouer » la transaction, car les données de transaction contiennent deux numéros aléatoires générés par la carte et le terminal, différents pour chaque transaction, et signés par la carte.

Ce dernier point – la signature de la transaction – est le moment où la cryptographie intervient. La carte de paiement contient une clé privée/un certificat utilisé pour signer la transaction, afin que l’acquéreur puisse l’authentifier et la valider. Ce certifcat n’est jamais transmis au lecteur sans-contact, et n’est pas accessible avec les commandes EMV. C’est ce certificat qui est protégé et crypté sur la carte et permettrait de cloner une carte.

How does EMV encrypt contactless transactions ?

I stumbled upon this stackoverflow question : What encryption mechanism is used for EMV contactless transaction information ?

The answer is simple : none. The communication between an EMV card and a contactless reader is not encrypted. You can easily eavesdrop and record the exchanged APDUs, for example using the Fime SmartSpy contactless spy.

But that doesn’t mean you’ll be able to clone a card, or to perform transactions using the recorded dialog. Continuer la lecture

Compiler du code .Net en exécutable natif

Aujourd’hui, je suis tombé sur cette annonce de Microsoft   :  la première version bêta de .NET Native.

En bref, .Net Native permet de compiler du code c#/.Net dans un exécutable natif. Les principaux avantages :

  • un gain de performance significatif (ex : les applications du Windows Store utilisant .Net Native démarrent 60% plus rapidement)
  • une empreinte mémoire réduite
  • tout cela en conservant les gains de productivité offerts par C# et .Net par rapport au C/C++

Ces avantages sont particulièrement intéressants. Il y en a un autre moins évident mais tout aussi intéressant : plus de dépendance sur la version du framework .Net installé sur la machine client. Il devient possible de coder avec la dernière version du framework sans obliger les utilisateurs à mettre à jour leur version du framework.

Compiling .Net code to native executable

I stumbled upon this announcement from Microsoft today :  the first release of .NET Native.

Basically, .Net Native allows compilation of c#/.Net source code to native binaries. The obvious interest is :

  • a performance gain (ex : Windows Store apps start up to 60% faster)
  • a smaller memory footprint
  • all this while keeping the increased productivity that C# and .Net offer

These are great advantages, but there’s another one which is really interesting : no more dependency on the version of the installed .Net framework. One can develop for the latest version of .Net without requiring users to upgrade their current version of the framework.