Skip to content

Instantly share code, notes, and snippets.

View abdielsudiro's full-sized avatar
🏠
Working from home

Inline Assembly abdielsudiro

🏠
Working from home
View GitHub Profile
@abdielsudiro
abdielsudiro / multi-user-arch.md
Created June 8, 2025 10:25
Multi-User Architecture: Roles and Access Matrix

Multi-User Architecture: Roles and Access Matrix

User Types in Fiat-to-Crypto Converter System

1. End Customers

Interface: Customer Frontend

  • Individual retail customers
  • Small business owners
  • Crypto traders and investors
@abdielsudiro
abdielsudiro / installation_oracle_xe_archlinux.md
Created January 22, 2025 08:47 — forked from davidmaignan/installation_oracle_xe_archlinux.md
Basic installation for oracle-xe on archlinux

Clone git repository

git clone https://aur.archlinux.org/oracle-xe.git
cd oracle-xe

Download oracle-xe-rpm.zip

wget http://download.oracle.com/otn/linux/oracle11g/xe/oracle-xe-11.2.0-1.0.x86_64.rpm.zip
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOk8cafvG+Siddvc9KJjfB8WZbIFs9Qxa+KDlEZHgtUD [email protected]
# https://bitcoin.stackexchange.com/a/59806
def secp256k1(s):
P = 2**256 - 2**32 - 2**9 - 2**8 - 2**7 - 2**6 - 2**4 - 1
N = 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364141
G = (0x79BE667EF9DCBBAC55A06295CE870B07029BFCDB2DCE28D959F2815B16F81798,
0x483ADA7726A3C4655DA4FBFC0E1108A8FD17B448A68554199C47D08FFB10D4B8)
def add(p, q):

Hal Finney's explanation of secp256k1 "efficiently computable endomorphism" parameters used secp256k1 libraries, archived from source.

The same optimization could be applied to any Koblitz curve (e.g. Short Weistrass curve with a=0).


I implemented an optimized ECDSA verify for the secp256k1 curve, based on pages 125-129 of the Guide to Elliptic Curve Cryptography, by Hankerson, Menezes and Vanstone. I own the book but I also found a PDF on a Russian site which is more convenient.

secp256k1 uses the following prime for its x and y coordinates:

@abdielsudiro
abdielsudiro / qrEltrx.py
Created November 13, 2024 04:56
queries using Electrum protocol
from electrum.network import Network
from electrum.simple_config import SimpleConfig
import asyncio
async def fetch_raw_tx(txid):
config = SimpleConfig()
network = Network(config)
await network.start()
response = await network.get_raw_transaction(txid)
await network.stop()
@abdielsudiro
abdielsudiro / cuda_11.7_installation_on_Ubuntu_22.04
Created November 7, 2024 16:52 — forked from X-TRON404/cuda_11.7_installation_on_Ubuntu_22.04
Instructions for CUDA v11.7 and cuDNN 8.5 installation on Ubuntu 22.04 for PyTorch 1.12.1
#!/bin/bash
### steps ####
# verify the system has a cuda-capable gpu
# download and install the nvidia cuda toolkit and cudnn
# setup environmental variables
# verify the installation
###
### to verify your gpu is cuda enable check
@abdielsudiro
abdielsudiro / pybitbalance.py
Created May 12, 2024 19:21 — forked from Qalander/pybitbalance.py
Python script for Bitcoin addresses bulk balance checking.
import argparse
import urllib3
from urllib3 import util
import json
import math
LIMIT = 120
SATOSHI = 1e+8
@abdielsudiro
abdielsudiro / readme.md
Created February 15, 2024 20:52
Create a Vagrant Box image

Create a Vagrant Box

Install Necessary Software

Ensure you have the following software installed on your system:

  • VirtualBox or another supported provider.
  • Vagrant

Create a Virtual Machine

Create a virtual machine using your preferred virtualization software. Install the desired operating system and configure it according to your requirements.

bc1qg8u9hrrg2lgjc3u994fp0h7ar655j6ptq87eks