Marc

Marc

11
Followers
102
Following
25
Notes
0
# Zaps
Joined
1/6/2025
Last Active
26 days ago
NIP-05
Not Verified
Lightning
Available
🎯ProfilestrNew
33/100
📊VertexBuilding Trust
bottom 50%
🌐RelatrVery Low
0.00

About

Humility is the gateway to attaining wisdom.

Activity

Replies3
Media Posts4
Total Sats Zapped0
NostrZap Stats

Details

Public Key (npub)
npub1f4za8ayleznfv4ee6jnl3k7n58arwj0c4xknx04nwn0yp66yw26qpsu5gy
Hex Key
4d45d3f49fc8a6965739d4a7f8dbd3a1fa3749f8a9ad333eb374de40eb4472b4
Lightning Address

Discover More Profiles

144MB

144MB

@144MB

I sign Floppy PNGs with the same private key associated with this npub. My entire software repo is inside my banner PNG. It can be extracted with this script: Deno.writeFileSync("f.z",Deno.readFileSync("f.png").slice(41,-16)) new Deno.Command('pigz',{args:['-d','-f','-k','f.z']}).outputSync() let extracted_data=Deno.readFileSync('f') const data_length=parseInt(new TextDecoder().decode(extracted_data.slice(65,4120)).split('\n')[0]) const unfiltered=new Uint8Array(extracted_data.length) let f=0,p=0,r=0 do{if(r==4140||f==0){f++;r=0;} else {unfiltered[p]=extracted_data[f];r++;f++;p++;}}while(f<extracted_data.length) let site_text=(new TextDecoder().decode(unfiltered.slice(542340,542340+data_length))) Deno.writeTextFileSync('site.txt',site_text) This should be verified. I sign the data part of the PNG and use the top row to store the secp256k1 signature. This can be verified with this script: import { sha256 } from "@noble/hashes/sha2"; import { schnorr } from "@noble/curves/secp256k1"; import * as pako from "pako"; try { let f = 0, p = 0, r = 0; const fpng_img = Deno.readFileSync(Deno.args[0]); const pub = Deno.readTextFileSync(Deno.args[1]).trim(); const zdat = pako.inflate(fpng_img.slice(41, -16)); const u = new Uint8Array(zdat.length); do { if (r == 4140 || f == 0) { f++; r = 0; } else { u[p] = zdat[f]; r++; f++; p++; } } while (f < zdat.length); const dl=parseInt(new TextDecoder().decode(zdat.slice(65,4140)).split('\n')[0]) console.log(schnorr.verify( new Uint8Array(zdat.slice(1, 65)), sha256(u.slice(542340, dl + 542340)), pub, )); } catch { console.log("Usage: lverify [Floppy PNG] [144MB Hex Public Key]"); } The extract script itself can be extracted from the Floppy PNG using the instructions on the header of the banner of the PNG in my profile banner. It is all so wonderfully self-referential, no? Note that to use the verify script you need something like this package.json: { "name": "anything", "version": "1.0.0", "dependencies": { "@noble/curves": "^1.9.2", "@noble/hashes": "^1.8.0", "pako": "^2.1.0" } } Later versions of noble/curves need a different import. Also, if you want to use that same site.txt file to load a web page, you can use this: <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <title>Floppy PNG</title> <meta name="viewport" content="width=device-width,initial-scale=1"> </head> <body> <div id="l"></div> <script> fetch('site.txt').then((resp) => { resp.text().then((t)=>{ s = document.createElement("script"); s.appendChild(document.createTextNode(t)); document.body.appendChild(s); })}) </script> <div id="main"></div> </body> </html> You need to remove the verify() command for it to work as a live web page. Verify the sig separately, remove the line, and spin up some kind of local web server. Most of the time the verify() command is the last line of site.txt. The web application for all browsers is listed in the floppypng.com repo (src/browser.js).

10
Followers
221
Notes
0
# Zaps
Public Key
npub1a2g7uthlp9ppzk64zkaahmsjtx703x0cm3umx02c2fx3qn3at66spp9ssf
Last Active1mo ago
ぬるぽ・ガッ

ぬるぽ・ガッ

@nullpoga

[email protected]

ぬるぽ を許さない 何かあれば bot の管理者 nostr:npub1937vv2nf06360qn9y8el6d8sevnndy7tuh5nzre4gj05xc32tnwqauhaj6 まで。

760
Followers
18,626
Notes
0
# Zaps
Public Key
npub1f6rvmwc76arl7sxx2vparlzx8cg2ajc3xpymqh7yx97znccue2hs5mkavc
Last Active6h ago
Heiner Willenborg

Heiner Willenborg

@Heiner

Regeneration specialist

61
Followers
4
Notes
5
# Zaps
Public Key
npub1h2mzyvc0h22fsmfru2d8pqgskv567nq6c26c4p40heaths5sggys6w4p6j
Last Active1d ago