[crazy][crazy] finding a few cert prints of electrum nodes for different currencies

Undiscussed Horrific Abuse, One Victim of Many gmkarl at gmail.com
Sat Feb 19 22:26:12 PST 2022


This is present code. It has no output, likely because of an
error-to-investigate throwing an exception each iteration that then
gets caught:

import electrumx
import aiorpcx

async def main():
    coin_peers = {
        coin.NAME: coin.PEERS
        for coin in
electrumx.lib.coins.util.subclasses(electrumx.lib.coins.Coin)
        if len(coin.PEERS) > 0
    }

    for name, peers in coin_peers.items():
        try:
            for peer in peers:
                peer = electrumx.lib.peer.Peer.from_real_name(peer, '')
                async with aiorpcx.connect_rs(peer.host,
pper.ssl_port) as session:
                    print('connected to', name, peer.real_name(), session)
                    ssl_obj =
session.transport._asyncio_transport.get_extra_info('ssl_object')
                    der_cert = ssl_obj.getpeercert(True)
                    pem_cert = ssl.DER_cert_to_PEM_cert(der_cert)
                    for alg in 'md5 sha1 sha256 blake2b'.split(' '):
                        cert_print = getattr(hashlib, alg)(pem_cert).hexdigest()
                        print(peer.real_name(), alg, cert_print)
        except:
            continue

import asyncio
asyncio.run(main())


More information about the cypherpunks mailing list