github.com/klaytn/klaytn@v1.12.1/accounts/keystore/doc.go (about) 1 // Copyright 2018 The klaytn Authors 2 // Copyright 2017 The go-ethereum Authors 3 // This file is part of the go-ethereum library. 4 // 5 // The go-ethereum library is free software: you can redistribute it and/or modify 6 // it under the terms of the GNU Lesser General Public License as published by 7 // the Free Software Foundation, either version 3 of the License, or 8 // (at your option) any later version. 9 // 10 // The go-ethereum library is distributed in the hope that it will be useful, 11 // but WITHOUT ANY WARRANTY; without even the implied warranty of 12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 // GNU Lesser General Public License for more details. 14 // 15 // You should have received a copy of the GNU Lesser General Public License 16 // along with the go-ethereum library. If not, see <http://www.gnu.org/licenses/>. 17 // 18 // This file is derived from accounts/keystore/keystore.go (2018/06/04). 19 // Modified and improved for the klaytn development. 20 21 /* 22 Package keystore implements encrypted storage of secp256k1 private keys. 23 24 Keys are stored as encrypted JSON files according to the Web3 Secret Storage specification. 25 See https://github.com/ethereum/wiki/wiki/Web3-Secret-Storage-Definition for more information. 26 27 Source Files 28 29 Each file contains following contents 30 - account_cache.go : Provides `accountCache` which contains a live index of all accounts in keystore folder 31 - file_cache.go : Provides `fileCache` which contains information of all files in keystore folder 32 - key.go : Defines `KeyV3` struct, `keyStore` interface and related functions 33 - keyv4.go : Defines `KeyV4` struct. 34 - keystore.go : Defines `KeyStore` which manages a key storage directory on disk and related functions 35 - keystore_passphrase.go: Provides functions to encrypt and decrypt `Key` with a passphrase 36 - keystore_plain.go : Deprecated 37 - keystore_wallet.go : Defines `keystoreWallet` struct which implements accounts.Wallet interface. Wallet represents a software or hardware wallet that might contain one or more accounts 38 - presale.go : Deprecated 39 - watch.go : Provides a watcher which monitors any changes on the keystore folder 40 - watch_fallback.go : Provides an empty watcher for unsupported platforms 41 */ 42 package keystore