Если вы хотите создать пару ключей для операции box
, используйте crypto_box_keypair()
.
Если вам нужна пара ключей для подписи, используйте crypto_sign_keypair()
.
Если вам нужна пара ключей для обмена ключами, используйте crypto_kx_keypair()
.
Не гарантируется, что ключ для одной операции пригоден для другой операции.И хорошая гигиена в криптографии - никогда не использовать ключ для двух разных целей.
Если вам нужно получить как пару ключей для обмена ключами, так и для подписи, вы можете использовать crypto_kx_seed_keypair()
и crypto_sign_ed25519_seed_keypair()
дляэтот.Блочная операция также обеспечивает crypto_box_seed_keypair()
.
Эти функции детерминистически выводят пару ключей из начального числа.Это семя можно считать вашим действительным секретным ключом, из которого вы можете вычислять различные типы пар ключей.