Skip to content

Conversation

@jurraca
Copy link
Collaborator

@jurraca jurraca commented Dec 5, 2025

This adds the latest_asmap.dat result for the coordinated launch from #36 for epoch 176486400. We had a match from 10/13 participants in the coordinated launch.

The sha256 hash after encoding the file are:

  • filled (encoded with --fill) / latest_asmap.dat: 05dd85e7a6eb183109fa301528cfc1dd2442938ca59c9b00e312327840ce4180 latest_asmap.dat
  • unfilled d8cc45e194bc9cdebec72c665a3068148d4ea1b05ed6d16a5530a441a9cbc63f 1764864000_asmap_unfilled.dat

To confirm the result of the encoding you can use asmap-tool.

$ sha256sum final_result.txt
c2819ff03e3be00bae4dfc36f6de5caaddffe91df1834fd19ddacc64de1ea13a final_result.txt

$ python bitcoin/contrib/asmap/asmap-tool.py encode --fill final_result.txt 1764864000_asmap.dat

$ sha256sum 1764864000_asmap.dat
05dd85e7a6eb183109fa301528cfc1dd2442938ca59c9b00e312327840ce4180 1764864000_asmap.dat

this also removes the oldest ASmap file 1730210400_asmap.dat (December 2024).

Compared with the removed file from December 2024, the diff of ipv4 addresses was 8.2%.

@sipa
Copy link

sipa commented Dec 5, 2025

ACK 17f2e06, this matches my asmap.dat files.

Aside: why delete the old map files? They keep using space in the repo anyway.

@jurraca
Copy link
Collaborator Author

jurraca commented Dec 5, 2025

It was more out of concern for people using out of date files. We don't want to encourage people to use old files outside of research purposes really, and "last 6 runs" seemed about right.

Though good point on the repo size continually growing. The .git/objects is around 30M right now, but we should consider removing old files and archiving them somewhere else.

@sipa
Copy link

sipa commented Dec 5, 2025

What would you think about creating a subdirectory per year, and putting the full asmap files only in there, and then only having the latest one in the root?

@jurraca
Copy link
Collaborator Author

jurraca commented Dec 5, 2025

I like it! and it would be nice to have all historical data in one place. I don't have a problem with the size of the repo being a few multiples larger than 30M either. @fjahr thoughts?

@laanwj
Copy link

laanwj commented Dec 5, 2025

$ sha256sum final_result.txt
c2819ff03e3be00bae4dfc36f6de5caaddffe91df1834fd19ddacc64de1ea13a  final_result.txt
$ .../bitcoin/contrib/asmap/asmap-tool.py  encode -f final_result.txt latest_asmap.dat
$ .../bitcoin/contrib/asmap/asmap-tool.py  encode final_result.txt  1764864000_asmap_unfilled.dat
$ sha256sum *.dat
d8cc45e194bc9cdebec72c665a3068148d4ea1b05ed6d16a5530a441a9cbc63f  1764864000_asmap_unfilled.dat
05dd85e7a6eb183109fa301528cfc1dd2442938ca59c9b00e312327840ce4180  latest_asmap.dat

i have checked that these match the files on commit 17f2e06.

@Emzy
Copy link

Emzy commented Dec 6, 2025

sha256sum matches.

$ sha256sum ~/kartograf/out/1764864000/final_result.txt
c2819ff03e3be00bae4dfc36f6de5caaddffe91df1834fd19ddacc64de1ea13a  /home/emzy/kartograf/out/1764864000/final_result.txt

$ python3 contrib/asmap/asmap-tool.py encode --fill /home/emzy/kartograf/out/1764864000/final_result.txt /home/emzy/kartograf/out/1764864000/1764864000_asmap.dat

$ sha256sum /home/emzy/kartograf/out/1764864000/1764864000_asmap.dat
05dd85e7a6eb183109fa301528cfc1dd2442938ca59c9b00e312327840ce4180  /home/emzy/kartograf/out/1764864000/1764864000_asmap.dat

Copy link

@hodlinator hodlinator left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK 17f2e06

₿ ./contrib/asmap/asmap-tool.py encode --fill ~/kartograf/out/1764864000/final_result.txt ~/kartograf/out/1764864000/1764864000_asmap.dat

₿ ./contrib/asmap/asmap-tool.py encode ~/kartograf/out/1764864000/final_result.txt ~/kartograf/out/1764864000/1764864000_asmap_unfilled.dat

₿ sha256sum ~/asmap-data/1764864000_asmap.dat ~/asmap-data/1764864000_asmap_unfilled.dat ~/asmap-data/latest_asmap.dat
05dd85e7a6eb183109fa301528cfc1dd2442938ca59c9b00e312327840ce4180  /home/hodlinator/asmap-data/1764864000_asmap.dat
d8cc45e194bc9cdebec72c665a3068148d4ea1b05ed6d16a5530a441a9cbc63f  /home/hodlinator/asmap-data/1764864000_asmap_unfilled.dat
05dd85e7a6eb183109fa301528cfc1dd2442938ca59c9b00e312327840ce4180  /home/hodlinator/asmap-data/latest_asmap.dat

₿ sha256sum ~/kartograf/out/1764864000/1764864000_asmap.dat ~/kartograf/out/1764864000/1764864000_asmap_unfilled.dat 
05dd85e7a6eb183109fa301528cfc1dd2442938ca59c9b00e312327840ce4180  /home/hodlinator/kartograf/out/1764864000/1764864000_asmap.dat
d8cc45e194bc9cdebec72c665a3068148d4ea1b05ed6d16a5530a441a9cbc63f  /home/hodlinator/kartograf/out/1764864000/1764864000_asmap_unfilled.dat

nit: Also prefer moving to another directory over deletion since it should consume the same space in the repo, but not a dealbreaker.

@fjahr
Copy link
Collaborator

fjahr commented Dec 7, 2025

ACK 17f2e06

Confirmed all the hashes match with my results.

@fjahr fjahr merged commit ce85801 into asmap:main Dec 7, 2025
1 check passed
@fjahr
Copy link
Collaborator

fjahr commented Dec 7, 2025

What would you think about creating a subdirectory per year, and putting the full asmap files only in there, and then only having the latest one in the root?

I like it! and it would be nice to have all historical data in one place. I don't have a problem with the size of the repo being a few multiples larger than 30M either. @fjahr thoughts?

Sure, sounds good to me as well. Since we have been more consistent with the monthly runs I was planning to suggest keeping files for up to 12 months anyway once we had gotten rid of the old files that are not available with our new fille/unfilled pattern. But it shouldn't hurt to keep these available for easy access as well. Having them in yearly folders sound good to me too!

fanquake added a commit to bitcoin/bitcoin that referenced this pull request Dec 17, 2025
e7e5195 contrib: Avoid outputting binary data to TTY (Hodlinator)

Pull request description:

  Verify that we wouldn't be writing encoded asmap binary data directly to the TTY since it is the default but makes no sense. (Having stdout as default does make sense when piping to other applications however).

  Found while exploring the ASMap data pipeline (asmap/asmap-data#38 (review)) from Kartograf into Bitcoin Core.

ACKs for top commit:
  fjahr:
    tACK e7e5195
  sipa:
    ACK e7e5195

Tree-SHA512: e1ae1ee129715471cbb824268e68cec267d159d4073297af35c06eadfb6b98eeae040beaafeb6489c2853ea9b83cd04471bcd0b27f0ae8fcb377e6e10b4ae6c5
@jurraca jurraca deleted the add-176486400 branch January 9, 2026 10:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants