Show / Hide Table of Contents

Class Scrypt

Scrypt.

Inheritance
Object
Scrypt
Implements
IKdf
Namespace: Libplanet.KeyStore.Kdfs
Assembly: Libplanet.dll
Syntax
public sealed class Scrypt : object, IKdf

Constructors

| Improve this Doc View Source

Scrypt(Int32, in ImmutableArray<Byte>, Int32, Int32, Int32)

Configures parameters of Scrypt.

Declaration
public Scrypt(int cost, in ImmutableArray<byte> salt, int keyLength, int parallelization, int blockSize)
Parameters
Type Name Description
Int32 cost

The CPU/memory cost parameter. Corresponds to n.

ImmutableArray<Byte> salt

A cryptographic salt.

Int32 keyLength

The desired byte-length of the derived key. Corresponds to dkLen except that it's not bit-wise but byte-wise.

Int32 parallelization

The parallelization parameter. Corresponds to p.

Int32 blockSize

The blocksize parameter. Corresponds to r.

| Improve this Doc View Source

Scrypt(Int32, Byte[], Int32, Int32, Int32)

Configures parameters of Scrypt.

Declaration
public Scrypt(int cost, byte[] salt, int keyLength, int parallelization, int blockSize)
Parameters
Type Name Description
Int32 cost

The CPU/memory cost parameter. Corresponds to n.

Byte[] salt

A cryptographic salt.

Int32 keyLength

The desired byte-length of the derived key. Corresponds to dkLen except that it's not bit-wise but byte-wise.

Int32 parallelization

The parallelization parameter. Corresponds to p.

Int32 blockSize

The blocksize parameter. Corresponds to r.

Properties

| Improve this Doc View Source

BlockSize

The blocksize parameter. Corresponds to r.

Declaration
public int BlockSize { get; }
Property Value
Type Description
Int32
| Improve this Doc View Source

Cost

The CPU/memory cost parameter. Corresponds to n.

Declaration
public int Cost { get; }
Property Value
Type Description
Int32
| Improve this Doc View Source

KeyLength

The desired byte-length of the derived key. Corresponds to dkLen except that it's not bit-wise but byte-wise.

Declaration
public int KeyLength { get; }
Property Value
Type Description
Int32
| Improve this Doc View Source

Parallelization

The parallelization parameter. Corresponds to p.

Declaration
public int Parallelization { get; }
Property Value
Type Description
Int32
| Improve this Doc View Source

Salt

A cryptographic salt.

Declaration
public ImmutableArray<byte> Salt { get; }
Property Value
Type Description
ImmutableArray<Byte>

Methods

| Improve this Doc View Source

Derive(String)

Derives a cryptographic key in s from a user input passphrase.

Declaration
public ImmutableArray<byte> Derive(string passphrase)
Parameters
Type Name Description
String passphrase

A user input passphrase.

Returns
Type Description
ImmutableArray<Byte>

A derived cryptographic key.

| Improve this Doc View Source

WriteJson(Utf8JsonWriter)

Dumps the KDF parameters as a JSON representation.

Declaration
public string WriteJson(Utf8JsonWriter writer)
Parameters
Type Name Description
Utf8JsonWriter writer

A JSON writer which has not begun object nor array.

Returns
Type Description
String

A unique identifier of the KDF. This is going to be the crypto.kdf field in the key JSON file.

Implements

IKdf
  • Improve this Doc
  • View Source
In This Article
Back to top Copyright © 2018–2021 Planetarium