On Discord, we share photoshopped images as jokes sometimes, and we thought it would be cool to determine if the images are modified or not.
PhotoSafe allows you to tag an image with a virtual signature. This signature is linked to you and the current image. If the image is changed, the signature is invalid. No one else can sign for you. PhotoSafe allows you to verify your ownership and check if your image has been modified since you've uploaded it. Also, PhotoSafe allows you to check if an image that has been sent to you is actually the original, unmodified image.
We built this project using python flask and HTML/CSS for the frontend. We also used OpenSSL to convert certificates and we used an RSA module to sign and verify images,.
We had some issues at the beginning with the certificate and making sure the signature was reliable.
We learned a lot about the digital signing and the signature process and converting between different types of certificates.
In the future, we plan to elaborate on the documentation because part of the design goal was that you one shouldn't need to be the issuer of an image to verify it as the original. It would be more flexible if someone who did not sign it would still be able to verify it.