NitroKey HSM | confusion about the slots

Hello

We have been experimenting with the nitrokey HSM but stumbled on some things we cant fully explain.
when first creating a key we used the following command:
sudo pkcs11-tool --module opensc-pkcs11.so -l --keypairgen --key-type “EC: prime256v1” --id “10” --label “label”

the next key we wanted to generate was done using the same command using id 20
sudo pkcs11-tool --module opensc-pkcs11.so -l --keypairgen --key-type “EC: prime256v1” --id “20” --label “label”

this continued until we go to the 10th key which we tried to create using the following command:
sudo pkcs11-tool --module opensc-pkcs11.so -l --keypairgen --key-type “EC: prime256v1” --id “100” --label “label”

when running
sudo pkcs15-tool --list-public-keys

we see the 10th key (for which we chose id 100) got id 1000.
this confused us very much so we tried to understand the jump in id number

turns out when asking the key of id 10 and id 100 we both get the same key namely the one we created first
and id 1000 returns us the 10th key

reading up on nitrokey and pkcs11 I have not found any indication for the factor 10 behavior we are seeing here.
Can someone explain me why it works this way? or point me in the right direction?

Regards

If I understand it correctly this is a hex value (I use something like --id e568cf246...). I don’t know why reading id “100” gives different results than writing id “100”, maybe it’s a bug in OpenSC tools…

I just created a key with --id "100" and I got the ID 0100 back when listing the keys. --id "100" when reading it back also worked fine:

>pkcs11-tool --keypairgen -l --slot-index 1 --id "100" --key-type "EC:prime256v1" --label "key 100"
Using slot with index 1 (0x4)
Logging in to "SmartCard-HSM (UserPIN)".
Please enter User PIN: Key pair generated:
Private Key Object; EC
  label:      key 100
  ID:         0100
  Usage:      sign, derive
  Access:     none
Public Key Object; EC  EC_POINT 256 bits
  EC_POINT:   044104814c8cdb3b9a6f96feb5a1eb2a3f4582133b7248ea58e052a78d7ac1820d37747f63556098b30d6501db1e180bb99760216b544c62f96d15044d4432ec3ece
  EC_PARAMS:  06082a8648ce3d030107
  label:      key 100
  ID:         0100
  Usage:      verify, derive
  Access:     none
>pkcs11-tool --slot-index 1 --id "100" -y pubkey -r > bin
Using slot with index 1 (0x4)

>pkcs11-tool --slot-index 1 -O
Using slot with index 1 (0x4)
(other keys dropped)
Public Key Object; EC  EC_POINT 256 bits
  EC_POINT:   044104814c8cdb3b9a6f96feb5a1eb2a3f4582133b7248ea58e052a78d7ac1820d37747f63556098b30d6501db1e180bb99760216b544c62f96d15044d441532ec3ece
  EC_PARAMS:  06082a8648ce3d030107
  label:      key 100
  ID:         0100
  Usage:      verify
  Access:     none