Hoe voorkom je schending van auteursrecht bij het tonen van een afbeelding
Binnen een tiende van een seconde heb ik mijn Knipprogramma van Windows al geopend. Maar dergelijke maatregelen met Javascript en Canvas voorkomt wel dat iemand geautomatiseerd alles staat te kopiëren. Zorg tevens voor een niet herleidbare URL. Dus geen 1.jpg, 2.jpg, en hash deze desnoods met md5() met een geheime salt.
Met Pinterest.
Ga in Pinterest naar de webpagina met plaatjes van je keus
Pinterest toont alle afbeeldingen voor zover ze in een IMG staan.
Selecteer de afbeeldingen en bewaar ze in een verzameling.
Vanuit de verzameling kan je de afbeeldingen bewaren waar je wilt.
Lukt ook met afbeeldingen die zo zijn 'beschermd' :
off topic
Ad Fundum op 29/07/2020 16:07:47:
Dat is niet echt out of the box.
- SanThe - op 29/07/2020 15:34:05:
Onmogelijk.
Dat is niet echt out of the box.
bullshit bingo
https://www.buzzwordbingogame.com/cards/bullshit/
Gewijzigd op 29/07/2020 19:51:33 door Jan R
Gaat het om huis-tuin-en-keuken kiekjes, of zijn het professionele foto's die jij verkoopt en waarmee jij geld verdient? En op welke manier ondervind je op dit moment schade?
Adoptive Solution op 29/07/2020 18:04:40:
Dat is opgelost met een meta tag: https://help.pinterest.com/en/business/article/prevent-saves-to-pinterest-from-your-siteHier een andere mogelijkheid om beschermde afbeeldingen te kopieren. Met Pinterest.
Jan R op 29/07/2020 19:48:36:
Zal pagina opslaan ook werken met afbeeldingen die speciaal via JavaScript worden geladen en getoond?Als je de pagina opslaat als html heb je direct alle foto's. Dus altijd mogelijk.
off topic
https://www.buzzwordbingogame.com/cards/bullshit/
off topic
Ad Fundum op 29/07/2020 16:07:47:
bullshit bingo- SanThe - op 29/07/2020 15:34:05:
Dat is niet echt out of the box.Onmogelijk.
https://www.buzzwordbingogame.com/cards/bullshit/
OT: het is geen bullshit, maar een buzzword volgens jouw link..
Ozzie PHP op 29/07/2020 21:43:52:
Als ik dat typ ben ik mijn anonimiteit kwijt, dat is nogal een prijs voor alleen een technische vraag. Ik hoop dat je er mee kan leven met de omschrijving dat de foto's een waargebeurd verhaal vertellen, en dat het mij niet om geld gaat, maar om ethiek.Ik ben nog steeds benieuwd ... om wat voor foto's gaat het???
Gaat het om huis-tuin-en-keuken kiekjes, of zijn het professionele foto's die jij verkoopt en waarmee jij geld verdient? En op welke manier ondervind je op dit moment schade?
Gaat het om huis-tuin-en-keuken kiekjes, of zijn het professionele foto's die jij verkoopt en waarmee jij geld verdient? En op welke manier ondervind je op dit moment schade?
Ik probeer alleen wat duidelijkheid te krijgen om in te schatten waar je juridisch gezien staat. Als je het niet wil zeggen ook prima hoor.
https://www.patrick-wied.at/talks/image-protection/demos/demo-interlacing.html
Het gaat mij hier om het idee om een afbeelding dusdanig aan te passen dat het wel zichtbaar is, maar niet kan worden opgeslagen op zo'n manier dat het kan worden hergebruikt. De afbeelding door de browser laten opslaan werkt niet, het maken van een screenshot werkt niet, en de pagina opslaan werkt ook niet.
Natuurlijk kan je er voor kiezen om een minder heftig effect te kiezen dan het overslaan van beeldlijnen, het gaat er om dat het idee werkt.
https://www.patrick-wied.at/talks/image-protection/demos/cat.png downloaden ... ?
Ehm, gewoon https://www.patrick-wied.at/blog/image-protection-on-the-web
Daarin staat ook een simpel idee van encryptie tussen de browser en de server waardoor je niet zomaar de URI kan opgeven van de afbeelding.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
<script>
wo = window.onload;
window.onload = function()
{
wo && wo.call(null);
// Get the image
var sampleImage = document.getElementById("ringoImage"),
canvas = convertImageToCanvas(sampleImage);
// Actions
document.getElementById("canvasHolder").appendChild(canvas);
document.getElementById("pngHolder").appendChild(convertCanvasToImage(canvas));
// Converts image to canvas; returns new canvas element
function convertImageToCanvas(image)
{
var canvas = document.createElement("canvas");
canvas.width = image.width;
canvas.height = image.height;
canvas.getContext("2d").drawImage(image, 0, 0);
return canvas;
}
// Converts canvas to an image
function convertCanvasToImage(canvas)
{
var image = new Image();
image.src = canvas.toDataURL("image/png");
return image;
}
};
</script>
<div id="promoNode"></div>
<p>The images below include the original image (jpg), the canvas version, and a conversion from canvas to PNG.</p>
<h2>Original Image</h2>
<p>
<img src="ringo.jpg" id="ringoImage" />
</p>
<h2>Canvas Image</h2>
<p id="canvasHolder"></p>
<h2>Canvas -> PNG Image</h2>
<p id="pngHolder"></p>
</div>
wo = window.onload;
window.onload = function()
{
wo && wo.call(null);
// Get the image
var sampleImage = document.getElementById("ringoImage"),
canvas = convertImageToCanvas(sampleImage);
// Actions
document.getElementById("canvasHolder").appendChild(canvas);
document.getElementById("pngHolder").appendChild(convertCanvasToImage(canvas));
// Converts image to canvas; returns new canvas element
function convertImageToCanvas(image)
{
var canvas = document.createElement("canvas");
canvas.width = image.width;
canvas.height = image.height;
canvas.getContext("2d").drawImage(image, 0, 0);
return canvas;
}
// Converts canvas to an image
function convertCanvasToImage(canvas)
{
var image = new Image();
image.src = canvas.toDataURL("image/png");
return image;
}
};
</script>
<div id="promoNode"></div>
<p>The images below include the original image (jpg), the canvas version, and a conversion from canvas to PNG.</p>
<h2>Original Image</h2>
<p>
<img src="ringo.jpg" id="ringoImage" />
</p>
<h2>Canvas Image</h2>
<p id="canvasHolder"></p>
<h2>Canvas -> PNG Image</h2>
<p id="pngHolder"></p>
</div>
Vergelijkbare code hier :
https://www.w3schools.com/tags/canvas_drawimage.asp
Behalve dat die trillende lijnen er belachelijk uitzien, kun je met wat geduld nog steeds gewoon de afbeelding downloaden. Waarom zet je er niet een watermerk in? Voorkomen dat het gejat wordt, gaat je niet lukken, dus het enige zinvolle wat dan nog overblijft is duidelijk maken waar de afbeelding vandaan komt. En dat kan via een watermerk. Als mensen dan toch die afbeelding gebruiken staat (bijv.) jouw logo of URL er doorheen.
Ozzie PHP op 05/08/2020 14:09:00:
Als mensen dan toch die afbeelding gebruiken staat (bijv.) jouw logo of URL er doorheen.
Met saturation kan je een hoop aanpassen. Kost wat tijd, maar het is wel mogelijk.
Saturation is kleurverzadinging en likjt me niet de meest handige oplossing om iets weg te poetsen. Het feit is dat je de oorspronkelijke pixels niet meer hebt (omdat daar iets overheen staat). Om een logo of URL die door de afbeelding heen staat weg te krijgen, zul je de pixels moeten overschrijven. Dat gaat het eenvoudigst in een fotobewerkingsprogramma door stukjes rondom het logo/URL te klonen. Dat is een arbeidsintensief proces en je hebt nog steeds niet de originele foto. Stel het logo staat over een oog van een persoon, dan kun je nooit het originele oog herstellen.
Dit lijkt me dus de handigste manier als je iets tegen het jatten wil doen.
Ozzie PHP op 05/08/2020 14:09:00:
Maar hoe dan?.. kun je met wat geduld nog steeds gewoon de afbeelding downloaden.
Het achteraf terugweven van even en oneven lijnen is eenvoudig inderdaad, maar dat is te voorkomen door het interlace-effect te vervangen voor een ander knippereffect, door bijvoorbeeld met een licht maar zichtbaar watermerk snel en random plaatsen. Niet met een effect kleur, maar met ruis, zowel opaque als andere bekende mengtechnieken. Als je dat hebt, dan moet iemand die de originele afbeelding wil hebben zonder watermerk wel van zo veel gekopieerde afbeeldingen de pixels proberen te herstellen, dat het praktisch niet te doen is.
En wat denk je dan dat de gemiddelde bezoeker van je website doet als die al dat geflikker ziet? Die is binnen 5 tellen weg.
Met alle respect, maar jouw 'middel' is erger dan de kwaal. Mensen zijn gewoontedieren. Die willen geen gedoe, en als ze op jouw website komen willen ze gewoon een plaatje kunnen zien en niet allerlei geflikker. Neem even als voorbeeld iets simpels als het opdoen van een mondkapje. Een actuele kwestie. Kijk maar eens hoeveel weerstand dat oproept.
Je moet het helemaal zelf weten hoor als jij met knipperende afbeeldingen aan de slag wil, maar ik denk dat je bezoekers er allesbehalve vrolijk van worden. Heb je ooit zelf ergens zulke knipperende afbeeldingen gezien? Het antwoord op die vraag zegt denk ik genoeg en doet hopelijk een belletje rinkelen.
Ozzie PHP op 05/08/2020 17:37:41:
Er is zeker een balans die in de gaten gehouden moet worden, namelijk: hoe waardevol is de afbeelding ten opzichte van de mate van flikkering... jouw 'middel' is erger dan de kwaal.
Ik denk dat de waarde van de foto's wel enig geanimeerde ruis rechtvaardigt, anders blijven bezoekers/bots maar fijn weg van mijn site en foto's. Maar als het goed is kwamen ze juist naar de site om de foto's te kunnen zien. Ik wil niet weer achteraf blijven zitten met het geklooi dat ik bijvoorbeeld per url (!) op een social media site moet aangeven welke foto van mij is. Alsof ik daar zin en tijd voor heb. Soms moet je respect gewoon afdwingen.
En dat doe je niet door een foto te laten flikkeren.
>> anders blijven bezoekers/bots maar fijn weg van mijn site en foto's.
Je kunt de foto's in dat geval ook gewoon niet plaatsen? Kan ook niemand ze jatten.
Jammer dat je niet openstaat voor wat anderen zeggen. Zet er gewoon een watermerk in. Dat kan heel subtiel en mensen zijn daar aan gewend. Met knipperende foto's jaag je iedereen weg. Maar goed, doe wat je zelf leuk vindt zou ik zeggen. Mijn menning weet je in ieder geval.
Het hele idee van licht knipperen is dat dat juist subtieler moet zijn dan een watermerk, maar bij het maken van een screenshot veel duidelijker aanwezig. Het zou juist het tegenovergestelde moeten doen van mensen wegjagen, terwijl tegelijkertijd misbruik beter wordt tegengegaan. En ik ben de beroerdste niet, als iemand een foto wil hebben op A1-formaat valt er best wat te regelen, maar dan gaat het in ieder geval niet achter de rug om van degene die al het werk in de foto heeft zitten, want dat is juist waarvoor ik de vraag stelde.
Het is mij niet te doen om een algehele oplossing voor alle foto's van iedereen.
Is het geen mogelijkheid om mensen in te laten loggen alvorens ze de afbeeldingen kunnen zien?