Skip to content

cuhte3/EthereumKitSPM

Repository files navigation

EthereumKit

EthereumKit is a Swift 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)
geth.sendRawTransaction(rawTransaction: tx) { result in 
    // Do something...
}

Set up

  • Run make bootstrap

Features

  • Mnemonic recovery phrease in BIP39
  • BIP32/BIP44 HD wallet
  • EIP55 format address encoding
  • EIP155 replay attack protection
  • Sign transaction
  • ERC20 token transfer

Documentations

Requirements

  • Swift 4.0 or later

Dependency

Apps using EthereumKit

Author

Ryo Fukuda, @yuzushioh, [email protected]

License

EthereumKit is released under the Apache License 2.0.

About

EthereumKit with Swift Package Manager support

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages