All Projects → SouthbankSoftware → proofable-image

SouthbankSoftware / proofable-image

Licence: AGPL-3.0 license
Build trust into your image by creating a blockchain certificate for it

Programming Languages

go
31211 projects - #10 most used programming language
Makefile
30231 projects
shell
77523 projects
powershell
5483 projects
Dockerfile
14818 projects

Projects that are alternatives of or similar to proofable-image

Cryptominisat
An advanced SAT solver
Stars: ✭ 502 (+2852.94%)
Mutual labels:  proof, verification
Immudb
immudb - world’s fastest immutable database, built on a zero trust model
Stars: ✭ 3,743 (+21917.65%)
Mutual labels:  verification, merkle-tree
BTCert
BTCert authenticates academic certificates by means of a digital credential that allows immediate verification by third parties. BTCerts uses blockchain and cryptographic techniques to create a certification infrastructure based on the standard Blockcerts
Stars: ✭ 21 (+23.53%)
Mutual labels:  certificate, merkle-tree
Merkle Patricia Tree
Project is in active development and has been moved to the EthereumJS VM monorepo.
Stars: ✭ 277 (+1529.41%)
Mutual labels:  proof, merkle-tree
Hashapi Lib Node
Tierion Hash API client library for Node.js
Stars: ✭ 20 (+17.65%)
Mutual labels:  proof, merkle-tree
CTjs
CTjs is a full set of classes necessary to work with any kind of Certificate Transparency log (V1 as from RFC6962, or V2 as from RFC6962-bis). In CTjs you could find all necessary validation/verification functions for all related data shipped with full-featured examples showning how to validate/verify. Also in scope of CTjs I made code showing e…
Stars: ✭ 2 (-88.24%)
Mutual labels:  certificate, merkle-tree
efm-certvalidator
Certificate validator for X.509 certificates.
Stars: ✭ 25 (+47.06%)
Mutual labels:  certificate, trust
hydrotools
Suite of tools for retrieving USGS NWIS observations and evaluating National Water Model (NWM) data.
Stars: ✭ 36 (+111.76%)
Mutual labels:  verification
LPL-solutions
Solutions for the book "Language Proof and Logic".
Stars: ✭ 51 (+200%)
Mutual labels:  proof
user-registration-codeigniter
PHP based user registration system. Built using CodeIgniter and Bootstrap. Has token based verification, password reset functionality, login page, register page and more.
Stars: ✭ 61 (+258.82%)
Mutual labels:  verification
serval-sosp19
This repo contains the artifact for our SOSP'19 paper on Serval
Stars: ✭ 26 (+52.94%)
Mutual labels:  verification
iOS Development Certificates
📱🛠 iOS Development Certificates
Stars: ✭ 84 (+394.12%)
Mutual labels:  certificate
letsencrypt-fast
The fastest way to test/generate/renew Let's Encrypt SSL certificates!!! Requires root access and a live webserver to run the script at.
Stars: ✭ 25 (+47.06%)
Mutual labels:  certificate
pki-manager
IT Freelancers : Manage small PKI for multiple projects (or clients) with 2 bash scripts
Stars: ✭ 36 (+111.76%)
Mutual labels:  certificate
drupal 8 unset html head link
🤖 Module for unset any wrong HTML links (like rel="delete-form", rel="edit-form", etc.) from head on Drupal 8.x websites. This is trust way to grow up position in SERP Google, Yandex, etc.
Stars: ✭ 19 (+11.76%)
Mutual labels:  trust
cogito
Cogito Identity Management https://cogito.mobi
Stars: ✭ 14 (-17.65%)
Mutual labels:  trust
async fifo
A dual clock asynchronous FIFO written in verilog, tested with Icarus Verilog
Stars: ✭ 117 (+588.24%)
Mutual labels:  verification
verif
Software for verifying weather forecasts
Stars: ✭ 70 (+311.76%)
Mutual labels:  verification
docker-mkcert
Docker container for creating valid local ssl certificates
Stars: ✭ 87 (+411.76%)
Mutual labels:  verification
naacl2018-fever
Fact Extraction and VERification baseline published in NAACL2018
Stars: ✭ 109 (+541.18%)
Mutual labels:  verification

Proofable Image

Proofable Image Screenshot

ProofableImage builds trust into your image by creating a blockchain certificate for it. The image certificate can not only prove the image as a whole but also prove the pixel boxes and the metadata inside it. For more details, please read through this Medium post.

If you want to prove your file system, please try out the Proofable CLI.

If you want to build trust into your own application, please check out the Proofable Framework.

Installation

Download a prebuilt binary

Following these steps to install the latest prebuilt binary into your current working directory, which is recommended.

For macOS and Linux users

Copy, paste and run the following bash command in a macOS Terminal:

bash -c "$(eval "$(if [[ $(command -v curl) ]]; then echo "curl -fsSL"; else echo "wget -qO-"; fi) https://raw.githubusercontent.com/SouthbankSoftware/proofable-image/master/install.sh")"

For Windows users

Copy, paste and run the following PowerShell command in a PowerShell prompt:

& ([ScriptBlock]::Create((New-Object Net.WebClient).DownloadString('https://raw.githubusercontent.com/SouthbankSoftware/proofable-image/master/install.ps1')))

Build your own binary

Install a global binary using go get:

GO111MODULE=on go get github.com/SouthbankSoftware/proofable-image

Or clone this repo and build one:

  1. follow the installation steps from Gio to setup the building environment

  2. build the binary from source:

    git clone https://github.com/SouthbankSoftware/proofable-image.git
    cd proofable-image
    make

Usage

When using ProofableImage for the first time, you will be asked to sign up/in to ProvenDB with your Google, Github, Facebook, or email account, so a free access token can be generated and saved locally for you. Then ProofableImage can pick up the token to access the Proofable API service in subsequent interactions.

./proofable-image path/to/your/image.png

This will create an image certificate at path/to/your/image.png.imgcert if it doesn't exist yet, and verify the image against it. Then an image viewer will pop up to show any tampering. You can use the option -imgcert-path to test the certificate on another image:

./proofable-image -imgcert-path=path/to/your/image.png.imgcert path/to/another/image.png

For all available options, please use:

./proofable-image -h

FAQ

Linux error: eglChooseConfig failed: 0x0

If you encounter this error in Linux, please make sure your graphics driver support OpenGL 3, which is required by the Gio. For example, the Linux installed in a Parallels Desktop VM only supports OpenGL 2 because of the limitation of the graphics driver provided by Parallels. By disabling the 3D acceleration, the Linux can then use the mesa-based software rendering instead, so OpenGL 3 APIs can be supported and ProofableImage can work as expected.

Development

Publish new binaries

  1. make build-all
  2. make archive
  3. Create a GitHub release with the new version tag and binaires
  4. Update the versions in both install.sh and install.ps1
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].