-
Notifications
You must be signed in to change notification settings - Fork 177
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
name_show and name_filter should fail by default if blockchain is incomplete #124
Comments
This sounds like a good idea. I think there's already such a check present (see "safe mode"), and we could easily implement it in namecoind itself. Huntercoin already has this for querying game states, AFAIK. |
+1 |
domob1812
pushed a commit
to domob1812/namecoin
that referenced
this issue
Dec 16, 2014
b0210a9 Merge pull request namecoin#135 ee3eb4b Fix a memory leak and add a number of small tests. 4d879a3 Merge pull request namecoin#134 d5e8362 Merge pull request namecoin#127 7b92cf6 Merge pull request namecoin#132 0bf70a5 Merge pull request namecoin#133 29ae131 Make scalar_add_bit test's overflow detection exact 9048def Avoid undefined shift behaviour efb7d4b Use constant-time conditional moves instead of byte slicing d220062 Merge pull request namecoin#131 82f9254 Fix typo 601ca04 Merge pull request namecoin#129 35399e0 Bugfix: b is restricted, not r c35ff1e Convert lambda splitter to pure scalar code. cc604e9 Avoid division when decomposing scalars ff8746d Add secp256k1_scalar_mul_shift_var bd313f7 Merge pull request namecoin#119 276f987 Merge pull request namecoin#124 25d125e Merge pull request namecoin#126 24b3c65 Add a test case for ECDSA recomputing infinity 32600e5 Add a test for r >= order signature handling 4d4eeea Make secp256k1_fe_mul_inner use the r != property be82e92 Require that r and b are different for field multiplication. 597128d Make num optional 659b554 Make constant initializers independent from num 0af5b47 Merge pull request namecoin#120 e2e8a36 Merge pull request namecoin#117 c76be9e Remove unused num functions 4285a98 Move lambda-splitting code to scalar. f24041d Switch all EC/ECDSA logic from num to scalar 6794be6 Add scalar splitting functions d1502eb Add secp256k1_scalar_inverse_var which delegates to GMP b5c9ee7 Make test_point_times_order test meaningful again 0b73059 Switch wnaf splitting from num-based to scalar-based 1e6c77c Generalize secp256k1_scalar_get_bits 5213207 Add secp256k1_scalar_add_bit 3c0ae43 Merge pull request namecoin#122 6e05287 Do signature recovery/verification with 4 possible recid case e3d692f Explain why no y=0 check is necessary for doubling f7dc1c6 Optimize doubling: secp256k1 has no y=0 point 666d3b5 Merge pull request namecoin#121 2a54f9b Correct typo in comment 9d64145 Merge pull request namecoin#114 99f0728 Fix secp256k1_num_set_bin handling of 0 d907ebc Add bounds checking to field element setters bb2cd94 Merge pull request namecoin#116 665775b Don't split the g factor when not using endomorphism 9431d6b Merge pull request namecoin#115 e2274c5 build: osx: attempt to work with homebrew keg-only packages git-subtree-dir: src/secp256k1 git-subtree-split: b0210a95da433e048a11d298efbcc14eb423c95f
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
I wrote a patch to NMControl which rejects incomplete blockchains: https://github.com/JeremyRand/nmcontrol/tree/incomplete_blockchain . However, it slows down lookups due to making 4 RPC calls per lookup instead of 1. This would be much more efficient to do on the namecoind side. Outdated name data is dangerous because it could include TLS fingerprints that were later revoked, or even the wrong owner of a name, both of which could be exploited to cause a MITM. It's also confusing to users because some websites will work fine, while others will be mysteriously broken.
I propose that name_show and name_filter return an error by default if the blockchain is incomplete (still downloading), or if errors were encountered (e.g. "you may need to upgrade"). An optional parameter (disabled by default) could enable name lookups regardless of this condition.
I'm ambivalent on whether this should be added to legacy namecoind or directly added to libcoin (assuming we're planning to use libcoin long-term).
The text was updated successfully, but these errors were encountered: