Add RPC for BLS secret to public key - #2841

Merged
UdjinM6 merged 5 commits into
dashpay:developfrom
nmarley:bls-sk2pk
Apr 8, 2019
Merged

Add RPC for BLS secret to public key#2841
UdjinM6 merged 5 commits into
dashpay:developfrom
nmarley:bls-sk2pk

Conversation

@nmarley

Copy link
Copy Markdown

This is a tool for BLS keys to verify the public key which comes from the secret key using the Core BLS library, and is helpful when debugging keys that may have been generated elsewhere (like in Dash Masternode Tool, as an example).

It just accepts a BLS secret key in hex format and outputs a secret / public keypair, similar to the output of bls generate.

I'm open to re-naming as I'm not sure sk2pk is the best name, but can't think of any better names which aren't really long to type.

@UdjinM6UdjinM6 added this to the 14.0 milestone Apr 5, 2019
@UdjinM6

UdjinM6 commented Apr 5, 2019

Copy link
Copy Markdown

I like the idea but IMO it can be improved a bit UdjinM6@0f25d020b :)

Re name: no idea. Maybe we could just reuse generate instead UdjinM6@c12388c5b?

@nmarley

Copy link
Copy Markdown
Author

I like your changes much better as they simplify the code a lot -- only thing is that SetHexStr allows weird input like:

./src/dash-cli bls generate 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1fzzzzzzzzzzzzzzzz
{
"secret": "000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f",
"public": "15fde78acd5f6886ddaf5d0056610167c513d09c1c0efabbc7cdcc69beea113779c4a81e2d24daafc5387dbf6ac5fe48"
}

It does just truncate it, so not too big a deal, but that could get confusing too.

@UdjinM6

Copy link
Copy Markdown

@nmarley hmmm... Good catch! I guess we should fix SetHexStr actually.

@UdjinM6UdjinM6 added the RPC Some notable changes to RPC params/behaviour/descriptions label Apr 5, 2019
UdjinM6
UdjinM6 previously approved these changes Apr 5, 2019

@UdjinM6UdjinM6 left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

ACK

@nmarley

Copy link
Copy Markdown
Author

Updated PR per Slack discussion, namely:

  • do not re-use "generate"
  • rename to "fromsecret"

Still needs #2843 for input validation, but I don't think the order matters for merging.

@UdjinM6UdjinM6 left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

utACK

@codablockcodablock left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

utACK

@UdjinM6
UdjinM6 merged commit 0f0d8ea into dashpay:developApr 8, 2019
thephez added a commit to thephez/dash-docs that referenced this pull request Apr 8, 2019
@nmarley
nmarley deleted the bls-sk2pk branch April 9, 2019 16:26
thephez added a commit to dash-docs/dash-docs that referenced this pull request Apr 10, 2019
* RPC - Update masternode current and winner
- Remove protocol, lastseen, activeseconds
* RPC - Remove gobject getvotes
- Related to dashpay/dash#2815
* RPC - Protx diff update
- Add merkleRootQuorums field
Related to dashpay/dash#2833
* RPC - listunspent update
Related to dashpay/dash#2727
* RPC - protx update_registrar update
- Rename votingKeyAddr to votingAddress
Related to dashpay/dash#2747
* RPC - Add bls fromsecret
Related to dashpay/dash#2841
* RPC - Start adding quorum RPCs
* RPC - Add quorum info details Minor formatting updates
* RPC - Add placeholders for remaining quorum sub-commands
* RPC - Add quorum sign/hasrecsig/isconflicting details
* RPC - Add note to regtest only quorum RPCs
* RPC - Add more detail to quorum dkgstatus
* Typo fix
* Minor format and example updates
* RPC - Add more quorum dkgstatus details
- Field descriptions
* RPC - Add quorum dkgstatus detail level 1 and 2 info
* RPC - protx update
- Remove support for "0"
Related to dashpay/dash#2622
thephez added a commit to thephez/dash-docs that referenced this pull request May 17, 2019
* RPC - Update masternode current and winner
- Remove protocol, lastseen, activeseconds
* RPC - Remove gobject getvotes
- Related to dashpay/dash#2815
* RPC - Protx diff update
- Add merkleRootQuorums field
Related to dashpay/dash#2833
* RPC - listunspent update
Related to dashpay/dash#2727
* RPC - protx update_registrar update
- Rename votingKeyAddr to votingAddress
Related to dashpay/dash#2747
* RPC - Add bls fromsecret
Related to dashpay/dash#2841
* RPC - Start adding quorum RPCs
* RPC - Add quorum info details Minor formatting updates
* RPC - Add placeholders for remaining quorum sub-commands
* RPC - Add quorum sign/hasrecsig/isconflicting details
* RPC - Add note to regtest only quorum RPCs
* RPC - Add more detail to quorum dkgstatus
* Typo fix
* Minor format and example updates
* RPC - Add more quorum dkgstatus details
- Field descriptions
* RPC - Add quorum dkgstatus detail level 1 and 2 info
* RPC - protx update
- Remove support for "0"
Related to dashpay/dash#2622
thephez added a commit to dash-docs/dash-docs that referenced this pull request May 17, 2019
* RPC - Update masternode current and winner
- Remove protocol, lastseen, activeseconds
* RPC - Remove gobject getvotes
- Related to dashpay/dash#2815
* RPC - Protx diff update
- Add merkleRootQuorums field
Related to dashpay/dash#2833
* RPC - listunspent update
Related to dashpay/dash#2727
* RPC - protx update_registrar update
- Rename votingKeyAddr to votingAddress
Related to dashpay/dash#2747
* RPC - Add bls fromsecret
Related to dashpay/dash#2841
* RPC - Start adding quorum RPCs
* RPC - Add quorum info details Minor formatting updates
* RPC - Add placeholders for remaining quorum sub-commands
* RPC - Add quorum sign/hasrecsig/isconflicting details
* RPC - Add note to regtest only quorum RPCs
* RPC - Add more detail to quorum dkgstatus
* Typo fix
* Minor format and example updates
* RPC - Add more quorum dkgstatus details
- Field descriptions
* RPC - Add quorum dkgstatus detail level 1 and 2 info
* RPC - protx update
- Remove support for "0"
Related to dashpay/dash#2622
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

RPCSome notable changes to RPC params/behaviour/descriptions

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@nmarley@UdjinM6@codablock
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Add RPC for BLS secret to public key - #2841

Merged
UdjinM6 merged 5 commits into
dashpay:developfrom
nmarley:bls-sk2pk
Apr 8, 2019
Merged

Add RPC for BLS secret to public key#2841
UdjinM6 merged 5 commits into
dashpay:developfrom
nmarley:bls-sk2pk

Conversation

@nmarley

Copy link
Copy Markdown

This is a tool for BLS keys to verify the public key which comes from the secret key using the Core BLS library, and is helpful when debugging keys that may have been generated elsewhere (like in Dash Masternode Tool, as an example).

It just accepts a BLS secret key in hex format and outputs a secret / public keypair, similar to the output of bls generate.

I'm open to re-naming as I'm not sure sk2pk is the best name, but can't think of any better names which aren't really long to type.

@UdjinM6UdjinM6 added this to the 14.0 milestone Apr 5, 2019
@UdjinM6

UdjinM6 commented Apr 5, 2019

Copy link
Copy Markdown

I like the idea but IMO it can be improved a bit UdjinM6@0f25d020b :)

Re name: no idea. Maybe we could just reuse generate instead UdjinM6@c12388c5b?

@nmarley

Copy link
Copy Markdown
Author

I like your changes much better as they simplify the code a lot -- only thing is that SetHexStr allows weird input like:

./src/dash-cli bls generate 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1fzzzzzzzzzzzzzzzz
{
"secret": "000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f",
"public": "15fde78acd5f6886ddaf5d0056610167c513d09c1c0efabbc7cdcc69beea113779c4a81e2d24daafc5387dbf6ac5fe48"
}

It does just truncate it, so not too big a deal, but that could get confusing too.

@UdjinM6

Copy link
Copy Markdown

@nmarley hmmm... Good catch! I guess we should fix SetHexStr actually.

@UdjinM6UdjinM6 added the RPC Some notable changes to RPC params/behaviour/descriptions label Apr 5, 2019
UdjinM6
UdjinM6 previously approved these changes Apr 5, 2019

@UdjinM6UdjinM6 left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

ACK

@nmarley

Copy link
Copy Markdown
Author

Updated PR per Slack discussion, namely:

  • do not re-use "generate"
  • rename to "fromsecret"

Still needs #2843 for input validation, but I don't think the order matters for merging.

@UdjinM6UdjinM6 left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

utACK

@codablockcodablock left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

utACK

@UdjinM6
UdjinM6 merged commit 0f0d8ea into dashpay:developApr 8, 2019
thephez added a commit to thephez/dash-docs that referenced this pull request Apr 8, 2019
@nmarley
nmarley deleted the bls-sk2pk branch April 9, 2019 16:26
thephez added a commit to dash-docs/dash-docs that referenced this pull request Apr 10, 2019
* RPC - Update masternode current and winner
- Remove protocol, lastseen, activeseconds
* RPC - Remove gobject getvotes
- Related to dashpay/dash#2815
* RPC - Protx diff update
- Add merkleRootQuorums field
Related to dashpay/dash#2833
* RPC - listunspent update
Related to dashpay/dash#2727
* RPC - protx update_registrar update
- Rename votingKeyAddr to votingAddress
Related to dashpay/dash#2747
* RPC - Add bls fromsecret
Related to dashpay/dash#2841
* RPC - Start adding quorum RPCs
* RPC - Add quorum info details Minor formatting updates
* RPC - Add placeholders for remaining quorum sub-commands
* RPC - Add quorum sign/hasrecsig/isconflicting details
* RPC - Add note to regtest only quorum RPCs
* RPC - Add more detail to quorum dkgstatus
* Typo fix
* Minor format and example updates
* RPC - Add more quorum dkgstatus details
- Field descriptions
* RPC - Add quorum dkgstatus detail level 1 and 2 info
* RPC - protx update
- Remove support for "0"
Related to dashpay/dash#2622
thephez added a commit to thephez/dash-docs that referenced this pull request May 17, 2019
* RPC - Update masternode current and winner
- Remove protocol, lastseen, activeseconds
* RPC - Remove gobject getvotes
- Related to dashpay/dash#2815
* RPC - Protx diff update
- Add merkleRootQuorums field
Related to dashpay/dash#2833
* RPC - listunspent update
Related to dashpay/dash#2727
* RPC - protx update_registrar update
- Rename votingKeyAddr to votingAddress
Related to dashpay/dash#2747
* RPC - Add bls fromsecret
Related to dashpay/dash#2841
* RPC - Start adding quorum RPCs
* RPC - Add quorum info details Minor formatting updates
* RPC - Add placeholders for remaining quorum sub-commands
* RPC - Add quorum sign/hasrecsig/isconflicting details
* RPC - Add note to regtest only quorum RPCs
* RPC - Add more detail to quorum dkgstatus
* Typo fix
* Minor format and example updates
* RPC - Add more quorum dkgstatus details
- Field descriptions
* RPC - Add quorum dkgstatus detail level 1 and 2 info
* RPC - protx update
- Remove support for "0"
Related to dashpay/dash#2622
thephez added a commit to dash-docs/dash-docs that referenced this pull request May 17, 2019
* RPC - Update masternode current and winner
- Remove protocol, lastseen, activeseconds
* RPC - Remove gobject getvotes
- Related to dashpay/dash#2815
* RPC - Protx diff update
- Add merkleRootQuorums field
Related to dashpay/dash#2833
* RPC - listunspent update
Related to dashpay/dash#2727
* RPC - protx update_registrar update
- Rename votingKeyAddr to votingAddress
Related to dashpay/dash#2747
* RPC - Add bls fromsecret
Related to dashpay/dash#2841
* RPC - Start adding quorum RPCs
* RPC - Add quorum info details Minor formatting updates
* RPC - Add placeholders for remaining quorum sub-commands
* RPC - Add quorum sign/hasrecsig/isconflicting details
* RPC - Add note to regtest only quorum RPCs
* RPC - Add more detail to quorum dkgstatus
* Typo fix
* Minor format and example updates
* RPC - Add more quorum dkgstatus details
- Field descriptions
* RPC - Add quorum dkgstatus detail level 1 and 2 info
* RPC - protx update
- Remove support for "0"
Related to dashpay/dash#2622
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

RPCSome notable changes to RPC params/behaviour/descriptions

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@nmarley@UdjinM6@codablock
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Add RPC for BLS secret to public key - #2841

Merged
UdjinM6 merged 5 commits into
dashpay:developfrom
nmarley:bls-sk2pk
Apr 8, 2019
Merged

Add RPC for BLS secret to public key#2841
UdjinM6 merged 5 commits into
dashpay:developfrom
nmarley:bls-sk2pk

Conversation

@nmarley

Copy link
Copy Markdown

This is a tool for BLS keys to verify the public key which comes from the secret key using the Core BLS library, and is helpful when debugging keys that may have been generated elsewhere (like in Dash Masternode Tool, as an example).

It just accepts a BLS secret key in hex format and outputs a secret / public keypair, similar to the output of bls generate.

I'm open to re-naming as I'm not sure sk2pk is the best name, but can't think of any better names which aren't really long to type.

@UdjinM6UdjinM6 added this to the 14.0 milestone Apr 5, 2019
@UdjinM6

UdjinM6 commented Apr 5, 2019

Copy link
Copy Markdown

I like the idea but IMO it can be improved a bit UdjinM6@0f25d020b :)

Re name: no idea. Maybe we could just reuse generate instead UdjinM6@c12388c5b?

@nmarley

Copy link
Copy Markdown
Author

I like your changes much better as they simplify the code a lot -- only thing is that SetHexStr allows weird input like:

./src/dash-cli bls generate 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1fzzzzzzzzzzzzzzzz
{
"secret": "000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f",
"public": "15fde78acd5f6886ddaf5d0056610167c513d09c1c0efabbc7cdcc69beea113779c4a81e2d24daafc5387dbf6ac5fe48"
}

It does just truncate it, so not too big a deal, but that could get confusing too.

@UdjinM6

Copy link
Copy Markdown

@nmarley hmmm... Good catch! I guess we should fix SetHexStr actually.

@UdjinM6UdjinM6 added the RPC Some notable changes to RPC params/behaviour/descriptions label Apr 5, 2019
UdjinM6
UdjinM6 previously approved these changes Apr 5, 2019

@UdjinM6UdjinM6 left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

ACK

@nmarley

Copy link
Copy Markdown
Author

Updated PR per Slack discussion, namely:

  • do not re-use "generate"
  • rename to "fromsecret"

Still needs #2843 for input validation, but I don't think the order matters for merging.

@UdjinM6UdjinM6 left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

utACK

@codablockcodablock left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

utACK

@UdjinM6
UdjinM6 merged commit 0f0d8ea into dashpay:developApr 8, 2019
thephez added a commit to thephez/dash-docs that referenced this pull request Apr 8, 2019
@nmarley
nmarley deleted the bls-sk2pk branch April 9, 2019 16:26
thephez added a commit to dash-docs/dash-docs that referenced this pull request Apr 10, 2019
* RPC - Update masternode current and winner
- Remove protocol, lastseen, activeseconds
* RPC - Remove gobject getvotes
- Related to dashpay/dash#2815
* RPC - Protx diff update
- Add merkleRootQuorums field
Related to dashpay/dash#2833
* RPC - listunspent update
Related to dashpay/dash#2727
* RPC - protx update_registrar update
- Rename votingKeyAddr to votingAddress
Related to dashpay/dash#2747
* RPC - Add bls fromsecret
Related to dashpay/dash#2841
* RPC - Start adding quorum RPCs
* RPC - Add quorum info details Minor formatting updates
* RPC - Add placeholders for remaining quorum sub-commands
* RPC - Add quorum sign/hasrecsig/isconflicting details
* RPC - Add note to regtest only quorum RPCs
* RPC - Add more detail to quorum dkgstatus
* Typo fix
* Minor format and example updates
* RPC - Add more quorum dkgstatus details
- Field descriptions
* RPC - Add quorum dkgstatus detail level 1 and 2 info
* RPC - protx update
- Remove support for "0"
Related to dashpay/dash#2622
thephez added a commit to thephez/dash-docs that referenced this pull request May 17, 2019
* RPC - Update masternode current and winner
- Remove protocol, lastseen, activeseconds
* RPC - Remove gobject getvotes
- Related to dashpay/dash#2815
* RPC - Protx diff update
- Add merkleRootQuorums field
Related to dashpay/dash#2833
* RPC - listunspent update
Related to dashpay/dash#2727
* RPC - protx update_registrar update
- Rename votingKeyAddr to votingAddress
Related to dashpay/dash#2747
* RPC - Add bls fromsecret
Related to dashpay/dash#2841
* RPC - Start adding quorum RPCs
* RPC - Add quorum info details Minor formatting updates
* RPC - Add placeholders for remaining quorum sub-commands
* RPC - Add quorum sign/hasrecsig/isconflicting details
* RPC - Add note to regtest only quorum RPCs
* RPC - Add more detail to quorum dkgstatus
* Typo fix
* Minor format and example updates
* RPC - Add more quorum dkgstatus details
- Field descriptions
* RPC - Add quorum dkgstatus detail level 1 and 2 info
* RPC - protx update
- Remove support for "0"
Related to dashpay/dash#2622
thephez added a commit to dash-docs/dash-docs that referenced this pull request May 17, 2019
* RPC - Update masternode current and winner
- Remove protocol, lastseen, activeseconds
* RPC - Remove gobject getvotes
- Related to dashpay/dash#2815
* RPC - Protx diff update
- Add merkleRootQuorums field
Related to dashpay/dash#2833
* RPC - listunspent update
Related to dashpay/dash#2727
* RPC - protx update_registrar update
- Rename votingKeyAddr to votingAddress
Related to dashpay/dash#2747
* RPC - Add bls fromsecret
Related to dashpay/dash#2841
* RPC - Start adding quorum RPCs
* RPC - Add quorum info details Minor formatting updates
* RPC - Add placeholders for remaining quorum sub-commands
* RPC - Add quorum sign/hasrecsig/isconflicting details
* RPC - Add note to regtest only quorum RPCs
* RPC - Add more detail to quorum dkgstatus
* Typo fix
* Minor format and example updates
* RPC - Add more quorum dkgstatus details
- Field descriptions
* RPC - Add quorum dkgstatus detail level 1 and 2 info
* RPC - protx update
- Remove support for "0"
Related to dashpay/dash#2622
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

RPCSome notable changes to RPC params/behaviour/descriptions

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@nmarley@UdjinM6@codablock
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Add RPC for BLS secret to public key - #2841

Merged
UdjinM6 merged 5 commits into
dashpay:developfrom
nmarley:bls-sk2pk
Apr 8, 2019
Merged

Add RPC for BLS secret to public key#2841
UdjinM6 merged 5 commits into
dashpay:developfrom
nmarley:bls-sk2pk

Conversation

@nmarley

Copy link
Copy Markdown

This is a tool for BLS keys to verify the public key which comes from the secret key using the Core BLS library, and is helpful when debugging keys that may have been generated elsewhere (like in Dash Masternode Tool, as an example).

It just accepts a BLS secret key in hex format and outputs a secret / public keypair, similar to the output of bls generate.

I'm open to re-naming as I'm not sure sk2pk is the best name, but can't think of any better names which aren't really long to type.

@UdjinM6UdjinM6 added this to the 14.0 milestone Apr 5, 2019
@UdjinM6

UdjinM6 commented Apr 5, 2019

Copy link
Copy Markdown

I like the idea but IMO it can be improved a bit UdjinM6@0f25d020b :)

Re name: no idea. Maybe we could just reuse generate instead UdjinM6@c12388c5b?

@nmarley

Copy link
Copy Markdown
Author

I like your changes much better as they simplify the code a lot -- only thing is that SetHexStr allows weird input like:

./src/dash-cli bls generate 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1fzzzzzzzzzzzzzzzz
{
"secret": "000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f",
"public": "15fde78acd5f6886ddaf5d0056610167c513d09c1c0efabbc7cdcc69beea113779c4a81e2d24daafc5387dbf6ac5fe48"
}

It does just truncate it, so not too big a deal, but that could get confusing too.

@UdjinM6

Copy link
Copy Markdown

@nmarley hmmm... Good catch! I guess we should fix SetHexStr actually.

@UdjinM6UdjinM6 added the RPC Some notable changes to RPC params/behaviour/descriptions label Apr 5, 2019
UdjinM6
UdjinM6 previously approved these changes Apr 5, 2019

@UdjinM6UdjinM6 left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

ACK

@nmarley

Copy link
Copy Markdown
Author

Updated PR per Slack discussion, namely:

  • do not re-use "generate"
  • rename to "fromsecret"

Still needs #2843 for input validation, but I don't think the order matters for merging.

@UdjinM6UdjinM6 left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

utACK

@codablockcodablock left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

utACK

@UdjinM6
UdjinM6 merged commit 0f0d8ea into dashpay:developApr 8, 2019
thephez added a commit to thephez/dash-docs that referenced this pull request Apr 8, 2019
@nmarley
nmarley deleted the bls-sk2pk branch April 9, 2019 16:26
thephez added a commit to dash-docs/dash-docs that referenced this pull request Apr 10, 2019
* RPC - Update masternode current and winner
- Remove protocol, lastseen, activeseconds
* RPC - Remove gobject getvotes
- Related to dashpay/dash#2815
* RPC - Protx diff update
- Add merkleRootQuorums field
Related to dashpay/dash#2833
* RPC - listunspent update
Related to dashpay/dash#2727
* RPC - protx update_registrar update
- Rename votingKeyAddr to votingAddress
Related to dashpay/dash#2747
* RPC - Add bls fromsecret
Related to dashpay/dash#2841
* RPC - Start adding quorum RPCs
* RPC - Add quorum info details Minor formatting updates
* RPC - Add placeholders for remaining quorum sub-commands
* RPC - Add quorum sign/hasrecsig/isconflicting details
* RPC - Add note to regtest only quorum RPCs
* RPC - Add more detail to quorum dkgstatus
* Typo fix
* Minor format and example updates
* RPC - Add more quorum dkgstatus details
- Field descriptions
* RPC - Add quorum dkgstatus detail level 1 and 2 info
* RPC - protx update
- Remove support for "0"
Related to dashpay/dash#2622
thephez added a commit to thephez/dash-docs that referenced this pull request May 17, 2019
* RPC - Update masternode current and winner
- Remove protocol, lastseen, activeseconds
* RPC - Remove gobject getvotes
- Related to dashpay/dash#2815
* RPC - Protx diff update
- Add merkleRootQuorums field
Related to dashpay/dash#2833
* RPC - listunspent update
Related to dashpay/dash#2727
* RPC - protx update_registrar update
- Rename votingKeyAddr to votingAddress
Related to dashpay/dash#2747
* RPC - Add bls fromsecret
Related to dashpay/dash#2841
* RPC - Start adding quorum RPCs
* RPC - Add quorum info details Minor formatting updates
* RPC - Add placeholders for remaining quorum sub-commands
* RPC - Add quorum sign/hasrecsig/isconflicting details
* RPC - Add note to regtest only quorum RPCs
* RPC - Add more detail to quorum dkgstatus
* Typo fix
* Minor format and example updates
* RPC - Add more quorum dkgstatus details
- Field descriptions
* RPC - Add quorum dkgstatus detail level 1 and 2 info
* RPC - protx update
- Remove support for "0"
Related to dashpay/dash#2622
thephez added a commit to dash-docs/dash-docs that referenced this pull request May 17, 2019
* RPC - Update masternode current and winner
- Remove protocol, lastseen, activeseconds
* RPC - Remove gobject getvotes
- Related to dashpay/dash#2815
* RPC - Protx diff update
- Add merkleRootQuorums field
Related to dashpay/dash#2833
* RPC - listunspent update
Related to dashpay/dash#2727
* RPC - protx update_registrar update
- Rename votingKeyAddr to votingAddress
Related to dashpay/dash#2747
* RPC - Add bls fromsecret
Related to dashpay/dash#2841
* RPC - Start adding quorum RPCs
* RPC - Add quorum info details Minor formatting updates
* RPC - Add placeholders for remaining quorum sub-commands
* RPC - Add quorum sign/hasrecsig/isconflicting details
* RPC - Add note to regtest only quorum RPCs
* RPC - Add more detail to quorum dkgstatus
* Typo fix
* Minor format and example updates
* RPC - Add more quorum dkgstatus details
- Field descriptions
* RPC - Add quorum dkgstatus detail level 1 and 2 info
* RPC - protx update
- Remove support for "0"
Related to dashpay/dash#2622
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

RPCSome notable changes to RPC params/behaviour/descriptions

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@nmarley@UdjinM6@codablock
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Add RPC for BLS secret to public key - #2841

Merged
UdjinM6 merged 5 commits into
dashpay:developfrom
nmarley:bls-sk2pk
Apr 8, 2019
Merged

Add RPC for BLS secret to public key#2841
UdjinM6 merged 5 commits into
dashpay:developfrom
nmarley:bls-sk2pk

Conversation

@nmarley

Copy link
Copy Markdown

This is a tool for BLS keys to verify the public key which comes from the secret key using the Core BLS library, and is helpful when debugging keys that may have been generated elsewhere (like in Dash Masternode Tool, as an example).

It just accepts a BLS secret key in hex format and outputs a secret / public keypair, similar to the output of bls generate.

I'm open to re-naming as I'm not sure sk2pk is the best name, but can't think of any better names which aren't really long to type.

@UdjinM6UdjinM6 added this to the 14.0 milestone Apr 5, 2019
@UdjinM6

UdjinM6 commented Apr 5, 2019

Copy link
Copy Markdown

I like the idea but IMO it can be improved a bit UdjinM6@0f25d020b :)

Re name: no idea. Maybe we could just reuse generate instead UdjinM6@c12388c5b?

@nmarley

Copy link
Copy Markdown
Author

I like your changes much better as they simplify the code a lot -- only thing is that SetHexStr allows weird input like:

./src/dash-cli bls generate 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1fzzzzzzzzzzzzzzzz
{
"secret": "000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f",
"public": "15fde78acd5f6886ddaf5d0056610167c513d09c1c0efabbc7cdcc69beea113779c4a81e2d24daafc5387dbf6ac5fe48"
}

It does just truncate it, so not too big a deal, but that could get confusing too.

@UdjinM6

Copy link
Copy Markdown

@nmarley hmmm... Good catch! I guess we should fix SetHexStr actually.

@UdjinM6UdjinM6 added the RPC Some notable changes to RPC params/behaviour/descriptions label Apr 5, 2019
UdjinM6
UdjinM6 previously approved these changes Apr 5, 2019

@UdjinM6UdjinM6 left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

ACK

@nmarley

Copy link
Copy Markdown
Author

Updated PR per Slack discussion, namely:

  • do not re-use "generate"
  • rename to "fromsecret"

Still needs #2843 for input validation, but I don't think the order matters for merging.

@UdjinM6UdjinM6 left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

utACK

@codablockcodablock left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

utACK

@UdjinM6
UdjinM6 merged commit 0f0d8ea into dashpay:developApr 8, 2019
thephez added a commit to thephez/dash-docs that referenced this pull request Apr 8, 2019
@nmarley
nmarley deleted the bls-sk2pk branch April 9, 2019 16:26
thephez added a commit to dash-docs/dash-docs that referenced this pull request Apr 10, 2019
* RPC - Update masternode current and winner
- Remove protocol, lastseen, activeseconds
* RPC - Remove gobject getvotes
- Related to dashpay/dash#2815
* RPC - Protx diff update
- Add merkleRootQuorums field
Related to dashpay/dash#2833
* RPC - listunspent update
Related to dashpay/dash#2727
* RPC - protx update_registrar update
- Rename votingKeyAddr to votingAddress
Related to dashpay/dash#2747
* RPC - Add bls fromsecret
Related to dashpay/dash#2841
* RPC - Start adding quorum RPCs
* RPC - Add quorum info details Minor formatting updates
* RPC - Add placeholders for remaining quorum sub-commands
* RPC - Add quorum sign/hasrecsig/isconflicting details
* RPC - Add note to regtest only quorum RPCs
* RPC - Add more detail to quorum dkgstatus
* Typo fix
* Minor format and example updates
* RPC - Add more quorum dkgstatus details
- Field descriptions
* RPC - Add quorum dkgstatus detail level 1 and 2 info
* RPC - protx update
- Remove support for "0"
Related to dashpay/dash#2622
thephez added a commit to thephez/dash-docs that referenced this pull request May 17, 2019
* RPC - Update masternode current and winner
- Remove protocol, lastseen, activeseconds
* RPC - Remove gobject getvotes
- Related to dashpay/dash#2815
* RPC - Protx diff update
- Add merkleRootQuorums field
Related to dashpay/dash#2833
* RPC - listunspent update
Related to dashpay/dash#2727
* RPC - protx update_registrar update
- Rename votingKeyAddr to votingAddress
Related to dashpay/dash#2747
* RPC - Add bls fromsecret
Related to dashpay/dash#2841
* RPC - Start adding quorum RPCs
* RPC - Add quorum info details Minor formatting updates
* RPC - Add placeholders for remaining quorum sub-commands
* RPC - Add quorum sign/hasrecsig/isconflicting details
* RPC - Add note to regtest only quorum RPCs
* RPC - Add more detail to quorum dkgstatus
* Typo fix
* Minor format and example updates
* RPC - Add more quorum dkgstatus details
- Field descriptions
* RPC - Add quorum dkgstatus detail level 1 and 2 info
* RPC - protx update
- Remove support for "0"
Related to dashpay/dash#2622
thephez added a commit to dash-docs/dash-docs that referenced this pull request May 17, 2019
* RPC - Update masternode current and winner
- Remove protocol, lastseen, activeseconds
* RPC - Remove gobject getvotes
- Related to dashpay/dash#2815
* RPC - Protx diff update
- Add merkleRootQuorums field
Related to dashpay/dash#2833
* RPC - listunspent update
Related to dashpay/dash#2727
* RPC - protx update_registrar update
- Rename votingKeyAddr to votingAddress
Related to dashpay/dash#2747
* RPC - Add bls fromsecret
Related to dashpay/dash#2841
* RPC - Start adding quorum RPCs
* RPC - Add quorum info details Minor formatting updates
* RPC - Add placeholders for remaining quorum sub-commands
* RPC - Add quorum sign/hasrecsig/isconflicting details
* RPC - Add note to regtest only quorum RPCs
* RPC - Add more detail to quorum dkgstatus
* Typo fix
* Minor format and example updates
* RPC - Add more quorum dkgstatus details
- Field descriptions
* RPC - Add quorum dkgstatus detail level 1 and 2 info
* RPC - protx update
- Remove support for "0"
Related to dashpay/dash#2622
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

RPCSome notable changes to RPC params/behaviour/descriptions

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@nmarley@UdjinM6@codablock
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Add RPC for BLS secret to public key - #2841

Merged
UdjinM6 merged 5 commits into
dashpay:developfrom
nmarley:bls-sk2pk
Apr 8, 2019
Merged

Add RPC for BLS secret to public key#2841
UdjinM6 merged 5 commits into
dashpay:developfrom
nmarley:bls-sk2pk

Conversation

@nmarley

Copy link
Copy Markdown

This is a tool for BLS keys to verify the public key which comes from the secret key using the Core BLS library, and is helpful when debugging keys that may have been generated elsewhere (like in Dash Masternode Tool, as an example).

It just accepts a BLS secret key in hex format and outputs a secret / public keypair, similar to the output of bls generate.

I'm open to re-naming as I'm not sure sk2pk is the best name, but can't think of any better names which aren't really long to type.

@UdjinM6UdjinM6 added this to the 14.0 milestone Apr 5, 2019
@UdjinM6

UdjinM6 commented Apr 5, 2019

Copy link
Copy Markdown

I like the idea but IMO it can be improved a bit UdjinM6@0f25d020b :)

Re name: no idea. Maybe we could just reuse generate instead UdjinM6@c12388c5b?

@nmarley

Copy link
Copy Markdown
Author

I like your changes much better as they simplify the code a lot -- only thing is that SetHexStr allows weird input like:

./src/dash-cli bls generate 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1fzzzzzzzzzzzzzzzz
{
"secret": "000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f",
"public": "15fde78acd5f6886ddaf5d0056610167c513d09c1c0efabbc7cdcc69beea113779c4a81e2d24daafc5387dbf6ac5fe48"
}

It does just truncate it, so not too big a deal, but that could get confusing too.

@UdjinM6

Copy link
Copy Markdown

@nmarley hmmm... Good catch! I guess we should fix SetHexStr actually.

@UdjinM6UdjinM6 added the RPC Some notable changes to RPC params/behaviour/descriptions label Apr 5, 2019
UdjinM6
UdjinM6 previously approved these changes Apr 5, 2019

@UdjinM6UdjinM6 left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

ACK

@nmarley

Copy link
Copy Markdown
Author

Updated PR per Slack discussion, namely:

  • do not re-use "generate"
  • rename to "fromsecret"

Still needs #2843 for input validation, but I don't think the order matters for merging.

@UdjinM6UdjinM6 left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

utACK

@codablockcodablock left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

utACK

@UdjinM6
UdjinM6 merged commit 0f0d8ea into dashpay:developApr 8, 2019
thephez added a commit to thephez/dash-docs that referenced this pull request Apr 8, 2019
@nmarley
nmarley deleted the bls-sk2pk branch April 9, 2019 16:26
thephez added a commit to dash-docs/dash-docs that referenced this pull request Apr 10, 2019
* RPC - Update masternode current and winner
- Remove protocol, lastseen, activeseconds
* RPC - Remove gobject getvotes
- Related to dashpay/dash#2815
* RPC - Protx diff update
- Add merkleRootQuorums field
Related to dashpay/dash#2833
* RPC - listunspent update
Related to dashpay/dash#2727
* RPC - protx update_registrar update
- Rename votingKeyAddr to votingAddress
Related to dashpay/dash#2747
* RPC - Add bls fromsecret
Related to dashpay/dash#2841
* RPC - Start adding quorum RPCs
* RPC - Add quorum info details Minor formatting updates
* RPC - Add placeholders for remaining quorum sub-commands
* RPC - Add quorum sign/hasrecsig/isconflicting details
* RPC - Add note to regtest only quorum RPCs
* RPC - Add more detail to quorum dkgstatus
* Typo fix
* Minor format and example updates
* RPC - Add more quorum dkgstatus details
- Field descriptions
* RPC - Add quorum dkgstatus detail level 1 and 2 info
* RPC - protx update
- Remove support for "0"
Related to dashpay/dash#2622
thephez added a commit to thephez/dash-docs that referenced this pull request May 17, 2019
* RPC - Update masternode current and winner
- Remove protocol, lastseen, activeseconds
* RPC - Remove gobject getvotes
- Related to dashpay/dash#2815
* RPC - Protx diff update
- Add merkleRootQuorums field
Related to dashpay/dash#2833
* RPC - listunspent update
Related to dashpay/dash#2727
* RPC - protx update_registrar update
- Rename votingKeyAddr to votingAddress
Related to dashpay/dash#2747
* RPC - Add bls fromsecret
Related to dashpay/dash#2841
* RPC - Start adding quorum RPCs
* RPC - Add quorum info details Minor formatting updates
* RPC - Add placeholders for remaining quorum sub-commands
* RPC - Add quorum sign/hasrecsig/isconflicting details
* RPC - Add note to regtest only quorum RPCs
* RPC - Add more detail to quorum dkgstatus
* Typo fix
* Minor format and example updates
* RPC - Add more quorum dkgstatus details
- Field descriptions
* RPC - Add quorum dkgstatus detail level 1 and 2 info
* RPC - protx update
- Remove support for "0"
Related to dashpay/dash#2622
thephez added a commit to dash-docs/dash-docs that referenced this pull request May 17, 2019
* RPC - Update masternode current and winner
- Remove protocol, lastseen, activeseconds
* RPC - Remove gobject getvotes
- Related to dashpay/dash#2815
* RPC - Protx diff update
- Add merkleRootQuorums field
Related to dashpay/dash#2833
* RPC - listunspent update
Related to dashpay/dash#2727
* RPC - protx update_registrar update
- Rename votingKeyAddr to votingAddress
Related to dashpay/dash#2747
* RPC - Add bls fromsecret
Related to dashpay/dash#2841
* RPC - Start adding quorum RPCs
* RPC - Add quorum info details Minor formatting updates
* RPC - Add placeholders for remaining quorum sub-commands
* RPC - Add quorum sign/hasrecsig/isconflicting details
* RPC - Add note to regtest only quorum RPCs
* RPC - Add more detail to quorum dkgstatus
* Typo fix
* Minor format and example updates
* RPC - Add more quorum dkgstatus details
- Field descriptions
* RPC - Add quorum dkgstatus detail level 1 and 2 info
* RPC - protx update
- Remove support for "0"
Related to dashpay/dash#2622
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

RPCSome notable changes to RPC params/behaviour/descriptions

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@nmarley@UdjinM6@codablock
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Add RPC for BLS secret to public key - #2841

Merged
UdjinM6 merged 5 commits into
dashpay:developfrom
nmarley:bls-sk2pk
Apr 8, 2019
Merged

Add RPC for BLS secret to public key#2841
UdjinM6 merged 5 commits into
dashpay:developfrom
nmarley:bls-sk2pk

Conversation

@nmarley

Copy link
Copy Markdown

This is a tool for BLS keys to verify the public key which comes from the secret key using the Core BLS library, and is helpful when debugging keys that may have been generated elsewhere (like in Dash Masternode Tool, as an example).

It just accepts a BLS secret key in hex format and outputs a secret / public keypair, similar to the output of bls generate.

I'm open to re-naming as I'm not sure sk2pk is the best name, but can't think of any better names which aren't really long to type.

@UdjinM6UdjinM6 added this to the 14.0 milestone Apr 5, 2019
@UdjinM6

UdjinM6 commented Apr 5, 2019

Copy link
Copy Markdown

I like the idea but IMO it can be improved a bit UdjinM6@0f25d020b :)

Re name: no idea. Maybe we could just reuse generate instead UdjinM6@c12388c5b?

@nmarley

Copy link
Copy Markdown
Author

I like your changes much better as they simplify the code a lot -- only thing is that SetHexStr allows weird input like:

./src/dash-cli bls generate 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1fzzzzzzzzzzzzzzzz
{
"secret": "000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f",
"public": "15fde78acd5f6886ddaf5d0056610167c513d09c1c0efabbc7cdcc69beea113779c4a81e2d24daafc5387dbf6ac5fe48"
}

It does just truncate it, so not too big a deal, but that could get confusing too.

@UdjinM6

Copy link
Copy Markdown

@nmarley hmmm... Good catch! I guess we should fix SetHexStr actually.

@UdjinM6UdjinM6 added the RPC Some notable changes to RPC params/behaviour/descriptions label Apr 5, 2019
UdjinM6
UdjinM6 previously approved these changes Apr 5, 2019

@UdjinM6UdjinM6 left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

ACK

@nmarley

Copy link
Copy Markdown
Author

Updated PR per Slack discussion, namely:

  • do not re-use "generate"
  • rename to "fromsecret"

Still needs #2843 for input validation, but I don't think the order matters for merging.

@UdjinM6UdjinM6 left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

utACK

@codablockcodablock left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

utACK

@UdjinM6
UdjinM6 merged commit 0f0d8ea into dashpay:developApr 8, 2019
thephez added a commit to thephez/dash-docs that referenced this pull request Apr 8, 2019
@nmarley
nmarley deleted the bls-sk2pk branch April 9, 2019 16:26
thephez added a commit to dash-docs/dash-docs that referenced this pull request Apr 10, 2019
* RPC - Update masternode current and winner
- Remove protocol, lastseen, activeseconds
* RPC - Remove gobject getvotes
- Related to dashpay/dash#2815
* RPC - Protx diff update
- Add merkleRootQuorums field
Related to dashpay/dash#2833
* RPC - listunspent update
Related to dashpay/dash#2727
* RPC - protx update_registrar update
- Rename votingKeyAddr to votingAddress
Related to dashpay/dash#2747
* RPC - Add bls fromsecret
Related to dashpay/dash#2841
* RPC - Start adding quorum RPCs
* RPC - Add quorum info details Minor formatting updates
* RPC - Add placeholders for remaining quorum sub-commands
* RPC - Add quorum sign/hasrecsig/isconflicting details
* RPC - Add note to regtest only quorum RPCs
* RPC - Add more detail to quorum dkgstatus
* Typo fix
* Minor format and example updates
* RPC - Add more quorum dkgstatus details
- Field descriptions
* RPC - Add quorum dkgstatus detail level 1 and 2 info
* RPC - protx update
- Remove support for "0"
Related to dashpay/dash#2622
thephez added a commit to thephez/dash-docs that referenced this pull request May 17, 2019
* RPC - Update masternode current and winner
- Remove protocol, lastseen, activeseconds
* RPC - Remove gobject getvotes
- Related to dashpay/dash#2815
* RPC - Protx diff update
- Add merkleRootQuorums field
Related to dashpay/dash#2833
* RPC - listunspent update
Related to dashpay/dash#2727
* RPC - protx update_registrar update
- Rename votingKeyAddr to votingAddress
Related to dashpay/dash#2747
* RPC - Add bls fromsecret
Related to dashpay/dash#2841
* RPC - Start adding quorum RPCs
* RPC - Add quorum info details Minor formatting updates
* RPC - Add placeholders for remaining quorum sub-commands
* RPC - Add quorum sign/hasrecsig/isconflicting details
* RPC - Add note to regtest only quorum RPCs
* RPC - Add more detail to quorum dkgstatus
* Typo fix
* Minor format and example updates
* RPC - Add more quorum dkgstatus details
- Field descriptions
* RPC - Add quorum dkgstatus detail level 1 and 2 info
* RPC - protx update
- Remove support for "0"
Related to dashpay/dash#2622
thephez added a commit to dash-docs/dash-docs that referenced this pull request May 17, 2019
* RPC - Update masternode current and winner
- Remove protocol, lastseen, activeseconds
* RPC - Remove gobject getvotes
- Related to dashpay/dash#2815
* RPC - Protx diff update
- Add merkleRootQuorums field
Related to dashpay/dash#2833
* RPC - listunspent update
Related to dashpay/dash#2727
* RPC - protx update_registrar update
- Rename votingKeyAddr to votingAddress
Related to dashpay/dash#2747
* RPC - Add bls fromsecret
Related to dashpay/dash#2841
* RPC - Start adding quorum RPCs
* RPC - Add quorum info details Minor formatting updates
* RPC - Add placeholders for remaining quorum sub-commands
* RPC - Add quorum sign/hasrecsig/isconflicting details
* RPC - Add note to regtest only quorum RPCs
* RPC - Add more detail to quorum dkgstatus
* Typo fix
* Minor format and example updates
* RPC - Add more quorum dkgstatus details
- Field descriptions
* RPC - Add quorum dkgstatus detail level 1 and 2 info
* RPC - protx update
- Remove support for "0"
Related to dashpay/dash#2622
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

RPCSome notable changes to RPC params/behaviour/descriptions

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@nmarley@UdjinM6@codablock
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Add RPC for BLS secret to public key - #2841

Merged
UdjinM6 merged 5 commits into
dashpay:developfrom
nmarley:bls-sk2pk
Apr 8, 2019
Merged

Add RPC for BLS secret to public key#2841
UdjinM6 merged 5 commits into
dashpay:developfrom
nmarley:bls-sk2pk

Conversation

@nmarley

Copy link
Copy Markdown

This is a tool for BLS keys to verify the public key which comes from the secret key using the Core BLS library, and is helpful when debugging keys that may have been generated elsewhere (like in Dash Masternode Tool, as an example).

It just accepts a BLS secret key in hex format and outputs a secret / public keypair, similar to the output of bls generate.

I'm open to re-naming as I'm not sure sk2pk is the best name, but can't think of any better names which aren't really long to type.

@UdjinM6UdjinM6 added this to the 14.0 milestone Apr 5, 2019
@UdjinM6

UdjinM6 commented Apr 5, 2019

Copy link
Copy Markdown

I like the idea but IMO it can be improved a bit UdjinM6@0f25d020b :)

Re name: no idea. Maybe we could just reuse generate instead UdjinM6@c12388c5b?

@nmarley

Copy link
Copy Markdown
Author

I like your changes much better as they simplify the code a lot -- only thing is that SetHexStr allows weird input like:

./src/dash-cli bls generate 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1fzzzzzzzzzzzzzzzz
{
"secret": "000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f",
"public": "15fde78acd5f6886ddaf5d0056610167c513d09c1c0efabbc7cdcc69beea113779c4a81e2d24daafc5387dbf6ac5fe48"
}

It does just truncate it, so not too big a deal, but that could get confusing too.

@UdjinM6

Copy link
Copy Markdown

@nmarley hmmm... Good catch! I guess we should fix SetHexStr actually.

@UdjinM6UdjinM6 added the RPC Some notable changes to RPC params/behaviour/descriptions label Apr 5, 2019
UdjinM6
UdjinM6 previously approved these changes Apr 5, 2019

@UdjinM6UdjinM6 left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

ACK

@nmarley

Copy link
Copy Markdown
Author

Updated PR per Slack discussion, namely:

  • do not re-use "generate"
  • rename to "fromsecret"

Still needs #2843 for input validation, but I don't think the order matters for merging.

@UdjinM6UdjinM6 left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

utACK

@codablockcodablock left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

utACK

@UdjinM6
UdjinM6 merged commit 0f0d8ea into dashpay:developApr 8, 2019
thephez added a commit to thephez/dash-docs that referenced this pull request Apr 8, 2019
@nmarley
nmarley deleted the bls-sk2pk branch April 9, 2019 16:26
thephez added a commit to dash-docs/dash-docs that referenced this pull request Apr 10, 2019
* RPC - Update masternode current and winner
- Remove protocol, lastseen, activeseconds
* RPC - Remove gobject getvotes
- Related to dashpay/dash#2815
* RPC - Protx diff update
- Add merkleRootQuorums field
Related to dashpay/dash#2833
* RPC - listunspent update
Related to dashpay/dash#2727
* RPC - protx update_registrar update
- Rename votingKeyAddr to votingAddress
Related to dashpay/dash#2747
* RPC - Add bls fromsecret
Related to dashpay/dash#2841
* RPC - Start adding quorum RPCs
* RPC - Add quorum info details Minor formatting updates
* RPC - Add placeholders for remaining quorum sub-commands
* RPC - Add quorum sign/hasrecsig/isconflicting details
* RPC - Add note to regtest only quorum RPCs
* RPC - Add more detail to quorum dkgstatus
* Typo fix
* Minor format and example updates
* RPC - Add more quorum dkgstatus details
- Field descriptions
* RPC - Add quorum dkgstatus detail level 1 and 2 info
* RPC - protx update
- Remove support for "0"
Related to dashpay/dash#2622
thephez added a commit to thephez/dash-docs that referenced this pull request May 17, 2019
* RPC - Update masternode current and winner
- Remove protocol, lastseen, activeseconds
* RPC - Remove gobject getvotes
- Related to dashpay/dash#2815
* RPC - Protx diff update
- Add merkleRootQuorums field
Related to dashpay/dash#2833
* RPC - listunspent update
Related to dashpay/dash#2727
* RPC - protx update_registrar update
- Rename votingKeyAddr to votingAddress
Related to dashpay/dash#2747
* RPC - Add bls fromsecret
Related to dashpay/dash#2841
* RPC - Start adding quorum RPCs
* RPC - Add quorum info details Minor formatting updates
* RPC - Add placeholders for remaining quorum sub-commands
* RPC - Add quorum sign/hasrecsig/isconflicting details
* RPC - Add note to regtest only quorum RPCs
* RPC - Add more detail to quorum dkgstatus
* Typo fix
* Minor format and example updates
* RPC - Add more quorum dkgstatus details
- Field descriptions
* RPC - Add quorum dkgstatus detail level 1 and 2 info
* RPC - protx update
- Remove support for "0"
Related to dashpay/dash#2622
thephez added a commit to dash-docs/dash-docs that referenced this pull request May 17, 2019
* RPC - Update masternode current and winner
- Remove protocol, lastseen, activeseconds
* RPC - Remove gobject getvotes
- Related to dashpay/dash#2815
* RPC - Protx diff update
- Add merkleRootQuorums field
Related to dashpay/dash#2833
* RPC - listunspent update
Related to dashpay/dash#2727
* RPC - protx update_registrar update
- Rename votingKeyAddr to votingAddress
Related to dashpay/dash#2747
* RPC - Add bls fromsecret
Related to dashpay/dash#2841
* RPC - Start adding quorum RPCs
* RPC - Add quorum info details Minor formatting updates
* RPC - Add placeholders for remaining quorum sub-commands
* RPC - Add quorum sign/hasrecsig/isconflicting details
* RPC - Add note to regtest only quorum RPCs
* RPC - Add more detail to quorum dkgstatus
* Typo fix
* Minor format and example updates
* RPC - Add more quorum dkgstatus details
- Field descriptions
* RPC - Add quorum dkgstatus detail level 1 and 2 info
* RPC - protx update
- Remove support for "0"
Related to dashpay/dash#2622
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

RPCSome notable changes to RPC params/behaviour/descriptions

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@nmarley@UdjinM6@codablock