Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Switch to ED25519 signing scheme #152

Merged

Conversation

diminator
Copy link
Contributor

see #137, part of #127

  • import keys from cryptoconditions
  • switch to ED25519

Note: all crypto tests are covered by cryptoconditions
Question: should we be able to configure the signing scheme?

set ed25519 as default
@codecov-io
Copy link

Current coverage is 82.84%

Merging #152 into develop will increase coverage by +82.84% as of dbf8f4b

@@            develop    #152   diff @@
=======================================
  Files             0      19    +19
  Stmts             0     880   +880
  Branches          0       0       
  Methods           0       0       
=======================================
+ Hit               0     729   +729
  Partial           0       0       
- Missed            0     151   +151

Review entire Coverage Diff as of dbf8f4b

Powered by Codecov. Updated on successful CI builds.

@r-marques
Copy link
Contributor

I guess for now we should just stick to one signing scheme

@diminator
Copy link
Contributor Author

Note that this is a breaking change in the sense that the keypairs need to be regenerated

@vrde any feedback?

'name': DB_NAME
},
'keypair': {
'private': '3wssdnSNsZYLvvQwuag5QNQnSfc5N38KV1ZeAoeHQQVe59N7vReJwXWANf5nncGxW63UzR4qHHv6DJhyLs9arJng',
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

after updating cryptoconditions to version 0.1.1 we need to use the 32 byte private key instead

@r-marques
Copy link
Contributor

👍

…rypto-ed25519-compatible-signing-scheme

Conflicts:
	setup.py
@ttmc
Copy link
Contributor

ttmc commented Apr 7, 2016

@diminator Please update the section of the docs where the signature algorithm is stated, and give a link or two to references on Ed25519.

That's in /docs/source/cryptography.md

http://bigchaindb.readthedocs.org/en/develop/cryptography.html

@@ -298,7 +298,7 @@ def create_block(self, validated_transactions):
# Calculate the hash of the new block
block_data = util.serialize(block)
block_hash = crypto.hash_data(block_data)
block_signature = crypto.PrivateKey(self.me_private).sign(block_data)
block_signature = crypto.SigningKey(self.me_private).sign(block_data).decode()
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What is the decode for?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

by default, the signature is bytes, but that wont serialize

@diminator diminator merged commit 3a05775 into develop Apr 7, 2016
sbellem pushed a commit to sbellem/bigchaindb that referenced this pull request Oct 24, 2016
…5519-compatible-signing-scheme

Switch to ED25519 signing scheme
@vrde vrde deleted the feat/137/crypto-ed25519-compatible-signing-scheme branch March 21, 2018 15:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants