Search.setIndex({docnames:["api/hash","api/hashlib","api/pwhash","changelog","doing-a-release","encoding","exceptions","hashing","index","install","password_hashing","public","secret","signing","utils","vectors/argon2_vectors","vectors/blake2_vectors","vectors/bundled_library_build","vectors/index","vectors/scrypt_vectors","vectors/sealedbox_vectors","vectors/secretstream_vectors"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":4,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":3,"sphinx.domains.rst":2,"sphinx.domains.std":2,"sphinx.ext.intersphinx":1,"sphinx.ext.viewcode":1,sphinx:56},filenames:["api/hash.rst","api/hashlib.rst","api/pwhash.rst","changelog.rst","doing-a-release.rst","encoding.rst","exceptions.rst","hashing.rst","index.rst","install.rst","password_hashing.rst","public.rst","secret.rst","signing.rst","utils.rst","vectors/argon2_vectors.rst","vectors/blake2_vectors.rst","vectors/bundled_library_build.rst","vectors/index.rst","vectors/scrypt_vectors.rst","vectors/sealedbox_vectors.rst","vectors/secretstream_vectors.rst"],objects:{"nacl.encoding":[[5,0,1,"","Base16Encoder"],[5,0,1,"","Base32Encoder"],[5,0,1,"","Base64Encoder"],[5,0,1,"","HexEncoder"],[5,0,1,"","RawEncoder"],[5,0,1,"","URLSafeBase64Encoder"]],"nacl.exceptions":[[6,0,1,"","AssertionError"],[6,0,1,"","BadSignatureError"],[6,0,1,"","CryptoError"],[6,0,1,"","InvalidkeyError"],[6,0,1,"","RuntimeError"],[6,0,1,"","TypeError"],[6,0,1,"","UnavailableError"],[6,0,1,"","ValueError"],[6,1,1,"","ensure"]],"nacl.hash":[[0,1,1,"","blake2b"],[0,1,1,"","sha256"],[0,1,1,"","sha512"],[0,1,1,"","siphash24"],[0,1,1,"","siphashx24"]],"nacl.hashlib":[[1,0,1,"","blake2b"],[1,1,1,"","scrypt"]],"nacl.hashlib.blake2b":[[1,2,1,"","MAX_DIGEST_SIZE"],[1,2,1,"","MAX_KEY_SIZE"],[1,2,1,"","PERSON_SIZE"],[1,2,1,"","SALT_SIZE"]],"nacl.public":[[11,0,1,"","Box"],[11,0,1,"","PrivateKey"],[11,0,1,"","PublicKey"],[11,0,1,"","SealedBox"]],"nacl.public.Box":[[11,3,1,"","decode"],[11,3,1,"","decrypt"],[11,3,1,"","encrypt"],[11,3,1,"","shared_key"]],"nacl.public.PrivateKey":[[11,3,1,"","generate"],[11,2,1,"","public_key"]],"nacl.public.SealedBox":[[11,3,1,"","decrypt"],[11,3,1,"","encrypt"]],"nacl.pwhash":[[2,5,1,"","MEMLIMIT_INTERACTIVE"],[2,5,1,"","MEMLIMIT_MAX"],[2,5,1,"","MEMLIMIT_MIN"],[2,5,1,"","MEMLIMIT_MODERATE"],[2,5,1,"","MEMLIMIT_SENSITIVE"],[2,5,1,"","OPSLIMIT_INTERACTIVE"],[2,5,1,"","OPSLIMIT_MAX"],[2,5,1,"","OPSLIMIT_MIN"],[2,5,1,"","OPSLIMIT_MODERATE"],[2,5,1,"","OPSLIMIT_SENSITIVE"],[2,5,1,"","PASSWD_MAX"],[2,5,1,"","PASSWD_MIN"],[2,5,1,"","PWHASH_SIZE"],[2,4,0,"-","argon2i"],[2,4,0,"-","argon2id"],[2,4,0,"-","scrypt"],[2,1,1,"","str"],[2,1,1,"","verify"]],"nacl.pwhash.argon2i":[[2,5,1,"","BYTES_MAX"],[2,5,1,"","BYTES_MIN"],[2,5,1,"","MEMLIMIT_INTERACTIVE"],[2,5,1,"","MEMLIMIT_MAX"],[2,5,1,"","MEMLIMIT_MIN"],[2,5,1,"","MEMLIMIT_MODERATE"],[2,5,1,"","MEMLIMIT_SENSITIVE"],[2,5,1,"","OPSLIMIT_INTERACTIVE"],[2,5,1,"","OPSLIMIT_MAX"],[2,5,1,"","OPSLIMIT_MIN"],[2,5,1,"","OPSLIMIT_MODERATE"],[2,5,1,"","OPSLIMIT_SENSITIVE"],[2,5,1,"","PASSWD_MAX"],[2,5,1,"","PASSWD_MIN"],[2,5,1,"","PWHASH_SIZE"],[2,5,1,"","SALTBYTES"],[2,1,1,"","kdf"],[2,1,1,"","str"],[2,1,1,"","verify"]],"nacl.pwhash.argon2id":[[2,5,1,"","BYTES_MAX"],[2,5,1,"","BYTES_MIN"],[2,5,1,"","MEMLIMIT_INTERACTIVE"],[2,5,1,"","MEMLIMIT_MAX"],[2,5,1,"","MEMLIMIT_MIN"],[2,5,1,"","MEMLIMIT_MODERATE"],[2,5,1,"","MEMLIMIT_SENSITIVE"],[2,5,1,"","OPSLIMIT_INTERACTIVE"],[2,5,1,"","OPSLIMIT_MAX"],[2,5,1,"","OPSLIMIT_MIN"],[2,5,1,"","OPSLIMIT_MODERATE"],[2,5,1,"","OPSLIMIT_SENSITIVE"],[2,5,1,"","PASSWD_MAX"],[2,5,1,"","PASSWD_MIN"],[2,5,1,"","PWHASH_SIZE"],[2,5,1,"","SALTBYTES"],[2,1,1,"","kdf"],[2,1,1,"","str"],[2,1,1,"","verify"]],"nacl.pwhash.scrypt":[[2,5,1,"","BYTES_MAX"],[2,5,1,"","BYTES_MIN"],[2,5,1,"","MEMLIMIT_INTERACTIVE"],[2,5,1,"","MEMLIMIT_MAX"],[2,5,1,"","MEMLIMIT_MIN"],[2,5,1,"","MEMLIMIT_MODERATE"],[2,5,1,"","MEMLIMIT_SENSITIVE"],[2,5,1,"","OPSLIMIT_INTERACTIVE"],[2,5,1,"","OPSLIMIT_MAX"],[2,5,1,"","OPSLIMIT_MIN"],[2,5,1,"","OPSLIMIT_MODERATE"],[2,5,1,"","OPSLIMIT_SENSITIVE"],[2,5,1,"","PASSWD_MAX"],[2,5,1,"","PASSWD_MIN"],[2,5,1,"","PWHASH_SIZE"],[2,5,1,"","SALTBYTES"],[2,1,1,"","kdf"],[2,1,1,"","str"],[2,1,1,"","verify"]],"nacl.secret":[[12,0,1,"","SecretBox"]],"nacl.secret.SecretBox":[[12,3,1,"","decrypt"],[12,3,1,"","encrypt"]],"nacl.signing":[[13,0,1,"","SignedMessage"],[13,0,1,"","SigningKey"],[13,0,1,"","VerifyKey"]],"nacl.signing.SignedMessage":[[13,2,1,"","message"],[13,2,1,"","signature"]],"nacl.signing.SigningKey":[[13,3,1,"","generate"],[13,3,1,"","sign"],[13,2,1,"","verify_key"]],"nacl.signing.VerifyKey":[[13,3,1,"","verify"]],"nacl.utils":[[14,0,1,"","EncryptedMessage"],[14,1,1,"","random"],[14,1,1,"","randombytes_deterministic"]],"nacl.utils.EncryptedMessage":[[14,2,1,"","ciphertext"],[14,2,1,"","nonce"]],nacl:[[2,4,0,"-","pwhash"]]},objnames:{"0":["py","class","Python class"],"1":["py","function","Python function"],"2":["py","attribute","Python attribute"],"3":["py","method","Python method"],"4":["py","module","Python module"],"5":["py","data","Python data"]},objtypes:{"0":"py:class","1":"py:function","2":"py:attribute","3":"py:method","4":"py:module","5":"py:data"},terms:{"0":[4,7,8,10,12,15,20,21],"01":8,"03":8,"04":8,"05":8,"07":8,"09":8,"1":[0,1,2,4,6,7,8,9,10,12,13,15,19,20,21],"10":[15,16],"100":19,"1024":[7,19],"109000":13,"11":[8,9],"12":8,"128":[1,3,13,18,20],"12b413c70c148d79bb57a1542156c5f35e24ad77c38e8c0e776d055e827cdd45":7,"13":15,"134000":13,"14":[1,8,15,21],"140":13,"15":[8,10],"16":[3,7,11,12,15],"16mb":1,"18":[3,15],"19":10,"1gb":1,"2":[0,1,2,4,5,6,8,10,13,15,18,19,20,21],"20":[1,19],"20000":19,"2008":13,"2010":13,"2012":1,"2015":8,"2016":[1,8],"2017":[8,20],"2018":[8,21],"2020":8,"2021":3,"2022":8,"2048":20,"23":8,"24":[8,11,12],"25":[1,8],"256":[7,13],"26":8,"273364":13,"2d":15,"3":[1,8,15,19,20],"3000":13,"31":8,"32":[3,11,12,13,14,15,19,21],"3235362042797465734d6573736167653235362042797465734d657373616765":7,"3235362042797465734d6573736167653235362042797465734d6573736167653235362042797465734d6573736167653235362042797465734d6573736167653235362042797465734d6573736167653235362042797465734d6573736167653235362042797465734d6573736167653235362042797465734d6573736167653235362042797465734d6573736167653235362042797465734d6573736167653235362042797465734d6573736167653235362042797465734d6573736167653235362042797465734d6573736167653235362042797465734d6573736167653235362042797465734d6573736167653235362042797465734d657373616765":7,"32768":10,"370":3,"3d":15,"3d218uchmvdvn6ewsvkhmaskzig51xpiszqdcktkyn7":10,"4":[0,8,10,13,18,20],"40":[11,12],"481":3,"485":3,"495":3,"4ghz":13,"5":[8,9,15,18,20],"512":[13,21],"517":3,"519":3,"55":13,"6":[1,3,8,19],"6000":13,"64":[1,7,13,15],"65536":10,"7":[3,10],"71000":13,"77076d":20,"7816":3,"7914":19,"8":[1,3,7,10,11,12,13,15,19],"87548":13,"8c86":20,"9nvu0":10,"break":[13,21],"byte":[0,1,2,3,7,11,12,13,14,20],"case":[2,9,10,13,18,21],"char":[20,21],"class":[0,1,5,6,11,12,13,14,15],"default":[0,2,3,6,10,15,16,18,20,21],"do":[8,11,12,13,16,20,21],"export":17,"final":[1,11,12],"function":[3,7,8,10,11,12,13],"import":[3,5,7,8,10,11,12,13,15,19],"int":[0,1,2,13,15,20,21],"long":[0,1,2,7,12,13,21],"new":[0,2,3,4,12,13],"null":[20,21],"public":[3,8,13,18,20],"return":[0,1,2,3,5,6,7,10,11,12,13,14,15,20,21],"short":[3,13],"static":5,"switch":21,"true":[6,10,15],"try":[3,6],"void":20,"while":[10,13,16,18,19,20,21],A:[0,8,9,10,11,12,13,14,20],AS:[20,21],As:[2,7],But:11,By:[7,11],For:[5,11,12],IS:[20,21],If:[0,1,2,3,9,10,11,12,13,17,20,21],In:[10,11,18,20,21],It:[0,8,11,12],No:13,OF:[20,21],OR:[20,21],On:[16,17],One:[0,11],The:[0,1,2,3,7,10,11,12,13,14,15,18,19,20,21],Then:5,There:13,These:[6,8,10,13,18],To:[3,4,7,10,15,16,20,21],Will:13,__init__:[4,15],__iter__:15,__main__:15,__name__:15,__next__:15,_genpw:15,_gensalt:15,_interact:10,_moder:10,_runonc:15,_sensit:10,abil:[11,12],abl:[0,10,11,12,13],about:[12,13],abov:[7,13],absolut:3,accept:18,accident:12,achiev:13,action:15,actual:[10,11,13],ad:[1,3,19,21],ad_hex:21,ad_len:21,add:[3,13],add_argu:15,addit:[3,8,18],address:[11,13],aead:3,aead_xchacha20poly1305:18,aeadtest:18,after:[6,11,12,16,17,20],against:[3,10,13,20],agl:18,agre:[20,21],algorithm:[7,8,16],alic:[10,11],alice_box:11,alices_box:10,alices_kei:10,all:[3,6,7,9,10,11,13,17],allow:[1,2,3,10,11,12,13,15],almost:13,along:[2,7,10,11,12,15],alongsid:[10,11,12],alreadi:7,also:[2,10,11,12,13,15,20,21],alter:13,alwai:12,an:[0,1,2,3,9,10,11,12,13,20,21],analog:12,ani:[3,6,11,12,18,20,21],anoth:[10,12],answer:16,anyon:[11,12,13],anyth:12,apach:[20,21],api:[1,2,3,15,19,20,21],append:[15,20],applic:[18,20,21],ar:[1,2,3,4,5,6,7,9,10,11,12,13,15,18],arbitrari:[11,12],architectur:3,arg:[6,15],argc:[20,21],argon2:[10,18],argon2d:15,argon2i:[3,8,10,15],argon2id:[3,8,10,15],argondriv:15,argonrunn:15,argpars:15,argument:[3,5,6,9,20],argumentpars:15,argv:[15,20,21],arithmet:3,arm64:3,around:11,arrai:13,arriv:11,ascii:[2,10,15,19],ascii_lett:15,assert:12,assertionerror:6,associ:10,atoi:[20,21],attack:[10,12,13],attempt:[2,12],attract:13,attribut:12,auth1_kei:7,auth_kei:7,authent:[0,2,8,11,12,13,18],author:11,authorship:11,automat:[3,11,12],avail:[3,6,10,13,15,16,18,20,21],averag:13,avoid:[3,10,12,13,17],b:[0,1,7,10,11,12,13,19],backward:3,badsignatureerror:[6,13],base16encod:5,base32encod:5,base64:13,base64encod:[5,13],base:[6,8,9,10,12,13],baselin:9,basi:[20,21],batch:13,becaus:11,been:[2,3,10,11,13,14,15,18,20],befor:[7,11],behavior:[3,20],being:[1,13,18],believ:13,belong:11,below:[10,13],best:13,between:[2,3,10,11,13],bidirect:[11,12],big:3,bin:15,binari:[3,8,11,12],binascii:5,bind:[3,7,19],bit:[3,12,13,18],black:7,blake2:16,blake2b:[0,1,3,8,18],blake2b_byt:0,blake2b_bytes_max:0,blake2b_keybytes_max:0,blake2b_personalbyt:0,blake2b_saltbyt:0,blake:16,blob:[11,12],block:[1,7,13],block_siz:1,bob:[10,11],bob_box:11,bobs_box:10,bobs_kei:10,bool:6,both:[6,7,10,11,12,13,16,18,19,20],bound:11,box2:18,box:[3,7,12,14],box_seal:20,branch:13,brown:19,buffer:1,bug:3,build:[0,1,2,3,6,7,8,18,20,21],builder:3,built:[8,9,15,16],bump:4,bundl:[3,9,18,20,21],burden:3,bytes_max:[2,10],bytes_min:[2,10],bytesmessag:7,bytestr:[11,12,14],c6:10,c:[3,9,15,16,17,18,20,21],cach:13,calcul:13,call:[0,1,2,3,6,7,10,11,12,13,15,20,21],caller:[2,6],came:11,can:[2,3,4,5,6,7,9,10,11,12,13,15,16,17,20,21],cannot:[11,13,15],care:10,carefulli:13,carri:11,catastroph:13,caus:[11,12],cc:[17,20,21],cd:[16,17],cento:9,cffi:3,chacha20:3,chang:[3,7,10,18],changelog:4,channel:[12,13],check:[2,3,6,8,10,11,12,13,19,20],checker:[7,10,18],checkon:20,chk:[7,21],choic:[10,15],choos:11,choosen:[0,2,10],chr:15,chunk:21,cipher:[11,12,13],ciphertext:[10,11,12,14,20,21],circular:3,clariti:6,classmethod:[11,13],cleanup:6,clear:10,clone:[16,20],cmd:21,cmpencrypt:20,cmpplaintext:20,code:[3,18],collis:13,com:[15,16],combin:[7,10,12,13,14],come:18,command:[9,15,16,17,20,21],commun:15,compat:[1,3,6,15],competit:10,compier:17,compil:[3,17,20,21],complet:[4,9,13],complianc:[10,20,21],compon:2,compromis:[11,12,13],comput:[0,2,7,13],concaten:13,cond:6,condit:[6,13,20,21],configur:[3,6,17],conform:18,connect:12,consid:[11,12],constant:[2,3],construct:[1,2,3,7,10,11,16,20,21],constructor:6,consumpt:10,contain:[1,13,14,20,21],content:[10,12,13,14],continu:[3,20],contrari:10,contribut:1,contributor:[20,21],contruct:15,contructor:1,convent:3,convert:3,copi:[1,9,13,20,21],copyright:[20,21],core:13,correct:[2,10,20],correspond:[1,2,10,11,13,18,20,21],corrupt:[6,13],cost:[1,2,13],could:[7,12,19,20],count:[2,10,15],counter:12,counterpart:[11,13],cover:18,cpu:[1,13,19],cpython:1,creat:[11,12,13],creation:3,creator:7,crlen:20,crpt:20,crypograph:1,crypt:[10,15],crypto:16,crypto_box_keypair:[3,20],crypto_box_publickeybyt:20,crypto_box_s:20,crypto_box_seal_open:20,crypto_box_sealbyt:20,crypto_box_secretkeybyt:20,crypto_kx:3,crypto_secretstream:21,crypto_secretstream_xchacha20poly1305_abyt:21,crypto_secretstream_xchacha20poly1305_headerbyt:21,crypto_secretstream_xchacha20poly1305_init_push:21,crypto_secretstream_xchacha20poly1305_keybyt:21,crypto_secretstream_xchacha20poly1305_keygen:21,crypto_secretstream_xchacha20poly1305_push:21,crypto_secretstream_xchacha20poly1305_st:21,crypto_secretstream_xchacha20poly1305_tag_fin:21,crypto_secretstream_xchacha20poly1305_tag_messag:21,crypto_secretstream_xchacha20poly1305_tag_rekei:21,crypto_sign_ed25519:3,cryptoerror:[3,6,10],cryptograph:[1,6,7,11,18],cryptographi:[8,11],cryptprefixerror:[3,10],ct:21,ct_hex:21,ct_len:21,ctext:12,curv:[11,13],curve25519:[3,11],custom:[8,20,21],cycl:13,d:[9,15,21],data:[0,1,2,5,7,10,11,12,13,15,16,20,21],date:[4,9],dawn:13,deadlin:3,decod:[5,7,10,11,12,13,15,20],decrypt:[3,10,11,12,20],deem:2,def:[5,7,15],defens:13,defin:[2,3,7,8,9,10,17,18,20,21],definit:18,degrad:13,demonstr:[11,12],deni:13,depend:[2,9,10],deploi:13,dereferenc:17,deriv:[1,2,8,11,12,13],derivation_salt:7,describ:1,design:[10,11,13],dest:15,detail:8,detect:12,determinist:[3,13,14],dev1:4,dev:13,develop:[10,16,17],dgs0:7,dgs1:7,dgst:7,dgst_len:15,dgstln:15,dict:15,dictionari:21,differ:[1,5,7,10,12,15],difficulti:13,digest:[0,1,7,15],digest_s:[0,1],digit:[8,15],direct:12,directli:[1,7,10,15,20,21],directori:[15,17,20,21],disabl:[9,17],discard:11,disclosur:13,discourag:9,discret:18,disk:12,dispatch:10,distribut:[3,9,15,20,21],dk:7,dklen:[1,19],doc:[3,15,20,21],docstr:3,doctest:3,document:[1,13],doe:[10,11,12,13],doesn:[10,11,13],dog:19,domin:13,donald:[20,21],done:[11,16],download:[15,20,21],downstream:6,draft:18,drastic:7,driver:18,drop:[3,13],dsa:13,due:3,dump:15,duplic:12,dure:[9,14],e5620:13,e:[3,4,11,12,13,15],each:[1,2,5,10,12,16],eas:18,easi:5,easili:[12,13],easy_instal:9,ebat:13,ec:13,ed25519:[3,8],ed25519ph:3,ef537f25c895bfa782526529a9b63d97:19,either:[6,13,20,21],elif:15,ellipt:[11,13],els:[11,15,20],empti:[3,16],enabl:9,enclos:11,encod:[0,2,7,8,10,11,12,13,14,15,19,20],encrlen:20,encrypt:[3,7,8,10,14,20],encryptedmessag:[11,12,14],endian:3,engin:13,enough:[12,13,16],ensu:7,ensur:[6,11,16],enter:17,entir:13,entitl:1,entropi:[7,13],enumer:7,environ:[3,9,16,17,20,21],ephemer:11,eq_chk:7,equal:[7,11,20],equival:13,err:15,error:[6,11,12],etc:13,ev:10,even:[10,11,12,13],eves_box:10,eves_kei:10,ex:15,exactli:[2,11,12],exampl:[3,5,6,8,10],exceed:10,except:[0,1,2,3,8,10,11,12,13,20,21],exchang:[3,11],exclud:18,execut:[15,16,17,20,21],exist:18,exit:[12,20,21],exp:18,expect:[7,11,18],explicit:[11,12],explicitli:[11,12],exploit:10,expon:15,expos:[1,3,6,7,8,10,15,19],express:[20,21],extend:0,extract:[3,10,20],ey:10,factor:1,fail:[10,11,12,13,20,21],failur:[3,20],fals:[6,15],fast:13,faster:[8,13],featur:13,file:[10,15,16,17,20,21],filetyp:15,fill:16,first:[18,20],fit:13,fix:[3,7],flag:17,follow:[4,6,7,10,11,15,16,17,18],forg:[6,11,12,13],forgeri:11,fork:8,format:[3,5,7,10,15,18,21],fox:19,fprintf:21,free:20,freeli:12,from:[2,3,5,6,7,10,11,12,13,14,15,18,19,20,21],from_se:3,full:[14,15,18],func:2,further:10,futur:10,g:[3,4,12],gap:16,gener:[1,2,3,5,7,8,9,10,11,12,13,14,17,19],gentestlin:20,get:[7,10,12,16,19],getlin:20,getopt:21,git:16,github:[3,15,16],give:[10,12,13],given:[10,11,12,13,14,20],glibc:9,goal:8,good:[11,12,13],goodchar:15,govern:[20,21],greater:[1,10],guarante:11,guessed_pw:10,h:[15,17,18,20,21],ha:[2,3,11,12,13,14,20],handl:8,hard:[2,10],hash:[1,3,8,13,15,16],hasher:[2,3,7,8],hashlib:[8,19],hasn:11,have:[1,3,8,9,10,11,12,13,15,18],hc:21,he:11,header:[17,20,21],header_hex:21,help:[10,15],her:11,here:[5,11],herself:11,hex:[5,7,13,15,20,21],hex_kei:5,hexdigest:1,hexencod:[0,5,7,13],hexlifi:5,hi:11,high:[3,11,12,13],him:11,hint:[3,7],histori:10,hkdf:7,hkrp:20,hmac:7,hold:[13,14],how:[11,12],howev:[11,12],hpub:20,hskr:20,http:[15,16,20,21],htxt:20,human:11,hundr:10,hxencrypt:20,hxplaintext:20,hxpub:20,hxsecret:20,hydra2:13,hyperthread:13,hypothesi:3,i3:13,i5:13,i7:13,i:[7,10,11,12,13,15,16,17,20,21],id:15,idea:10,ideal:18,ident:11,iec:3,ietf:18,imagin:11,immun:13,implement:[1,3,6,8,10,13,15,16,18,19,20,21],impli:[20,21],implicitli:[11,12],improv:8,includ:[9,11,12,13,17,20,21],incompat:3,incorrect:[3,10],increment:[3,12],indent:15,independ:[2,10],index:8,indic:13,indipend:1,individu:[20,21],influenc:[15,20],inform:[7,11,12,13],infrastructur:3,initi:[0,16],inlin:3,input:[0,1,2,3,7,18,20],insecur:12,insert:15,insid:[6,15,17,20,21],instal:[8,16,17,20,21],instanc:[1,11,12,13],instead:[3,7,13,17],instruct:[15,17],integ:[3,20],integr:[8,13],intel:13,interact:[1,2,10],intercept:10,interfac:3,intermedi:[2,10],intern:[6,10],invalid:[11,12,13],invalidkeyerror:[3,6,10],ipath:[20,21],irrevers:7,iso:3,issu:3,item:[4,11],iter:[10,15],its:[2,13],itself:[11,20],j4:9,jedisct1:16,jenkin:3,join:15,json:[15,16,21],juli:3,jump:[13,19],just:[6,7,10,11,12,16,17,19],k:13,kat:15,kdf:[1,2,10,19],keep:[11,13,18],kei:[0,1,2,3,5,6,8,13,16,18,20,21],kept:[11,12],key_hex:21,key_siz:[10,12],keypair:[3,11],keyword:5,kill:11,kind:[6,7,11,20,21],kitten:11,know:[10,11,13],known:[11,13,16],l1:13,l:[15,17,20,21],la:17,languag:[16,20,21],last:[10,13],latenc:13,later:[5,10],latest:10,latter:3,law:[20,21],layer:13,lazi:19,lc:[20,21],lead:[2,10,13],leak:12,leakag:13,legaci:[9,18],len:[12,15,20],length:[0,1,2,7,11,12,13,15,16,20],let:11,level:[3,8,12,13,19],lib:17,librari:[1,3,9,10,18,20,21],libressl:18,libsodium:[0,1,2,3,6,9,10,15,16,17,18,19,20,21],libsodium_make_arg:9,licens:[20,21],like:[1,7,10,12,17,20,21],limit:[2,16,20,21],line:[7,13,15,17,20,21],link:[3,20,21],linux:[8,13,16,18],list:21,littl:[1,3],lln:20,load:19,local:[20,21],log:7,longer:[3,11,12],low:[3,7,19],lower:12,lpath:[20,21],ls:17,lsodium:[20,21],lsz:20,m:[10,13,15,21],m_hex:21,m_len:21,mac0:7,mac1:7,mac2:7,mac:[0,7,12],macbyt:12,maco:[3,9],mai:[12,20,21],main:[20,21],mainten:3,major:4,make:[7,9,11,12,13,16,17,18,20,21],manag:10,mani:[10,12,13],manylinux1:[3,9],manylinux2014:3,manylinux_2_24:3,masquerad:13,master_kei:7,match:[3,10],max:15,max_ad_s:21,max_chunk_s:21,max_digest_s:1,max_key_s:1,maxcount:15,maximimum:1,maximum:[1,2,10,13,15,20],maxmem:[1,15],maxmsgl:20,maxmsglen:20,mdfd_dg:7,mean:[2,6,11,12,13],meant:[2,10],measur:13,mechan:[8,10,16],megabyt:10,mem:[10,15],memlimit:[2,10,19],memlimit_interact:[2,10],memlimit_max:[2,10],memlimit_min:[2,10],memlimit_moder:[2,10],memlimit_sensit:[2,10],memori:[1,2,15,19],memset:20,merg:4,messag:[0,5,8,10,11,12,13,14,18,20,21],method:[1,3,5,6,12],might:13,million:13,millisecond:13,min:15,minim:[0,1,2,3,6,18],minimum:[2,3,10,15,20],minmsgl:20,minmsglen:20,mismatch:[6,10],miss:1,mix:[3,8],mkdir:17,mndgstlen:15,mniter:15,mnmem:15,mnpwlen:15,mnsaltlen:15,mode:[10,15],modern:2,modifi:7,modul:[1,8,16],modular:[10,15],modular_crypt_argon2id_hash:15,more:[7,13,20,21],most:[0,9,10,13],mostli:1,msg2:7,msg:7,multi:2,multipli:1,musllinux:3,must:[0,2,3,6,7,10,11,12,13,15,17,18],mutual:11,mxdgstlen:15,mxiter:15,mxmem:15,mxpwlen:15,mxsaltlen:15,my:10,n:[1,15,19,20,21],n_log2:19,nacl:[3,4,5,6,7,8,10,12,13,14,18,19],nacl_bindings_pick_scrypt_param:19,name:[1,2,6,10],need:[0,10,11,12,13,16,20,21],neglig:13,nehalem:13,network:8,never:[7,12,13],next:[4,12,15],nice:10,nist:13,nline:20,nobodi:11,non:[3,11,12,13],nonc:[3,10,11,13,14],nonce_s:[10,11,12],none:[3,13],noper:16,noperson:16,nor:12,nosalt:16,note:7,now:[3,7,10,11,17],num_chunk:21,number:[1,4,7,11,12,13,14,20],o:[20,21],object:[1,5,11,13,14],obtain:[13,20,21],occup:2,odd:12,off:10,offici:13,ok:20,old:11,older:3,omit:[11,12],onc:[4,11,12],one:[7,10,11,12,13,15,19,20],ones:[1,8,18],onli:[1,2,10,11,12,13,18,19],onto:11,op:10,open:[11,12],oper:[2,6,13,15],opscount:15,opslimit:[2,10,19],opslimit_interact:[2,10],opslimit_max:[2,10],opslimit_min:[2,10],opslimit_moder:[2,10],opslimit_sensit:[2,10],optarg:21,optind:21,option:[15,16,20],order:[3,11],org:[20,21],orient:12,orig_dg:7,origin:[7,10,11,12,13,18,20],other:[3,7,11,12,13,15,17],otherwis:[6,11,12],our:[7,11,12,18],out:[10,15],outfil:15,outlin:7,outp:20,output:[0,15,16,17,18,21],over:[12,19],overlap:12,overrid:20,overview:10,own:[8,11],p:[1,10,13,15,17,19],packag:[2,16],pad:[0,3],padlock:11,page:8,pair:[2,11],paper:13,parallel:[1,9],paramet:[0,1,2,6,7,8,11,12,13,14,15,16,18,19],parametr:19,pars:[18,20],parse_arg:15,part:[11,12,20],parti:13,partial:[2,10],particular:[12,15,18],pass:[2,3,5,6,9,11,12,13,21],passphras:19,passwd:15,passwd_max:2,passwd_min:2,password:[1,3,6,7,8,15,19],password_hash:[2,10],past:[10,13],path:[3,15,17,18,20,21],pattern:13,penalti:13,per:[8,13],perform:13,period:13,permiss:[20,21],persist:12,person:[0,1,7,16],person_s:1,perspect:[7,13],phc:[10,15],pick_scrypt_param:19,pioneer:10,pip:9,pipe:15,pkalic:11,pkbob:11,pkgconfig:17,pklen:20,plain:7,plaintext:[11,12,20],pleas:7,point:[20,21],polici:18,poly1305:[3,12],popen:15,port:3,portabl:9,possibl:[1,13,18],potenti:[10,13],pr:4,pre:3,prebuilt:[20,21],precis:3,predict:13,prefer:[9,10,11,20,21],prefix:[2,10,12,17],present:[4,10,20],presid:12,presum:17,prevent:3,previou:6,prf:0,primit:18,print:[7,10,11,12,15,19],printf:[20,21],privaci:[11,12],privat:[11,13],private_kei:11,privatekei:11,probabl:13,procedur:[2,7],processor:3,produc:[3,13,14,20,21],program:[20,21],project:[16,18],promin:10,prompt:16,proof:11,proper:3,properti:[1,7],propos:[2,10],protect:[2,10,11,13],protocol:12,provid:[2,7,9,10,11,15,16,19,20,21],pseudo:2,pseudorandom:14,psw:15,ptlen:20,pub:20,public_kei:11,publickei:11,publish:[11,13],pull:[4,11],put:11,pwd:[16,17],pwhash:[1,7,8,10,15,19],pwhash_siz:[2,10],pwln:15,py:[2,3,4,15,16],py_nopers_vector:16,py_nopers_vectors_c:16,py_pers_vector:16,py_pers_vectors_c:16,pyblak:16,pyblake2:16,pynacl:[2,3,4,5,9,10,11,12,15,17,18,20,21],pynacl_bas:20,pypi:[3,4,8],python3:[1,15],python:[3,4,15,16,19],quad:13,quadrat:13,qualiti:7,quick:19,qv5tf9kg2wbumeuoa0tcoqwlhq8s0tjqdsagn:10,r:[1,13,15,19,20,21],rais:[0,1,2,3,6,10,11,12,13,15],ram:13,randint:15,random:[1,2,3,7,10,11,12,13,14,15,20],randombytes_buf:[20,21],randombytes_determinist:14,randombytes_uniform:[20,21],randomli:[11,12,20],rang:[10,15],ratifi:18,raw:[1,2,10,13,15],raw_argon2id_hash:15,rawencod:[2,5,7,14],rc:21,re:[10,15,20],read:[11,13,20],readm:4,readthedoc:3,reason:[12,13],receiv:[7,10,11,20],received_msg:7,receiver_kei:11,recent:[10,13,20,21],recipi:[11,13],recognit:10,recommend:[1,2,10],recov:11,reduc:7,refer:[8,10],regardless:[11,12],reject:12,rekei:21,relat:[2,6],releas:[3,6,8,13],reli:[9,13],remain:[11,13],remov:3,reorder:3,repeat:7,replac:[3,7,10],replai:12,report:13,repres:3,repudi:[11,12,13],request:[0,1,4,20],requir:[1,8,15,16,20,21],res2:10,reset:12,resili:13,respect:[1,2,18,20,21],restructur:3,result:[10,18,19,20],retriev:10,reus:[7,12,13],review:3,rfc7539:18,rfc:19,rh:13,risk:[7,10],rng:15,round:20,rs:[15,20],rsa:13,rsstr:20,rst:4,rstrip:15,run:[1,3,4,9,10,16,17,20,21],runtim:[3,10],runtimeerror:6,s:[1,2,3,6,7,9,10,11,13,15,17,18,20,21],safe:12,salt:[0,1,2,7,10,15,16,19],salt_siz:1,saltbyt:[2,10],same:[1,2,3,6,10,11,12,13,19],save:12,scheme:[10,13],script:4,scrub:11,scrypt:[1,3,8,10,18],sd2012:10,sdist:4,sealbox_test_vector:20,sealed_box:11,sealed_box_ref:20,sealedbox:[3,18],search:[3,8],second:[2,10,11,13,20],secret:[3,7,8,10,11,13,18,20],secretbox:[3,10,12,14],secretstream:[3,18],secretstream_test_vector:21,section:[4,7],secur:[7,8,10,11,13],see:[2,7,20,21],seed:[2,3,13,14],select:[10,13],self:15,semant:1,send:[4,7,10,11,12,13],sender:[11,13],sensit:[1,2,10],sent:11,separ:[13,15],sequenc:[0,2,3,6,11,12,20],serial:[10,11,13],session:12,set:[0,1,2,3,7,12,15,20],setup:3,setup_requir:3,setuptool:[3,9],sever:13,sha256:[0,7],sha512:[0,7],shadow:10,share:[10,11,17],shared_kei:[3,11],she:[10,11],shell:16,ship:[9,11],shorten:[7,18],shortlist:10,shot:0,should:[9,10,14,17,18,20,21],show:7,shown:[10,13,15],shrt_dg:7,shut:11,side:[12,13],sign:[3,5,11,12,13],signatur:[1,6,8,11,12],signature_byt:13,signed_b64:13,signed_hex:13,signedmessag:13,signer:13,signifi:20,significantli:3,signing_kei:[5,13],signingkei:[5,13],silent:3,similar:13,simpl:[5,11,12],simplest:7,simpli:[5,10,12,17],simplifi:[1,19],sinc:[10,11,12,13,15,18,20,21],singl:[11,13],siphash24:[0,3],siphash:[0,18],siphash_byt:0,siphash_keybyt:0,siphashx24:[0,3],siphashx_byt:0,siphashx_keybyt:0,site:10,size:[0,1,2,7,13,14,15,16,18],size_t:20,sizeof:[20,21],skalic:11,skbob:11,sklen:20,skr:20,slight:13,slow:3,slower:3,slt:15,sltln:15,small:13,smallest:13,smessag:13,snap:11,so:[9,11,12,13],sodium:[17,20,21],sodium_bin2hex:[20,21],sodium_fre:20,sodium_hex2bin:20,sodium_init:[20,21],sodium_instal:9,sodium_install_minim:3,sodium_malloc:20,sodium_memcmp:[7,20],sodiumincl:[17,20,21],sodiumlib:[17,20,21],softwar:[20,21],solar:10,some:[7,12],someth:[11,12,17],sourc:[0,1,2,5,6,11,12,13,14,15,16,17,18],special:10,specif:[8,20,21],specifi:11,speed:[8,11,13],sphinx:3,src:[4,17],sscanf:20,ssize_t:20,stabl:3,standalon:7,standard:[1,7,8,15,18,20],start:10,state:[3,8,21],staticmethod:5,stderr:21,stdin:[15,20],stdio:[20,21],stdlib:19,stdout:15,stem:10,step:4,stopiter:15,storag:[8,19],store:[3,7,10,11,12],store_tru:15,str:[2,10,15],stream:12,stretch:7,string:[0,2,3,10,15,20,21],strlen:20,strncmp:20,strong:[1,7,13],strprefix:10,structur:7,stufft:[20,21],sub:[2,10],subclass:[6,13,14],subdirectori:16,submiss:10,submit:10,subprocess:15,success:[13,20],successfulli:13,suggest:[1,10],suit:7,suppli:[2,20],support:[1,3,5,10,18],sure:[9,11,12],switcheroo:11,sy:15,symmetr:[11,12],system:[9,11,13,16,18],systemrandom:15,t:[10,11,13,15,20],tag:[18,20,21],take:[10,13],taken:18,tamper:[11,12],target:13,ten:10,term:[7,19],test:[3,15,16,17,18,19,21],test_pwhash:3,text:[7,10,13],than:[1,3,10,11,12,13,15,20,21],thei:[12,13],them:[3,11,12,13],therefor:[10,11,13,15,19],thi:[2,3,6,10,11,12,13,14,16,20,21],think:10,third:[13,20],those:[2,3],though:11,through:[3,12,13],thrown:14,thu:2,ti:13,time:[2,3,10,13,15],tl:18,togeth:13,top:8,total:1,trace:11,traceback:[10,13],trade:10,tradit:[7,19],transform:7,transit:13,transmit:[11,12],treat:[11,12],tree:1,tri:10,trip:20,tripl:19,truncat:7,tunabl:10,turn:10,twenti:16,twice:20,twist:11,two:11,txt:[16,18,20],txtlen:20,type:[0,2,3,15],typeerror:[6,14],typic:[5,7],unavailableerror:[0,1,2,3,6],unbox:11,under:[13,20,21],unhexlifi:5,uniform:[2,10],unistd:21,unit:[13,18],universal2:3,unix:[17,20,21],unknown:3,unless:[20,21],unlik:13,unpack:20,unpredict:12,unseal_box:11,unsign:21,unsupport:9,untrac:11,up:9,updat:[1,3,4],upstream:3,urandom:13,urlsafebase64encod:5,us:[0,1,2,3,7,9,10,11,12,13,14,15,16,17,18,19,20,21],usabl:[1,8],usag:[0,1,6,8,9,21],user:[2,6,7,10],usr:15,usual:10,utf:[10,11,12],util:[3,7,8,10,11,12,18],v:[10,15,19],vactor:15,valid:[11,12,13],valu:[1,2,3,10,11,13,20],valuabl:11,valueerror:6,vari:15,variabl:[3,9,16,17,20],variant:[0,3,18],variou:5,ve:[11,12],vector:[8,13],veri:[3,11,12,13],verif:[2,6,8,13],verifi:[2,3,4,7,10,13,18,19,20,21],verify_kei:13,verify_key_b64:13,verify_key_byt:13,verify_key_hex:13,verify_scryptsalsa208sha256:10,verifykei:13,version:[0,1,2,3,4,9,10,15,18,19,20,21],via:[7,15],view:12,vital:[11,12],w:15,wa:[3,6,11,12,13],wai:[7,10,11],wait:4,want:[10,11,13,17,20],warranti:[20,21],we:[3,7,11,12,15,16,19],weak:13,well:[3,7,8,10,11,17],went:17,were:[1,19],westmer:13,wheel:[3,4,8],when:[0,1,2,3,6,10,11,12,13,20,21],where:[10,11,18,20],wherev:18,which:[1,2,3,7,8,10,11,12,13,15,16,18,19],who:[11,12,13],whole:1,whose:13,wide:[13,17],window:9,winner:15,wish:11,within:[13,14],without:[11,12,13,20,21],work:[9,11],world:11,would:[2,10],wrap:6,write:[13,20,21],wrong:[3,10],wrong_hash:10,www:[20,21],x07:19,x0f:19,x10e:19,x11:19,x1b:19,x25519:3,x86:9,x86_64:9,x87yp:19,x98eg:19,x:15,xae:19,xc7:19,xc8a8:19,xd3p:19,xd4yn:19,xde:19,xe6:19,xeon:13,xf1:19,xsalsa20:12,xxxx:20,you:[3,4,5,9,10,11,12,13,17,20,21],your:[3,8,9,10,11,12,13],zero:[0,12],zu:20},titles:["nacl.hash","nacl.hashlib","nacl.pwhash","Changelog","Doing A Release","Encoders","Exceptions","Hashing","PyNaCl: Python binding to the libsodium library","Installation","Password hashing","Public Key Encryption","Secret Key Encryption","Digital Signatures","Utilities","Argon2 constructs reference vectors","Blake2b reference vectors","Building the bundled library","Reference vectors","scrypt reference vectors","SealedBox reference vectors","secretstream reference vectors"],titleterms:{"0":3,"01":3,"03":3,"04":3,"05":3,"07":3,"09":3,"1":3,"11":3,"12":3,"14":3,"15":3,"2":3,"2015":3,"2016":3,"2017":3,"2018":3,"2020":3,"2022":3,"23":3,"24":3,"25":3,"26":3,"3":3,"31":3,"4":3,"5":3,"do":4,"function":[2,6],"import":18,"public":11,A:4,The:8,addit:7,algorithm:[11,12,13],api:8,argon2:15,argon2i:2,argon2id:2,authent:7,binari:9,bind:8,blake2b:[7,16],box:[11,18],build:[9,17],built:5,bundl:17,chacha20poly1305:18,changelog:[3,8],check:7,checker:[20,21],code:[15,20,21],constant:10,construct:[15,18],content:8,cost:10,custom:18,defin:5,deriv:[7,10],detail:12,digit:13,document:8,driver:15,ed25519:13,encod:5,encrypt:[11,12],exampl:[7,11,12,13],except:6,expos:2,faster:9,featur:8,gener:[15,16,18,20,21],handl:6,hash:[0,2,7,10],hasher:10,hashlib:1,implement:2,indic:8,instal:9,integr:7,kei:[7,10,11,12],level:[2,10],librari:[6,8,17],libsodium:8,linux:[9,17],mechan:2,memori:10,messag:7,mix:6,modul:[2,10],nacl:[0,1,2,11],nonc:12,ones:6,open:8,oper:10,own:5,paramet:10,password:[2,10],per:2,project:8,pwhash:2,pynacl:[6,8],python:8,refer:[11,12,13,15,16,18,19,20,21],releas:4,requir:12,scrypt:[2,19],sealedbox:[11,20],secret:12,secretbox:18,secretstream:21,signatur:13,siphash24:18,siphashx24:18,sourc:[8,9,20,21],specif:6,standard:6,storag:10,support:8,system:17,tabl:8,test:20,top:2,tweak:10,usag:7,util:[6,14,20,21],vector:[15,16,18,19,20,21],verif:10,wheel:9,xchacha20poly1305:18,your:5}})