Images have been used to hide secret messages using a process called Steganography.
Have you ever watched a spy movie where the operative goes to a profile and using the picture there, extracts a secret message? This is called steganography, concealing information inside something else.
While there are many ways to accomplish this, one of the most used is exploiting the least significant bits of an image which allows a message to be embedded without any perceptible changes visible to the human eye.
Steganography comes with its own set of limitations, for example you need a large image file and there is software available that can scan images to detect the concealment.
Instead of hiding messages inside an image, steganography, an image can be used as the encryption key. The image itself is not changed in any way so it has no secrets to exploit and it can be much smaller, even icons can work.
In PHP programming Language, you can do it, one github project can be found: