Je dois convertir un BigInteger en un entier non signé encodé au format big-endian, mais j'ai des problèmes car [BigInteger.toByteArray](https://docs.oracle.com/javase/7/docs/api/java/math/BigInteger.html#toByteArray()) renvoie une représentation signée. Comment puis-je convertir cette valeur en un format non signé ?
Un contexte (relativement) utile
Je travaille sur un code qui utilise JNI pour que c++ appelle certaines méthodes Java afin de gérer certaines fonctionnalités cryptographiques (il s'agit d'un fournisseur CNG de Microsoft qui décharge certaines fonctionnalités vers Java). J'ai la clé publique en Java et les valeurs BigInteger que je dois convertir sont les suivantes [coordonnées de la clé publique de la courbe elliptique](https://docs.oracle.com/javase/7/docs/api/java/security/spec/ECPoint.html#getAffineX()) . Selon le Documentation sur le GNC Je dois fournir ces points en tant qu'"entiers non signés encodés au format big-endian".
Modifier
Rétrospectivement, c'était peut-être un message stupide. Je m'embrouillais avec les nombres négatifs et positifs et la façon de gérer cela (et parce qu'il est tard et que mon esprit s'est transformé en bouillie). les points de la courbe elliptique ne seront pas négatifs . Merci à tous ceux qui ont répondu ici ! Je vais laisser ce message au cas où il aiderait quelqu'un d'autre.