Namespace Libplanet
Classes
AddressExtension
This extension class enables some convenient methods (sugar for the most part) to deal with Address.
ByteUtil
Utility methods to deal with
Hashcash
This contains a set of functions that implements Hashcash, a proof-of-work system.
HashDigestExtension
Augments types to have some shortcut methods dealing with HashDigest<T> values.
Structs
Address
An identifier of 20 bytes (or 40 letters in hexadecimal, commonly with
a prefix 0x
) that refers to a unique account.
It is derived from the corresponding PublicKey of an account, but as a derivation loses information, it is always unidirectional.
The address derivation from a public key is as follows:
- Calculates the Keccak-256, which is a previous form of SHA-3 before NIST standardized it and does not follow FIPS-202, of the corresponding PublicKey.
- Takes only the last 20 bytes of the calculated Keccak-256 hash.
- When the address needs to be shown to end users,
displays these 20 bytes in hexadecimal, with a prefix
0x
.
Since the scheme of the address derivation and the PrivateKey/PublicKey is the same to Ethereum, Ethereum addresses can be used by Libplanet-backed games/apps too.
HashDigest<T>
A value type to represent digest bytes determined by a
T
of
Nonce
An arbitrary
Delegates
Hashcash.Stamp
A delegate to determine a consistent nonce
.
Since it is called multiple times with different
nonce
s for
proof-of-work system, the total time an implementation elapses
should not vary for different nonce
s.