parent
523e57ea52
commit
3a81a4b2f0
@ -1,23 +0,0 @@
|
||||
from .helpers import LISK_CURVE, get_address_from_public_key
|
||||
from apps.wallet.sign_message import require_confirm_sign_message
|
||||
|
||||
async def lisk_sign_message(ctx, msg):
|
||||
from trezor.messages.LiskMessageSignature import LiskMessageSignature
|
||||
from trezor.crypto.curve import ed25519
|
||||
from ..common import seed
|
||||
|
||||
message = msg.message
|
||||
|
||||
await require_confirm_sign_message(ctx, message)
|
||||
|
||||
address_n = msg.address_n or ()
|
||||
|
||||
node = await seed.derive_node(ctx, address_n, LISK_CURVE)
|
||||
seckey = node.private_key()
|
||||
pubkey = node.public_key()
|
||||
pubkey = pubkey[1:] # skip ed25519 pubkey marker
|
||||
address = get_address_from_public_key(pubkey)
|
||||
|
||||
signature = ed25519.sign(seckey, message)
|
||||
|
||||
return LiskMessageSignature(address=address, signature=signature)
|
@ -1,19 +0,0 @@
|
||||
|
||||
async def lisk_verify_message(ctx, msg):
|
||||
from trezor.crypto.curve import ed25519
|
||||
from .helpers import get_address_from_public_key
|
||||
from trezor import wire
|
||||
from trezor.messages.Success import Success
|
||||
from trezor.messages.FailureType import ProcessError
|
||||
from apps.wallet.verify_message import require_confirm_verify_message
|
||||
|
||||
verify = ed25519.verify(msg.public_key, msg.signature, msg.message)
|
||||
|
||||
if not verify:
|
||||
raise wire.FailureError(ProcessError, 'Invalid signature')
|
||||
|
||||
address = get_address_from_public_key(msg.public_key)
|
||||
|
||||
await require_confirm_verify_message(ctx, address, msg.message)
|
||||
|
||||
return Success(message='Message verified')
|
Loading…
Reference in new issue