标签: scrypt

什么是最佳的scrypt工作因素?

我正在使用Java scrypt库进行密码存储.当我加密东西时N,它需要一个rp值,其文档称为"CPU成本","内存成本"和"并行化成本"参数.唯一的问题是,我实际上并不知道它们的具体含义,或者对它们有什么好的价值; 也许他们以某种方式对应于Colin Percival原创应用中的-t,-m和-M开关?

有人对此有任何建议吗?图书馆本身列出N = 16384,r = 8和p = 1,但我不知道这是强还是弱或是什么.

java cryptography scrypt

65
推荐指数
3
解决办法
1万
查看次数

.NET实现scrypt

在某些情况下,我已经阅读了关于scrypt及其优于bcrypt哈希算法的一些优点.

无论如何,似乎scrypt还没有被广泛使用.到目前为止有没有人见过它的.NET实现(在C#中受到青睐)?

.net c# hash cryptography scrypt

56
推荐指数
3
解决办法
2万
查看次数

Bouncy Castle scrypt实施

我目前正在使用scrypt实现密码哈希.我已经在GitHub上找到了一个很好的scrypt实现.令我惊讶的是,我还在Bouncy Castle图书馆中发现了一个scrypt实现.该类没有记录,维基百科没有提到Bouncy Castle作为scrypt实现提供程序,我真的很难找到使用Bouncy Castles scrypt的人的任何代码示例,所以这看起来有些可疑.

另一方面,如果我不得不在GitHubs加密实现和Bouncy Castle之间做出选择,我宁愿选择Bouncy Castle.

那么Bouncy Castles是否会破坏 "真实的东西"?我可以使用Bouncy Castles scrypt而不是JCA提供者API(或者我需要像这里一样直接调用它:带有充气城堡的scala中的AES-256加密工作流程:盐和IV的使用和传输/存储)?


编辑:我现在可以得到的最佳答案:https://www.bouncycastle.org/devmailarchive/msg13653.html

java bouncycastle scrypt

12
推荐指数
2
解决办法
2685
查看次数

在JavaScript中实现sCrypt?

有人在一段时间之前询问了bCryptJavaScript实现,似乎已经编写了自己的代码来处理实现.有没有人在JavaScript中实现sCrypt?

javascript scrypt

11
推荐指数
2
解决办法
5559
查看次数

什么是scrypt输出的最大长度?

我想在数据库中存储一个scrypt -hashed密码.我可以期待的最大长度是多少?

scrypt

10
推荐指数
1
解决办法
2628
查看次数

将WarpWallet的散列算法从javascript转换为C#

我正在尝试在C#中实现warpwallet代码.我正在使用cryptsharp进行scrypt和PBKDF2实现.但是,我似乎得到的结果与真实的网站不同.

这是我的代码:

static void Main(string[] args)
{
    string randomString = "mypassword";
    byte[] passwordBytes = Encoding.UTF8.GetBytes(randomString);
    byte[] passwordBytesScrypt = new byte[passwordBytes.Length + 1];
    Array.Copy(passwordBytes, 0, passwordBytesScrypt, 0, passwordBytes.Length);
    passwordBytesScrypt[passwordBytes.Length] = 0x1;

    string salt = "salt@gmail.com";
    byte[] saltBytes = Encoding.UTF8.GetBytes(salt);
    byte[] saltBytesScrypt = new byte[saltBytes.Length + 1];
    Array.Copy(saltBytes, 0, saltBytesScrypt, 0, saltBytes.Length);
    saltBytesScrypt[saltBytes.Length] = 0x1;

    byte[] scryptBytes = CryptSharp.Utility.SCrypt.ComputeDerivedKey(passwordBytesScrypt, saltBytes, 524288, 8, 1, null, 32);

    byte[] passwordBytesPBKDF2 = passwordBytesScrypt;
    passwordBytesPBKDF2[passwordBytes.Length] = 0x2;

    byte[] saltBytesPBKDF2 = saltBytesScrypt;
    saltBytesScrypt[saltBytes.Length] = 0x2;

    byte[] …
Run Code Online (Sandbox Code Playgroud)

javascript c# scrypt

9
推荐指数
1
解决办法
253
查看次数

使用内置“crypto”在nodejs中进行密码散列

仅使用内置crypto模块在 Node.js 中实现密码哈希和验证的最佳方法是什么?基本上需要什么:

function passwordHash(password) {} // => passwordHash
function passwordVerify(password, passwordHash) {} // => boolean
Run Code Online (Sandbox Code Playgroud)

人们通常使用bcrypt或其他第三方库来实现此目的。我想知道内置crypto模块是否足够大,至少可以满足所有基本需求?

似乎scrypt()是实现此目的的合适人选,但没有经过验证的对应者,似乎没有人关心

javascript cryptography password-hash node.js scrypt

9
推荐指数
2
解决办法
1万
查看次数

scrypt C库

我正在开发一个C应用程序,我需要哈希用户的密码.我知道scrypt目前是"哈希"密码(内存限制,速度慢)的最佳方法之一,但我似乎无法找到一个简单的跨平台C库来为我做这件事.

而且,既然我既不是C专家也不是加密/散列专家,我害怕自己这样做会在系统中引起一些明显的缺陷(这很容易让这些事情搞错).

那么,是否有一个C库可以做到这一点,或者,如果没有,其他库将实现类似的解决方案?(bcrypt可以工作,虽然不如scrypt,...)

c passwords hash scrypt

8
推荐指数
1
解决办法
3886
查看次数

如何使用scrypt在Python中生成密码和salt的哈希值

我想用scrypt为我的用户的密码和盐创建一个哈希.我找到了两个 引用,但有一些我不了解它们.

他们使用scrypt加密和解密函数.一个加密随机字符串,另一个加密盐(看起来不对,因为只有密码而不是盐用于解密).看起来解密函数用于验证密码/ salt是解密的副作用.

基于我所理解的一点点,我想要的是密钥导出函数(KDF)而不是加密/解密,并且KDF很可能由scrypt生成并用于加密/解密.实际的KDF在幕后使用,我担心盲目跟随这些例子会导致错误.如果scrypt加密/解密函数用于生成和验证密码,我不明白加密字符串的作用.它的内容或长度是否重要?

python password-encryption scrypt

8
推荐指数
2
解决办法
1万
查看次数

Scrypt和Cryptsharp的示例代码

我在Google上搜索过,我找不到使用Cryptsharp库的Scrypt用法代码示例(用于哈希密码).

你能提供哈希密码的样本吗?

c# encryption cryptography scrypt

8
推荐指数
1
解决办法
8965
查看次数