chainside / btcpy

A Python3 SegWit-compliant library which provides tools to handle Bitcoin data structures in a simple fashion.
https://www.chainside.net
GNU Lesser General Public License v3.0
270 stars 73 forks source link

Replace base58 module with simple native implementation #5

Closed peerchemist closed 6 years ago

peerchemist commented 7 years ago

I recommend dropping external dependency on base58 module and going for simple included file which will deliver the feature. It's rather redundant dependency as this functionality is rather trivial. This implementation: https://github.com/PeerAssets/pypeerassets/blob/master/pypeerassets/base58.py is being used by us in the PeerAssets project for months now without any problems.

If you agree I will prepare a PR to do so.

SimoneBronzini commented 7 years ago

That would be interesting indeed, please feel free to prepare a PR about it. Of course, since base58 is quite a crucial part of this system (imagine the mayhem a base58 decode producing a wrong pubkey hash would cause), I will take time to audit it before merging. Also, do you think you can add a test suite for base58 in the PR?

peerchemist commented 7 years ago

Sure I will prepare and submit along with tests.

SimoneBronzini commented 6 years ago

@peerchemist Hi, any news about this?

peerchemist commented 6 years ago

I was rather busy recently, hope to get back to btcpy hacking soon.

SimoneBronzini commented 6 years ago

Closed by 265f22c7a598b081768ee00f47cf5ffcf1758578