Comments (5)
Isn't it by design? In the libsodium docs it says,
The generated key has the size defined by the application, no matter what the password length is.
Assuming that the output buffer is always the same size but is null-padded, it would follow that to store the key in a database as a string, you'd need the string to be padded too. Otherwise when you regenerate the key in crypto_pwhash_argon2i_str_verify
you'd not end up with the same result.
from node-sodium.
crypto_pwhash_argon2i_STRBYTES
represents the maximum length of the returned string.
The string itself can be shorter, and should be trimmed after the first \0
, even though the verification function will tolerate padding after it.
from node-sodium.
I see! Thanks, that's helpful.
from node-sodium.
Do I need to close the Issue Before or After the PR is merged?
Thanks for the help.
from node-sodium.
Is it documented somewhere that you have to strip off the \0 bytes? Or is there any interest in removing them automatically? We just had the same issue encoding/decoding from base64 and it took us a little while to track down the error.
from node-sodium.
Related Issues (20)
- Fails to compile on openSUSE LEAP 15 (../deps/build/lib/libsodium.a: No such file or directory ) HOT 8
- Cant install sodium on my Pi HOT 2
- Compiling sodium on TravisCI fails HOT 1
- Console error 'msvsversiion not defined' when invalid Visual Studio Version is found
- Invalid ELF Header HOT 1
- Error installing on Windows
- make libsodium exited with code 2, pwhash_argon2i fails HOT 3
- NPM install fails with node-gyp error: cannot use a string pattern on a bytes-like object
- package install errors HOT 3
- How to pre-build Node Sodium?
- install.js support vs2019 please HOT 1
- Installing on Windows Failed HOT 1
- Way to use exists keypair which generated in Java HOT 1
- libbtool/libsodium not installing on Petrodctyle panel
- ed25519 decode / decompress HOT 1
- Cannot install with yarn berry
- Can't install sodium, please help me (Windows) HOT 1
- Does not compile on Linux ARM. HOT 6
- Is this library still maintained?
- Can't Install (Windows) HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from node-sodium.