https://github.com/rpj/poo-attest
Proof-of-Ownership attestation tool via commitment schemes
https://github.com/rpj/poo-attest
commitment-schemes cryptography ownership
Last synced: 2 months ago
JSON representation
Proof-of-Ownership attestation tool via commitment schemes
- Host: GitHub
- URL: https://github.com/rpj/poo-attest
- Owner: rpj
- Created: 2022-01-16T01:45:29.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2023-03-07T02:36:13.000Z (over 2 years ago)
- Last Synced: 2025-02-04T17:51:00.036Z (4 months ago)
- Topics: commitment-schemes, cryptography, ownership
- Language: JavaScript
- Homepage:
- Size: 286 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
Create proof-of-ownership attestations via a [commitment scheme](https://en.wikipedia.org/wiki/Commitment_scheme).
As an illustration we'll create the attestation for this repository itself:
```shell
$ ./attest --name="Ryan Joseph" --email="[email protected]" --desc="poo-attest" --domain="https://github.com/rpj/poo-attest" --home="https://github.com/rpj/poo-attest"
SHA256 331823878b420ad85e0240483f5b6c44327a5b14ef6ef0911c326999e6f882d4
Wrote "/home/ryan/repos-native/poo-attest/331823878b420ad85e0240483f5b6c44327a5b14ef6ef0911c326999e6f882d4_SHA256.txt"
```The resuling hash - `331823878b420ad85e0240483f5b6c44327a5b14ef6ef0911c326999e6f882d4` - is the _revealable_ information.
The generated output file is _the commitment_ and must be kept secret until proof-of-ownership is required.
In this case, as we want to illustrate the end-to-end process, we'll reveal [it immediately](./331823878b420ad85e0240483f5b6c44327a5b14ef6ef0911c326999e6f882d4_SHA256.txt):
```shell
$ cat 331823878b420ad85e0240483f5b6c44327a5b14ef6ef0911c326999e6f882d4_SHA256.txt
This document serves to provide proof that Ryan Joseph is the owner of "poo-attest" at https://github.com/rpj/poo-attest.
This attestation is made 1/15/2022, 8:23:18 PM (America/Los_Angeles), and will be housed in perpetuity at/under https://github.com/rpj/poo-attest.xrb4JpZhu1pTb2TX+ucYqX0cp/7bfC6z+LmZ/8ZQfwKO86NhDHJvjgXS0m7k9hLF08zLRlG1cHYOPpdwv9G10nA7OVu43JfXAJP1aiRm9gXTN9Bo7CCP/V+B
H7cHAblXw+Wn7tzleETLqlhh2PLqv2p1xzP2hTN9jyJvS/CPKPsBo+0sO+ueMyU4qV53s3afkBA+BIcCQt3tPy5mV7izPYb6rwIPyAGLDBVhkDFVICUTkshh
vON9XGDQU/ctytXx1tGC9bf5or/nYE2XfXD4pVPdYpi+21hoIQeIdLuEHQMYLpb+RBHzF3zX9UWOmoWYrgBHd6H640/GYNcdGemOWXpJoJBoF/4apliidc6H
R5VEBfcV4wwYGnr45Z2Y12nKfnGG+j+iAs0O0XahBpsB+P/+Gt049FXUnK1cMSf2h19EopICokslbT1hrKQxJV0F5VxIIOYyHG600NA+lS0qMq12quTSZdqq
jZJ9Ag95b0sYt6aN1FI7ffrME+x0lDoz6IWtTC5vaBdihiuZMhnhkQlnu/hQMVThEkwDO0fjfrQunGiXl7KUj1a18zxJotH0Lr6m8QKRpP83+rlIdKQKEeTa
b7t8h4tYQLux+7Z9GSbwEhglKopkuxGraR5iCWxXmZvCGqFQGQfEpYMwOChpVnNtEN7JRQrMr981odNvTMg=Generated by poo-attest 1.0.3, source file SHA256: b99d12900f46fd17d5726818e1d00189629454e65647b7db9b05d553d3693d23
```In order to verify ownership, the hash of the commitment is recalculated with the appropriate algorithm:
```shell
$ cat 331823878b420ad85e0240483f5b6c44327a5b14ef6ef0911c326999e6f882d4_SHA256.txt | shasum -a 256 -
331823878b420ad85e0240483f5b6c44327a5b14ef6ef0911c326999e6f882d4 -
```Importantly, we produce the matching result: `331823878b420ad85e0240483f5b6c44327a5b14ef6ef0911c326999e6f882d4`.