Coder Social home page Coder Social logo

pjkundert / python-slip39 Goto Github PK

View Code? Open in Web Editor NEW
41.0 4.0 15.0 32.88 MB

Generate Ethereum, Bitcoin, etc. account seed and backup Mnemonics in SLIP-39 format (Trezor & Ledger compatible), with details in printable PDF format. Optionally, also print encrypted JSON and BIP-38 paper wallets.

Home Page: https://slip39.com

License: Other

Python 91.84% Makefile 3.17% Shell 0.66% Solidity 4.33%
ethereum slip-39 pdf bitcoin bip-39 trezor wallet cryptocurrency shamir

python-slip39's People

Contributors

andreser avatar fdegros avatar pjkundert avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

python-slip39's Issues

Make mnemonic cards as plain and simple as possible

At the moment, the generated mnemonic cards contain lots of information: mnemonic words, group composition, group names, group thresholds, cryptocurrency names, cryptocurrency addresses, watermarks...

As a consequence, they look quite "crowded", and they feature some data that I don't want to disseminate with my mnemonic cards.

I would prefer these cards to be as simple, plain and "boring" as possible. This is a security feature. I don't want these cards to attract any unwanted curiosity or attention. I don't want them to leak more information or hints than necessary. I don't want them to have any reference to cryptocurrencies. And I certainly don't want them to give away the addresses of my wallet, or the cryptocurrencies I'm interested in.

Record group threshold on cover page

On the cover page, it would be useful to have an indication of the group threshold, ie the number of groups that are required to recover the master secret.

This information is currently recorded on each mnemonic card, but I think it would make more sense to print it on the cover page itself.

Center mnemonic cards on paper

The block of mnemonic cards seems to be in the upper left corner of the printable area. I think it would look better, and would be easier to print, if this block of cards was centered on the page.

Record first three words of each group on cover page

The first three mnemonic words of each group act as an identifier of this group and don't contain any secret information.
It would be useful to record the first three words of each group on the cover page, in the recipient list, for example.

ZeroDivisionError when printing paper wallet on A4 page

When running:

$ python3 -m slip39 -c BTC -w password --paper a4
...
2023-07-12 17:59:10 slip39           Failed to write PDFs: integer division or modulo by zero
Traceback (most recent call last):
  File ".../python-slip39/slip39/main.py", line 187, in main
    write_pdfs(
  File ".../python-slip39/slip39/layout/pdf.py", line 504, in write_pdfs
    p,(offsetx,offsety) = page_xy( wall_n )
                          ^^^^^^^^^^^^^^^^^
  File "/home/fdegros/experimental/python-slip39/slip39/layout/components.py", line 552, in page_xy
    page,nth            = divmod( num, comps_pp )
                ^^^^^^^^^^^^^^^^^^^^^^^
ZeroDivisionError: integer division or modulo by zero

I suspect this has something to do with the fact that the paper wallets are slightly too wide to fit on an A4 page.

Use m/49' instead of m/44' for SegWit addresses

This slip39 tool uses a derivation path starting with m/44' for both legacy and SegWit addresses, for both BTC and LTC. This is different from other major wallets, which use m/49' for SegWit addresses. Is this discrepancy an oversight, or a deliberate design decision?

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.