asher-pembroke / elliptic

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

About

A hands-on tutorial on elliptic curves

Lesson 0 - defining elliptic curves

The continuous case uses geogebra. Visit the interactive companion page here:

https://www.geogebra.org/m/baurc6bu

Lesson 1 - discrete elliptic curves

The discrete case uses an interactive dashboard developed for this course.

Visit the following site to run it in your browser http://137.184.28.205:8050/

Alternatively, you may run it locally by following the Setup instructions below.

Setup

Docker (the easy way)

If you just want to run the dashboard, you'll need to have docker installed on your machine. https://www.docker.com/products/docker-desktop

Once you have docker, then you can run the following command from the base of this repo:

docker compose up

This will start two services:

!!! note: The notebook server uses an access token which will be printed out to the console when the container starts up.

Host install (the slightly harder way)

If you want to run the dashboard on your host machine, you'll need the following requirements

  • plotly
  • plotly
  • dash
  • numpy
  • dash-bootstrap-components
  • dash_daq
  • cryptography

You can get any of the above dependencies like this:

pip3 install <dependency>

Also, these are nice to have but not required

  • jupyter (if you want to run notebooks)
  • jupytext (if you want markdown notebooks)
  • jupyter-dash (if you want to prototype a dashboard in a notebook)

You'll also need the psidash library I made for rapid prototying of dashboards in yaml

pip install --user git+https://github.com/predsci/psidash.git

Finally, you'll need Jimmy Song's programming bitcoin in a sibling path of this repo

git clone https://github.com/jimmysong/programmingbitcoin.git /home/programmingbitcoin

About


Languages

Language:Python 97.6%Language:Dockerfile 2.1%Language:JavaScript 0.3%