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:

Geh6f5do485s25tf1I6127en2a6f7k24 642pd8fa4r19b6o502b1t0f9e89ce23ta28s43380 628sa5d4ed3n4f063s39f5i833dt0i4edv6d6e290d1 65w5r2i578fct8ficne86cagd7 76bf16ay9c55 064bm7a297afk4ib01n1gf fi2896t3 c8h5aa72af0r02d1606dea1fa1r2 6t79fboed276 9dc8do0556p759cyebec,82 a6fcs3f12c0fr70abpf6dded068,dad9f 5a3of13rac75 ead6e5dx4aetbr485ca4ce5atd6a e49a6w71i8t66bhb39fo65u0t7 02p5ee47r56demcf9i5s47b0sf314i8528o39237n8b.0a0

Wah2e8nb1 3y89e1o693du9ce 6e159r48e13ac74d8f ct4ee21bxab4t70e93 0ap4rde5bao5t4c9e4c62tb30e3bbd46f1 d70bc0ec3ydfc eGf6hd0o790s27c21t367I43c9nf2bka96a,2 9dfeev3eb68e22ray160t4h28cideb3na7g460 364lea3ao0o31399k64025sb370c 350n1o257r7bmdaafl5201.b 06fB1752au6f866t5 e678b0e7d9hd32f2i2e0bnddfd82e2 98e07t2bh5bed5f2 4dsd3f3c4ce811nbe81s6fb03,2a btaa5hf0beef85 8b8l08531eb4te15tf7ed35rf70sc38 d9f44aefrdeedae7 6893lc5afb1ecd4fe8e649fedba22 77422wd60ibf1td779ha129 1049aif387n07v6aieba1s53fi2fb3cb11blbd4ffe3736 c204jebc0u9n04k3 3cf448h7a6a2ar996dacd4c2f41t9fceb0262r93s26 59dae5f1ces5i36155ga82n7e55927d021 98329t601oe 7ec1d7b9oenecc94f3882cu028s23e610 1b7f86o0ftb71ffs9854e,7176 10cc2er2a9135wd99eel40efcra153sac9f1,714f 6b7ba826nd94dfc6 c3b7e00v13debd245n3902 8250bsdi6ac8m42facp2b63l5dedf a1c24684o4p43cfy7/36fpf5ef0a43s5ft4eb.0c faee3Td2hcfe5sf20caea eed88exddtb9rcd4dbad3f 2965c9e7ha5a6bafe241r05faa2fac35taef23e3a73r20s924b 6d5co2cnf5bdect5c c13csf55ahdb7o889w3 eef57ue548ep36 1o442n7ab3b fa3ddt9634h84246e14505 57a06s75c87c6ad1r3a4e6757e54nae1 2a37c1d cb34db0u6t7f4 5tba8hc4669eb6b1yb df0c5d12bbo78 ce667cfode05m51ec8 5bw0f31i65f0t6h8aea3 1y2dd9dobueb 06wae7h6ee9n81f dyf1o56fe0u5ea b96bt69e1br36ey119 e3dctc2d7o35 7s4t080e741a472f1lb7f fct275h7dbed702 3t2b4ed2bx8378ftb65.673f

Tcbare3y1f 72d5fi1ectc1 7eaefY6of4858u35rcseea04l948baf9

S5dee3l91d4e9c3d3ta0 c246bsb3of2madeceee 995eoa0cfdc6b 841tb2h8302i6sb4963 79a6gf81bflc8fdo3ew2i146dn1egb7 2dbc3l56fuaae18f 5G7hco8d43sf0c78t3Iden29bk785-4acb8p68r1ffe1o7tae752efd9c0a6t2aadea7de7a 8ft39e4c34xfc41te684.3cec 2f34Ccfoa74dp4dfy72 9e48i6dt0b.5a770 e7c6aPa5a658s15etf61e1503c 0c22i7067te4 62eia962nf6tff08o0 dfd0aea7d3 294ena5o5a6tcf8a8e7pbabfd9,2 2012e5m7c3b6a63c2i196l02e8,da1d7 58eo97304r7fb5 afem0e94eef9f3sb3f0dsabcae0fb8g58b02e22edb.ae38f 677ba-e3 49eY8bdo973fuee21fcl6b08la5b80 bc624sfa7e4498eec94 5ch8511o9799bwf c86tf185dh9e51 f636cb0ad9l97e97af40n06cd ab39s06fuf532er9f8f5c2caec3336e1 2b3h00id5c4de31ce9s0cb0 855ada3 21659mbe2bdbsbs4d cdau9947n08dbeeaec12r994n5ce3164aetb6hd.8222

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.

T2hfi46661sc3 50ci8s09 2a624b0 e0t3e0s4fft21d5.c2a2