Sign Message and Verify
Sign message
Use UniPass Wallet to sign the specified message, which can be done by calling signMessage
. There are two message signature methods, PersonalSign
and SignTypedData
Definition of signature function
public enum UniPassSignType: String {
case PersonalSign
case SignTypedData
}
public class UniPassSignInput: NSObject {
public var from: String = ""
public var type: UniPassSignType = .PersonalSign
public var msg: String = ""
}
Code sample
// Ensure that the user is authorized to log in
if let userInfo = unipassSdk?.getUserInfo() {
let signInput = UniPassSignInput()
signInput.from = userInfo.address
signInput.type = UniPassSignType.PersonalSign
signInput.msg = signTextField?.text ?? "Test Sign Message"
unipassSdk?.signMessage(signInput, SuccessBlock: { signature in
print("unipassSdk: sign message successfully ✅", signature)
self.signatureLabel?.text = signature
}, ErrorBlock: { error in
print("unipassSdk: sign message failed ❎", error)
})
} else {
print("unipassSdk: user not login ❎")
}
Verify signature
For how to verify the signature on server, please refer to UniPass Verifying Messages.