EthereumKitSwift is a framework that enables you to create Ethereum wallet and use it in your app.
// BIP39: Generate seed and mnemonic sentence.
let mnemonic = Mnemonic.create()
let seed = Mnemonic.createSeed(mnemonic: mnemonic)
// BIP32: Key derivation and address generation
let wallet = try! Wallet(seed: seed, network: .main)
// Send some ether
let rawTransaction = RawTransaction(
ether: try! Converter.toWei(ether: "0.00001"),
to: address,
gasPrice: Converter.toWei(GWei: 10),
gasLimit: 21000,
nonce: 0
)
let tx = try! wallet.signTransaction(rawTransaction)
print(tx)
- Mnemonic recovery phrease in BIP39
- BIP32/BIP44 HD wallet
- EIP55 format address encoding
- EIP155 replay attack protection
- Sign transaction
- ERC20 token transfer
- Keystore v3 with PBKDF2-SHA-256 and Scrypt DK functions
- Swift 4.1 or later
- iOS 10.0 or later
pod 'EthereumKitSwift', git: '[email protected]:anchorpw/ethereum-kit-swift.git', branch: 'master'
- Insert to your Podfile.
- Run
pod install
.
- CryptoEthereumSwift: Ethereum cryptography implementations for iOS framework
- BigInt: Arbitrary-precision arithmetic in pure Swift
- libscrypt: A shared library that implements scrypt() functionality
- Ryo Fukuda, @yuzushioh, [email protected]
- DK, [email protected]
EthereumKit is released under the Apache License 2.0.