GithubHelp home page GithubHelp logo

isabella232 / app-lto Goto Github PK

View Code? Open in Web Editor NEW

This project forked from ledgerhq/app-lto

0.0 0.0 0.0 457 KB

Community made LTO Network wallet application for Ledger devices

Home Page: https://github.com/iicc1/ledger-app-lto/wiki/How-to-use-a-Ledger-device-with-LTO-Network

License: MIT License

Makefile 6.37% Python 16.14% C 74.71% Shell 0.35% Dockerfile 2.43%

app-lto's Introduction

Ledger BOLOS application for LTO Network

Docker Cloud Build Status Docker Pulls

Community made LTO Network wallet application for Ledger devices.


Introduction

  • Ledger device wallet application for the LTO Network blockchain developed by a community member.

  • It is compliant with LTO Network cryptographic specifications.

  • There is a ready to use web app interface here.

  • It can be tested using the Python script located at python/ledger-lto.py.

  • Special thanks to the Ledger team, Waves community and, LTO Network team.

  • LTO Network Ledger APP User Guide


Building

To build this application you need to create a Ledger development environment. More information can be found here.

Alternatively, you can use my Docker image to compile the App with just one command.


Prerequisites

First, you must have Docker and Python 2 or 3 installed.

Docker is used to compile the App from source and Python to load it into your device.

Next, download or clone this repository into a folder. If you have downloaded it, remember to extract it.


Compiling

Ledger Nano S

Open a terminal inside the folder where the repository was downloaded and enter the following command:

Linux/Mac/Windows (PowerShell)

docker run -v ${PWD}:/code ignacioxyz/lto-ledger-devenv 'make'

Windows (CMD)

docker run -v %cd%:/code ignacioxyz/lto-ledger-devenv 'make'

This command will download my Docker image from DockerHub and build the Ledger App, creating several folders within the current folder.


Ledger Nano X

The Docker image uploaded to my Dockerhub uses the Ledger Nano S SDK. To compile this APP for a Ledger Nano X device, you need to build the Docker Image with the Nano X SDK.

To do this, edit the SDK download step in the Dockerfike

RUN echo "Download Ledger Nano X SDK" && \
  git clone --branch 1.2.4-5.1 https://github.com/LedgerHQ/nanox-secure-sdk.git ${BOLOS_SDK}

Build the Ledger image locally

docker build -t sdknanox .

And build the Ledger Nano X APP

docker run -v ${PWD}:/code sdknanox:latest 'make TARGET_NAME=TARGET_NANOX'

Uploading

Nano S

Now we will use Python to upload the App to your device.

You need to have ledgerblue depencency installed:

Python

pip install ledgerblue

Python3

pip3 install ledgerblue

And finally, load the App:

Python

python -m ledgerblue.loadApp --appFlags 0x240 --path "44'/353'" --curve ed25519 --tlv --targetId 0x31100004 --delete --fileName bin/app.hex --appName "LTO Network" --appVersion 2.2.0 --dataSize 64 --icon 010000000000ffffffffffffffffffffffbffd7ffedffbb7ed67e6cff39ff97ffe7ffeffffffffffff

Python3

python3 -m ledgerblue.loadApp --appFlags 0x240 --path "44'/353'" --curve ed25519 --tlv --targetId 0x31100004 --delete --fileName bin/app.hex --appName "LTO Network" --appVersion 2.2.0 --dataSize 64 --icon 010000000000ffffffffffffffffffffffbffd7ffedffbb7ed67e6cff39ff97ffe7ffeffffffffffff

After this, the installation process will start, asking for your permission on the Ledger screen.


Nano X

Unfortunately, at the time of writing, there is no way to load a non-official Ledger APP into a Ledger Nano X.

You can use a Ledger Nano X emulator called Speculos.


Web app

There are currently two web interfaces available to interact with this Ledger application:


CLI app

Once the Ledger app is loaded, you can try to communicate with it using the CLI app. You can download the precompiled binaries from the releases tag. Make sure you download the correct executable for your platform. Then execute the program and the app will guide you through the process.

You can also run the CLI app from source, it is just a Python script located at the python/ folder. Python 2.7 is required for this, the latest releases are found here here.

Install dependencies:

pip install ledgerblue
pip install colorama
pip install base58

Then enter the LTO Network app on your ledger and start the script:

python python/ledger-lto.py

app-lto's People

Contributors

iicc1 avatar jake-b avatar jibeee avatar nazeim avatar pscott avatar saltari avatar tamtamhero avatar tolsi avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.