SmartEthereumWallet
Ethereum Wallet and Contract Integration
Updates
0.3.0 - Coin Support0.2.0 - MultiSig Wallet Support0.1.0 - Wallet Support
Installation
Node.js
npm install --save smartethereumwallet
Usage
- Importing library
; orvar SmartEthereumWallet = ;
- Initalizing the library
Register for an INFURA TM Access Token.
var smartEthereumWallet = 'https://mainnet.infura.io/{{YOUR TOKEN}}';var walletController = smartEthereumWalletWalletController;
- Create Ethereum Wallet/Account
walletController;
- Encrypt the private key, to get the encrypted web3 keystore v3 JSON
var userPassword = 'Abc';var walletPrivateKey = '22c8445afef08d2bbd15ff5362bdd6ae69623255c9f4dd0d29c316ee0754c222';var walletAddress = '0x4731F8558896766E67f0b552b9f434aEA3a301f6'; walletController;
- Decrypt a keystore v3 JSON, and get the wallet/private key back
var keyStore = version: 3 id: '65fba463-16d7-4a44-b3b5-607fff51db2b' address: '91a968a3cc7d28598df278b051492e25d3459e4d' crypto: ciphertext: '767df5d97e2980d80bceb720426ff543e8116606341b5256caab7eb71f3321ec' cipherparams: iv: 'a3904bcb6319a879efcd675fde320ceb' cipher: 'aes-128-ctr' kdf: 'scrypt' kdfparams: dklen: 32 salt: '1c7ec2d5d0f655d3a09279e2226d19a5ea87d4d6fcc042c90f58cddbcbb2f2a0' n: 8192 r: 8 p: 1 mac: '1dfbbe2bc0e400aaf72ad7b8defa0d89f8110bab216766a412116eabc68890a9' ; walletController;
- Check if given Ethereum Address is valid
var walletAddress = '0x4731F8558896766E67f0b552b9f434aEA3a301f6';walletController;
- Check Ethereum Wallet Balance
var walletAddress = '0x4731F8558896766E67f0b552b9f434aEA3a301f6';walletController;
- Get estimation for transaction
var walletAddress = '0x4731F8558896766E67f0b552b9f434aEA3a301f6';var destinationAddress = '0x1750c3F8ce7b30e6B89d7F1b017b28e64791e0AE';walletController;
- Send Ether to another wallet
var walletAddress = '0x4731F8558896766E67f0b552b9f434aEA3a301f6';var walletPrivateKey = '22c8445afef08d2bbd15ff5362bdd6ae69623255c9f4dd0d29c316ee0754c222';var destinationAddress = '0x1750c3F8ce7b30e6B89d7F1b017b28e64791e0AE';var value = '0.01';//(Ether)walletController;
- Get Transaction Receipt
var transactionHash = '0xc2e7ea59672002c6936e168c20029211cfe77ce87c2e4a40f1debc8480e589a8';walletController;
- Initialize MultiSigController
var smartEthereumWallet = 'https://mainnet.infura.io/{{YOUR TOKEN}}';var CONTRACT_ADDRESS = '{{CONTRACT ADDRESS}}';var multiSigController = smartEthereumWallet;
- Ether Token Transfer
var walletAddress = '{{ADDRESS}}';var privateKeys = '{{PRIVATE KEY 1}}' '{{PRIVATE KEY 2}}';var destinationAddress = '{{DESTINATION ADDRESS}}';var value = '{{VALUE}}'; Ether/Tokenvar tokenContractAddress = '{{TOKEN ADDRESS}}'; if you want pass ether then put empty '' multiSigController;
- Initialize CoinController
var smartEthereumWallet = 'https://mainnet.infura.io/{{YOUR TOKEN}}';var CONTRACT_ADDRESS = '{{CONTRACT ADDRESS}}';var coinController = smartEthereumWallet;
- Get Token Transfer Stage
coinController;
- Start Token Transfer
var walletPrivateKey = 'd6031505b3b45dd1be7d72486dec0b7f95eee2db329fc28a1a3b3a09904a7806';var walletAddress = '0xccddccdebd0c15590b33b41c40f3361f764fd07c';coinController;
- Stop Token Transfer
var walletPrivateKey = 'd6031505b3b45dd1be7d72486dec0b7f95eee2db329fc28a1a3b3a09904a7806';var walletAddress = '0xccddccdebd0c15590b33b41c40f3361f764fd07c';coinController;
- Get Token Balance
var walletAddress = '0xccddccdebd0c15590b33b41c40f3361f764fd07c';coinController;
- Token Transfer
var walletPrivateKey = 'd6031505b3b45dd1be7d72486dec0b7f95eee2db329fc28a1a3b3a09904a7806';var walletAddress = '0xccddccdebd0c15590b33b41c40f3361f764fd07c';var destinationAddress = '0x8374D21710cE53a13686aabd67ee13d4b27D1933';var value = '0.1';coinController;