Skip to content

Instantly share code, notes, and snippets.

View nodech's full-sized avatar

Nodar Chkuaselidze nodech

  • Tbilisi, Georgia
View GitHub Profile
@nodech
nodech / 00-custom-simple-list.json
Last active June 21, 2023 20:55
Names tagged with custom in the names.db. Filtered out root (Previous one also had top100 filtered)
[
"ubuntu",
"marples",
"darksi",
"icann",
"blockstack",
"cloudflare",
"gnunet",
"eth",
"verisign",
@nodech
nodech / custom-claimed.json
Last active April 23, 2024 11:04
June 1 - Name list from top100 and custom. NOTE: There's overlap so this is unique list. originally top100 is 72 (but filtered out root) same for custom (filtered out root and top100)
[
"marples",
"darksi",
"eth",
"namecheap",
"riseup",
"webtorrent",
"keybase",
"m-d",
"brave"

Name issue and solutions

Claim Stats

ICANN TLDs will become available for auction at block 210240, around January 31 to February 2, 2024. As there's interest in preventing ICANN TLD trading on chain, we need to either completely disable claims and permanently seal reservations (soft-fork), or extend the claim period for these reserved names (hard-fork). Names on the reserved list fall into several categories: ROOT (ICANN TLDs),

@nodech
nodech / txdb.md
Last active August 22, 2023 10:15
TXDB State balance tracking

TXDB state/balance tracking

Transaction update sources.

  • insert
    • insert(pending): first sight of tx in mempool.
    • insert(block): first sight of tx in block.
  • confirm
    • confirm known transaction (from mempool, now in block)
  • unconfirm

Keybase proof

I hereby claim:

  • I am nodech on github.
  • I am nodech (https://keybase.io/nodech) on keybase.
  • I have a public key ASA7HzbXhMFFmvY7khUDLhyRGMiRhTrXM3BJS7S5EcOXowo

To claim this, I am signing this object:

@nodech
nodech / gf2-tests.js
Created November 6, 2018 21:19
GF2 tests.
'use strict';
const assert = require('assert');
// Code ..
console.log(`remainder => ${ffmul25(26, 5)}`);
{
const mul = ffmul25(0x1d, 0x02);
@nodech
nodech / getWif.js
Created November 6, 2018 11:31
Get wif from mnemonic for certain path.
const {hd, KeyRing} = require('bcoin');
const {HDPrivateKey} = hd;
const mnemonic = 'midnight volcano start infant error drama bulk disorder'
+ ' mouse key cliff climb buyer wage ceiling load express earth trick'
+ ' broccoli siege math hope attend';
const privateKey = HDPrivateKey.fromPhrase(mnemonic);
const deriveSomething = privateKey.derivePath(`m/44'/1/0/0/0`);
const ring = KeyRing.fromPrivate(deriveSomething.privateKey);
@nodech
nodech / tx-less100bytes.js
Created October 18, 2018 10:54
Create transaction less than 100 bytes.
'use strict';
const assert = require('assert');
const bcash = require('..');
const {Stack, Script, Address} = bcash;
const {MTX, Outpoint, Input} = bcash;
const network = 'regtest';
// fill after receive receiving
// copyright (c) 2018 the bitcoin developers
// distributed under the mit software license, see the accompanying
// file copying or http://www.opensource.org/licenses/mit-license.php.
#include "test/test_bitcoin.h"
#include "policy/policy.h"
#include "script/interpreter.h"
#include <boost/test/unit_test.hpp>