I am not sure of any other way to give each client their digital copy right away while still at the event.

I have been hired to do several events next month. I will be photographing a hundred or so people at each. I would like a way to have each photo available online at whatever site this will work with. The catch is... I need each photo to link to each individual client (I can provide them with a card with a number or bar code) that the client can then go to said website, punch in the number I gave them and password. Then they can only see that one photo, rather than all photos. I would also need this operation to happen quickly; ideally, I can pause every 10 min and upload them to the site.

I will be tethered to a computer and should have internet access at the event.

  • \$\begingroup\$ Is "use physical media, low capacity SD cards or USB sticks should be available dirt cheap" out of the question here? \$\endgroup\$ Sep 26, 2019 at 16:29
  • \$\begingroup\$ It is easy to give a picture a random name (say, its MD5 hash), and prevent access to the "raw" directory, so people only have access to pictures for which they have been given the hash or URL. It is also not difficult to generate a QR code from the URL. \$\endgroup\$
    – xenoid
    Sep 26, 2019 at 16:31

3 Answers 3


Most image portfolio services (eg Adobe Portfolio, many others) do support an arbitrary number of galleries, each with their own URL and protected with their own password. While slightly inconvenient, setting up one small gallery per client would work.

Also, consider simply buying USB sticks or SD cards in cheap bulk, giving everyone their files on their physical medium and basta.

  • 2
    \$\begingroup\$ consider simply buying USB sticks or SD cards in cheap bulk, giving everyone their files on their physical medium and basta No, discarded electronics are becoming a major environmental issue. And there are people with no SD cards reader/USB socket on their usual machine. \$\endgroup\$
    – xenoid
    Sep 27, 2019 at 0:50

You could prepare the cards with the QR in advanced.

Depending on the knowledge you have in handling web hosting services there are some options.

  1. A randomized link.

Let's take for example this initial code DateEvent+SequentialNumber+RandomString

1521.jpg to 2020-01-01+058-4BTISt77SCg1DlnzfQdc

  1. And generate a QR from it


  1. You can identify the card looking at it, and read the photo number from your camera, and upload the photo with that name, on your server. Make sure your server does not show the directory listing

  2. You can switch SD cards with an assistant, or send a jpg file using Wifi.

  3. Give some expiration date, let's say one week after the event, so the files are not there for all eternity.

A bit more complex would be randomizing the name itself with some encryption method, making directories/username/password and uploading, making yourself an application that also generates the QR... but that depends on your knowledge.


Beware fancy QR generators, because normally they send you to their website first and then redirect you, making the QR dependant to them. These two (As far as I tested them) generate a direct link QR.

I have used the first one for some years and the QR is clean. The second looks nicer but I have not used it extensively, just tested it.

QR generators

If you include the date on the card, they will be useless if not used.

As an alternative, you would need to relink the random card to the number of the photo itself. You could take a picture of the person holding the card you provide them.


Another option would be to create a zip file of each photo with a different password. Pretty much any program that makes zip files has an option for adding password protection to it. It would be somewhat laborious.

You could use a smaller, resized version of the image as the index on the website, and then link it to the zip so that it downloads when they click on the image. If they have the password, they can uncompress the full size image.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.