Can we discuss Read-Only PLUS block downloads & print & copy?

Absolutely right. I understand now.

My query in the O/P was I think flawed in not understanding that there are accomplished programmers actively wanting to get the scripts for “The 7 Movements Of Effective Elbows” exercise.

Within TW what can I do to make your interest in elbows less about code-digging?

How can I frustrate you?

TT

TW, stand-alone, is definitely a Quine that Quine would have been proud of.

On “self awareness” in a computer routine — I’ll leave that to the Angels On A Pin Problem.

TT

2 Likes

Hey now I meant that as a metaphor lol.

Like a quine can’t be a quine if it can’t ‘read’ its own source due to not being an interpreted language, or if interpreted having portions of it obscured or inaccessible somehow

I did not read the whole thread, but there is one thing I’d like to say about “block downloads, print and copy”

  • It’s not possible to block download after a site has been downloaded by the browser to show it.

  • There may be a possibility in the browser to prevent the native right-click menu, which contains "Save as … " and “View page source” …

But

  • Nobody can prevent me from taking my phone and make photos from text, that interests me. → Give it to an LLM, convert it back to text and give me a summary that is written in any style I want it to be.

So as soon as something is on the web, it will be public – forever.


IMO - The only way to make it clear, how your public content is intended to be used is a proper and visible license.

A license is a legally binding document, that defines the rules, how your content should be used.

The main problem is enforceability. You basically have to create a landing page, that does one thing. - Show the license. The user has to take action to accept or decline the license and you have to be able to proof the acceptance.

If the user declines, you should send them to a different landing page with openly available promotional material. – No need to collect any user specific data.

If the user accepts the license, or your “Terms of Use” you can send them to the wiki page that contains the licensed content. – Where it still has to be visible, but should not step on the users toes anymore. Signing the TOS, will also need the consent to store user specific data on your server – If you implement it that way

IMO with TW it should be straight forward to create a TOS (Terms of Service) wiki, which basically can be an empty wiki, that only contains the TOS. If the user accepts, it can open a table of contents, which may link to other resources, if there are multiple wikis. Or it can open the wiki with the licensed content, if there is only one.

This “Landing Wiki” can use the TW browser storage plugin, that will allow you to save the state of the user consent - in the users browser. –

So you can use the landing page as a “Welcome Back” and / or a “What’s New” page, without the need to sign the TOS again. IMO a “Welcome back and What’s new” info will add some extra value and can be used to create a community around your “valuable” content.

So over time it will not make sense to “copy” or “steal” your content, because the content without the community may not be worth it. … Just some thoughts.

With the browser storage plugin no user data leaves the users devices. So no cookie banner is needed.

You only need consent if the user singes your TOS.


Implementing a backend, that stores the user consent, will probably be a challenge for most of TW users.

So here it depends how valuable “lost” content is for you. – Is it worth the expenses or not. – It depends on you.

IMO the minimum info to store, is the IP address of users that visit your licensed site. Here you will need a cookie-banner, or you’ll need a signed TOS, which IMO would be easier to enforce.


Never the less. Even if you do not store any user data or signed TOS. A proper license is still better than nothing to enforce your rights, if needed.

Just some thoughts.
-Mario

5 Likes

Thanks @pmario. That post in a good summary of the legal issues. And how to, upfront, try to stop misuse.

Right.

Good you made that explicit. Since LLM’s the issues have definitely got more complicated.

TT

2 Likes

We’ve had at least semi-decent Optical Character Recognetion for a generation. There may be other reason LLMs are complicating things, but I don’t think image-to-text is a major one.

2 Likes

Wouldn’t the sort of read-only mode @Springer used in the Writing Coach that you mentioned in the OP already be enough to keep those elbows deep in their sleeves?

Do you really need more than that?

I found LLMs to do considerably better for equations (handwritten or otherwise), and return proper latex/katex compared to OCR or Math OCR

I can just scan in a picture of my pre lab algebra work and get back nice katex for the lab reports .

It’s wonderful

3 Likes

Althought I think we should be able to obtain an appropriate reward for our intellectual property or artistic output, I would like to suggest that ultimately the ability to protect something that by definition must be usable or visible is pure fiction if not fantasy.

Making it hard for people to steal content or dripfeed it, security by obscurity usually results in a poor experience for everyday users who are not stealing content but adds only a little additional effort to someone stealing the content.

We could develop some strategies to help protect leaching of content but then you would need the intellectual property of of an experienced professional and sadly “you” will possibly not want to pay, but leach it from them without rewarding them.

it’s all a vicious circle that has no end and attracts snake oilers who claim they have found a solution which is only ever temporary, because it’s impossible to give something to someone whilst simultaneously not giving it to them.

1 Like

I think the proposed LLM use got misinterpreted there. The original point was not just as an OCR, but as a re-interpreter:

Converting equations in a well formatted manner could suit LLMs more, as @Xyvir noted, and cleaning up images could be another way LLMs would get use in exfiltrating information from an otherwise “locked down” data source.

3 Likes

I wanted to reply and say a triple of things …

  1. It does seem there are several ways to “frustrate stealing” that are easy to implement. Good!

  2. I am not convinced average users would know how to know in-browser they can extract anything. That is more for techies like you?

  3. The screen-shot with AI re-create does seem un-defeatable and probable.

What I need to do is create a test case of max-frustrate-steal?

Yes?

I can over the Xmas.

Laters, a dopo.
TT

1 Like

I’m still wondering why you think more is necessary than the READONLY mechanism from the OP… If that doesn’t work, my tweak to Mohammad’s tool might be helpful. It’s designed around my own workflow, where I use Node for development and single-file (GH pages, elsewhere) for deployment. But you can also use it with single-file only, so long as you’re willing to use a keystroke (CMD/CTRL-SHIFT-/ or CMD/CTRL-SHIFT-1) to toggle between read-only and edit modes, and to remember to turn off edit mode before deploying. (You might need a bookmarklet to save in this configuration; if you need it I can probably help develop one.)

If you want some of the print stylesheet tweaks suggested, by all means include them. One easy one would be @media print {.tc-story-river {display: none;}}, assuming you’re using the story river for your content…

As to preventing downloads, I still think you’re trying the impossible. Here’s the link from the OP again:

Right-click that link, and choose something like “Save link as…” and you’ll get your very own copy of that document. I don’t know how you would share your work without something similar. And this is before your tool even loads.

1 Like

For what it’s worth, you can change your publish filter so that changes to the read-only mode don’t save.

Tag a tiddler with $:/tags/Global with content like:

\define publishFilter() -$:/status/IsReaderMode

(Make sure that the most recent save — before adding this step — was one that left the wiki in read-only mode, of course.)

Back-story: I’ve gotten stung one too many times with forgetting to toggle back before sending an update that’s immediately live as editable. Not that terrible things security lapses have happened, but read-only mode hides so much admin interface that it’s rather distracting for students.

1 Like

Thank you. I fought with that horribly some time ago, when I first developed my read-only mechanism. Since I switched to my edit-in-Node, deploy as single-file, I haven’t had any issues, but this will definitely make single-file-multiple-mode wikis easier.

2 Likes

Now there’s a guy that refuses to be constrained by the masses. Bravo. :clap:

1 Like

@Springer I wanted reply as you put up good questions …

Yes. Yes in sense of keeping ONE SOURCE.
Bottom line not relevant here.
More about retaining legacy, if that makes sense?

Background: Brilliant work in my field has, repeatedly, got messed up by internet theft recycles in a poor way.

Public access is good IF there is sufficient context to make the work relevant & effective. Thefts generally ditch the important context.

Overall: I want to practically see how far you can get without having your work stolen. AND still be accessible enough.

Laters, TT

Thanks, added to the list.
TT

Well, I personally have never done anything but use the story river. But I know there are people here—people who will go unnamed!—who do other things…like work with a single TW in a gazillion-monitor setup.

1 Like

gazillion = “a metaphorical large number

@CodaCoder’s selfie screen shots indicate he likely doesn’t work on hand-held mobile notepads.

TT

I was just thinking if it may be easy to steal a tiddlywiki, if some of the content was encrypted and the key is obtained from the local host, eg a file on the host, then it could be fashioned so if the wiki is downloaded that decryption would no longer work. Sure this can be hacked but adding a local file/host requirement along with a detection of the current domain (so if it changes display a warning) just makes a hack even harder. Similarly, regularly modifying the encryption code and where it is found will cause a wiki to age away such that if they want an updated wiki they have to hack it each time.

  • If you do require an encryption key by application to access some content, even if its saved in local storage it will demand a casual viewer to take extra steps like give an email address that may confound some robots.
1 Like