Entiers multiprécisions

Les entiers à multiprécisions (EPM) sont des entiers non signés utilisés pour stocker de longs entiers comme ceux utilisés dans les calculs cryptographiques.

Un EPM est constitué de deux éléments : un scalaire sur 2 octets qui représente la longueur en bits de l'EPM, suivi par une chaîne d'octets qui contient l'entier en question.

Ces octets forment un nombre big-endian ; un nombre big-endian peut être transformé en un EPM en lui donnant un préfixe de la largeur appropriée.

Exemples :

(tous les nombres sont représentés en hexadécimal)

La suite d'octets [00 01 01]; code un EPM de valeur 1. La chaîne [00 09 01 FF]; code l'EPM de valeur 511

Règles supplémentaires:

La taille d'un EPM est ((EPM.longueur + 7) / 8) + 2 octets.

Le champ de longueur d'un EPM décrit la longueur de celui-ci à partir du bit non nul le plus signifiant. C'est-à-dire que l'EPM [00 02 01] n'est pas formé correctement. Il aurait dû s'écrire [00 01 01].