Key
An asymmetric key is used to prove identity (sign) and protect data (encrypt/decrypt). Keys are managed by the Key API. A key is never stored in plain text, see private key storage for the details.
A key has a local name and a global ID. The ID is the SHA-256 multihash of its public key. The public key is a protobuf encoding containing a type and the DER encoding of the PKCS SubjectPublicKeyInfo.
Types
ed25519
, Edwards-curve Digital Signature Algorithmrsa
, Rivest–Shamir–Adleman crypto systemsecp256k1
, Bitcoin's elliptic curve
Self
The key named self
is special in that it uniquely identifies the
local peer to the IPFS network. It is
automatically created with the repository and is controlled
by the keychain options.