mirror of
https://github.com/trezor/trezor-firmware.git
synced 2024-12-16 19:38:09 +00:00
app.lisk: fix code style
This commit is contained in:
parent
de552b19f5
commit
1513578737
@ -1,8 +1,16 @@
|
|||||||
from .helpers import LISK_CURVE, get_address_from_public_key
|
from apps.common import seed
|
||||||
from apps.wallet.sign_message import require_confirm_sign_message
|
from apps.common.confirm import require_confirm
|
||||||
from trezor.crypto.hashlib import sha256
|
from apps.common.signverify import split_message
|
||||||
from trezor.utils import HashWriter
|
|
||||||
from apps.wallet.sign_tx.signing import write_varint
|
from apps.wallet.sign_tx.signing import write_varint
|
||||||
|
from trezor import ui
|
||||||
|
from trezor.crypto.curve import ed25519
|
||||||
|
from trezor.crypto.hashlib import sha256
|
||||||
|
from trezor.messages.LiskMessageSignature import LiskMessageSignature
|
||||||
|
from trezor.ui.text import Text
|
||||||
|
from trezor.utils import HashWriter
|
||||||
|
|
||||||
|
from .helpers import LISK_CURVE
|
||||||
|
|
||||||
|
|
||||||
def message_digest(message):
|
def message_digest(message):
|
||||||
h = HashWriter(sha256)
|
h = HashWriter(sha256)
|
||||||
@ -15,16 +23,11 @@ def message_digest(message):
|
|||||||
|
|
||||||
|
|
||||||
async def lisk_sign_message(ctx, msg):
|
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
|
message = msg.message
|
||||||
|
address_n = msg.address_n or ()
|
||||||
|
|
||||||
await require_confirm_sign_message(ctx, message)
|
await require_confirm_sign_message(ctx, message)
|
||||||
|
|
||||||
address_n = msg.address_n or ()
|
|
||||||
|
|
||||||
node = await seed.derive_node(ctx, address_n, LISK_CURVE)
|
node = await seed.derive_node(ctx, address_n, LISK_CURVE)
|
||||||
seckey = node.private_key()
|
seckey = node.private_key()
|
||||||
pubkey = node.public_key()
|
pubkey = node.public_key()
|
||||||
@ -33,3 +36,9 @@ async def lisk_sign_message(ctx, msg):
|
|||||||
signature = ed25519.sign(seckey, message_digest(message))
|
signature = ed25519.sign(seckey, message_digest(message))
|
||||||
|
|
||||||
return LiskMessageSignature(public_key=pubkey, signature=signature)
|
return LiskMessageSignature(public_key=pubkey, signature=signature)
|
||||||
|
|
||||||
|
|
||||||
|
async def require_confirm_sign_message(ctx, message):
|
||||||
|
message = split_message(message)
|
||||||
|
content = Text('Sign Lisk message', ui.ICON_DEFAULT, max_lines=5, *message)
|
||||||
|
await require_confirm(ctx, content)
|
||||||
|
@ -1,20 +1,19 @@
|
|||||||
|
from apps.wallet.verify_message import require_confirm_verify_message
|
||||||
|
from trezor import wire
|
||||||
|
from trezor.crypto.curve import ed25519
|
||||||
|
from trezor.messages.Success import Success
|
||||||
|
|
||||||
|
from .helpers import get_address_from_public_key
|
||||||
|
from .sign_message import message_digest
|
||||||
|
|
||||||
|
|
||||||
async def lisk_verify_message(ctx, msg):
|
async def lisk_verify_message(ctx, msg):
|
||||||
from trezor.crypto.curve import ed25519
|
digest = message_digest(msg.message)
|
||||||
from .helpers import get_address_from_public_key
|
verified = ed25519.verify(msg.public_key, msg.signature, digest)
|
||||||
from .sign_message import message_digest
|
if not verified:
|
||||||
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, message_digest(msg.message))
|
|
||||||
|
|
||||||
if not verify:
|
|
||||||
raise wire.ProcessError('Invalid signature')
|
raise wire.ProcessError('Invalid signature')
|
||||||
|
|
||||||
address = get_address_from_public_key(msg.public_key)
|
address = get_address_from_public_key(msg.public_key)
|
||||||
|
|
||||||
await require_confirm_verify_message(ctx, address, msg.message)
|
await require_confirm_verify_message(ctx, address, msg.message)
|
||||||
|
|
||||||
return Success(message='Message verified')
|
return Success(message='Message verified')
|
Loading…
Reference in New Issue
Block a user