bitshares / python-bitshares

Fully featured client-side library for the BitShares Blockchain - written entirely in python.
http://docs.pybitshares.com/
MIT License
162 stars 167 forks source link

Implement Blind Transfers #77

Open jhtitor opened 6 years ago

jhtitor commented 6 years ago

After shedding some tears, I've managed to get blind transfers working. Sadly, the whole affair is not a matter of a simple/single pull-request. (Although if you think otherwise, please take a look here)

Here's the breakdown:

xeroc commented 6 years ago

I've seen great progress here! Looking forward to the Pull Request

Unfortunately, GrapheneObjects where never meant to be read from wire format, However, we can surely patch something together to make this work for your. Please let me know what and how you need it.

litepresence commented 6 years ago

regarding the eliptical curve digital signature in pure-python, this might be a good repo to fork:

https://github.com/warner/python-ecdsa

jhtitor commented 6 years ago

@litepresence, thanks, I'll take a look.

I'm guessing tweak_add we need for PublicKey is already available in ecdsa/python-ecdsa. Nope, not there. https://github.com/xeroc/python-graphenelib/pull/66

However Pedersen/Rangeproof commitments are pretty unique and I've only seen them implemented in libsecp256k1-zkp, in C.