pysodium


Namepysodium JSON
Version 0.7.16 PyPI version JSON
download
home_pagehttps://github.com/stef/pysodium
Summarypython libsodium wrapper
upload_time2023-11-29 23:35:07
maintainer
docs_urlNone
authorStefan Marsiske
requires_python
licenseBSD
keywords cryptography api nacl libsodium
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI
coveralls test coverage No coveralls.
            This is a very simple wrapper around libsodium masquerading as nacl.

[![Build Status](https://travis-ci.org/stef/pysodium.svg?branch=master)](https://travis-ci.org/stef/pysodium)

This wrapper requires a pre-installed libsodium from:

   https://github.com/jedisct1/libsodium

then it provides access to the following functions:

```
crypto_aead_aegis128l_decrypt(ciphertext, ad, nonce, key)
crypto_aead_aegis128l_encrypt(message, ad, nonce, key)
crypto_aead_aegis128l_decrypt_detached(ciphertext, mac, ad, nonce, key)
crypto_aead_aegis128l_encrypt_detached(message, ad, nonce, key)
crypto_aead_aegis256_decrypt(ciphertext, ad, nonce, key)
crypto_aead_aegis256_encrypt(message, ad, nonce, key)
crypto_aead_aegis256_decrypt_detached(ciphertext, mac, ad, nonce, key)
crypto_aead_aegis256_encrypt_detached(message, ad, nonce, key)
crypto_aead_chacha20poly1305_decrypt(ciphertext, ad, nonce, key)
crypto_aead_chacha20poly1305_encrypt(message, ad, nonce, key)
crypto_aead_chacha20poly1305_decrypt_detached(ciphertext, mac, ad, nonce, key)
crypto_aead_chacha20poly1305_encrypt_detached(message, ad, nonce, key)
crypto_aead_chacha20poly1305_ietf_decrypt(ciphertext, ad, nonce, key)
crypto_aead_chacha20poly1305_ietf_encrypt(message, ad, nonce, key)
crypto_aead_chacha20poly1305_ietf_decrypt_detached(ciphertext, mac, ad, nonce, key)
crypto_aead_chacha20poly1305_ietf_encrypt_detached(message, ad, nonce, key)
crypto_aead_xchacha20poly1305_ietf_decrypt(ciphertext, ad, nonce, key)
crypto_aead_xchacha20poly1305_ietf_encrypt(message, ad, nonce, key)
crypto_auth(message, key)
crypto_auth_verify(tag, message, key)
crypto_box_afternm(msg, nonce, k)
crypto_box_beforenm(pk, sk)
crypto_box_detached(msg, nonce, pk, sk)
crypto_box_keypair()
crypto_box(msg, nonce, pk, sk)
crypto_box_open_afternm(c, nonce, k)
crypto_box_open(c, nonce, pk, sk)
crypto_box_open_detached(c, mac, nonce, pk, sk)
crypto_box_seal(msg, pk)
crypto_box_seal_open(c, pk, sk)
crypto_box_seed_keypair(seed)
crypto_generichash_blake2b_salt_personal(message, outlen = crypto_generichash_blake2b_BYTES, key = b'', salt = b'', personal = b'')
crypto_generichash_final(state, outlen=crypto_generichash_BYTES)
crypto_generichash_init(outlen=crypto_generichash_BYTES, k=b'')
crypto_generichash(m, k=b'', outlen=crypto_generichash_BYTES)
crypto_generichash_update(state, m)
crypto_hash_sha256(message)
crypto_hash_sha512(message)
crypto_hash_sha512_init()
crypto_hash_sha512_update(state, data)
crypto_hash_sha512_final(state)
crypto_kx_client_session_keys(client_pk, client_sk, server_pk)
crypto_kx_keypair()
crypto_kx_server_session_keys(server_pk, server_sk, client_pk)
crypto_pwhash(outlen, passwd, salt, opslimit, memlimit, alg)
crypto_pwhash_scryptsalsa208sha256(outlen, passwd, salt, opslimit, memlimit)
crypto_pwhash_scryptsalsa208sha256_str(passwd, opslimit, memlimit)
crypto_pwhash_scryptsalsa208sha256_str_verify(stored, passwd)
crypto_pwhash_str(passwd, opslimit, memlimit)
crypto_pwhash_str_verify(pstr, passwd)
crypto_scalarmult_base(n)
crypto_scalarmult_curve25519_base(n)
crypto_scalarmult_curve25519(n, p)
crypto_secretbox(msg, nonce, k)
crypto_secretbox_detached(msg, nonce, k)
crypto_secretbox_open(c, nonce, k)
crypto_secretbox_open_detached(c, mac, nonce, k)
crypto_secretstream_xchacha20poly1305_keygen():
crypto_secretstream_xchacha20poly1305_init_push(key):
crypto_secretstream_xchacha20poly1305_init_pull(header, key):
crypto_secretstream_xchacha20poly1305_rekey(state):
crypto_secretstream_xchacha20poly1305_push(state, message, ad, tag):
crypto_secretstream_xchacha20poly1305_pull(state, ciphertext, ad):
crypto_sign_init()
crypto_sign_update(state, m)
crypto_sign_final_create(state, sk)
crypto_sign_final_verify(state, sig, pk)
crypto_sign_detached(m, sk)
crypto_sign_keypair()
crypto_sign(m, sk)
crypto_sign_open(sm, pk)
crypto_sign_pk_to_box_pk(pk)
crypto_sign_seed_keypair(seed)
crypto_sign_sk_to_box_sk(sk)
crypto_sign_sk_to_pk(sk)
crypto_sign_sk_to_seed(sk)
crypto_sign_verify_detached(sig, msg, pk)
crypto_stream_chacha20_xor(message, nonce, key)
crypto_stream_chacha20_xor_ic(message, nonce, initial_counter, key)
crypto_stream_chacha20_ietf_xor(message, nonce, key)
crypto_stream_chacha20_ietf_xor_ic(message, nonce, initial_counter, key)
crypto_stream_xchacha20_xor(message, nonce, key)
crypto_stream_xchacha20_xor_ic(message, nonce, initial_counter, key)
crypto_stream(cnt, nonce=None, key=None)
crypto_stream_xor(msg, cnt, nonce=None, key=None)
randombytes(size)
sodium_increment(bytes)
crypto_core_ristretto255_is_valid_point(p)
crypto_core_ristretto255_from_hash(r)
crypto_scalarmult_ristretto255(n, p)
crypto_scalarmult_ristretto255_base(n)
crypto_core_ristretto255_scalar_random()
crypto_core_ristretto255_scalar_invert(s)
crypto_core_ristretto255_scalar_reduce(s)
crypto_core_ristretto255_add(p, q)
crypto_core_ristretto255_sub(p,q)
crypto_core_ristretto255_random()
crypto_core_ristretto255_scalar_negate(s)
crypto_core_ristretto255_scalar_complement(s)
crypto_core_ristretto255_scalar_add(x,y)
crypto_core_ristretto255_scalar_sub(x,y)
crypto_core_ristretto255_scalar_mul(x,y)
crypto_auth_hmacsha256_keygen
crypto_auth_hmacsha256
crypto_auth_hmacsha256_verify
crypto_auth_hmacsha512_keygen
crypto_auth_hmacsha512
crypto_auth_hmacsha512_verify
crypto_auth_hmacsha512256_keygen
crypto_auth_hmacsha512256
crypto_auth_hmacsha512256_verify
crypto_kdf_hkdf_sha256_extract_init(salt=b'')
crypto_kdf_hkdf_sha256_extract_update(state, ikm=b'')
crypto_kdf_hkdf_sha256_extract_final(state)
crypto_kdf_hkdf_sha256_extract(salt=b'', ikm=b'')
crypto_kdf_hkdf_sha256_keygen()
crypto_kdf_hkdf_sha256_expand(outlen, prk, ctx=b'')
crypto_kdf_hkdf_sha512_extract_init(salt=b'')
crypto_kdf_hkdf_sha512_extract_update(state, ikm=b'')
crypto_kdf_hkdf_sha512_extract_final(state)
crypto_kdf_hkdf_sha512_extract(salt=b'', ikm=b'')
crypto_kdf_hkdf_sha512_keygen()
crypto_kdf_hkdf_sha512_expand(outlen, prk, ctx=b'')
```

Constants:

```
crypto_aead_chacha20poly1305_ABYTES
crypto_aead_chacha20poly1305_KEYBYTES
crypto_aead_chacha20poly1305_NPUBBYTES
crypto_aead_chacha20poly1305_ietf_KEYBYTES
crypto_aead_chacha20poly1305_ietf_NPUBBYTES
crypto_aead_chacha20poly1305_ietf_ABYTES
crypto_aead_xchacha20poly1305_ietf_KEYBYTES
crypto_aead_xchacha20poly1305_ietf_NPUBBYTES
crypto_aead_xchacha20poly1305_ietf_ABYTES
crypto_auth_BYTES
crypto_auth_KEYBYTES
crypto_box_BEFORENMBYTES
crypto_box_BOXZEROBYTES
crypto_box_MACBYTES
crypto_box_NONCEBYTES
crypto_box_PUBLICKEYBYTES
crypto_box_SEALBYTES
crypto_box_SECRETKEYBYTES
crypto_box_SEEDBYTES
crypto_box_ZEROBYTES
crypto_generichash_KEYBYTES_MAX
crypto_generichash_BYTES
crypto_generichash_BYTES_MAX
crypto_generichash_BYTES_MIN
crypto_generichash_STATEBYTES
crypto_generichash_blake2b_BYTES
crypto_generichash_blake2b_BYTES_MAX
crypto_generichash_blake2b_BYTES_MIN
crypto_generichash_blake2b_KEYBYTES_MAX
crypto_generichash_blake2b_PERSONALBYTES
crypto_generichash_blake2b_SALTBYTES
crypto_hash_sha256_BYTES
crypto_hash_sha512_BYTES
crypto_hash_sha512_STATEBYTES
crypto_kx_PUBLICKEYBYTES
crypto_kx_SECRETKEYBYTES
crypto_kx_SESSIONKEYBYTES
crypto_pwhash_ALG_DEFAULT
crypto_pwhash_ALG_ARGON2I13
crypto_pwhash_ALG_ARGON2ID13
crypto_pwhash_BYTES_MAX
crypto_pwhash_BYTES_MIN
crypto_pwhash_MEMLIMIT_MAX
crypto_pwhash_MEMLIMIT_MIN
crypto_pwhash_MEMLIMIT_INTERACTIVE
crypto_pwhash_MEMLIMIT_MODERATE
crypto_pwhash_MEMLIMIT_SENSITIVE
crypto_pwhash_OPSLIMIT_MAX
crypto_pwhash_OPSLIMIT_MIN
crypto_pwhash_OPSLIMIT_INTERACTIVE
crypto_pwhash_OPSLIMIT_MODERATE
crypto_pwhash_OPSLIMIT_SENSITIVE
crypto_pwhash_PASSWD_MAX
crypto_pwhash_PASSWD_MIN
crypto_pwhash_argon2i_MEMLIMIT_INTERACTIVE
crypto_pwhash_argon2i_MEMLIMIT_MODERATE
crypto_pwhash_argon2i_MEMLIMIT_SENSITIVE
crypto_pwhash_argon2i_OPSLIMIT_INTERACTIVE
crypto_pwhash_argon2i_OPSLIMIT_MODERATE
crypto_pwhash_argon2i_OPSLIMIT_SENSITIVE
crypto_pwhash_argon2id_MEMLIMIT_INTERACTIVE
crypto_pwhash_argon2id_MEMLIMIT_MODERATE
crypto_pwhash_argon2id_MEMLIMIT_SENSITIVE
crypto_pwhash_argon2id_OPSLIMIT_INTERACTIVE
crypto_pwhash_argon2id_OPSLIMIT_MODERATE
crypto_pwhash_argon2id_OPSLIMIT_SENSITIVE
crypto_pwhash_SALTBYTES
crypto_pwhash_STRBYTES
crypto_pwhash_scryptsalsa208sha256_BYTES_MAX
crypto_pwhash_scryptsalsa208sha256_BYTES_MIN
crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_MAX
crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_MIN
crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_INTERACTIVE
crypto_pwhash_scryptsalsa208sha256_MEMLIMIT_SENSITIVE
crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_MAX
crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_MIN
crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_INTERACTIVE
crypto_pwhash_scryptsalsa208sha256_OPSLIMIT_SENSITIVE
crypto_pwhash_scryptsalsa208sha256_PASSWD_MAX
crypto_pwhash_scryptsalsa208sha256_PASSWD_MIN
crypto_pwhash_scryptsalsa208sha256_SALTBYTES
crypto_pwhash_scryptsalsa208sha256_STRBYTES
crypto_pwhash_scryptsalsa208sha256_STRPREFIX
crypto_scalarmult_BYTES
crypto_scalarmult_SCALARBYTES
crypto_scalarmult_curve25519_BYTES
crypto_secretbox_BOXZEROBYTES
crypto_secretbox_KEYBYTES
crypto_secretbox_KEYBYTES
crypto_secretbox_MACBYTES
crypto_secretbox_NONCEBYTES
crypto_secretbox_ZEROBYTES
crypto_secretstream_xchacha20poly1305_STATEBYTES
crypto_secretstream_xchacha20poly1305_ABYTES
crypto_secretstream_xchacha20poly1305_HEADERBYTES
crypto_secretstream_xchacha20poly1305_KEYBYTES
crypto_secretstream_xchacha20poly1305_MESSAGEBYTES_MAX
crypto_secretstream_xchacha20poly1305_TAG_MESSAGE
crypto_secretstream_xchacha20poly1305_TAG_PUSH
crypto_secretstream_xchacha20poly1305_TAG_REKEY
crypto_secretstream_xchacha20poly1305_TAG_FINAL
crypto_sign_BYTES
crypto_sign_PUBLICKEYBYTES
crypto_sign_SECRETKEYBYTES
crypto_sign_SEEDBYTES
crypto_sign_ed25519_PUBLICKEYBYTES
crypto_sign_ed25519_SECRETKEYBYTES
crypto_stream_KEYBYTES
crypto_stream_NONCEBYTES
crypto_stream_chacha20_NONCEBYTES
crypto_stream_chacha20_KEYBYTES
crypto_stream_chacha20_ietf_NONCEBYTES
crypto_stream_chacha20_ietf_KEYBYTES
crypto_stream_xchacha20_NONCEBYTES
crypto_stream_xchacha20_KEYBYTES
crypto_core_ristretto255_BYTES
crypto_core_ristretto255_HASHBYTES
crypto_core_ristretto255_SCALARBYTES
crypto_core_ristretto255_NONREDUCEDSCALARBYTES
crypto_auth_hmacsha256_BYTES
crypto_auth_hmacsha256_KEYBYTES
crypto_auth_hmacsha512_BYTES
crypto_auth_hmacsha512_KEYBYTES
crypto_auth_hmacsha512256_BYTES
crypto_auth_hmacsha512256_KEYBYTES
crypto_kdf_hkdf_sha256_KEYBYTES
crypto_kdf_hkdf_sha256_BYTES_MIN
crypto_kdf_hkdf_sha256_BYTES_MAX
crypto_kdf_hkdf_sha256_STATEBYTES
```



Note

most of the the `*_easy` functions are not implemented as the "non-easy"
functions provide already the "easy" interface, which hides the placement of
buffers in memory, which makes little sense in python, so this wrapper handles
this.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/stef/pysodium",
    "name": "pysodium",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "cryptography API NaCl libsodium",
    "author": "Stefan Marsiske",
    "author_email": "s@ctrlc.hu",
    "download_url": "https://files.pythonhosted.org/packages/2d/90/48d5b497b26169ca4e1caf7b2d60420fd8549e89b19c963f69abcbdce787/pysodium-0.7.16.tar.gz",
    "platform": null,
    "description": "This is a very simple wrapper around libsodium masquerading as nacl.\n\n[![Build Status](https://travis-ci.org/stef/pysodium.svg?branch=master)](https://travis-ci.org/stef/pysodium)\n\nThis wrapper requires a pre-installed libsodium from:\n\n   https://github.com/jedisct1/libsodium\n\nthen it provides access to the following functions:\n\n```\ncrypto_aead_aegis128l_decrypt(ciphertext, ad, nonce, key)\ncrypto_aead_aegis128l_encrypt(message, ad, nonce, key)\ncrypto_aead_aegis128l_decrypt_detached(ciphertext, mac, ad, nonce, key)\ncrypto_aead_aegis128l_encrypt_detached(message, ad, nonce, key)\ncrypto_aead_aegis256_decrypt(ciphertext, ad, nonce, key)\ncrypto_aead_aegis256_encrypt(message, ad, nonce, key)\ncrypto_aead_aegis256_decrypt_detached(ciphertext, mac, ad, nonce, key)\ncrypto_aead_aegis256_encrypt_detached(message, ad, nonce, key)\ncrypto_aead_chacha20poly1305_decrypt(ciphertext, ad, nonce, key)\ncrypto_aead_chacha20poly1305_encrypt(message, ad, nonce, key)\ncrypto_aead_chacha20poly1305_decrypt_detached(ciphertext, mac, ad, nonce, key)\ncrypto_aead_chacha20poly1305_encrypt_detached(message, ad, nonce, key)\ncrypto_aead_chacha20poly1305_ietf_decrypt(ciphertext, ad, nonce, key)\ncrypto_aead_chacha20poly1305_ietf_encrypt(message, ad, nonce, key)\ncrypto_aead_chacha20poly1305_ietf_decrypt_detached(ciphertext, mac, ad, nonce, key)\ncrypto_aead_chacha20poly1305_ietf_encrypt_detached(message, ad, nonce, key)\ncrypto_aead_xchacha20poly1305_ietf_decrypt(ciphertext, ad, nonce, key)\ncrypto_aead_xchacha20poly1305_ietf_encrypt(message, ad, nonce, key)\ncrypto_auth(message, key)\ncrypto_auth_verify(tag, message, key)\ncrypto_box_afternm(msg, nonce, k)\ncrypto_box_beforenm(pk, sk)\ncrypto_box_detached(msg, nonce, pk, sk)\ncrypto_box_keypair()\ncrypto_box(msg, nonce, pk, sk)\ncrypto_box_open_afternm(c, nonce, k)\ncrypto_box_open(c, nonce, pk, sk)\ncrypto_box_open_detached(c, mac, nonce, pk, sk)\ncrypto_box_seal(msg, pk)\ncrypto_box_seal_open(c, pk, sk)\ncrypto_box_seed_keypair(seed)\ncrypto_generichash_blake2b_salt_personal(message, outlen = crypto_generichash_blake2b_BYTES, key = b'', salt = b'', personal = b'')\ncrypto_generichash_final(state, outlen=crypto_generichash_BYTES)\ncrypto_generichash_init(outlen=crypto_generichash_BYTES, k=b'')\ncrypto_generichash(m, k=b'', outlen=crypto_generichash_BYTES)\ncrypto_generichash_update(state, m)\ncrypto_hash_sha256(message)\ncrypto_hash_sha512(message)\ncrypto_hash_sha512_init()\ncrypto_hash_sha512_update(state, data)\ncrypto_hash_sha512_final(state)\ncrypto_kx_client_session_keys(client_pk, client_sk, server_pk)\ncrypto_kx_keypair()\ncrypto_kx_server_session_keys(server_pk, server_sk, client_pk)\ncrypto_pwhash(outlen, passwd, salt, opslimit, memlimit, alg)\ncrypto_pwhash_scryptsalsa208sha256(outlen, passwd, salt, opslimit, memlimit)\ncrypto_pwhash_scryptsalsa208sha256_str(passwd, opslimit, memlimit)\ncrypto_pwhash_scryptsalsa208sha256_str_verify(stored, passwd)\ncrypto_pwhash_str(passwd, opslimit, memlimit)\ncrypto_pwhash_str_verify(pstr, passwd)\ncrypto_scalarmult_base(n)\ncrypto_scalarmult_curve25519_base(n)\ncrypto_scalarmult_curve25519(n, p)\ncrypto_secretbox(msg, nonce, k)\ncrypto_secretbox_detached(msg, nonce, k)\ncrypto_secretbox_open(c, nonce, k)\ncrypto_secretbox_open_detached(c, mac, nonce, k)\ncrypto_secretstream_xchacha20poly1305_keygen():\ncrypto_secretstream_xchacha20poly1305_init_push(key):\ncrypto_secretstream_xchacha20poly1305_init_pull(header, key):\ncrypto_secretstream_xchacha20poly1305_rekey(state):\ncrypto_secretstream_xchacha20poly1305_push(state, message, ad, tag):\ncrypto_secretstream_xchacha20poly1305_pull(state, ciphertext, ad):\ncrypto_sign_init()\ncrypto_sign_update(state, m)\ncrypto_sign_final_create(state, sk)\ncrypto_sign_final_verify(state, sig, pk)\ncrypto_sign_detached(m, sk)\ncrypto_sign_keypair()\ncrypto_sign(m, sk)\ncrypto_sign_open(sm, pk)\ncrypto_sign_pk_to_box_pk(pk)\ncrypto_sign_seed_keypair(seed)\ncrypto_sign_sk_to_box_sk(sk)\ncrypto_sign_sk_to_pk(sk)\ncrypto_sign_sk_to_seed(sk)\ncrypto_sign_verify_detached(sig, msg, pk)\ncrypto_stream_chacha20_xor(message, nonce, key)\ncrypto_stream_chacha20_xor_ic(message, nonce, initial_counter, key)\ncrypto_stream_chacha20_ietf_xor(message, nonce, key)\ncrypto_stream_chacha20_ietf_xor_ic(message, nonce, initial_counter, key)\ncrypto_stream_xchacha20_xor(message, nonce, key)\ncrypto_stream_xchacha20_xor_ic(message, nonce, initial_counter, key)\ncrypto_stream(cnt, nonce=None, key=None)\ncrypto_stream_xor(msg, cnt, nonce=None, key=None)\nrandombytes(size)\nsodium_increment(bytes)\ncrypto_core_ristretto255_is_valid_point(p)\ncrypto_core_ristretto255_from_hash(r)\ncrypto_scalarmult_ristretto255(n, p)\ncrypto_scalarmult_ristretto255_base(n)\ncrypto_core_ristretto255_scalar_random()\ncrypto_core_ristretto255_scalar_invert(s)\ncrypto_core_ristretto255_scalar_reduce(s)\ncrypto_core_ristretto255_add(p, q)\ncrypto_core_ristretto255_sub(p,q)\ncrypto_core_ristretto255_random()\ncrypto_core_ristretto255_scalar_negate(s)\ncrypto_core_ristretto255_scalar_complement(s)\ncrypto_core_ristretto255_scalar_add(x,y)\ncrypto_core_ristretto255_scalar_sub(x,y)\ncrypto_core_ristretto255_scalar_mul(x,y)\ncrypto_auth_hmacsha256_keygen\ncrypto_auth_hmacsha256\ncrypto_auth_hmacsha256_verify\ncrypto_auth_hmacsha512_keygen\ncrypto_auth_hmacsha512\ncrypto_auth_hmacsha512_verify\ncrypto_auth_hmacsha512256_keygen\ncrypto_auth_hmacsha512256\ncrypto_auth_hmacsha512256_verify\ncrypto_kdf_hkdf_sha256_extract_init(salt=b'')\ncrypto_kdf_hkdf_sha256_extract_update(state, ikm=b'')\ncrypto_kdf_hkdf_sha256_extract_final(state)\ncrypto_kdf_hkdf_sha256_extract(salt=b'', ikm=b'')\ncrypto_kdf_hkdf_sha256_keygen()\ncrypto_kdf_hkdf_sha256_expand(outlen, prk, ctx=b'')\ncrypto_kdf_hkdf_sha512_extract_init(salt=b'')\ncrypto_kdf_hkdf_sha512_extract_update(state, ikm=b'')\ncrypto_kdf_hkdf_sha512_extract_final(state)\ncrypto_kdf_hkdf_sha512_extract(salt=b'', ikm=b'')\ncrypto_kdf_hkdf_sha512_keygen()\ncrypto_kdf_hkdf_sha512_expand(outlen, prk, ctx=b'')\n```\n\nConstants:\n\n```\ncrypto_aead_chacha20poly1305_ABYTES\ncrypto_aead_chacha20poly1305_KEYBYTES\ncrypto_aead_chacha20poly1305_NPUBBYTES\ncrypto_aead_chacha20poly1305_ietf_KEYBYTES\ncrypto_aead_chacha20poly1305_ietf_NPUBBYTES\ncrypto_aead_chacha20poly1305_ietf_ABYTES\ncrypto_aead_xchacha20poly1305_ietf_KEYBYTES\ncrypto_aead_xchacha20poly1305_ietf_NPUBBYTES\ncrypto_aead_xchacha20poly1305_ietf_ABYTES\ncrypto_auth_BYTES\ncrypto_auth_KEYBYTES\ncrypto_box_BEFORENMBYTES\ncrypto_box_BOXZEROBYTES\ncrypto_box_MACBYTES\ncrypto_box_NONCEBYTES\ncrypto_box_PUBLICKEYBYTES\ncrypto_box_SEALBYTES\ncrypto_box_SECRETKEYBYTES\ncrypto_box_SEEDBYTES\ncrypto_box_ZEROBYTES\ncrypto_generichash_KEYBYTES_MAX\ncrypto_generichash_BYTES\ncrypto_generichash_BYTES_MAX\ncrypto_generichash_BYTES_MIN\ncrypto_generichash_STATEBYTES\ncrypto_generichash_blake2b_BYTES\ncrypto_generichash_blake2b_BYTES_MAX\ncrypto_generichash_blake2b_BYTES_MIN\ncrypto_generichash_blake2b_KEYBYTES_MAX\ncrypto_generichash_blake2b_PERSONALBYTES\ncrypto_generichash_blake2b_SALTBYTES\ncrypto_hash_sha256_BYTES\ncrypto_hash_sha512_BYTES\ncrypto_hash_sha512_STATEBYTES\ncrypto_kx_PUBLICKEYBYTES\ncrypto_kx_SECRETKEYBYTES\ncrypto_kx_SESSIONKEYBYTES\ncrypto_pwhash_ALG_DEFAULT\ncrypto_pwhash_ALG_ARGON2I13\ncrypto_pwhash_ALG_ARGON2ID13\ncrypto_pwhash_BYTES_MAX\ncrypto_pwhash_BYTES_MIN\ncrypto_pwhash_MEMLIMIT_MAX\ncrypto_pwhash_MEMLIMIT_MIN\ncrypto_pwhash_MEMLIMIT_INTERACTIVE\ncrypto_pwhash_MEMLIMIT_MODERATE\ncrypto_pwhash_MEMLIMIT_SENSITIVE\ncrypto_pwhash_OPSLIMIT_MAX\ncrypto_pwhash_OPSLIMIT_MIN\ncrypto_pwhash_OPSLIMIT_INTERACTIVE\ncrypto_pwhash_OPSLIMIT_MODERATE\ncrypto_pwhash_OPSLIMIT_SENSITIVE\ncrypto_pwhash_PASSWD_MAX\ncrypto_pwhash_PASSWD_MIN\ncrypto_pwhash_argon2i_MEMLIMIT_INTERACTIVE\ncrypto_pwhash_argon2i_MEMLIMIT_MODERATE\ncrypto_pwhash_argon2i_MEMLIMIT_SENSITIVE\ncrypto_pwhash_argon2i_OPSLIMIT_INTERACTIVE\ncrypto_pwhash_argon2i_OPSLIMIT_MODERATE\ncrypto_pwhash_argon2i_OPSLIMIT_SENSITIVE\ncrypto_pwhash_argon2id_MEMLIMIT_INTERACTIVE\ncrypto_pwhash_argon2id_MEMLIMIT_MODERATE\ncrypto_pwhash_argon2id_MEMLIMIT_SENSITIVE\ncrypto_pwhash_argon2id_OPSLIMIT_INTERACTIVE\ncrypto_pwhash_argon2id_OPSLIMIT_MODERATE\ncrypto_pwhash_argon2id_OPSLIMIT_SENSITIVE\ncrypto_pwhash_SALTBYTES\ncrypto_pwhash_STRBYTES\ncrypto_pwhash_scryptsalsa208sha256_BYTES_MAX\ncrypto_pwhash_scryptsalsa208sha256_BYTES_MIN\ncrypto_pwhash_scryptsalsa208sha256_MEMLIMIT_MAX\ncrypto_pwhash_scryptsalsa208sha256_MEMLIMIT_MIN\ncrypto_pwhash_scryptsalsa208sha256_MEMLIMIT_INTERACTIVE\ncrypto_pwhash_scryptsalsa208sha256_MEMLIMIT_SENSITIVE\ncrypto_pwhash_scryptsalsa208sha256_OPSLIMIT_MAX\ncrypto_pwhash_scryptsalsa208sha256_OPSLIMIT_MIN\ncrypto_pwhash_scryptsalsa208sha256_OPSLIMIT_INTERACTIVE\ncrypto_pwhash_scryptsalsa208sha256_OPSLIMIT_SENSITIVE\ncrypto_pwhash_scryptsalsa208sha256_PASSWD_MAX\ncrypto_pwhash_scryptsalsa208sha256_PASSWD_MIN\ncrypto_pwhash_scryptsalsa208sha256_SALTBYTES\ncrypto_pwhash_scryptsalsa208sha256_STRBYTES\ncrypto_pwhash_scryptsalsa208sha256_STRPREFIX\ncrypto_scalarmult_BYTES\ncrypto_scalarmult_SCALARBYTES\ncrypto_scalarmult_curve25519_BYTES\ncrypto_secretbox_BOXZEROBYTES\ncrypto_secretbox_KEYBYTES\ncrypto_secretbox_KEYBYTES\ncrypto_secretbox_MACBYTES\ncrypto_secretbox_NONCEBYTES\ncrypto_secretbox_ZEROBYTES\ncrypto_secretstream_xchacha20poly1305_STATEBYTES\ncrypto_secretstream_xchacha20poly1305_ABYTES\ncrypto_secretstream_xchacha20poly1305_HEADERBYTES\ncrypto_secretstream_xchacha20poly1305_KEYBYTES\ncrypto_secretstream_xchacha20poly1305_MESSAGEBYTES_MAX\ncrypto_secretstream_xchacha20poly1305_TAG_MESSAGE\ncrypto_secretstream_xchacha20poly1305_TAG_PUSH\ncrypto_secretstream_xchacha20poly1305_TAG_REKEY\ncrypto_secretstream_xchacha20poly1305_TAG_FINAL\ncrypto_sign_BYTES\ncrypto_sign_PUBLICKEYBYTES\ncrypto_sign_SECRETKEYBYTES\ncrypto_sign_SEEDBYTES\ncrypto_sign_ed25519_PUBLICKEYBYTES\ncrypto_sign_ed25519_SECRETKEYBYTES\ncrypto_stream_KEYBYTES\ncrypto_stream_NONCEBYTES\ncrypto_stream_chacha20_NONCEBYTES\ncrypto_stream_chacha20_KEYBYTES\ncrypto_stream_chacha20_ietf_NONCEBYTES\ncrypto_stream_chacha20_ietf_KEYBYTES\ncrypto_stream_xchacha20_NONCEBYTES\ncrypto_stream_xchacha20_KEYBYTES\ncrypto_core_ristretto255_BYTES\ncrypto_core_ristretto255_HASHBYTES\ncrypto_core_ristretto255_SCALARBYTES\ncrypto_core_ristretto255_NONREDUCEDSCALARBYTES\ncrypto_auth_hmacsha256_BYTES\ncrypto_auth_hmacsha256_KEYBYTES\ncrypto_auth_hmacsha512_BYTES\ncrypto_auth_hmacsha512_KEYBYTES\ncrypto_auth_hmacsha512256_BYTES\ncrypto_auth_hmacsha512256_KEYBYTES\ncrypto_kdf_hkdf_sha256_KEYBYTES\ncrypto_kdf_hkdf_sha256_BYTES_MIN\ncrypto_kdf_hkdf_sha256_BYTES_MAX\ncrypto_kdf_hkdf_sha256_STATEBYTES\n```\n\n\n\nNote\n\nmost of the the `*_easy` functions are not implemented as the \"non-easy\"\nfunctions provide already the \"easy\" interface, which hides the placement of\nbuffers in memory, which makes little sense in python, so this wrapper handles\nthis.\n",
    "bugtrack_url": null,
    "license": "BSD",
    "summary": "python libsodium wrapper",
    "version": "0.7.16",
    "project_urls": {
        "Homepage": "https://github.com/stef/pysodium"
    },
    "split_keywords": [
        "cryptography",
        "api",
        "nacl",
        "libsodium"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "2d9048d5b497b26169ca4e1caf7b2d60420fd8549e89b19c963f69abcbdce787",
                "md5": "61c6615cef65afb851d4b99f4ef76594",
                "sha256": "89082a0a1d32f66df9bec297f9ec9510e9fc352a845d07251112f6308d637930"
            },
            "downloads": -1,
            "filename": "pysodium-0.7.16.tar.gz",
            "has_sig": false,
            "md5_digest": "61c6615cef65afb851d4b99f4ef76594",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 25582,
            "upload_time": "2023-11-29T23:35:07",
            "upload_time_iso_8601": "2023-11-29T23:35:07.666387Z",
            "url": "https://files.pythonhosted.org/packages/2d/90/48d5b497b26169ca4e1caf7b2d60420fd8549e89b19c963f69abcbdce787/pysodium-0.7.16.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-11-29 23:35:07",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "stef",
    "github_project": "pysodium",
    "travis_ci": true,
    "coveralls": false,
    "github_actions": true,
    "lcname": "pysodium"
}
        
Elapsed time: 0.14488s