• A proof that you published your web content first

    From Stefan Claas@noreply@oc2mx.net to sci.crypt,alt.cypherpunks on Wed Dec 3 22:09:38 2025
    From Newsgroup: sci.crypt

    Hi all,

    maybe interesting for you, should it ever come
    to a court case, where someone else claims he
    'invented' your invention, you published on the
    web.

    https://github.com/Ch1ffr3punk/mfv

    Binaries for all platforms are under Releases.
    --
    Regards
    Stefan

    https://github.com/Ch1ffr3punk/mfv

    --
    https://tilde.club/~pollux/
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Chris M. Thomasson@chris.m.thomasson.1@gmail.com to sci.crypt,alt.cypherpunks on Wed Dec 3 16:09:57 2025
    From Newsgroup: sci.crypt

    On 12/3/2025 1:09 PM, Stefan Claas wrote:
    Hi all,

    maybe interesting for you, should it ever come
    to a court case, where someone else claims he
    'invented' your invention, you published on the
    web.

    https://github.com/Ch1ffr3punk/mfv

    Binaries for all platforms are under Releases.


    Fwiw, for my experimental HMAC cipher I actually printed the source code
    and mailed it to myself. It's sitting there unopened.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Stefan Claas@noreply@oc2mx.net to sci.crypt,alt.cypherpunks on Thu Dec 4 01:31:47 2025
    From Newsgroup: sci.crypt

    Chris M. Thomasson wrote:
    On 12/3/2025 1:09 PM, Stefan Claas wrote:
    Hi all,

    maybe interesting for you, should it ever come
    to a court case, where someone else claims he
    'invented' your invention, you published on the
    web.

    https://github.com/Ch1ffr3punk/mfv

    Binaries for all platforms are under Releases.


    Fwiw, for my experimental HMAC cipher I actually printed the source code
    and mailed it to myself. It's sitting there unopened.

    And how can third parties, besides you, verify this, to trust
    your website and that nobody tampered with your site/cipher?!

    That is one idea behind my scheme. I will show, hopefully
    by tommorow, how my scheme works in real, with a set-up
    webserver and small content.
    --
    https://tilde.club/~pollux/
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Chris M. Thomasson@chris.m.thomasson.1@gmail.com to sci.crypt,alt.cypherpunks on Wed Dec 3 16:37:45 2025
    From Newsgroup: sci.crypt

    On 12/3/2025 4:31 PM, Stefan Claas wrote:
    Chris M. Thomasson wrote:
    On 12/3/2025 1:09 PM, Stefan Claas wrote:
    Hi all,

    maybe interesting for you, should it ever come
    to a court case, where someone else claims he
    'invented' your invention, you published on the
    web.

    https://github.com/Ch1ffr3punk/mfv

    Binaries for all platforms are under Releases.


    Fwiw, for my experimental HMAC cipher I actually printed the source code
    and mailed it to myself. It's sitting there unopened.

    And how can third parties, besides you, verify this, to trust
    your website and that nobody tampered with your site/cipher?!

    HMAC all the data your site is comprised of. If somebody gets a
    different digest, its been altered?




    That is one idea behind my scheme. I will show, hopefully
    by tommorow, how my scheme works in real, with a set-up
    webserver and small content.



    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Stefan Claas@noreply@oc2mx.net to sci.crypt,alt.cypherpunks on Thu Dec 4 01:42:44 2025
    From Newsgroup: sci.crypt

    Chris M. Thomasson wrote:
    On 12/3/2025 4:31 PM, Stefan Claas wrote:
    Chris M. Thomasson wrote:
    On 12/3/2025 1:09 PM, Stefan Claas wrote:
    Hi all,

    maybe interesting for you, should it ever come
    to a court case, where someone else claims he
    'invented' your invention, you published on the
    web.

    https://github.com/Ch1ffr3punk/mfv

    Binaries for all platforms are under Releases.


    Fwiw, for my experimental HMAC cipher I actually printed the source code and mailed it to myself. It's sitting there unopened.

    And how can third parties, besides you, verify this, to trust
    your website and that nobody tampered with your site/cipher?!

    HMAC all the data your site is comprised of. If somebody gets a
    different digest, its been altered?

    ????... And how should third parties trust your (altered?)
    HMAC digest, shown where?
    --
    https://tilde.club/~pollux/
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Chris M. Thomasson@chris.m.thomasson.1@gmail.com to sci.crypt,alt.cypherpunks on Wed Dec 3 16:51:02 2025
    From Newsgroup: sci.crypt

    On 12/3/2025 4:42 PM, Stefan Claas wrote:
    Chris M. Thomasson wrote:
    On 12/3/2025 4:31 PM, Stefan Claas wrote:
    Chris M. Thomasson wrote:
    On 12/3/2025 1:09 PM, Stefan Claas wrote:
    Hi all,

    maybe interesting for you, should it ever come
    to a court case, where someone else claims he
    'invented' your invention, you published on the
    web.

    https://github.com/Ch1ffr3punk/mfv

    Binaries for all platforms are under Releases.


    Fwiw, for my experimental HMAC cipher I actually printed the source code >>>> and mailed it to myself. It's sitting there unopened.

    And how can third parties, besides you, verify this, to trust
    your website and that nobody tampered with your site/cipher?!

    HMAC all the data your site is comprised of. If somebody gets a
    different digest, its been altered?

    ????... And how should third parties trust your (altered?)
    HMAC digest, shown where?


    Hopefully you could compute the digest and compare it to a valid one somewhere?

    Think if your webserver is compromised? See, I only put my HMAC cipher
    online to show how it works. Not for a real thing! So, if they want to
    use if offline, they can download it, turn the internet off, and compare
    its HASH to the expected hash.

    Think of downloading an exe! you need a hash to compare it against. If
    your webserver is comprised that is a total loss anyway... They get a
    viral load, and run it. Then you need to trust the creator of the
    binary, the executable. Think I am going to download a binary form your
    server and just run it?

    Also, have you hear of viral loads lurking in open source code in
    github? Also, how do we know your pre-built binaries are okay?
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Chris M. Thomasson@chris.m.thomasson.1@gmail.com to sci.crypt,alt.cypherpunks on Wed Dec 3 16:53:03 2025
    From Newsgroup: sci.crypt

    On 12/3/2025 4:31 PM, Stefan Claas wrote:
    Chris M. Thomasson wrote:
    On 12/3/2025 1:09 PM, Stefan Claas wrote:
    Hi all,

    maybe interesting for you, should it ever come
    to a court case, where someone else claims he
    'invented' your invention, you published on the
    web.

    https://github.com/Ch1ffr3punk/mfv

    Binaries for all platforms are under Releases.


    Fwiw, for my experimental HMAC cipher I actually printed the source code
    and mailed it to myself. It's sitting there unopened.

    And how can third parties, besides you, verify this, to trust
    your website and that nobody tampered with your site/cipher?!

    That is one idea behind my scheme. I will show, hopefully
    by tommorow, how my scheme works in real, with a set-up
    webserver and small content.


    I only used cloudflare for the HTTPS. It did inject some javascript.
    That right there would make a different hash for the file.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Chris M. Thomasson@chris.m.thomasson.1@gmail.com to sci.crypt,alt.cypherpunks on Wed Dec 3 16:54:48 2025
    From Newsgroup: sci.crypt

    On 12/3/2025 4:53 PM, Chris M. Thomasson wrote:
    On 12/3/2025 4:31 PM, Stefan Claas wrote:
    Chris M. Thomasson wrote:
    On 12/3/2025 1:09 PM, Stefan Claas wrote:
    Hi all,

    maybe interesting for you, should it ever come
    to a court case, where someone else claims he
    'invented' your invention, you published on the
    web.

    https://github.com/Ch1ffr3punk/mfv

    Binaries for all platforms are under Releases.


    Fwiw, for my experimental HMAC cipher I actually printed the source code >>> and mailed it to myself. It's sitting there unopened.

    And how can third parties, besides you, verify this, to trust
    your website and that nobody tampered with your site/cipher?!

    That is one idea behind my scheme. I will show, hopefully
    by tommorow, how my scheme works in real, with a set-up
    webserver and small content.


    I only used cloudflare for the HTTPS. It did inject some javascript.
    That right there would make a different hash for the file.

    How do I trust your server? My online code is client side only. It's
    only online to allow people to play around with it.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Stefan Claas@noreply@oc2mx.net to sci.crypt,alt.cypherpunks on Thu Dec 4 02:17:24 2025
    From Newsgroup: sci.crypt

    Chris M. Thomasson wrote:

    How do I trust your server?

    Let's see and discuss this tommorow, because
    it is late here already and I go to bed now.
    --
    https://tilde.club/~pollux/
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Stefan Claas@noreply@oc2mx.net to sci.crypt,alt.cypherpunks on Thu Dec 4 22:08:11 2025
    From Newsgroup: sci.crypt

    Stefan Claas wrote:
    Chris M. Thomasson wrote:

    How do I trust your server?

    Let's see and discuss this tommorow, because
    it is late here already and I go to bed now.


    Here a preview of the mfvc Go client output.

    C:\Users\stefa\Desktop>mfvc oc2mx.net --dns
    Starting remote verification of: https://oc2mx.net
    Domain for DNS lookup: oc2mx.net ----------------------------------------------------------------------
    Querying DNS for Merkle hash...
    DNS hash found: 0d84c30c710d662d76b7c80269378df10702aa1d

    Fetching metadata from server...
    Metadata found. Created: 2025-12-04 19:46:34 UTC (Unix: 1764877594)
    Original file count: 8 (included)
    Excluded files: 2 (e.g., .well-known/acme-challenge/test.txt, .well-known/test.txt)

    Collecting current files from server...
    Calculating hashes and Merkle root... ======================================================================
    REMOTE MERKLE TREE VERIFICATION RESULT ======================================================================
    Server URL: https://oc2mx.net
    Verification Date: 2025-12-04 20:26:56 UTC (Unix: 1764880016)
    Domain: oc2mx.net
    Excluded Files: 2 (e.g., .well-known/, .git/)

    STATUS: Folder is UNCHANGED. All included files are identical.
    NOTE: 2 files were excluded from verification (.well-known/, .git/, etc.)

    COMPARISON RESULTS: ----------------------------------------------------------------------
    Original Root Hash: 0d84c30c710d662d76b7c80269378df10702aa1d
    Calculated Root Hash: 0d84c30c710d662d76b7c80269378df10702aa1d
    Root Hash Match: true
    Metadata Created: 2025-12-04 19:46:34 UTC (Unix: 1764877594)
    Original File Count: 8 (included)
    Current File Count: 8 (included)
    Excluded Paths: 2 (not verified)
    - .well-known/acme-challenge/test.txt
    - .well-known/test.txt
    Original Total Size: 22.1 KiB (included files)
    Current Total Size: 22.1 KiB (included files)

    DNS VERIFICATION: ----------------------------------------------------------------------
    DNS Hash: 0d84c30c710d662d76b7c80269378df10702aa1d
    DNS Source: dns
    DNS Query Time: 2025-12-04 20:26:56 UTC (Unix: 1764880016)
    DNS Hash Valid: true
    DNS Hash Match: true

    UNCHANGED FILES: 8 files (included)
    - redball.gif
    - about.html
    - ae.html
    - index.html
    - index.html.bak
    - me.ico
    - nt.html
    - oc.html ======================================================================
    --
    https://tilde.club/~pollux/
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Stefan Claas@noreply@oc2mx.net to sci.crypt,alt.cypherpunks on Thu Dec 4 23:07:13 2025
    From Newsgroup: sci.crypt

    Stefan Claas wrote:
    Stefan Claas wrote:
    Chris M. Thomasson wrote:

    How do I trust your server?

    Let's see and discuss this tommorow, because
    it is late here already and I go to bed now.


    Here a preview of the mfvc Go client output.

    C:\Users\stefa\Desktop>mfvc oc2mx.net --dns
    Starting remote verification of: https://oc2mx.net
    Domain for DNS lookup: oc2mx.net ---------------------------------------------------------------------- Querying DNS for Merkle hash...
    DNS hash found: 0d84c30c710d662d76b7c80269378df10702aa1d

    Fetching metadata from server...
    Metadata found. Created: 2025-12-04 19:46:34 UTC (Unix: 1764877594)
    Original file count: 8 (included)
    Excluded files: 2 (e.g., .well-known/acme-challenge/test.txt, .well-known/test.txt)

    Collecting current files from server...
    Calculating hashes and Merkle root... ======================================================================
    REMOTE MERKLE TREE VERIFICATION RESULT ======================================================================
    Server URL: https://oc2mx.net
    Verification Date: 2025-12-04 20:26:56 UTC (Unix: 1764880016)
    Domain: oc2mx.net
    Excluded Files: 2 (e.g., .well-known/, .git/)

    STATUS: Folder is UNCHANGED. All included files are identical.
    NOTE: 2 files were excluded from verification (.well-known/, .git/, etc.)

    COMPARISON RESULTS: ----------------------------------------------------------------------
    Original Root Hash: 0d84c30c710d662d76b7c80269378df10702aa1d
    Calculated Root Hash: 0d84c30c710d662d76b7c80269378df10702aa1d
    Root Hash Match: true
    Metadata Created: 2025-12-04 19:46:34 UTC (Unix: 1764877594)
    Original File Count: 8 (included)
    Current File Count: 8 (included)
    Excluded Paths: 2 (not verified)
    - .well-known/acme-challenge/test.txt
    - .well-known/test.txt
    Original Total Size: 22.1 KiB (included files)
    Current Total Size: 22.1 KiB (included files)

    DNS VERIFICATION: ----------------------------------------------------------------------
    DNS Hash: 0d84c30c710d662d76b7c80269378df10702aa1d
    DNS Source: dns
    DNS Query Time: 2025-12-04 20:26:56 UTC (Unix: 1764880016)
    DNS Hash Valid: true
    DNS Hash Match: true

    UNCHANGED FILES: 8 files (included)
    - redball.gif
    - about.html
    - ae.html
    - index.html
    - index.html.bak
    - me.ico
    - nt.html
    - oc.html ======================================================================


    I will later check with opentimestamps.org for the results.

    Meanwhile here is the project: https://github.com/Ch1ffr3punk/mfv

    Regards
    Stefan
    --
    https://oc2mx.net
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Stefan Claas@noreply@oc2mx.net to sci.crypt,alt.cypherpunks on Thu Dec 4 23:39:27 2025
    From Newsgroup: sci.crypt

    Stefan Claas wrote:
    Stefan Claas wrote:
    Stefan Claas wrote:
    Chris M. Thomasson wrote:

    How do I trust your server?

    Let's see and discuss this tommorow, because
    it is late here already and I go to bed now.


    Here a preview of the mfvc Go client output.

    C:\Users\stefa\Desktop>mfvc oc2mx.net --dns
    Starting remote verification of: https://oc2mx.net
    Domain for DNS lookup: oc2mx.net ---------------------------------------------------------------------- Querying DNS for Merkle hash...
    DNS hash found: 0d84c30c710d662d76b7c80269378df10702aa1d

    Fetching metadata from server...
    Metadata found. Created: 2025-12-04 19:46:34 UTC (Unix: 1764877594) Original file count: 8 (included)
    Excluded files: 2 (e.g., .well-known/acme-challenge/test.txt, .well-known/test.txt)

    Collecting current files from server...
    Calculating hashes and Merkle root... ====================================================================== REMOTE MERKLE TREE VERIFICATION RESULT ====================================================================== Server URL: https://oc2mx.net
    Verification Date: 2025-12-04 20:26:56 UTC (Unix: 1764880016)
    Domain: oc2mx.net
    Excluded Files: 2 (e.g., .well-known/, .git/)

    STATUS: Folder is UNCHANGED. All included files are identical.
    NOTE: 2 files were excluded from verification (.well-known/, .git/, etc.)

    COMPARISON RESULTS: ----------------------------------------------------------------------
    Original Root Hash: 0d84c30c710d662d76b7c80269378df10702aa1d
    Calculated Root Hash: 0d84c30c710d662d76b7c80269378df10702aa1d
    Root Hash Match: true
    Metadata Created: 2025-12-04 19:46:34 UTC (Unix: 1764877594)
    Original File Count: 8 (included)
    Current File Count: 8 (included)
    Excluded Paths: 2 (not verified)
    - .well-known/acme-challenge/test.txt
    - .well-known/test.txt
    Original Total Size: 22.1 KiB (included files)
    Current Total Size: 22.1 KiB (included files)

    DNS VERIFICATION: ----------------------------------------------------------------------
    DNS Hash: 0d84c30c710d662d76b7c80269378df10702aa1d
    DNS Source: dns
    DNS Query Time: 2025-12-04 20:26:56 UTC (Unix: 1764880016)
    DNS Hash Valid: true
    DNS Hash Match: true

    UNCHANGED FILES: 8 files (included)
    - redball.gif
    - about.html
    - ae.html
    - index.html
    - index.html.bak
    - me.ico
    - nt.html
    - oc.html ======================================================================


    I will later check with opentimestamps.org for the results.

    Meanwhile here is the project: https://github.com/Ch1ffr3punk/mfv

    When you verify my website you will notice that I have
    included comments at the top of each .html document source,
    containing the page file name and domain.

    Regards
    Stefan
    --
    https://oc2mx.net
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Stefan Claas@noreply@oc2mx.net to sci.crypt,alt.cypherpunks on Fri Dec 5 00:32:06 2025
    From Newsgroup: sci.crypt

    Stefan Claas wrote:

    I will later check with opentimestamps.org for the results.

    Perfect! My system works as expected!

    I used cURL to get all four files, like described in the README,
    and here is the result:

    merkle_metadata.json.ots 479 B
    Stamped SHA256 hash: c7e2a9b7c17e1466e53734c8f5089657bebaf7082e73c995b2ab1cf2f0b0c925

    merkle_metadata.json 2.0 kB
    SHA256: c7e2a9b7c17e1466e53734c8f5089657bebaf7082e73c995b2ab1cf2f0b0c925

    SUCCESS!

    Bitcoin block 926445 attests existence as of 2025-12-04 CET


    dns.txt.ots 514 B
    Stamped SHA256 hash: a115060e1295b1eb5592487ad74db801b7737610c263b4e271217b82b8bd7b27

    dns.txt 81 B
    SHA256: a115060e1295b1eb5592487ad74db801b7737610c263b4e271217b82b8bd7b27

    SUCCESS!

    Bitcoin block 926445 attests existence as of 2025-12-04 CET

    As one can see my system works! :-)

    Regards
    Stefan
    --
    https://oc2mx.net
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Chris M. Thomasson@chris.m.thomasson.1@gmail.com to sci.crypt,alt.cypherpunks on Thu Dec 4 18:08:56 2025
    From Newsgroup: sci.crypt

    On 12/4/2025 2:07 PM, Stefan Claas wrote:
    Stefan Claas wrote:
    Stefan Claas wrote:
    Chris M. Thomasson wrote:

    How do I trust your server?

    Let's see and discuss this tommorow, because
    it is late here already and I go to bed now.


    Here a preview of the mfvc Go client output.

    C:\Users\stefa\Desktop>mfvc oc2mx.net --dns
    Starting remote verification of: https://oc2mx.net
    Domain for DNS lookup: oc2mx.net
    ----------------------------------------------------------------------
    Querying DNS for Merkle hash...
    DNS hash found: 0d84c30c710d662d76b7c80269378df10702aa1d

    Fetching metadata from server...
    Metadata found. Created: 2025-12-04 19:46:34 UTC (Unix: 1764877594)
    Original file count: 8 (included)
    Excluded files: 2 (e.g., .well-known/acme-challenge/test.txt, .well-known/test.txt)

    Collecting current files from server...
    Calculating hashes and Merkle root...
    ======================================================================
    REMOTE MERKLE TREE VERIFICATION RESULT
    ======================================================================
    Server URL: https://oc2mx.net
    Verification Date: 2025-12-04 20:26:56 UTC (Unix: 1764880016)
    Domain: oc2mx.net
    Excluded Files: 2 (e.g., .well-known/, .git/)

    STATUS: Folder is UNCHANGED. All included files are identical.
    NOTE: 2 files were excluded from verification (.well-known/, .git/, etc.)

    COMPARISON RESULTS:
    ----------------------------------------------------------------------
    Original Root Hash: 0d84c30c710d662d76b7c80269378df10702aa1d
    Calculated Root Hash: 0d84c30c710d662d76b7c80269378df10702aa1d
    Root Hash Match: true
    Metadata Created: 2025-12-04 19:46:34 UTC (Unix: 1764877594)
    Original File Count: 8 (included)
    Current File Count: 8 (included)
    Excluded Paths: 2 (not verified)
    - .well-known/acme-challenge/test.txt
    - .well-known/test.txt
    Original Total Size: 22.1 KiB (included files)
    Current Total Size: 22.1 KiB (included files)

    DNS VERIFICATION:
    ----------------------------------------------------------------------
    DNS Hash: 0d84c30c710d662d76b7c80269378df10702aa1d
    DNS Source: dns
    DNS Query Time: 2025-12-04 20:26:56 UTC (Unix: 1764880016)
    DNS Hash Valid: true
    DNS Hash Match: true

    UNCHANGED FILES: 8 files (included)
    - redball.gif
    - about.html
    - ae.html
    - index.html
    - index.html.bak
    - me.ico
    - nt.html
    - oc.html
    ======================================================================


    I will later check with opentimestamps.org for the results.

    Meanwhile here is the project: https://github.com/Ch1ffr3punk/mfv

    Might have some more time to look at it. Been a while since I created a server. The last one I did was in C++ for NT 4.0 using IOCP. It was fun
    and could handle 50,000 concurrent connections without caking its pants.
    I had a module for it that implemented a proxy server, god been a while,
    I think it ran on port 8080 as default, it would direct traffic. I was
    the man in the middle. I could even multi plex a single connection to
    multiple other connections.

    [...]
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Stefan Claas@noreply@oc2mx.net to sci.crypt,alt.cypherpunks on Fri Dec 5 16:27:06 2025
    From Newsgroup: sci.crypt

    Chris M. Thomasson wrote:
    On 12/4/2025 2:07 PM, Stefan Claas wrote:
    Stefan Claas wrote:
    Stefan Claas wrote:
    Chris M. Thomasson wrote:

    How do I trust your server?

    Let's see and discuss this tommorow, because
    it is late here already and I go to bed now.


    Here a preview of the mfvc Go client output.

    C:\Users\stefa\Desktop>mfvc oc2mx.net --dns
    Starting remote verification of: https://oc2mx.net
    Domain for DNS lookup: oc2mx.net ---------------------------------------------------------------------- Querying DNS for Merkle hash...
    DNS hash found: 0d84c30c710d662d76b7c80269378df10702aa1d

    Fetching metadata from server...
    Metadata found. Created: 2025-12-04 19:46:34 UTC (Unix: 1764877594) Original file count: 8 (included)
    Excluded files: 2 (e.g., .well-known/acme-challenge/test.txt, .well-known/test.txt)

    Collecting current files from server...
    Calculating hashes and Merkle root... ====================================================================== REMOTE MERKLE TREE VERIFICATION RESULT ====================================================================== Server URL: https://oc2mx.net
    Verification Date: 2025-12-04 20:26:56 UTC (Unix: 1764880016)
    Domain: oc2mx.net
    Excluded Files: 2 (e.g., .well-known/, .git/)

    STATUS: Folder is UNCHANGED. All included files are identical.
    NOTE: 2 files were excluded from verification (.well-known/, .git/, etc.)

    COMPARISON RESULTS: ----------------------------------------------------------------------
    Original Root Hash: 0d84c30c710d662d76b7c80269378df10702aa1d
    Calculated Root Hash: 0d84c30c710d662d76b7c80269378df10702aa1d
    Root Hash Match: true
    Metadata Created: 2025-12-04 19:46:34 UTC (Unix: 1764877594)
    Original File Count: 8 (included)
    Current File Count: 8 (included)
    Excluded Paths: 2 (not verified)
    - .well-known/acme-challenge/test.txt
    - .well-known/test.txt
    Original Total Size: 22.1 KiB (included files)
    Current Total Size: 22.1 KiB (included files)

    DNS VERIFICATION: ----------------------------------------------------------------------
    DNS Hash: 0d84c30c710d662d76b7c80269378df10702aa1d
    DNS Source: dns
    DNS Query Time: 2025-12-04 20:26:56 UTC (Unix: 1764880016)
    DNS Hash Valid: true
    DNS Hash Match: true

    UNCHANGED FILES: 8 files (included)
    - redball.gif
    - about.html
    - ae.html
    - index.html
    - index.html.bak
    - me.ico
    - nt.html
    - oc.html ======================================================================


    I will later check with opentimestamps.org for the results.

    Meanwhile here is the project: https://github.com/Ch1ffr3punk/mfv

    Might have some more time to look at it.

    Do it, so that no one can tamper your site. ;-)

    Here is the blockchain proof.

    I used cURL to get all four files, like described in the README,
    and here is the result:

    merkle_metadata.json.ots 479 B
    Stamped SHA256 hash: c7e2a9b7c17e1466e53734c8f5089657bebaf7082e73c995b2ab1cf2f0b0c925

    merkle_metadata.json 2.0 kB
    SHA256: c7e2a9b7c17e1466e53734c8f5089657bebaf7082e73c995b2ab1cf2f0b0c925

    SUCCESS!

    Bitcoin block 926445 attests existence as of 2025-12-04 CET

    dns.txt.ots 514 B
    Stamped SHA256 hash: a115060e1295b1eb5592487ad74db801b7737610c263b4e271217b82b8bd7b27

    dns.txt 81 B
    SHA256: a115060e1295b1eb5592487ad74db801b7737610c263b4e271217b82b8bd7b27

    SUCCESS!

    Bitcoin block 926445 attests existence as of 2025-12-04 CET
    --
    https://oc2mx.net
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Stefan Claas@noreply@oc2mx.net to sci.crypt,alt.cypherpunks on Fri Dec 5 18:17:30 2025
    From Newsgroup: sci.crypt

    Stefan Claas wrote:
    Chris M. Thomasson wrote:
    On 12/4/2025 2:07 PM, Stefan Claas wrote:
    Stefan Claas wrote:
    Stefan Claas wrote:
    Chris M. Thomasson wrote:

    How do I trust your server?

    Let's see and discuss this tommorow, because
    it is late here already and I go to bed now.


    Here a preview of the mfvc Go client output.

    C:\Users\stefa\Desktop>mfvc oc2mx.net --dns
    Starting remote verification of: https://oc2mx.net
    Domain for DNS lookup: oc2mx.net ---------------------------------------------------------------------- Querying DNS for Merkle hash...
    DNS hash found: 0d84c30c710d662d76b7c80269378df10702aa1d

    Fetching metadata from server...
    Metadata found. Created: 2025-12-04 19:46:34 UTC (Unix: 1764877594) Original file count: 8 (included)
    Excluded files: 2 (e.g., .well-known/acme-challenge/test.txt, .well-known/test.txt)

    Collecting current files from server...
    Calculating hashes and Merkle root... ====================================================================== REMOTE MERKLE TREE VERIFICATION RESULT ====================================================================== Server URL: https://oc2mx.net
    Verification Date: 2025-12-04 20:26:56 UTC (Unix: 1764880016)
    Domain: oc2mx.net
    Excluded Files: 2 (e.g., .well-known/, .git/)

    STATUS: Folder is UNCHANGED. All included files are identical.
    NOTE: 2 files were excluded from verification (.well-known/, .git/, etc.)

    COMPARISON RESULTS: ----------------------------------------------------------------------
    Original Root Hash: 0d84c30c710d662d76b7c80269378df10702aa1d
    Calculated Root Hash: 0d84c30c710d662d76b7c80269378df10702aa1d
    Root Hash Match: true
    Metadata Created: 2025-12-04 19:46:34 UTC (Unix: 1764877594)
    Original File Count: 8 (included)
    Current File Count: 8 (included)
    Excluded Paths: 2 (not verified)
    - .well-known/acme-challenge/test.txt
    - .well-known/test.txt
    Original Total Size: 22.1 KiB (included files)
    Current Total Size: 22.1 KiB (included files)

    DNS VERIFICATION: ----------------------------------------------------------------------
    DNS Hash: 0d84c30c710d662d76b7c80269378df10702aa1d
    DNS Source: dns
    DNS Query Time: 2025-12-04 20:26:56 UTC (Unix: 1764880016)
    DNS Hash Valid: true
    DNS Hash Match: true

    UNCHANGED FILES: 8 files (included)
    - redball.gif
    - about.html
    - ae.html
    - index.html
    - index.html.bak
    - me.ico
    - nt.html
    - oc.html ======================================================================


    I will later check with opentimestamps.org for the results.

    Meanwhile here is the project: https://github.com/Ch1ffr3punk/mfv

    Might have some more time to look at it.

    Do it, so that no one can tamper your site. ;-)

    Here is the blockchain proof.

    I used cURL to get all four files, like described in the README,
    and here is the result:

    merkle_metadata.json.ots 479 B
    Stamped SHA256 hash: c7e2a9b7c17e1466e53734c8f5089657bebaf7082e73c995b2ab1cf2f0b0c925

    merkle_metadata.json 2.0 kB
    SHA256: c7e2a9b7c17e1466e53734c8f5089657bebaf7082e73c995b2ab1cf2f0b0c925

    SUCCESS!

    Bitcoin block 926445 attests existence as of 2025-12-04 CET

    dns.txt.ots 514 B
    Stamped SHA256 hash: a115060e1295b1eb5592487ad74db801b7737610c263b4e271217b82b8bd7b27

    dns.txt 81 B
    SHA256: a115060e1295b1eb5592487ad74db801b7737610c263b4e271217b82b8bd7b27

    SUCCESS!

    Bitcoin block 926445 attests existence as of 2025-12-04 CET


    Users can now omit cURL usage, because mfvc v0.3.0 has an additional
    --download parameter.

    C:\Users\xxxxxxxxxxxxxx\Desktop>mfvc oc2mx.net --dns --save --download ====================================================================== DOWNLOADING PROOF FILES ======================================================================
    Server URL: https://oc2mx.net

    Trying: https://oc2mx.net/.well-known/mfv/merkle_metadata.json
    rLo Downloaded: merkle_metadata.json
    Trying: https://oc2mx.net/.well-known/mfv/merkle_metadata.json.ots
    rLo Downloaded: merkle_metadata.json.ots
    Trying: https://oc2mx.net/.well-known/mfv/dns.txt
    rLo Downloaded: dns.txt
    Trying: https://oc2mx.net/.well-known/mfv/dns.txt.ots
    rLo Downloaded: dns.txt.ots ----------------------------------------------------------------------
    Download Summary:
    Successfully downloaded: 4 files
    Total size: 3.0 KiB
    Files saved to current directory:
    - merkle_metadata.json
    - merkle_metadata.json.ots
    - dns.txt
    - dns.txt.ots ======================================================================

    ====================================================================== CONTINUING WITH VERIFICATION AFTER DOWNLOAD ======================================================================
    Starting remote verification of: https://oc2mx.net
    Domain for DNS lookup: oc2mx.net ----------------------------------------------------------------------
    Querying DNS for Merkle hash...
    DNS hash found: 0d84c30c710d662d76b7c80269378df10702aa1d

    Fetching metadata from server...
    Metadata found. Created: 2025-12-04 19:46:34 UTC (Unix: 1764877594)
    Original file count: 8 (included)
    Excluded files: 2 (e.g., .well-known/acme-challenge/test.txt, .well-known/test.txt)

    Collecting current files from server...
    Calculating hashes and Merkle root... ======================================================================
    REMOTE MERKLE TREE VERIFICATION RESULT ======================================================================
    Server URL: https://oc2mx.net
    Verification Date: 2025-12-05 17:08:47 UTC (Unix: 1764954527)
    Domain: oc2mx.net
    Excluded Files: 2 (e.g., .well-known/, .git/)

    STATUS: Folder is UNCHANGED. All included files are identical.
    NOTE: 2 files were excluded from verification (.well-known/, .git/, etc.)

    COMPARISON RESULTS: ----------------------------------------------------------------------
    Original Root Hash: 0d84c30c710d662d76b7c80269378df10702aa1d
    Calculated Root Hash: 0d84c30c710d662d76b7c80269378df10702aa1d
    Root Hash Match: true
    Metadata Created: 2025-12-04 19:46:34 UTC (Unix: 1764877594)
    Original File Count: 8 (included)
    Current File Count: 8 (included)
    Excluded Paths: 2 (not verified)
    - .well-known/acme-challenge/test.txt
    - .well-known/test.txt
    Original Total Size: 22.1 KiB (included files)
    Current Total Size: 22.1 KiB (included files)

    DNS VERIFICATION: ----------------------------------------------------------------------
    DNS Hash: 0d84c30c710d662d76b7c80269378df10702aa1d
    DNS Source: dns
    DNS Query Time: 2025-12-05 17:08:47 UTC (Unix: 1764954527)
    DNS Hash Valid: true
    DNS Hash Match: true

    UNCHANGED FILES: 8 files (included)
    - me.ico
    - nt.html
    - oc.html
    - redball.gif
    - about.html
    - ae.html
    - index.html
    - index.html.bak ======================================================================

    Detailed verification report saved to: verification_oc2mx_net_20251205_170847.json
    --
    https://oc2mx.net
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Stefan Claas@noreply@oc2mx.net to sci.crypt,alt.cypherpunks on Tue Dec 9 16:46:19 2025
    From Newsgroup: sci.crypt

    Stefan Claas wrote:

    Hi all,

    maybe interesting for you, should it ever come
    to a court case, where someone else claims he
    'invented' your invention, you published on the
    web.

    https://github.com/Ch1ffr3punk/mfv

    Binaries for all platforms are under Releases.

    Updated to v0.4.0

    Regards
    Stefan

    https://github.com/Ch1ffr3punk/mfv

    --
    https://oc2mx.net
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Stefan Claas@noreply@oc2mx.net to sci.crypt,alt.cypherpunks on Tue Dec 9 16:50:35 2025
    From Newsgroup: sci.crypt

    Stefan Claas wrote:
    Chris M. Thomasson wrote:

    Might have some more time to look at it.

    Do it, so that no one can tamper your site. ;-)

    And have you now secured your site so that people can use your cipher safely? --
    https://oc2mx.net
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Chris M. Thomasson@chris.m.thomasson.1@gmail.com to sci.crypt,alt.cypherpunks on Tue Dec 9 12:40:40 2025
    From Newsgroup: sci.crypt

    On 12/9/2025 7:50 AM, Stefan Claas wrote:
    Stefan Claas wrote:
    Chris M. Thomasson wrote:

    Might have some more time to look at it.

    Do it, so that no one can tamper your site. ;-)

    And have you now secured your site so that people can use your cipher safely?


    Is that to me? My online version is only meant so people can play around
    with it. I just got annoyed when I noticed cloudflare, it might be
    related to:

    https://dev.to/irrelevantspace/one-worker-to-track-them-all-injecting-analytics-scripts-into-multiple-websites-with-cloudflare-workers-1j5b

    I can HASH all of my original data on the server. It's basically the
    same of having a hash for a file that somebody downloads.

    If somebody has your server comprised, they can alter your originals and
    make new hashes.
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Stefan Claas@noreply@oc2mx.net to sci.crypt,alt.cypherpunks on Wed Dec 10 20:42:09 2025
    From Newsgroup: sci.crypt

    Chris M. Thomasson wrote:

    If somebody has your server comprised, they can alter your originals and
    make new hashes.

    *NO*, not with my mfv system. :-)
    --
    https://oc2mx.net
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Jakob Bohm@jb-usenet@wisemo.invalid to sci.crypt,alt.cypherpunks on Fri Jan 9 04:18:59 2026
    From Newsgroup: sci.crypt

    On 03/12/2025 22:09, Stefan Claas wrote:
    Hi all,

    maybe interesting for you, should it ever come
    to a court case, where someone else claims he
    'invented' your invention, you published on the
    web.

    https://github.com/Ch1ffr3punk/mfv

    Binaries for all platforms are under Releases.


    This is a very old idea. In earlier centuries, the protocol was to
    create a one-sentence Latin description of your discovery, then
    publish the first letter of each word, just in case of such future
    dispute.

    The modern version is to create a document (not an unstable web
    page, though pure HTML without scripts or 3rd party embeds is fine),
    then publish a strong hash in HEX, such as the output of
    sha256sum -b discovery20251203a.html
    (Note that I used an example filename that doesn't reveal the
    discovery concept, only a claimed discovery date and a hint that
    there may be other discoveries that day (b, c, d etc.)).

    The problem with web pages is that too many people these days are
    tricked into entangling their web pages with fraud-centric 3rd party
    elements such as Cloudflare or Google AMP. If not they are at least
    tricked into using unnecessary javascript libraries that make the
    actual page content differ between viewers, thus making them
    incompatible with whatever future browser will be used in the far
    future when trying to prove the contents of the file.


    Enjoy

    Jakob
    --
    Jakob Bohm, CIO, Partner, WiseMo A/S. https://www.wisemo.com
    Transformervej 29, 2860 S|+borg, Denmark. Direct +45 31 13 16 10
    This public discussion message is non-binding and may contain errors.
    WiseMo - Remote Service Management for PCs, Phones and Embedded
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Gabx@info@tcpreset.invalid to sci.crypt,alt.cypherpunks on Fri Jan 9 14:27:30 2026
    From Newsgroup: sci.crypt

    Stefan Claas wrote:
    C:\Users\stefa\Desktop>mfvc oc2mx.net --dns
    Starting remote verification of:https://oc2mx.net
    Domain for DNS lookup: oc2mx.net ----------------------------------------------------------------------

    Saw your DNS verification example with mfvc. Interesting approach.

    DNS: simpler, updatable, clearnet only
    Bitcoin: permanent, provable date, works anywhere

    For controversial content on hidden services, Bitcoin timestamping seems stronger. For normal sites, DNS is more practical.

    I have chosen bitcoin for tor because there is no dns or dns-txt for
    onion sites. Blockchain gives immutability and ots proves the date.

    Hash in merkle.json + OpenTimestamps

    Blockchain is also censorship resistente.

    Regards
    Gabx
    --
    https://yamn.virebent.art
    https://news.tcpreset.net http://lsbvtvxe2sfws3rmg2i3y3jqow3bwoicjwlwe5cxvxsyhrlll5q4ejyd.onion/ http://e2mjj44t3eauxra2rmrlpn7vbd6whziypccfehlrlgnnvgr6xwp5lrad.onion/ gemini://n5ry24fweklbn562o7fnyefanygtwxlgi7aevn26huuxqlsftxy5ljqd.onion/
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Gabx@info@tcpreset.invalid to sci.crypt,alt.cypherpunks on Fri Jan 9 15:13:07 2026
    From Newsgroup: sci.crypt

    Stefan Claas wrote:
    As one can see my system works!

    Nice! So you use both:

    - DNS raA quick verification
    - OTS raA immutable proof on Bitcoin block 926445

    Best of both worlds. DNS for convenience, blockchain for permanence.

    For .onion sites without DNS, OTS alone covers both needs. Your dual
    approach makes sense for clearnet.

    Gabx
    --
    https://yamn.virebent.art
    https://news.tcpreset.net http://lsbvtvxe2sfws3rmg2i3y3jqow3bwoicjwlwe5cxvxsyhrlll5q4ejyd.onion/ http://e2mjj44t3eauxra2rmrlpn7vbd6whziypccfehlrlgnnvgr6xwp5lrad.onion/ gemini://n5ry24fweklbn562o7fnyefanygtwxlgi7aevn26huuxqlsftxy5ljqd.onion/
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Stefan Claas@noreply@oc2mx.net to sci.crypt,alt.cypherpunks on Sun Jan 11 20:49:23 2026
    From Newsgroup: sci.crypt

    Jakob Bohm wrote:
    On 03/12/2025 22:09, Stefan Claas wrote:
    Hi all,

    maybe interesting for you, should it ever come
    to a court case, where someone else claims he
    'invented' your invention, you published on the
    web.

    https://github.com/Ch1ffr3punk/mfv

    Binaries for all platforms are under Releases.


    This is a very old idea. In earlier centuries, the protocol was to
    create a one-sentence Latin description of your discovery, then
    publish the first letter of each word, just in case of such future
    dispute.

    An old idea???, look below at my output please... ;-)

    The modern version is to create a document (not an unstable web
    page, though pure HTML without scripts or 3rd party embeds is fine),
    then publish a strong hash in HEX, such as the output of
    sha256sum -b discovery20251203a.html
    (Note that I used an example filename that doesn't reveal the
    discovery concept, only a claimed discovery date and a hint that
    there may be other discoveries that day (b, c, d etc.)).

    The problem with web pages is that too many people these days are
    tricked into entangling their web pages with fraud-centric 3rd party
    elements such as Cloudflare or Google AMP. If not they are at least
    tricked into using unnecessary javascript libraries that make the
    actual page content differ between viewers, thus making them
    incompatible with whatever future browser will be used in the far
    future when trying to prove the contents of the file.

    Well, no third-parties inject code into my pages. Today I updated my
    site a bit and this is the verification result:

    We have to wait a couple of hours until the .ots files are in the
    Bitcoin blockchain.

    C:\Users\xxxxxxxxxxxx\Desktop>mfvc oc2mx.net --dns
    Starting STRICT verification of: https://oc2mx.net (Mode: normal)
    URL Domain: oc2mx.net
    STRICT MODE: No domain migration allowed ----------------------------------------------------------------------
    Querying DNS for Merkle hash...
    DNS hash found: e771844180bdf82376d604a7193636cf10b644de

    Fetching metadata from server...
    Metadata found. Created: 2026-01-11 19:25:47 UTC (Unix ET: 1768159547)
    Original file count: 8 (included)
    Metadata domain: oc2mx.net
    Excluded files: 5

    Collecting current files from server...
    Calculating hashes and Merkle root...

    Performing STRICT hash verification... ======================================================================
    VERIFICATION SUCCESSFUL ======================================================================
    Server URL: https://oc2mx.net
    Verification Date: 2026-01-11 19:35:32 UTC (Unix ET: 1768160132)
    URL Domain: oc2mx.net
    Metadata Domain: oc2mx.net
    Excluded Files: 5

    STATUS: All files unchanged and domain binding correct.
    NOTE: 5 files excluded from verification

    DOMAIN VERIFICATION (STRICT MODE): ----------------------------------------------------------------------
    URL Domain: oc2mx.net
    Metadata Domain: oc2mx.net
    Domain Match: Perfect

    HASH VERIFICATION: ----------------------------------------------------------------------
    Original Root Hash: e771844180bdf82376d604a7193636cf10b644de
    Calculated Merkle Root: 94d6661f03694700959503f7b13b8d47a70fccb6
    Calculated Final Hash: e771844180bdf82376d604a7193636cf10b644de (with domain: oc2mx.net)
    Root Hash Match: true
    Metadata Created: 2026-01-11 19:25:47 UTC (Unix ET: 1768159547)
    Original File Count: 8 (included)
    Current File Count: 8 (included)
    Excluded Paths: 5 (not verified)
    Original Total Size: 22.2 KiB
    Current Total Size: 22.2 KiB

    DNS VERIFICATION: ----------------------------------------------------------------------
    DNS Hash: e771844180bdf82376d604a7193636cf10b644de
    DNS Source: dns
    DNS Query Time: 2026-01-11 19:35:32 UTC (Unix ET: 1768160132)
    DNS Hash Valid: true
    DNS Hash Match: true

    UNCHANGED FILES: 8 files ======================================================================
    FINAL VERDICT: VERIFICATION SUCCESSFUL
    All files are intact and domain binding is correct. ======================================================================

    C:\Users\stefa\Desktop>mfvc oc2mx.net --dns --save --download ====================================================================== DOWNLOADING PROOF FILES (Mode: normal) ======================================================================
    Server URL: https://oc2mx.net

    Trying: https://oc2mx.net/.well-known/mfv/merkle_metadata.json ... rLo
    Trying: https://oc2mx.net/.well-known/mfv/merkle_metadata.json.ots ... rLo Trying: https://oc2mx.net/.well-known/mfv/dns.txt ... rLo
    Trying: https://oc2mx.net/.well-known/mfv/dns.txt.ots ... rLo ----------------------------------------------------------------------
    Download Summary:
    Mode: normal
    Files downloaded: 4
    Total size: 3.5 KiB
    Downloaded files:
    rCo merkle_metadata.json
    rCo merkle_metadata.json.ots
    rCo dns.txt
    rCo dns.txt.ots ======================================================================

    ====================================================================== CONTINUING WITH VERIFICATION (--dns/--save specified) ======================================================================
    Starting STRICT verification of: https://oc2mx.net (Mode: normal)
    URL Domain: oc2mx.net
    STRICT MODE: No domain migration allowed ----------------------------------------------------------------------
    Querying DNS for Merkle hash...
    DNS hash found: e771844180bdf82376d604a7193636cf10b644de

    Fetching metadata from server...
    Metadata found. Created: 2026-01-11 19:25:47 UTC (Unix ET: 1768159547)
    Original file count: 8 (included)
    Metadata domain: oc2mx.net
    Excluded files: 5

    Collecting current files from server...
    Calculating hashes and Merkle root...

    Performing STRICT hash verification... ======================================================================
    VERIFICATION SUCCESSFUL ======================================================================
    Server URL: https://oc2mx.net
    Verification Date: 2026-01-11 19:37:39 UTC (Unix ET: 1768160259)
    URL Domain: oc2mx.net
    Metadata Domain: oc2mx.net
    Excluded Files: 5

    STATUS: All files unchanged and domain binding correct.
    NOTE: 5 files excluded from verification

    DOMAIN VERIFICATION (STRICT MODE): ----------------------------------------------------------------------
    URL Domain: oc2mx.net
    Metadata Domain: oc2mx.net
    Domain Match: Perfect

    HASH VERIFICATION: ----------------------------------------------------------------------
    Original Root Hash: e771844180bdf82376d604a7193636cf10b644de
    Calculated Merkle Root: 94d6661f03694700959503f7b13b8d47a70fccb6
    Calculated Final Hash: e771844180bdf82376d604a7193636cf10b644de (with domain: oc2mx.net)
    Root Hash Match: true
    Metadata Created: 2026-01-11 19:25:47 UTC (Unix ET: 1768159547)
    Original File Count: 8 (included)
    Current File Count: 8 (included)
    Excluded Paths: 5 (not verified)
    Original Total Size: 22.2 KiB
    Current Total Size: 22.2 KiB

    DNS VERIFICATION: ----------------------------------------------------------------------
    DNS Hash: e771844180bdf82376d604a7193636cf10b644de
    DNS Source: dns
    DNS Query Time: 2026-01-11 19:37:39 UTC (Unix ET: 1768160259)
    DNS Hash Valid: true
    DNS Hash Match: true

    UNCHANGED FILES: 8 files ======================================================================
    FINAL VERDICT: VERIFICATION SUCCESSFUL
    All files are intact and domain binding is correct. ======================================================================

    Detailed verification report saved to: verification_oc2mx_net_20260111_193739.json
    --
    https://oc2mx.net
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Stefan Claas@noreply@oc2mx.net to sci.crypt,alt.cypherpunks on Sun Jan 11 21:04:05 2026
    From Newsgroup: sci.crypt

    Stefan Claas wrote:
    Jakob Bohm wrote:
    On 03/12/2025 22:09, Stefan Claas wrote:
    Hi all,

    maybe interesting for you, should it ever come
    to a court case, where someone else claims he
    'invented' your invention, you published on the
    web.

    https://github.com/Ch1ffr3punk/mfv

    Binaries for all platforms are under Releases.


    This is a very old idea. In earlier centuries, the protocol was to
    create a one-sentence Latin description of your discovery, then
    publish the first letter of each word, just in case of such future
    dispute.

    An old idea???, look below at my output please... ;-)

    The modern version is to create a document (not an unstable web
    page, though pure HTML without scripts or 3rd party embeds is fine),
    then publish a strong hash in HEX, such as the output of
    sha256sum -b discovery20251203a.html
    (Note that I used an example filename that doesn't reveal the
    discovery concept, only a claimed discovery date and a hint that
    there may be other discoveries that day (b, c, d etc.)).

    The problem with web pages is that too many people these days are
    tricked into entangling their web pages with fraud-centric 3rd party elements such as Cloudflare or Google AMP. If not they are at least tricked into using unnecessary javascript libraries that make the
    actual page content differ between viewers, thus making them
    incompatible with whatever future browser will be used in the far
    future when trying to prove the contents of the file.

    Well, no third-parties inject code into my pages. Today I updated my
    site a bit and this is the verification result:

    We have to wait a couple of hours until the .ots files are in the
    Bitcoin blockchain.

    C:\Users\xxxxxxxxxxxx\Desktop>mfvc oc2mx.net --dns
    Starting STRICT verification of: https://oc2mx.net (Mode: normal)
    URL Domain: oc2mx.net
    STRICT MODE: No domain migration allowed ---------------------------------------------------------------------- Querying DNS for Merkle hash...
    DNS hash found: e771844180bdf82376d604a7193636cf10b644de

    Fetching metadata from server...
    Metadata found. Created: 2026-01-11 19:25:47 UTC (Unix ET: 1768159547) Original file count: 8 (included)
    Metadata domain: oc2mx.net
    Excluded files: 5

    Collecting current files from server...
    Calculating hashes and Merkle root...

    Performing STRICT hash verification... ======================================================================
    VERIFICATION SUCCESSFUL ======================================================================
    Server URL: https://oc2mx.net
    Verification Date: 2026-01-11 19:35:32 UTC (Unix ET: 1768160132)
    URL Domain: oc2mx.net
    Metadata Domain: oc2mx.net
    Excluded Files: 5

    STATUS: All files unchanged and domain binding correct.
    NOTE: 5 files excluded from verification

    DOMAIN VERIFICATION (STRICT MODE): ----------------------------------------------------------------------
    URL Domain: oc2mx.net
    Metadata Domain: oc2mx.net
    Domain Match: Perfect

    HASH VERIFICATION: ----------------------------------------------------------------------
    Original Root Hash: e771844180bdf82376d604a7193636cf10b644de
    Calculated Merkle Root: 94d6661f03694700959503f7b13b8d47a70fccb6
    Calculated Final Hash: e771844180bdf82376d604a7193636cf10b644de (with domain: oc2mx.net)
    Root Hash Match: true
    Metadata Created: 2026-01-11 19:25:47 UTC (Unix ET: 1768159547)
    Original File Count: 8 (included)
    Current File Count: 8 (included)
    Excluded Paths: 5 (not verified)
    Original Total Size: 22.2 KiB
    Current Total Size: 22.2 KiB

    DNS VERIFICATION: ----------------------------------------------------------------------
    DNS Hash: e771844180bdf82376d604a7193636cf10b644de
    DNS Source: dns
    DNS Query Time: 2026-01-11 19:35:32 UTC (Unix ET: 1768160132)
    DNS Hash Valid: true
    DNS Hash Match: true

    UNCHANGED FILES: 8 files ======================================================================
    FINAL VERDICT: VERIFICATION SUCCESSFUL
    All files are intact and domain binding is correct. ======================================================================

    C:\Users\stefa\Desktop>mfvc oc2mx.net --dns --save --download ====================================================================== DOWNLOADING PROOF FILES (Mode: normal) ======================================================================
    Server URL: https://oc2mx.net

    Trying: https://oc2mx.net/.well-known/mfv/merkle_metadata.json ... rLo Trying: https://oc2mx.net/.well-known/mfv/merkle_metadata.json.ots ... rLo Trying: https://oc2mx.net/.well-known/mfv/dns.txt ... rLo
    Trying: https://oc2mx.net/.well-known/mfv/dns.txt.ots ... rLo ---------------------------------------------------------------------- Download Summary:
    Mode: normal
    Files downloaded: 4
    Total size: 3.5 KiB
    Downloaded files:
    rCo merkle_metadata.json
    rCo merkle_metadata.json.ots
    rCo dns.txt
    rCo dns.txt.ots ======================================================================

    ====================================================================== CONTINUING WITH VERIFICATION (--dns/--save specified) ====================================================================== Starting STRICT verification of: https://oc2mx.net (Mode: normal)
    URL Domain: oc2mx.net
    STRICT MODE: No domain migration allowed ---------------------------------------------------------------------- Querying DNS for Merkle hash...
    DNS hash found: e771844180bdf82376d604a7193636cf10b644de

    Fetching metadata from server...
    Metadata found. Created: 2026-01-11 19:25:47 UTC (Unix ET: 1768159547) Original file count: 8 (included)
    Metadata domain: oc2mx.net
    Excluded files: 5

    Collecting current files from server...
    Calculating hashes and Merkle root...

    Performing STRICT hash verification... ======================================================================
    VERIFICATION SUCCESSFUL ======================================================================
    Server URL: https://oc2mx.net
    Verification Date: 2026-01-11 19:37:39 UTC (Unix ET: 1768160259)
    URL Domain: oc2mx.net
    Metadata Domain: oc2mx.net
    Excluded Files: 5

    STATUS: All files unchanged and domain binding correct.
    NOTE: 5 files excluded from verification

    DOMAIN VERIFICATION (STRICT MODE): ----------------------------------------------------------------------
    URL Domain: oc2mx.net
    Metadata Domain: oc2mx.net
    Domain Match: Perfect

    HASH VERIFICATION: ----------------------------------------------------------------------
    Original Root Hash: e771844180bdf82376d604a7193636cf10b644de
    Calculated Merkle Root: 94d6661f03694700959503f7b13b8d47a70fccb6
    Calculated Final Hash: e771844180bdf82376d604a7193636cf10b644de (with domain: oc2mx.net)
    Root Hash Match: true
    Metadata Created: 2026-01-11 19:25:47 UTC (Unix ET: 1768159547)
    Original File Count: 8 (included)
    Current File Count: 8 (included)
    Excluded Paths: 5 (not verified)
    Original Total Size: 22.2 KiB
    Current Total Size: 22.2 KiB

    DNS VERIFICATION: ----------------------------------------------------------------------
    DNS Hash: e771844180bdf82376d604a7193636cf10b644de
    DNS Source: dns
    DNS Query Time: 2026-01-11 19:37:39 UTC (Unix ET: 1768160259)
    DNS Hash Valid: true
    DNS Hash Match: true

    UNCHANGED FILES: 8 files ======================================================================
    FINAL VERDICT: VERIFICATION SUCCESSFUL
    All files are intact and domain binding is correct. ======================================================================

    Detailed verification report saved to: verification_oc2mx_net_20260111_193739.json


    And the report looks like this:

    {
    "server_url": "https://oc2mx.net",
    "url_domain": "oc2mx.net",
    "metadata_domain": "oc2mx.net",
    "verification_date": "2026-01-11T19:37:39.1515177Z",
    "original_metadata": {
    "root_hash": "e771844180bdf82376d604a7193636cf10b644de",
    "domain": "oc2mx.net",
    "folder_path": "/var/www/html",
    "created_at": "2026-01-11T19:25:47.185816073Z",
    "file_count": 8,
    "total_size": 22692,
    "files": [
    {
    "path": "about.html",
    "hash": "0ba3572e7b473f83ec834156258a65e912c87339",
    "size": 1013,
    "modified": "2026-01-11T19:21:16.73369719Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "ae.html",
    "hash": "695829f112f3b67650094990fcb08c2c1f1e0ceb",
    "size": 6663,
    "modified": "2025-12-04T17:32:44.516543275Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "index.html",
    "hash": "25436500f84cccf558a4040deed71baa28f0656b",
    "size": 3553,
    "modified": "2026-01-11T18:32:21.471625529Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "index.html.bak",
    "hash": "7a8e6da581cfab412fc7b2d91ca969acda213b2e",
    "size": 2947,
    "modified": "2025-12-04T18:20:05.733114599Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "me.ico",
    "hash": "7c671658c98f29236c3633b1c833e7411e307388",
    "size": 4286,
    "modified": "2025-12-04T17:36:37.822183272Z",
    "permissions": "-rwxr-xr-x"
    },
    {
    "path": "nt.html",
    "hash": "647583d12d3e02431c2d30016ddb72dc0cb8e58e",
    "size": 1774,
    "modified": "2025-12-04T17:33:24.34266119Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "oc.html",
    "hash": "0335c0f792ef34241f97526e15bfb4e14815ec79",
    "size": 1929,
    "modified": "2026-01-11T18:27:22.851074381Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "redball.gif",
    "hash": "0fbce2d5fb2c9bbea1a0d78a42775e96de4b0b25",
    "size": 527,
    "modified": "2025-12-04T17:36:53.470222369Z",
    "permissions": "-rwxr-xr-x"
    }
    ],
    "algorithm": "RIPEMD-160",
    "version": "1.0.0",
    "excluded_paths": [
    ".well-known/acme-challenge/test.txt",
    ".well-known/mfv/dns.txt",
    ".well-known/mfv/dns.txt.ots",
    ".well-known/mfv/merkle_metadata.json",
    ".well-known/mfv/merkle_metadata.json.ots"
    ]
    },
    "current_files": [
    {
    "path": "about.html",
    "hash": "0ba3572e7b473f83ec834156258a65e912c87339",
    "size": 1013,
    "modified": "2026-01-11T19:21:16Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "ae.html",
    "hash": "695829f112f3b67650094990fcb08c2c1f1e0ceb",
    "size": 6663,
    "modified": "2025-12-04T17:32:44Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "index.html",
    "hash": "25436500f84cccf558a4040deed71baa28f0656b",
    "size": 3553,
    "modified": "2026-01-11T18:32:21Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "index.html.bak",
    "hash": "7a8e6da581cfab412fc7b2d91ca969acda213b2e",
    "size": 2947,
    "modified": "2025-12-04T18:20:05Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "me.ico",
    "hash": "7c671658c98f29236c3633b1c833e7411e307388",
    "size": 4286,
    "modified": "2025-12-04T17:36:37Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "nt.html",
    "hash": "647583d12d3e02431c2d30016ddb72dc0cb8e58e",
    "size": 1774,
    "modified": "2025-12-04T17:33:24Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "oc.html",
    "hash": "0335c0f792ef34241f97526e15bfb4e14815ec79",
    "size": 1929,
    "modified": "2026-01-11T18:27:22Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "redball.gif",
    "hash": "0fbce2d5fb2c9bbea1a0d78a42775e96de4b0b25",
    "size": 527,
    "modified": "2025-12-04T17:36:53Z",
    "permissions": "-rw-r--r--"
    }
    ],
    "changes": {
    "added": [],
    "modified": [],
    "deleted": [],
    "unchanged": [
    {
    "path": "index.html.bak",
    "hash": "7a8e6da581cfab412fc7b2d91ca969acda213b2e",
    "size": 2947,
    "modified": "2025-12-04T18:20:05Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "me.ico",
    "hash": "7c671658c98f29236c3633b1c833e7411e307388",
    "size": 4286,
    "modified": "2025-12-04T17:36:37Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "nt.html",
    "hash": "647583d12d3e02431c2d30016ddb72dc0cb8e58e",
    "size": 1774,
    "modified": "2025-12-04T17:33:24Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "oc.html",
    "hash": "0335c0f792ef34241f97526e15bfb4e14815ec79",
    "size": 1929,
    "modified": "2026-01-11T18:27:22Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "redball.gif",
    "hash": "0fbce2d5fb2c9bbea1a0d78a42775e96de4b0b25",
    "size": 527,
    "modified": "2025-12-04T17:36:53Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "about.html",
    "hash": "0ba3572e7b473f83ec834156258a65e912c87339",
    "size": 1013,
    "modified": "2026-01-11T19:21:16Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "ae.html",
    "hash": "695829f112f3b67650094990fcb08c2c1f1e0ceb",
    "size": 6663,
    "modified": "2025-12-04T17:32:44Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "index.html",
    "hash": "25436500f84cccf558a4040deed71baa28f0656b",
    "size": 3553,
    "modified": "2026-01-11T18:32:21Z",
    "permissions": "-rw-r--r--"
    }
    ],
    "root_match": false,
    "message": "All files unchanged and domain binding correct."
    },
    "calculated_root": "94d6661f03694700959503f7b13b8d47a70fccb6",
    "calculated_hash": "e771844180bdf82376d604a7193636cf10b644de",
    "dns_record": {
    "hash": "e771844180bdf82376d604a7193636cf10b644de",
    "timestamp": "2026-01-11T19:37:39.1535435Z",
    "source": "dns",
    "valid": true
    },
    "dns_match": true,
    "root_match": true,
    "success": true,
    "excluded_info": "5 files excluded from verification",
    "content_theft": false
    }
    --
    https://oc2mx.net
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Jakob Bohm@jb-usenet@wisemo.invalid to sci.crypt,alt.cypherpunks on Tue Jan 13 08:16:19 2026
    From Newsgroup: sci.crypt

    On 11/01/2026 21:04, Stefan Claas wrote:
    Stefan Claas wrote:
    Jakob Bohm wrote:
    On 03/12/2025 22:09, Stefan Claas wrote:
    Hi all,

    maybe interesting for you, should it ever come
    to a court case, where someone else claims he
    'invented' your invention, you published on the
    web.

    https://github.com/Ch1ffr3punk/mfv

    Binaries for all platforms are under Releases.


    This is a very old idea. In earlier centuries, the protocol was to
    create a one-sentence Latin description of your discovery, then
    publish the first letter of each word, just in case of such future
    dispute.

    An old idea???, look below at my output please... ;-)

    The modern version is to create a document (not an unstable web
    page, though pure HTML without scripts or 3rd party embeds is fine),
    then publish a strong hash in HEX, such as the output of
    sha256sum -b discovery20251203a.html
    (Note that I used an example filename that doesn't reveal the
    discovery concept, only a claimed discovery date and a hint that
    there may be other discoveries that day (b, c, d etc.)).

    The problem with web pages is that too many people these days are
    tricked into entangling their web pages with fraud-centric 3rd party
    elements such as Cloudflare or Google AMP. If not they are at least
    tricked into using unnecessary javascript libraries that make the
    actual page content differ between viewers, thus making them
    incompatible with whatever future browser will be used in the far
    future when trying to prove the contents of the file.

    Well, no third-parties inject code into my pages. Today I updated my
    site a bit and this is the verification result:

    We have to wait a couple of hours until the .ots files are in the
    Bitcoin blockchain.

    C:\Users\xxxxxxxxxxxx\Desktop>mfvc oc2mx.net --dns
    Starting STRICT verification of: https://oc2mx.net (Mode: normal)
    URL Domain: oc2mx.net
    STRICT MODE: No domain migration allowed
    ----------------------------------------------------------------------
    Querying DNS for Merkle hash...
    DNS hash found: e771844180bdf82376d604a7193636cf10b644de

    Fetching metadata from server...
    Metadata found. Created: 2026-01-11 19:25:47 UTC (Unix ET: 1768159547)
    Original file count: 8 (included)
    Metadata domain: oc2mx.net
    Excluded files: 5

    Collecting current files from server...
    Calculating hashes and Merkle root...

    Performing STRICT hash verification...
    ======================================================================
    VERIFICATION SUCCESSFUL
    ======================================================================
    Server URL: https://oc2mx.net
    Verification Date: 2026-01-11 19:35:32 UTC (Unix ET: 1768160132)
    URL Domain: oc2mx.net
    Metadata Domain: oc2mx.net
    Excluded Files: 5

    STATUS: All files unchanged and domain binding correct.
    NOTE: 5 files excluded from verification

    DOMAIN VERIFICATION (STRICT MODE):
    ----------------------------------------------------------------------
    URL Domain: oc2mx.net
    Metadata Domain: oc2mx.net
    Domain Match: Perfect

    HASH VERIFICATION:
    ----------------------------------------------------------------------
    Original Root Hash: e771844180bdf82376d604a7193636cf10b644de
    Calculated Merkle Root: 94d6661f03694700959503f7b13b8d47a70fccb6
    Calculated Final Hash: e771844180bdf82376d604a7193636cf10b644de (with domain: oc2mx.net)
    Root Hash Match: true
    Metadata Created: 2026-01-11 19:25:47 UTC (Unix ET: 1768159547)
    Original File Count: 8 (included)
    Current File Count: 8 (included)
    Excluded Paths: 5 (not verified)
    Original Total Size: 22.2 KiB
    Current Total Size: 22.2 KiB

    DNS VERIFICATION:
    ----------------------------------------------------------------------
    DNS Hash: e771844180bdf82376d604a7193636cf10b644de
    DNS Source: dns
    DNS Query Time: 2026-01-11 19:35:32 UTC (Unix ET: 1768160132)
    DNS Hash Valid: true
    DNS Hash Match: true

    UNCHANGED FILES: 8 files
    ======================================================================
    FINAL VERDICT: VERIFICATION SUCCESSFUL
    All files are intact and domain binding is correct.
    ======================================================================

    C:\Users\stefa\Desktop>mfvc oc2mx.net --dns --save --download
    ======================================================================
    DOWNLOADING PROOF FILES (Mode: normal)
    ======================================================================
    Server URL: https://oc2mx.net

    Trying: https://oc2mx.net/.well-known/mfv/merkle_metadata.json ... rLo
    Trying: https://oc2mx.net/.well-known/mfv/merkle_metadata.json.ots ... rLo >> Trying: https://oc2mx.net/.well-known/mfv/dns.txt ... rLo
    Trying: https://oc2mx.net/.well-known/mfv/dns.txt.ots ... rLo
    ----------------------------------------------------------------------
    Download Summary:
    Mode: normal
    Files downloaded: 4
    Total size: 3.5 KiB
    Downloaded files:
    rCo merkle_metadata.json
    rCo merkle_metadata.json.ots
    rCo dns.txt
    rCo dns.txt.ots
    ======================================================================

    ======================================================================
    CONTINUING WITH VERIFICATION (--dns/--save specified)
    ======================================================================
    Starting STRICT verification of: https://oc2mx.net (Mode: normal)
    URL Domain: oc2mx.net
    STRICT MODE: No domain migration allowed
    ----------------------------------------------------------------------
    Querying DNS for Merkle hash...
    DNS hash found: e771844180bdf82376d604a7193636cf10b644de

    Fetching metadata from server...
    Metadata found. Created: 2026-01-11 19:25:47 UTC (Unix ET: 1768159547)
    Original file count: 8 (included)
    Metadata domain: oc2mx.net
    Excluded files: 5

    Collecting current files from server...
    Calculating hashes and Merkle root...

    Performing STRICT hash verification...
    ======================================================================
    VERIFICATION SUCCESSFUL
    ======================================================================
    Server URL: https://oc2mx.net
    Verification Date: 2026-01-11 19:37:39 UTC (Unix ET: 1768160259)
    URL Domain: oc2mx.net
    Metadata Domain: oc2mx.net
    Excluded Files: 5

    STATUS: All files unchanged and domain binding correct.
    NOTE: 5 files excluded from verification

    DOMAIN VERIFICATION (STRICT MODE):
    ----------------------------------------------------------------------
    URL Domain: oc2mx.net
    Metadata Domain: oc2mx.net
    Domain Match: Perfect

    HASH VERIFICATION:
    ----------------------------------------------------------------------
    Original Root Hash: e771844180bdf82376d604a7193636cf10b644de
    Calculated Merkle Root: 94d6661f03694700959503f7b13b8d47a70fccb6
    Calculated Final Hash: e771844180bdf82376d604a7193636cf10b644de (with domain: oc2mx.net)
    Root Hash Match: true
    Metadata Created: 2026-01-11 19:25:47 UTC (Unix ET: 1768159547)
    Original File Count: 8 (included)
    Current File Count: 8 (included)
    Excluded Paths: 5 (not verified)
    Original Total Size: 22.2 KiB
    Current Total Size: 22.2 KiB

    DNS VERIFICATION:
    ----------------------------------------------------------------------
    DNS Hash: e771844180bdf82376d604a7193636cf10b644de
    DNS Source: dns
    DNS Query Time: 2026-01-11 19:37:39 UTC (Unix ET: 1768160259)
    DNS Hash Valid: true
    DNS Hash Match: true

    UNCHANGED FILES: 8 files
    ======================================================================
    FINAL VERDICT: VERIFICATION SUCCESSFUL
    All files are intact and domain binding is correct.
    ======================================================================

    Detailed verification report saved to: verification_oc2mx_net_20260111_193739.json


    And the report looks like this:

    {
    "server_url": "https://oc2mx.net",
    "url_domain": "oc2mx.net",
    "metadata_domain": "oc2mx.net",
    "verification_date": "2026-01-11T19:37:39.1515177Z",
    "original_metadata": {
    "root_hash": "e771844180bdf82376d604a7193636cf10b644de",
    "domain": "oc2mx.net",
    "folder_path": "/var/www/html",
    "created_at": "2026-01-11T19:25:47.185816073Z",
    "file_count": 8,
    "total_size": 22692,
    "files": [
    {
    "path": "about.html",
    "hash": "0ba3572e7b473f83ec834156258a65e912c87339",
    "size": 1013,
    "modified": "2026-01-11T19:21:16.73369719Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "ae.html",
    "hash": "695829f112f3b67650094990fcb08c2c1f1e0ceb",
    "size": 6663,
    "modified": "2025-12-04T17:32:44.516543275Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "index.html",
    "hash": "25436500f84cccf558a4040deed71baa28f0656b",
    "size": 3553,
    "modified": "2026-01-11T18:32:21.471625529Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "index.html.bak",
    "hash": "7a8e6da581cfab412fc7b2d91ca969acda213b2e",
    "size": 2947,
    "modified": "2025-12-04T18:20:05.733114599Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "me.ico",
    "hash": "7c671658c98f29236c3633b1c833e7411e307388",
    "size": 4286,
    "modified": "2025-12-04T17:36:37.822183272Z",
    "permissions": "-rwxr-xr-x"
    },
    {
    "path": "nt.html",
    "hash": "647583d12d3e02431c2d30016ddb72dc0cb8e58e",
    "size": 1774,
    "modified": "2025-12-04T17:33:24.34266119Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "oc.html",
    "hash": "0335c0f792ef34241f97526e15bfb4e14815ec79",
    "size": 1929,
    "modified": "2026-01-11T18:27:22.851074381Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "redball.gif",
    "hash": "0fbce2d5fb2c9bbea1a0d78a42775e96de4b0b25",
    "size": 527,
    "modified": "2025-12-04T17:36:53.470222369Z",
    "permissions": "-rwxr-xr-x"
    }
    ],
    "algorithm": "RIPEMD-160",
    "version": "1.0.0",
    "excluded_paths": [
    ".well-known/acme-challenge/test.txt",
    ".well-known/mfv/dns.txt",
    ".well-known/mfv/dns.txt.ots",
    ".well-known/mfv/merkle_metadata.json",
    ".well-known/mfv/merkle_metadata.json.ots"
    ]
    },
    "current_files": [
    {
    "path": "about.html",
    "hash": "0ba3572e7b473f83ec834156258a65e912c87339",
    "size": 1013,
    "modified": "2026-01-11T19:21:16Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "ae.html",
    "hash": "695829f112f3b67650094990fcb08c2c1f1e0ceb",
    "size": 6663,
    "modified": "2025-12-04T17:32:44Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "index.html",
    "hash": "25436500f84cccf558a4040deed71baa28f0656b",
    "size": 3553,
    "modified": "2026-01-11T18:32:21Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "index.html.bak",
    "hash": "7a8e6da581cfab412fc7b2d91ca969acda213b2e",
    "size": 2947,
    "modified": "2025-12-04T18:20:05Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "me.ico",
    "hash": "7c671658c98f29236c3633b1c833e7411e307388",
    "size": 4286,
    "modified": "2025-12-04T17:36:37Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "nt.html",
    "hash": "647583d12d3e02431c2d30016ddb72dc0cb8e58e",
    "size": 1774,
    "modified": "2025-12-04T17:33:24Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "oc.html",
    "hash": "0335c0f792ef34241f97526e15bfb4e14815ec79",
    "size": 1929,
    "modified": "2026-01-11T18:27:22Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "redball.gif",
    "hash": "0fbce2d5fb2c9bbea1a0d78a42775e96de4b0b25",
    "size": 527,
    "modified": "2025-12-04T17:36:53Z",
    "permissions": "-rw-r--r--"
    }
    ],
    "changes": {
    "added": [],
    "modified": [],
    "deleted": [],
    "unchanged": [
    {
    "path": "index.html.bak",
    "hash": "7a8e6da581cfab412fc7b2d91ca969acda213b2e",
    "size": 2947,
    "modified": "2025-12-04T18:20:05Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "me.ico",
    "hash": "7c671658c98f29236c3633b1c833e7411e307388",
    "size": 4286,
    "modified": "2025-12-04T17:36:37Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "nt.html",
    "hash": "647583d12d3e02431c2d30016ddb72dc0cb8e58e",
    "size": 1774,
    "modified": "2025-12-04T17:33:24Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "oc.html",
    "hash": "0335c0f792ef34241f97526e15bfb4e14815ec79",
    "size": 1929,
    "modified": "2026-01-11T18:27:22Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "redball.gif",
    "hash": "0fbce2d5fb2c9bbea1a0d78a42775e96de4b0b25",
    "size": 527,
    "modified": "2025-12-04T17:36:53Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "about.html",
    "hash": "0ba3572e7b473f83ec834156258a65e912c87339",
    "size": 1013,
    "modified": "2026-01-11T19:21:16Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "ae.html",
    "hash": "695829f112f3b67650094990fcb08c2c1f1e0ceb",
    "size": 6663,
    "modified": "2025-12-04T17:32:44Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "index.html",
    "hash": "25436500f84cccf558a4040deed71baa28f0656b",
    "size": 3553,
    "modified": "2026-01-11T18:32:21Z",
    "permissions": "-rw-r--r--"
    }
    ],
    "root_match": false,
    "message": "All files unchanged and domain binding correct."
    },
    "calculated_root": "94d6661f03694700959503f7b13b8d47a70fccb6",
    "calculated_hash": "e771844180bdf82376d604a7193636cf10b644de",
    "dns_record": {
    "hash": "e771844180bdf82376d604a7193636cf10b644de",
    "timestamp": "2026-01-11T19:37:39.1535435Z",
    "source": "dns",
    "valid": true
    },
    "dns_match": true,
    "root_match": true,
    "success": true,
    "excluded_info": "5 files excluded from verification",
    "content_theft": false
    }


    That looks like an awfully overcomplicated way to publish and
    timestamp a single hash value.

    As for the 3rd party code problem, look at Chris post at
    "Wed, 3 Dec 2025 16:53:03 -0800" about how a CloudFlare
    integration added code to his webpage when trying to use
    your system.


    Enjoy

    Jakob
    --
    Jakob Bohm, CIO, Partner, WiseMo A/S. https://www.wisemo.com
    Transformervej 29, 2860 S|+borg, Denmark. Direct +45 31 13 16 10
    This public discussion message is non-binding and may contain errors.
    WiseMo - Remote Service Management for PCs, Phones and Embedded
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Stefan Claas@noreply@oc2mx.net to sci.crypt,alt.cypherpunks on Tue Jan 13 14:51:22 2026
    From Newsgroup: sci.crypt

    Jakob Bohm wrote:
    On 11/01/2026 21:04, Stefan Claas wrote:
    Stefan Claas wrote:
    Jakob Bohm wrote:
    On 03/12/2025 22:09, Stefan Claas wrote:
    Hi all,

    maybe interesting for you, should it ever come
    to a court case, where someone else claims he
    'invented' your invention, you published on the
    web.

    https://github.com/Ch1ffr3punk/mfv

    Binaries for all platforms are under Releases.


    This is a very old idea. In earlier centuries, the protocol was to create a one-sentence Latin description of your discovery, then
    publish the first letter of each word, just in case of such future dispute.

    An old idea???, look below at my output please... ;-)

    The modern version is to create a document (not an unstable web
    page, though pure HTML without scripts or 3rd party embeds is fine), then publish a strong hash in HEX, such as the output of
    sha256sum -b discovery20251203a.html
    (Note that I used an example filename that doesn't reveal the
    discovery concept, only a claimed discovery date and a hint that
    there may be other discoveries that day (b, c, d etc.)).

    The problem with web pages is that too many people these days are tricked into entangling their web pages with fraud-centric 3rd party elements such as Cloudflare or Google AMP. If not they are at least tricked into using unnecessary javascript libraries that make the actual page content differ between viewers, thus making them incompatible with whatever future browser will be used in the far future when trying to prove the contents of the file.

    Well, no third-parties inject code into my pages. Today I updated my
    site a bit and this is the verification result:

    We have to wait a couple of hours until the .ots files are in the
    Bitcoin blockchain.

    C:\Users\xxxxxxxxxxxx\Desktop>mfvc oc2mx.net --dns
    Starting STRICT verification of: https://oc2mx.net (Mode: normal)
    URL Domain: oc2mx.net
    STRICT MODE: No domain migration allowed ---------------------------------------------------------------------- Querying DNS for Merkle hash...
    DNS hash found: e771844180bdf82376d604a7193636cf10b644de

    Fetching metadata from server...
    Metadata found. Created: 2026-01-11 19:25:47 UTC (Unix ET: 1768159547) Original file count: 8 (included)
    Metadata domain: oc2mx.net
    Excluded files: 5

    Collecting current files from server...
    Calculating hashes and Merkle root...

    Performing STRICT hash verification... ======================================================================
    VERIFICATION SUCCESSFUL ====================================================================== Server URL: https://oc2mx.net
    Verification Date: 2026-01-11 19:35:32 UTC (Unix ET: 1768160132)
    URL Domain: oc2mx.net
    Metadata Domain: oc2mx.net
    Excluded Files: 5

    STATUS: All files unchanged and domain binding correct.
    NOTE: 5 files excluded from verification

    DOMAIN VERIFICATION (STRICT MODE): ----------------------------------------------------------------------
    URL Domain: oc2mx.net
    Metadata Domain: oc2mx.net
    Domain Match: Perfect

    HASH VERIFICATION: ----------------------------------------------------------------------
    Original Root Hash: e771844180bdf82376d604a7193636cf10b644de
    Calculated Merkle Root: 94d6661f03694700959503f7b13b8d47a70fccb6
    Calculated Final Hash: e771844180bdf82376d604a7193636cf10b644de (with domain: oc2mx.net)
    Root Hash Match: true
    Metadata Created: 2026-01-11 19:25:47 UTC (Unix ET: 1768159547)
    Original File Count: 8 (included)
    Current File Count: 8 (included)
    Excluded Paths: 5 (not verified)
    Original Total Size: 22.2 KiB
    Current Total Size: 22.2 KiB

    DNS VERIFICATION: ----------------------------------------------------------------------
    DNS Hash: e771844180bdf82376d604a7193636cf10b644de
    DNS Source: dns
    DNS Query Time: 2026-01-11 19:35:32 UTC (Unix ET: 1768160132)
    DNS Hash Valid: true
    DNS Hash Match: true

    UNCHANGED FILES: 8 files ======================================================================
    FINAL VERDICT: VERIFICATION SUCCESSFUL
    All files are intact and domain binding is correct. ======================================================================

    C:\Users\stefa\Desktop>mfvc oc2mx.net --dns --save --download ====================================================================== DOWNLOADING PROOF FILES (Mode: normal) ====================================================================== Server URL: https://oc2mx.net

    Trying: https://oc2mx.net/.well-known/mfv/merkle_metadata.json ... rLo Trying: https://oc2mx.net/.well-known/mfv/merkle_metadata.json.ots ... rLo
    Trying: https://oc2mx.net/.well-known/mfv/dns.txt ... rLo
    Trying: https://oc2mx.net/.well-known/mfv/dns.txt.ots ... rLo ---------------------------------------------------------------------- Download Summary:
    Mode: normal
    Files downloaded: 4
    Total size: 3.5 KiB
    Downloaded files:
    rCo merkle_metadata.json
    rCo merkle_metadata.json.ots
    rCo dns.txt
    rCo dns.txt.ots ======================================================================

    ====================================================================== CONTINUING WITH VERIFICATION (--dns/--save specified) ====================================================================== Starting STRICT verification of: https://oc2mx.net (Mode: normal)
    URL Domain: oc2mx.net
    STRICT MODE: No domain migration allowed ---------------------------------------------------------------------- Querying DNS for Merkle hash...
    DNS hash found: e771844180bdf82376d604a7193636cf10b644de

    Fetching metadata from server...
    Metadata found. Created: 2026-01-11 19:25:47 UTC (Unix ET: 1768159547) Original file count: 8 (included)
    Metadata domain: oc2mx.net
    Excluded files: 5

    Collecting current files from server...
    Calculating hashes and Merkle root...

    Performing STRICT hash verification... ======================================================================
    VERIFICATION SUCCESSFUL ====================================================================== Server URL: https://oc2mx.net
    Verification Date: 2026-01-11 19:37:39 UTC (Unix ET: 1768160259)
    URL Domain: oc2mx.net
    Metadata Domain: oc2mx.net
    Excluded Files: 5

    STATUS: All files unchanged and domain binding correct.
    NOTE: 5 files excluded from verification

    DOMAIN VERIFICATION (STRICT MODE): ----------------------------------------------------------------------
    URL Domain: oc2mx.net
    Metadata Domain: oc2mx.net
    Domain Match: Perfect

    HASH VERIFICATION: ----------------------------------------------------------------------
    Original Root Hash: e771844180bdf82376d604a7193636cf10b644de
    Calculated Merkle Root: 94d6661f03694700959503f7b13b8d47a70fccb6
    Calculated Final Hash: e771844180bdf82376d604a7193636cf10b644de (with domain: oc2mx.net)
    Root Hash Match: true
    Metadata Created: 2026-01-11 19:25:47 UTC (Unix ET: 1768159547)
    Original File Count: 8 (included)
    Current File Count: 8 (included)
    Excluded Paths: 5 (not verified)
    Original Total Size: 22.2 KiB
    Current Total Size: 22.2 KiB

    DNS VERIFICATION: ----------------------------------------------------------------------
    DNS Hash: e771844180bdf82376d604a7193636cf10b644de
    DNS Source: dns
    DNS Query Time: 2026-01-11 19:37:39 UTC (Unix ET: 1768160259)
    DNS Hash Valid: true
    DNS Hash Match: true

    UNCHANGED FILES: 8 files ======================================================================
    FINAL VERDICT: VERIFICATION SUCCESSFUL
    All files are intact and domain binding is correct. ======================================================================

    Detailed verification report saved to: verification_oc2mx_net_20260111_193739.json


    And the report looks like this:

    {
    "server_url": "https://oc2mx.net",
    "url_domain": "oc2mx.net",
    "metadata_domain": "oc2mx.net",
    "verification_date": "2026-01-11T19:37:39.1515177Z",
    "original_metadata": {
    "root_hash": "e771844180bdf82376d604a7193636cf10b644de",
    "domain": "oc2mx.net",
    "folder_path": "/var/www/html",
    "created_at": "2026-01-11T19:25:47.185816073Z",
    "file_count": 8,
    "total_size": 22692,
    "files": [
    {
    "path": "about.html",
    "hash": "0ba3572e7b473f83ec834156258a65e912c87339",
    "size": 1013,
    "modified": "2026-01-11T19:21:16.73369719Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "ae.html",
    "hash": "695829f112f3b67650094990fcb08c2c1f1e0ceb",
    "size": 6663,
    "modified": "2025-12-04T17:32:44.516543275Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "index.html",
    "hash": "25436500f84cccf558a4040deed71baa28f0656b",
    "size": 3553,
    "modified": "2026-01-11T18:32:21.471625529Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "index.html.bak",
    "hash": "7a8e6da581cfab412fc7b2d91ca969acda213b2e",
    "size": 2947,
    "modified": "2025-12-04T18:20:05.733114599Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "me.ico",
    "hash": "7c671658c98f29236c3633b1c833e7411e307388",
    "size": 4286,
    "modified": "2025-12-04T17:36:37.822183272Z",
    "permissions": "-rwxr-xr-x"
    },
    {
    "path": "nt.html",
    "hash": "647583d12d3e02431c2d30016ddb72dc0cb8e58e",
    "size": 1774,
    "modified": "2025-12-04T17:33:24.34266119Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "oc.html",
    "hash": "0335c0f792ef34241f97526e15bfb4e14815ec79",
    "size": 1929,
    "modified": "2026-01-11T18:27:22.851074381Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "redball.gif",
    "hash": "0fbce2d5fb2c9bbea1a0d78a42775e96de4b0b25",
    "size": 527,
    "modified": "2025-12-04T17:36:53.470222369Z",
    "permissions": "-rwxr-xr-x"
    }
    ],
    "algorithm": "RIPEMD-160",
    "version": "1.0.0",
    "excluded_paths": [
    ".well-known/acme-challenge/test.txt",
    ".well-known/mfv/dns.txt",
    ".well-known/mfv/dns.txt.ots",
    ".well-known/mfv/merkle_metadata.json",
    ".well-known/mfv/merkle_metadata.json.ots"
    ]
    },
    "current_files": [
    {
    "path": "about.html",
    "hash": "0ba3572e7b473f83ec834156258a65e912c87339",
    "size": 1013,
    "modified": "2026-01-11T19:21:16Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "ae.html",
    "hash": "695829f112f3b67650094990fcb08c2c1f1e0ceb",
    "size": 6663,
    "modified": "2025-12-04T17:32:44Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "index.html",
    "hash": "25436500f84cccf558a4040deed71baa28f0656b",
    "size": 3553,
    "modified": "2026-01-11T18:32:21Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "index.html.bak",
    "hash": "7a8e6da581cfab412fc7b2d91ca969acda213b2e",
    "size": 2947,
    "modified": "2025-12-04T18:20:05Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "me.ico",
    "hash": "7c671658c98f29236c3633b1c833e7411e307388",
    "size": 4286,
    "modified": "2025-12-04T17:36:37Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "nt.html",
    "hash": "647583d12d3e02431c2d30016ddb72dc0cb8e58e",
    "size": 1774,
    "modified": "2025-12-04T17:33:24Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "oc.html",
    "hash": "0335c0f792ef34241f97526e15bfb4e14815ec79",
    "size": 1929,
    "modified": "2026-01-11T18:27:22Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "redball.gif",
    "hash": "0fbce2d5fb2c9bbea1a0d78a42775e96de4b0b25",
    "size": 527,
    "modified": "2025-12-04T17:36:53Z",
    "permissions": "-rw-r--r--"
    }
    ],
    "changes": {
    "added": [],
    "modified": [],
    "deleted": [],
    "unchanged": [
    {
    "path": "index.html.bak",
    "hash": "7a8e6da581cfab412fc7b2d91ca969acda213b2e",
    "size": 2947,
    "modified": "2025-12-04T18:20:05Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "me.ico",
    "hash": "7c671658c98f29236c3633b1c833e7411e307388",
    "size": 4286,
    "modified": "2025-12-04T17:36:37Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "nt.html",
    "hash": "647583d12d3e02431c2d30016ddb72dc0cb8e58e",
    "size": 1774,
    "modified": "2025-12-04T17:33:24Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "oc.html",
    "hash": "0335c0f792ef34241f97526e15bfb4e14815ec79",
    "size": 1929,
    "modified": "2026-01-11T18:27:22Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "redball.gif",
    "hash": "0fbce2d5fb2c9bbea1a0d78a42775e96de4b0b25",
    "size": 527,
    "modified": "2025-12-04T17:36:53Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "about.html",
    "hash": "0ba3572e7b473f83ec834156258a65e912c87339",
    "size": 1013,
    "modified": "2026-01-11T19:21:16Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "ae.html",
    "hash": "695829f112f3b67650094990fcb08c2c1f1e0ceb",
    "size": 6663,
    "modified": "2025-12-04T17:32:44Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "index.html",
    "hash": "25436500f84cccf558a4040deed71baa28f0656b",
    "size": 3553,
    "modified": "2026-01-11T18:32:21Z",
    "permissions": "-rw-r--r--"
    }
    ],
    "root_match": false,
    "message": "All files unchanged and domain binding correct."
    },
    "calculated_root": "94d6661f03694700959503f7b13b8d47a70fccb6",
    "calculated_hash": "e771844180bdf82376d604a7193636cf10b644de",
    "dns_record": {
    "hash": "e771844180bdf82376d604a7193636cf10b644de",
    "timestamp": "2026-01-11T19:37:39.1535435Z",
    "source": "dns",
    "valid": true
    },
    "dns_match": true,
    "root_match": true,
    "success": true,
    "excluded_info": "5 files excluded from verification",
    "content_theft": false
    }


    That looks like an awfully overcomplicated way to publish and
    timestamp a single hash value.

    It is not and it is super easy to use.

    As for the 3rd party code problem, look at Chris post at
    "Wed, 3 Dec 2025 16:53:03 -0800" about how a CloudFlare
    integration added code to his webpage when trying to use
    your system.

    I think Chris looked at the source code via his browser and
    not on the filesystem at his server, because I doubt that
    CloudFlare can write to the web servers file system.
    --
    https://oc2mx.net
    --- Synchronet 3.21a-Linux NewsLink 1.2
  • From Chris M. Thomasson@chris.m.thomasson.1@gmail.com to sci.crypt,alt.cypherpunks on Tue Jan 13 13:21:27 2026
    From Newsgroup: sci.crypt

    On 1/13/2026 6:51 AM, Stefan Claas wrote:
    Jakob Bohm wrote:
    On 11/01/2026 21:04, Stefan Claas wrote:
    Stefan Claas wrote:
    Jakob Bohm wrote:
    On 03/12/2025 22:09, Stefan Claas wrote:
    Hi all,

    maybe interesting for you, should it ever come
    to a court case, where someone else claims he
    'invented' your invention, you published on the
    web.

    https://github.com/Ch1ffr3punk/mfv

    Binaries for all platforms are under Releases.


    This is a very old idea. In earlier centuries, the protocol was to
    create a one-sentence Latin description of your discovery, then
    publish the first letter of each word, just in case of such future
    dispute.

    An old idea???, look below at my output please... ;-)

    The modern version is to create a document (not an unstable web
    page, though pure HTML without scripts or 3rd party embeds is fine), >>>>> then publish a strong hash in HEX, such as the output of
    sha256sum -b discovery20251203a.html
    (Note that I used an example filename that doesn't reveal the
    discovery concept, only a claimed discovery date and a hint that
    there may be other discoveries that day (b, c, d etc.)).

    The problem with web pages is that too many people these days are
    tricked into entangling their web pages with fraud-centric 3rd party >>>>> elements such as Cloudflare or Google AMP. If not they are at least >>>>> tricked into using unnecessary javascript libraries that make the
    actual page content differ between viewers, thus making them
    incompatible with whatever future browser will be used in the far
    future when trying to prove the contents of the file.

    Well, no third-parties inject code into my pages. Today I updated my
    site a bit and this is the verification result:

    We have to wait a couple of hours until the .ots files are in the
    Bitcoin blockchain.

    C:\Users\xxxxxxxxxxxx\Desktop>mfvc oc2mx.net --dns
    Starting STRICT verification of: https://oc2mx.net (Mode: normal)
    URL Domain: oc2mx.net
    STRICT MODE: No domain migration allowed
    ---------------------------------------------------------------------- >>>> Querying DNS for Merkle hash...
    DNS hash found: e771844180bdf82376d604a7193636cf10b644de

    Fetching metadata from server...
    Metadata found. Created: 2026-01-11 19:25:47 UTC (Unix ET: 1768159547) >>>> Original file count: 8 (included)
    Metadata domain: oc2mx.net
    Excluded files: 5

    Collecting current files from server...
    Calculating hashes and Merkle root...

    Performing STRICT hash verification...
    ====================================================================== >>>> VERIFICATION SUCCESSFUL
    ====================================================================== >>>> Server URL: https://oc2mx.net
    Verification Date: 2026-01-11 19:35:32 UTC (Unix ET: 1768160132)
    URL Domain: oc2mx.net
    Metadata Domain: oc2mx.net
    Excluded Files: 5

    STATUS: All files unchanged and domain binding correct.
    NOTE: 5 files excluded from verification

    DOMAIN VERIFICATION (STRICT MODE):
    ---------------------------------------------------------------------- >>>> URL Domain: oc2mx.net
    Metadata Domain: oc2mx.net
    Domain Match: Perfect

    HASH VERIFICATION:
    ---------------------------------------------------------------------- >>>> Original Root Hash: e771844180bdf82376d604a7193636cf10b644de
    Calculated Merkle Root: 94d6661f03694700959503f7b13b8d47a70fccb6
    Calculated Final Hash: e771844180bdf82376d604a7193636cf10b644de (with domain: oc2mx.net)
    Root Hash Match: true
    Metadata Created: 2026-01-11 19:25:47 UTC (Unix ET: 1768159547) >>>> Original File Count: 8 (included)
    Current File Count: 8 (included)
    Excluded Paths: 5 (not verified)
    Original Total Size: 22.2 KiB
    Current Total Size: 22.2 KiB

    DNS VERIFICATION:
    ---------------------------------------------------------------------- >>>> DNS Hash: e771844180bdf82376d604a7193636cf10b644de
    DNS Source: dns
    DNS Query Time: 2026-01-11 19:35:32 UTC (Unix ET: 1768160132) >>>> DNS Hash Valid: true
    DNS Hash Match: true

    UNCHANGED FILES: 8 files
    ====================================================================== >>>> FINAL VERDICT: VERIFICATION SUCCESSFUL
    All files are intact and domain binding is correct.
    ====================================================================== >>>>
    C:\Users\stefa\Desktop>mfvc oc2mx.net --dns --save --download
    ====================================================================== >>>> DOWNLOADING PROOF FILES (Mode: normal)
    ====================================================================== >>>> Server URL: https://oc2mx.net

    Trying: https://oc2mx.net/.well-known/mfv/merkle_metadata.json ... rLo >>>> Trying: https://oc2mx.net/.well-known/mfv/merkle_metadata.json.ots ... rLo >>>> Trying: https://oc2mx.net/.well-known/mfv/dns.txt ... rLo
    Trying: https://oc2mx.net/.well-known/mfv/dns.txt.ots ... rLo
    ---------------------------------------------------------------------- >>>> Download Summary:
    Mode: normal
    Files downloaded: 4
    Total size: 3.5 KiB
    Downloaded files:
    rCo merkle_metadata.json
    rCo merkle_metadata.json.ots
    rCo dns.txt
    rCo dns.txt.ots
    ====================================================================== >>>>
    ====================================================================== >>>> CONTINUING WITH VERIFICATION (--dns/--save specified)
    ====================================================================== >>>> Starting STRICT verification of: https://oc2mx.net (Mode: normal)
    URL Domain: oc2mx.net
    STRICT MODE: No domain migration allowed
    ---------------------------------------------------------------------- >>>> Querying DNS for Merkle hash...
    DNS hash found: e771844180bdf82376d604a7193636cf10b644de

    Fetching metadata from server...
    Metadata found. Created: 2026-01-11 19:25:47 UTC (Unix ET: 1768159547) >>>> Original file count: 8 (included)
    Metadata domain: oc2mx.net
    Excluded files: 5

    Collecting current files from server...
    Calculating hashes and Merkle root...

    Performing STRICT hash verification...
    ====================================================================== >>>> VERIFICATION SUCCESSFUL
    ====================================================================== >>>> Server URL: https://oc2mx.net
    Verification Date: 2026-01-11 19:37:39 UTC (Unix ET: 1768160259)
    URL Domain: oc2mx.net
    Metadata Domain: oc2mx.net
    Excluded Files: 5

    STATUS: All files unchanged and domain binding correct.
    NOTE: 5 files excluded from verification

    DOMAIN VERIFICATION (STRICT MODE):
    ---------------------------------------------------------------------- >>>> URL Domain: oc2mx.net
    Metadata Domain: oc2mx.net
    Domain Match: Perfect

    HASH VERIFICATION:
    ---------------------------------------------------------------------- >>>> Original Root Hash: e771844180bdf82376d604a7193636cf10b644de
    Calculated Merkle Root: 94d6661f03694700959503f7b13b8d47a70fccb6
    Calculated Final Hash: e771844180bdf82376d604a7193636cf10b644de (with domain: oc2mx.net)
    Root Hash Match: true
    Metadata Created: 2026-01-11 19:25:47 UTC (Unix ET: 1768159547) >>>> Original File Count: 8 (included)
    Current File Count: 8 (included)
    Excluded Paths: 5 (not verified)
    Original Total Size: 22.2 KiB
    Current Total Size: 22.2 KiB

    DNS VERIFICATION:
    ---------------------------------------------------------------------- >>>> DNS Hash: e771844180bdf82376d604a7193636cf10b644de
    DNS Source: dns
    DNS Query Time: 2026-01-11 19:37:39 UTC (Unix ET: 1768160259) >>>> DNS Hash Valid: true
    DNS Hash Match: true

    UNCHANGED FILES: 8 files
    ====================================================================== >>>> FINAL VERDICT: VERIFICATION SUCCESSFUL
    All files are intact and domain binding is correct.
    ====================================================================== >>>>
    Detailed verification report saved to: verification_oc2mx_net_20260111_193739.json


    And the report looks like this:

    {
    "server_url": "https://oc2mx.net",
    "url_domain": "oc2mx.net",
    "metadata_domain": "oc2mx.net",
    "verification_date": "2026-01-11T19:37:39.1515177Z",
    "original_metadata": {
    "root_hash": "e771844180bdf82376d604a7193636cf10b644de",
    "domain": "oc2mx.net",
    "folder_path": "/var/www/html",
    "created_at": "2026-01-11T19:25:47.185816073Z",
    "file_count": 8,
    "total_size": 22692,
    "files": [
    {
    "path": "about.html",
    "hash": "0ba3572e7b473f83ec834156258a65e912c87339",
    "size": 1013,
    "modified": "2026-01-11T19:21:16.73369719Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "ae.html",
    "hash": "695829f112f3b67650094990fcb08c2c1f1e0ceb",
    "size": 6663,
    "modified": "2025-12-04T17:32:44.516543275Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "index.html",
    "hash": "25436500f84cccf558a4040deed71baa28f0656b",
    "size": 3553,
    "modified": "2026-01-11T18:32:21.471625529Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "index.html.bak",
    "hash": "7a8e6da581cfab412fc7b2d91ca969acda213b2e",
    "size": 2947,
    "modified": "2025-12-04T18:20:05.733114599Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "me.ico",
    "hash": "7c671658c98f29236c3633b1c833e7411e307388",
    "size": 4286,
    "modified": "2025-12-04T17:36:37.822183272Z",
    "permissions": "-rwxr-xr-x"
    },
    {
    "path": "nt.html",
    "hash": "647583d12d3e02431c2d30016ddb72dc0cb8e58e",
    "size": 1774,
    "modified": "2025-12-04T17:33:24.34266119Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "oc.html",
    "hash": "0335c0f792ef34241f97526e15bfb4e14815ec79",
    "size": 1929,
    "modified": "2026-01-11T18:27:22.851074381Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "redball.gif",
    "hash": "0fbce2d5fb2c9bbea1a0d78a42775e96de4b0b25",
    "size": 527,
    "modified": "2025-12-04T17:36:53.470222369Z",
    "permissions": "-rwxr-xr-x"
    }
    ],
    "algorithm": "RIPEMD-160",
    "version": "1.0.0",
    "excluded_paths": [
    ".well-known/acme-challenge/test.txt",
    ".well-known/mfv/dns.txt",
    ".well-known/mfv/dns.txt.ots",
    ".well-known/mfv/merkle_metadata.json",
    ".well-known/mfv/merkle_metadata.json.ots"
    ]
    },
    "current_files": [
    {
    "path": "about.html",
    "hash": "0ba3572e7b473f83ec834156258a65e912c87339",
    "size": 1013,
    "modified": "2026-01-11T19:21:16Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "ae.html",
    "hash": "695829f112f3b67650094990fcb08c2c1f1e0ceb",
    "size": 6663,
    "modified": "2025-12-04T17:32:44Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "index.html",
    "hash": "25436500f84cccf558a4040deed71baa28f0656b",
    "size": 3553,
    "modified": "2026-01-11T18:32:21Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "index.html.bak",
    "hash": "7a8e6da581cfab412fc7b2d91ca969acda213b2e",
    "size": 2947,
    "modified": "2025-12-04T18:20:05Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "me.ico",
    "hash": "7c671658c98f29236c3633b1c833e7411e307388",
    "size": 4286,
    "modified": "2025-12-04T17:36:37Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "nt.html",
    "hash": "647583d12d3e02431c2d30016ddb72dc0cb8e58e",
    "size": 1774,
    "modified": "2025-12-04T17:33:24Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "oc.html",
    "hash": "0335c0f792ef34241f97526e15bfb4e14815ec79",
    "size": 1929,
    "modified": "2026-01-11T18:27:22Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "redball.gif",
    "hash": "0fbce2d5fb2c9bbea1a0d78a42775e96de4b0b25",
    "size": 527,
    "modified": "2025-12-04T17:36:53Z",
    "permissions": "-rw-r--r--"
    }
    ],
    "changes": {
    "added": [],
    "modified": [],
    "deleted": [],
    "unchanged": [
    {
    "path": "index.html.bak",
    "hash": "7a8e6da581cfab412fc7b2d91ca969acda213b2e",
    "size": 2947,
    "modified": "2025-12-04T18:20:05Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "me.ico",
    "hash": "7c671658c98f29236c3633b1c833e7411e307388",
    "size": 4286,
    "modified": "2025-12-04T17:36:37Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "nt.html",
    "hash": "647583d12d3e02431c2d30016ddb72dc0cb8e58e",
    "size": 1774,
    "modified": "2025-12-04T17:33:24Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "oc.html",
    "hash": "0335c0f792ef34241f97526e15bfb4e14815ec79",
    "size": 1929,
    "modified": "2026-01-11T18:27:22Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "redball.gif",
    "hash": "0fbce2d5fb2c9bbea1a0d78a42775e96de4b0b25",
    "size": 527,
    "modified": "2025-12-04T17:36:53Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "about.html",
    "hash": "0ba3572e7b473f83ec834156258a65e912c87339",
    "size": 1013,
    "modified": "2026-01-11T19:21:16Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "ae.html",
    "hash": "695829f112f3b67650094990fcb08c2c1f1e0ceb",
    "size": 6663,
    "modified": "2025-12-04T17:32:44Z",
    "permissions": "-rw-r--r--"
    },
    {
    "path": "index.html",
    "hash": "25436500f84cccf558a4040deed71baa28f0656b",
    "size": 3553,
    "modified": "2026-01-11T18:32:21Z",
    "permissions": "-rw-r--r--"
    }
    ],
    "root_match": false,
    "message": "All files unchanged and domain binding correct."
    },
    "calculated_root": "94d6661f03694700959503f7b13b8d47a70fccb6",
    "calculated_hash": "e771844180bdf82376d604a7193636cf10b644de",
    "dns_record": {
    "hash": "e771844180bdf82376d604a7193636cf10b644de",
    "timestamp": "2026-01-11T19:37:39.1535435Z",
    "source": "dns",
    "valid": true
    },
    "dns_match": true,
    "root_match": true,
    "success": true,
    "excluded_info": "5 files excluded from verification",
    "content_theft": false
    }


    That looks like an awfully overcomplicated way to publish and
    timestamp a single hash value.

    It is not and it is super easy to use.

    As for the 3rd party code problem, look at Chris post at
    "Wed, 3 Dec 2025 16:53:03 -0800" about how a CloudFlare
    integration added code to his webpage when trying to use
    your system.

    I think Chris looked at the source code via his browser and
    not on the filesystem at his server, because I doubt that
    CloudFlare can write to the web servers file system.


    Right. My files are preserved, cloudflare injected it dynamically via
    its proxys.
    --- Synchronet 3.21a-Linux NewsLink 1.2