Tool to extract the 'sanctioned' Bitcoin (and other Digital Currency assets)
addresses from the Specially Designated Nationals (SDN) list of the US
Office of Foreign Asset Control. An XML version of this list can be downloaded
here: sdn_advanced.xml.
As of November 24, 2025 the tool covers the following assets. There might be assets
on the SDN list that aren't covered yet. These can be found by grepping for
"Digital Currency Address" on the sdn_advanced.xml file. Feel free to submit
an issue or pull-request adding assets.
- XBT (Bitcoin)
- ETH (Ethereum)
- XMR (Monero)
- LTC (Litecoin)
- ZEC (ZCash)
- DASH (Dash)
- BTG (Bitcoin Gold)
- ETC (Ethereum Classic)
- BSV (Bitcoin Satoshi Vision)
- BCH (Bitcoin Cash)
- XVG (Verge)
- USDT (USD Tether)
- XRP (Ripple)
- ARB (Arbitrum)
- BSC (Binance Smart Chain)
- USDC (USD Coin)
- TRX (Tron)
- SOL (Solana)
- BNB (Binance Coin) - removed from the SDN as of 2025-11-24
The sanctioned addresses can be extracted with this tool from the
sdn_advanced.xml file. The tools supports the following output formats:
TXTfile format (one address per line)JSONfile containing a list of addresses
The lists branch of this repository contains automatically
updated lists of sanctioned addresses for each covered asset. These are
generated each night at 0 UTC by a GitHub Actions workflow.
The SDN list as XML file (~80 MB in May 2023) can be downloaded, for example,
via wget:
$ wget https://www.treasury.gov/ofac/downloads/sanctions/1.0/sdn_advanced.xmlBy default, the python script expects the sdn_advanced.xml XML file to be
located in the current working directory. This can be changed with the
-sdn /path/to/sdn_advanced.xml argument.
By default, the XBT (Bitcoin) addresses are extracted into a TXT file:
$ python3 generate-address-list.py
$ cat sanctioned_addresses_XBT.txt | head -n2
12QtD5BFwRsdNsAZY76UVE1xyCGNTojH9h
1Kuf2Rd8mDyAViwBozGTNYnvWL8uYFrkVoOther assets an be selected by supplying the tickers:
$ python3 generate-address-list.py ETH ETC DASH LTC
$ ls sanctioned_addresses_* -1
sanctioned_addresses_DASH.txt
sanctioned_addresses_ETC.txt
sanctioned_addresses_ETH.txt
sanctioned_addresses_LTC.txtBy default, a TXT file listing an address per line is produced. For example,
a JSON file listing the addresses can be produced with the -f JSON flag.
$ python3 generate-address-list.py XMR -f JSON
$ ls sanctioned_addresses_* -1
sanctioned_addresses_XMR.jsonFor detailed help and usage instructions please see python3 generate-address-list.py --help
This software is provided under the MIT License. For details see LICENSE.
The author does not provide warranty of any kind. Especially not on the completeness and correctness of the produced lists.