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.
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.
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.
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?
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?
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.
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?
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.
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 ======================================================================
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
I will later check with opentimestamps.org for the results.
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
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.
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
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.
https://github.com/Ch1ffr3punk/mfv
Chris M. Thomasson wrote:
Might have some more time to look at it.
Do it, so that no one can tamper your site. ;-)
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?
If somebody has your server comprised, they can alter your originals and
make new hashes.
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.
C:\Users\stefa\Desktop>mfvc oc2mx.net --dns
Starting remote verification of:https://oc2mx.net
Domain for DNS lookup: oc2mx.net ----------------------------------------------------------------------
As one can see my system works!
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.
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
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
}
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.
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.
| Sysop: | Amessyroom |
|---|---|
| Location: | Fayetteville, NC |
| Users: | 54 |
| Nodes: | 6 (0 / 6) |
| Uptime: | 17:44:52 |
| Calls: | 742 |
| Files: | 1,218 |
| D/L today: |
4 files (8,203K bytes) |
| Messages: | 184,414 |
| Posted today: | 1 |