EthereumOperator

@objc
public protocol EthereumOperator : NSObjectProtocol

this is the protocol to define the common behaviours of the EthereumOperator, it provides the basic operations of the EthereumKeystore, you can create your own Ethereum Operator by implements this interface

  • Sign the message with Ethereum keystore

    Declaration

    Swift

    @objc
    func signMessage(contractAddr: String, keystore: EthereumKeystore, password: String, signOriginal: String, completion: @escaping ((_ result: String?, _ error: Error?) -> Void))

    Parameters

    contractAddr

    Contract address, this should be a valid Ethereum wallet

    keystore

    EthereumKeystore object, this represents a standard Ethereum Keystore file

    password

    password for the keystore

    signOriginal

    the message to sign with

    completion

    when sign message finished, it calls back to tell the result of signing, or the error with the failing reason

  • verify the password of the EthereumKeystore

    Declaration

    Swift

    @objc
    func verifyPwd(_ pwd: String, keystore: EthereumKeystore, completion: @escaping ((_ success: Bool, _ error: Error?) -> Void))

    Parameters

    pwd

    password string

    keystore

    EthereumKeystore object, this represents a standard Ethereum keystore file

    completion

    when check finished, it calls back to tell weather the password is correct or not, or the failing reason if it failed

  • create a new EthereumKeystore with password provided

    Declaration

    Swift

    @objc
    func generateKeystore(pwd: String, completion: @escaping ((_ keystore: EthereumKeystore?, _ error: Error?) -> Void))

    Parameters

    pwd

    password for the new EthereumKeystore

    completion

    when creation finished, it calls back to give the details of the new created keystore, or the error with failing reason

  • change password for the EthereumKeystore, and returns the new EthereumKeustore with that password

    Declaration

    Swift

    @objc
    func changePwd(keystore: EthereumKeystore, oldPwd: String, newPwd: String, completion: @escaping ((_ keystore: EthereumKeystore?, _ error: Error?) -> Void))

    Parameters

    keystore

    original EthereumKeystore

    oldPwd

    old password for the keystore

    newPwd

    new password for the new keystore

    completion

    when success, it calls back to tell the new generated EthereumKeystore, or the error with failing reason