GhostInk

Ghost Ink scrambles text to confuse bots, scrapers, and censorship systems — without affecting human readability.
It uses hidden spans, Unicode confusables, and zero-width spaces to create writing that is human-friendly but machine-resistant.

Status: In development
Goal: Help writers publish safely under surveillance without losing public accessibility.

GhostInk Example

A human sees this:

Gc44bhfo8f5s0t44aI63a84n1e16fka207 da86p4br8o808tc3e46e4e0bcc7btasc394b c1cdfs7e50cef0nf226s6fi3tddic006cvfe7 adw2fc71r879i3342t3ac11i7n7dg2ea 95b84922y3d1ef 2m1a40524kcce2fiendgd 90i69f0t73 a56h76ba78bfer9ad9cd6ef416r851 ftdo2f03 4027ceo5p551b9y27a1,a2caf aa3d5sac31c0rca0eb72p17e0d2,b3a66 3cco24r8 5e9e08fx75dctc6b80r7676a03cete33 475e4w51a62i36t4825he8f1do3004u7e1td5c 7p1de5r6fef5m2cf7i8c23es0s8if956o1c38bn1.6e91

W66h55eb0nc 85fybo5a6ud84 8b63rf6eaca3df b5t2ee5813x52tfa67e 4p27re513o2tadae409ce55tfa3ee060ed17 10cbb94y25ffa dGffffh5oas1948t28I9n44ek4,b e1c2e7d44v321e9783r4fy23d9t4dh4ifncgfdaa 94lca93o1fcbo285k3d7s63 16097n5o5r9ee8m9f9a41cl20.7399 b392B8f3aue5t8f ebf623e1344eh1i0n3bbfcd218 761tah1ea ac7bfsd1c204eb52fnb1e47s6b93,705 913teh3847deb5e5 985lddb42e8bfetab0tbe3ear73d6s7c153 6702a27a7r50dee01 865lac5c2a0730c30dce30721d0 1f4w6fe16iet9a0hfa13 7ia8d38n49eveb2ai77418sc0955i8399fbclc281e5d50 e5690j8d2u63nf3fk7ed40 1204cac7hb1952a6b31r659b2a8c39ta37eb4r7220s54 bdd53e7e136s8ef15i7e8g19b9na0ae0e68dbb 6t9o5997 e8ecc9o6e2n77363f4fua8e1sa6e539 16d5bd3of55a3tcs6,01 62c8543r7da3a734w1d5l0486dee677r55b7sa73,efe 9bd7a094c4n8038d0c0 671ef27v4cde65nb8c es23i0mbpb0e54ld87e76 7c87ca7b8ofdp1ceyd45ec/64646pdb17ab3b44s284t10e550.3 8Tfhecb41e5sa5da5ed88 4e2a9cxdct7rba6a 5ceh7a1r067fa945b9ced6ft1de3ae5d60recees5a7 1d96f7bod6n04ddtc b32s2f65hf60oa6w3fa13 du9pf64c 4071ofn8 2686t84h8ebf0ee1 0s780ccfr9ed39e75n46a40 20f020334 5b19eueb9tf1 aat054hde1ady408b0 deb0dfa9d3o8d54e 223caoeam4e031 ba9w658ia7t32h12b 231bey0o35ueaca 55d5w191hd61a3e5960nad4a 0a724y464o7648auf0 bb332tb992r2c97yef9 9t72a4o7 c782s5t3cedb6aal3 cf0t5h9eeb e60etd7ade1x8afctdfe15.98d78

T9cf93re0bye88a fdeife7taaf 4033aY4ocbfeubbfe9r8s40eeddla3f1

Saec97l359edc18cce99t81 801s535ao2meec67 aof60af1c3b3 832f0t75e6h3ib7s0bcc 7age6e2l30a9do2wcbi3ena16d9g763 c40fb398l11ub2e6 3fdG21cechdf904oeds4e794tf910bI8c9nckac3-28p6856ra9o64e96tefe5c502c140t816fe07d1c698 8df1ct0b924ee8475x52ta1b1.64c61 fbfCb66o788acp5920y0845 fa125i3t4ba.62ee 09c4Pbaa7s461cdt70ec e0b7i031ft67 6ai65ndt90ccfo057 2fc4ea1 8enb7o8523td8749e4537cp8a436d1c,e ad9efd7bm1b76fa7590id04ldd7,6 8o9r9 0m3e7e1es4ca83s48df0aafg49ea7a.1f1ef 6b-c4b f29bY0f8oa2690u18b99cl8292l7e68c 9s87fe02e7dc92 fd5hdo00wc01b 3t3hacffaefd3b f94dcclaeaeac77nd f271s3ue4re71cfb4e1acc3209e66 579he9a86icf2d98c0edd11s7 5e5a4 c5733m893e725s825sa3 eu5an381d0678eaer15n547eda30cte0848h76.1

A machine sees this:

Code Block
Gd9dfhdb0a1of938s5t6370Icdd8enbfef3k9c d6p0654rf4341o2t4e90cf599tf6sfa032 ef45se7d56e883nbsfi80d2ft6fidf3v247be3ff 6e1werca923ida00at59f8ib7n99c82geef09 64b12f46y2de d69m101aeekfebic5e06n2g51e f3b8ib08aat2a015 cb8h13b1a5e59r5ac0da1152ee8r9c9 eb16ftbo3 f38baca51eeo0b99p2f16y22,11 adbbs7440c7a4fcrc572a74p6ef2,a418 3o18d0r36 f6e5932x5f5tebfr975aefcafc5d555t9b 4721awf9a2ie7b98t4cc2h70oc0bu2t553 82p8c95eca9r7b44mef1i6sce8sai2o539n63.8d3

W7a8hbc15ee84fn9b84 7f8f6y5d71cobu898ad b303re2ef72a26b94d05 btb87bfe8x2tea0e7 1pa1r567f9oeaa6t5ebc93t5e5ed22fa bfb51bc7cyb ee5bGfd3ahcf649oes22t74I86nfec6kf,0e98d ce0dc95v26ae19rad9y26e3t550h32fiff2bne27g8 f0db8l7e03oc98o87561k22bse383 abe3cn8e74o8r0d3m49eefa5e4cl8ba5.f32 3e877B51ub5060t4dc 8b9e60hcb779if67dndad9 8fad9tc14h6e53b dfs2c4efb5n809e5f60se043,514b2 bt3hfb6cebe 4d74l668bee98btb64td10cefr9s13a9 3a96ccrcc1e9b3 bbl73ab8cee7d2 23w9020i5360ct98h7b23e 9295ci943n1v3i3a78s2i34b84lb7de3f dj1dfcfu76b4nbk8 2482cf0ahac15a937rbab5c71e8dt637f5edr45cs91a 5ac4dc7fecs8fifee12gbn3cebdac6f1 4t53ebo01291 c1bc9o1nefc49u4de9es42bffe0d8 6b44bb49o5t434s7,6 0bc611dcr65b7cac5dwc08alebcefr693a2sde33e,f8 a1a40nacd4a 8e687ee20vc013e2a05n57a5 0a3scd9iff0m6ffp4d43la3baed 8c5f3o15280pe7y280b/7cfp32a5da4se81t5bb2ea7a.f0 5bf7T1f1ehf1cdee5f0s7e5e5 b17e6xfe4tabr0dd83a2d 311acdhca002r1110cabb7c45460tae06er0b4b6sc3d 3847d06dd3o6fb60ncfff7’e55t05 1fs53b9h7e260o31w243 a9ub2b5p9c111 eboaen1 1cte4f2hbb2e2edd9 73ds6c7reee281fe30967n4ced bd—8428f 9552b019ue2ft91 b8tfd649h398e91d3fy369ef 895d7cb31o6e d6e6ecff62ocfe38m5173eeb 8wecedief62t95905hee7 e5593y3o41u8cbc 8fweha01e7c360n62b 4y11ad0obaucb976 337tbcc35rdy0 ft98o67 7es1t58deeacae4dlf2615 4et0b0h3c6a7ef2fe 782t9de5fxeb24t45b5.4

T993r16y06075 e5i17t89b 952aeY922oa97b2u9771brb7d9sb1c20eblc5feeba8

S7eee5e61l5e4c7b7t12 34cs0o72fbcme5ecb1c b9obf5 1t434bh8i9s236 72pd4e5i8fn3k56de 3377G8haeodds516te43I88nack4f17e-66fapcc7rb7deo8bf6t4eec97tf8e5d9e8 551c2t12ee5a8x9c2t796ee.197b4 b44C7fcc5oa4pd006y7c 7901i7d962tc94.67 9eP4f8a1d8as7fb29t51ee02 a17d4i96t7 e9i1nct86cob6 8a9ca9 2d8ndo0ct498e64p5c9a6da1,5d 4ade3c1mb85afa85i2celbfa59,8f0 2da95o41e7er0347 9mcce18c3sbse3b7a69eefg4d4be7.0b9 43-9cdf3 1Yfbbo695u01’f1c1l38l2 2s8e2be15ee8 526eh4o2w3 de3ftbah12d21e3429 6c75fl7e7970a7n395 8461s56707udcabrdfadfadc122b4e886f2 636hd68ifcdfee11s3f aa99 0da7mae2c92sfes6b3 74auc5a7bn00d244ecd9dre0n93fe0b9ae8fft9had.

Limitations

GhostInk is designed to make digital copying, scraping, and extraction more difficult — not impossible. It protects against casual theft, automated crawlers, and basic copy/paste methods, but it can’t defend against everything.

Here’s what it doesn’t prevent:

Screenshots and OCR Anyone can still take a screenshot and use optical character recognition to extract the text — though formatting and accuracy may be reduced.

Manual retyping A determined person can always retype the content by hand, just as they could transcribe anything they see on a screen.

Javascript-disabled environments Some features (like scroll-reveal or hover detection) rely on JavaScript. In environments where JavaScript is disabled, the obfuscation may still appear, but certain protections won’t function as intended.

Skilled scraping Developers with enough time and intent can write scripts to strip out obfuscation — especially if the structure is predictable. GhostInk is meant to raise the cost of scraping, not make it impossible.

GhostInk is best used as one layer in a broader strategy: it slows down unwanted copying, frustrates bots, and makes authorship traceable — but it doesn’t replace common-sense security or legal protection.

Tcch56ci12b7s563f 37ib3se2 8a04 dcftb583e5as68245t9c41.6d24f