├── .editorconfig
├── .github
├── CODEOWNERS
└── workflows
│ ├── archive.yml
│ ├── ghpages.yml
│ ├── publish.yml
│ └── update.yml
├── .gitignore
├── .note.xml
├── LICENSE
├── Makefile
├── README.md
├── agenda.md
├── draft-bbs-signatures.html
├── draft-blind-bbs-signatures.md
├── draft-irtf-cfrg-bbs-signatures.md
├── meetings
├── 2021-01-24
│ └── agenda.md
├── 2021-08-13
│ └── agenda.md
├── 2021-08-27
│ └── agenda.md
├── 2021-11-15
│ └── agenda.md
├── 2022-01-10
│ └── agenda.md
├── 2022-02-08
│ └── agenda.md
├── 2022-02-21
│ └── agenda.md
├── 2022-03-07
│ └── agenda.md
├── 2022-03-21
│ └── agenda.md
├── 2022-04-05
│ └── agenda.md
├── 2022-04-18
│ └── agenda.md
├── 2022-05-02
│ └── agenda.md
├── 2022-05-09
│ └── agenda.md
├── 2022-05-16
│ └── agenda.md
├── 2022-05-23
│ └── agenda.md
├── 2022-05-30
│ └── agenda.md
├── 2022-06-06
│ └── agenda.md
├── 2022-06-13
│ └── agenda.md
├── 2022-06-20
│ └── agenda.md
├── 2022-06-27
│ └── agenda.md
├── 2022-07-04
│ └── agenda.md
├── 2022-07-11
│ └── agenda.md
├── 2022-08-08
│ └── agenda.md
├── 2022-08-15
│ └── agenda.md
└── 2022-08-22
│ └── agenda.md
└── tooling
├── fixtures
├── fetchFixtures.ts
├── fixture_data
│ ├── bls12-381-sha-256
│ │ ├── MapMessageToScalarAsHash.json
│ │ ├── generators.json
│ │ ├── h2s.json
│ │ ├── keypair.json
│ │ ├── mockedRng.json
│ │ ├── proof
│ │ │ ├── proof001.json
│ │ │ ├── proof002.json
│ │ │ ├── proof003.json
│ │ │ ├── proof004.json
│ │ │ ├── proof005.json
│ │ │ ├── proof006.json
│ │ │ ├── proof007.json
│ │ │ ├── proof008.json
│ │ │ ├── proof009.json
│ │ │ ├── proof010.json
│ │ │ ├── proof011.json
│ │ │ ├── proof012.json
│ │ │ ├── proof013.json
│ │ │ ├── proof014.json
│ │ │ └── proof015.json
│ │ └── signature
│ │ │ ├── signature001.json
│ │ │ ├── signature002.json
│ │ │ ├── signature003.json
│ │ │ ├── signature004.json
│ │ │ ├── signature005.json
│ │ │ ├── signature006.json
│ │ │ ├── signature007.json
│ │ │ ├── signature008.json
│ │ │ ├── signature009.json
│ │ │ └── signature010.json
│ ├── bls12-381-shake-256
│ │ ├── MapMessageToScalarAsHash.json
│ │ ├── generators.json
│ │ ├── h2s.json
│ │ ├── keypair.json
│ │ ├── mockedRng.json
│ │ ├── proof
│ │ │ ├── proof001.json
│ │ │ ├── proof002.json
│ │ │ ├── proof003.json
│ │ │ ├── proof004.json
│ │ │ ├── proof005.json
│ │ │ ├── proof006.json
│ │ │ ├── proof007.json
│ │ │ ├── proof008.json
│ │ │ ├── proof009.json
│ │ │ ├── proof010.json
│ │ │ ├── proof011.json
│ │ │ ├── proof012.json
│ │ │ ├── proof013.json
│ │ │ ├── proof014.json
│ │ │ └── proof015.json
│ │ └── signature
│ │ │ ├── signature001.json
│ │ │ ├── signature002.json
│ │ │ ├── signature003.json
│ │ │ ├── signature004.json
│ │ │ ├── signature005.json
│ │ │ ├── signature006.json
│ │ │ ├── signature007.json
│ │ │ ├── signature008.json
│ │ │ ├── signature009.json
│ │ │ └── signature010.json
│ └── messages.json
├── index.ts
├── package.json
├── tsconfig.json
└── yarn.lock
├── keygen
├── .gitignore
├── Cargo.toml
├── README.md
└── src
│ └── main.rs
└── message-generators
├── .gitignore
├── Cargo.toml
├── README.md
├── rust-toolchain
└── src
├── ciphersuites.rs
└── main.rs
/.editorconfig:
--------------------------------------------------------------------------------
1 | # See http://editorconfig.org
2 |
3 | root = true
4 |
5 | [*.{md,xml,org}]
6 | charset = utf-8
7 | insert_final_newline = true
8 | trim_trailing_whitespace = true
9 |
--------------------------------------------------------------------------------
/.github/CODEOWNERS:
--------------------------------------------------------------------------------
1 | * @mikelodder7
2 | * @tplooker
3 | * @andrewwhitehead
4 | * @BasileiosKal
--------------------------------------------------------------------------------
/.github/workflows/archive.yml:
--------------------------------------------------------------------------------
1 | name: "Archive Issues and Pull Requests"
2 |
3 | on:
4 | schedule:
5 | - cron: "0 0 * * 0,2,4"
6 | repository_dispatch:
7 | types: [archive]
8 | workflow_dispatch:
9 |
10 | jobs:
11 | build:
12 | name: "Archive Issues and Pull Requests"
13 | runs-on: ubuntu-latest
14 | steps:
15 | - name: "Checkout"
16 | uses: actions/checkout@v4
17 |
18 | - name: "Update Archive"
19 | uses: martinthomson/i-d-template@v1
20 | with:
21 | make: archive
22 | token: ${{ github.token }}
23 |
24 | - name: "Update GitHub Pages"
25 | uses: martinthomson/i-d-template@v1
26 | with:
27 | make: gh-archive
28 | token: ${{ github.token }}
29 |
30 | - name: "Save Archive"
31 | uses: actions/upload-artifact@v4
32 | with:
33 | name: archive
34 | path: archive.json
35 |
--------------------------------------------------------------------------------
/.github/workflows/ghpages.yml:
--------------------------------------------------------------------------------
1 | name: "Update Editor's Copy"
2 |
3 | on:
4 | push:
5 | paths-ignore:
6 | - README.md
7 | - CONTRIBUTING.md
8 | - LICENSE.md
9 | - .gitignore
10 | pull_request:
11 | paths-ignore:
12 | - README.md
13 | - CONTRIBUTING.md
14 | - LICENSE.md
15 | - .gitignore
16 |
17 | jobs:
18 | build:
19 | name: "Update Editor's Copy"
20 | runs-on: ubuntu-latest
21 | steps:
22 | - name: "Checkout"
23 | uses: actions/checkout@v4
24 |
25 | # Temporarily disabled until the tool is updated to the latest spec
26 | # - name: "Install and build message generator CLI"
27 | # run: cargo build
28 | # working-directory: ./tooling/message-generators
29 |
30 | # - name: "Update the message generators in the fixtures folder"
31 | # run: ./target/debug/bbs-signature-generator-demo -o file ../fixtures/generators.json
32 | # working-directory: ./tooling/message-generators
33 |
34 | - name: "Install yarn dependencies"
35 | run: yarn install --frozen-lockfile
36 | working-directory: ./tooling/fixtures
37 |
38 | - name: "Populate fixtures Yarn"
39 | run: yarn populate-fixtures
40 | working-directory: ./tooling/fixtures
41 |
42 | - name: "Cache Setup"
43 | id: cache-setup
44 | run: |
45 | mkdir -p "$HOME"/.cache/xml2rfc
46 | echo "::set-output name=path::$HOME/.cache/xml2rfc"
47 | date -u "+::set-output name=date::%FT%T"
48 |
49 | - name: "Cache References"
50 | uses: actions/cache@v4
51 | with:
52 | path: |
53 | ${{ steps.cache-setup.outputs.path }}
54 | .targets.mk
55 | key: refcache-${{ steps.cache-setup.outputs.date }}
56 | restore-keys: |
57 | refcache-${{ steps.cache-setup.outputs.date }}
58 | refcache-
59 |
60 | - name: "Build Drafts"
61 | uses: martinthomson/i-d-template@v1
62 | with:
63 | token: ${{ github.token }}
64 |
65 | - name: "Update GitHub Pages"
66 | uses: martinthomson/i-d-template@v1
67 | if: (github.event_name == 'push' && github.ref == 'refs/heads/main')
68 | with:
69 | make: gh-pages
70 | token: ${{ github.token }}
71 |
72 | - name: "Archive Built Drafts"
73 | uses: actions/upload-artifact@v4
74 | with:
75 | name: drafts
76 | path: |
77 | draft-*.html
78 | draft-*.txt
79 |
--------------------------------------------------------------------------------
/.github/workflows/publish.yml:
--------------------------------------------------------------------------------
1 | name: "Publish New Draft Version"
2 |
3 | on:
4 | push:
5 | tags:
6 | - "draft-*"
7 |
8 | jobs:
9 | build:
10 | name: "Publish New Draft Version"
11 | runs-on: ubuntu-latest
12 | steps:
13 | - name: "Checkout"
14 | uses: actions/checkout@v4
15 |
16 | # See https://github.com/actions/checkout/issues/290
17 | - name: "Get Tag Annotations"
18 | run: git fetch -f origin ${{ github.ref }}:${{ github.ref }}
19 |
20 | # Temporarily disabled until the tool is updated to the latest spec
21 | # - name: "Install and build message generator CLI"
22 | # run: cargo build
23 | # working-directory: ./tooling/message-generators
24 |
25 | # - name: "Update the message generators in the fixtures folder"
26 | # run: ./target/debug/bbs-signature-generator-demo -o file ../fixtures/generators.json
27 | # working-directory: ./tooling/message-generators
28 |
29 | - name: "Install yarn dependencies"
30 | run: yarn install --frozen-lockfile
31 | working-directory: ./tooling/fixtures
32 |
33 | - name: "Populate fixtures Yarn"
34 | run: yarn populate-fixtures
35 | working-directory: ./tooling/fixtures
36 |
37 | - name: "Cache Setup"
38 | id: cache-setup
39 | run: |
40 | mkdir -p "$HOME"/.cache/xml2rfc
41 | echo "::set-output name=path::$HOME/.cache/xml2rfc"
42 | date -u "+::set-output name=date::%FT%T"
43 |
44 | - name: "Cache References"
45 | uses: actions/cache@v4
46 | with:
47 | path: |
48 | ${{ steps.cache-setup.outputs.path }}
49 | .targets.mk
50 | key: refcache-${{ steps.date.outputs.date }}
51 | restore-keys: |
52 | refcache-${{ steps.date.outputs.date }}
53 | refcache-
54 | - name: "Build Drafts"
55 | uses: martinthomson/i-d-template@v1
56 | with:
57 | token: ${{ github.token }}
58 |
59 | # Build the draft with the test vectors included.
60 | #
61 | # NOTE: this is a "hack" to go around uploaded draft not containing fixtures
62 | #
63 | # Use "make next" to build the draft w/ fixtures and the tag
64 | # to give it the correct name. Later, "make upload" will use
65 | # that instead of building a new one from the tagged draft
66 | # (which does not contain the test vectors)
67 | - name: "Create Draft w/ Fixtures"
68 | uses: martinthomson/i-d-template@v1
69 | with:
70 | make: next
71 |
72 | - name: "Re-name File with Correct Version"
73 | run: |
74 | sudo mv -v $(basename draft-irtf-cfrg-*-[0-9][0-9].xml) ${{ github.ref_name }}.xml
75 | ls .
76 | working-directory: ./versioned
77 |
78 | - name: "Upload to Datatracker"
79 | uses: martinthomson/i-d-template@v1
80 | with:
81 | make: upload
82 |
83 | - name: "Archive Submitted Drafts"
84 | uses: actions/upload-artifact@v4
85 | with:
86 | name: published-draft
87 | path: "draft-*-[0-9][0-9].xml"
88 |
--------------------------------------------------------------------------------
/.github/workflows/update.yml:
--------------------------------------------------------------------------------
1 | name: "Update generated files"
2 | # This rule is not run automatically.
3 | # It can be run manually to update all of the files that are part
4 | # of the template, specifically:
5 | # - README.md
6 | # - CONTRIBUTING.md
7 | # - .note.xml
8 | # - .github/CODEOWNERS
9 | # - Makefile
10 | #
11 | #
12 | # This might be useful if you have:
13 | # - added, removed, or renamed drafts (including after adoption)
14 | # - added, removed, or changed draft editors
15 | # - changed the title of drafts
16 | #
17 | # Note that this removes any customizations you have made to
18 | # the affected files.
19 | on: workflow_dispatch
20 |
21 | jobs:
22 | build:
23 | name: "Update files"
24 | runs-on: ubuntu-latest
25 | steps:
26 | - name: "Checkout"
27 | uses: actions/checkout@v4
28 |
29 | - name: "Update generated files"
30 | uses: martinthomson/i-d-template@v1
31 | with:
32 | make: update-files
33 | token: ${{ github.token }}
34 |
35 | - name: "Push Update"
36 | run: git push
37 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | *.pdf
2 | *.redxml
3 | *.swp
4 | *.txt
5 | *.upload
6 | *~
7 | .refcache
8 | .tags
9 | .targets.mk
10 | /*-[0-9][0-9].xml
11 | archive.json
12 | draft-irtf-cfrg-bbs-signatures.xml
13 | lib
14 | report.xml
15 | venv/
16 | **/node_modules
17 | /versioned/
18 | *.DS_Store
19 |
--------------------------------------------------------------------------------
/.note.xml:
--------------------------------------------------------------------------------
1 |
2 | Source for this draft and an issue tracker can be found at
3 | .
4 |
5 |
--------------------------------------------------------------------------------
/Makefile:
--------------------------------------------------------------------------------
1 | LIBDIR := lib
2 | include $(LIBDIR)/main.mk
3 |
4 | $(LIBDIR)/main.mk:
5 | ifneq (,$(shell grep "path *= *$(LIBDIR)" .gitmodules 2>/dev/null))
6 | git submodule sync
7 | git submodule update $(CLONE_ARGS) --init
8 | else
9 | git clone -q --depth 10 $(CLONE_ARGS) \
10 | -b main https://github.com/martinthomson/i-d-template $(LIBDIR)
11 | endif
12 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # The BBS Signature Scheme
2 |
3 | This repository is home to multiple internet drafts around the BBS Signature scheme, detailed below:
4 |
5 | ## BBS Signature Scheme (Core Draft)
6 |
7 | This draft defines the core operations, cryptographic structures and overall protocol for the BBS Signature scheme
8 |
9 | * [Latest Draft](https://decentralized-identity.github.io/bbs-signature/#go.draft-irtf-cfrg-bbs-signatures.html)
10 | * [Compare Drafts](https://decentralized-identity.github.io/bbs-signature)
11 |
12 | ## Blind Sign BBS Signature Scheme Extension
13 |
14 | This draft defines an extension to core draft enabling the ability for blind bbs signatures, including describing the required operations, cryptographic structures and sub-protocol.
15 |
16 | * [Latest Draft](https://decentralized-identity.github.io/bbs-signature/#go.draft-blind-bbs-signatures.html)
17 | * [Compare Drafts](https://decentralized-identity.github.io/bbs-signature)
18 |
19 | ## Meetings
20 |
21 | Regular meetings are held bi-weekly on Mondays, on the same weeks as the Applied Crypto Working Group call is held.
22 |
23 | - [Meeting details](https://calendar.google.com/calendar/event?eid=NXJ2Z29jaGJwcTlraXZnbGNxOHZudWc4YXRfMjAyMTEwMDRUMTgwMDAwWiBkZWNlbnRyYWxpemVkLmlkZW50aXR5QG0)
24 | - [Direct Zoom link](https://us02web.zoom.us/j/87409761657?pwd=SXVSUGtVQXUyYzdxbnVvQkNJcXdGQT09)
25 |
26 | Meeting agendas and minutes can be found in [/meetings](https://github.com/decentralized-identity/bbs-signature/tree/main/meetings), the next up and coming meetings agenda can be found in [here](agenda.md).
27 |
28 | ## Tooling
29 |
30 | To assist the development of the specification a set of tooling is co-located in this repository and can be found [here](https://github.com/decentralized-identity/bbs-signature/tree/main/tooling).
31 |
32 | ### Generating the output documents
33 |
34 | The text and HTML versions of the specifications can be generated by running `make`; this requires having the [xml2rfc](https://xml2rfc.tools.ietf.org/) and [mmark](https://github.com/mmarkdown/mmark) packages installed.
35 |
--------------------------------------------------------------------------------
/agenda.md:
--------------------------------------------------------------------------------
1 | # DIF Applied Cryptography BBS Signature Work Item – Rolling Agenda & Minutes
2 |
3 | [](https://hackmd.io/gM7CE-Q-S5CPoSEIg086Kw)
4 |
5 |
6 | [WG projects](https://github.com/topics/wg-crypto) | [DIF page](https://identity.foundation/working-groups/crypto.html) | [Recordings](https://docs.google.com/spreadsheets/d/1wgccmMvIImx30qVE9GhRKWWv3vmL2ZyUauuKx3IfRmA/edit#gid=339046779)
7 |
8 |
9 | Meeting information - 6pm UTC every-other Monday
10 |
11 | - Before your contribute - [**join DIF**](https://identity.foundation/join) and [sign the WG charter](https://bit.ly/DIF-WG-select1) (both are required!)
12 | - Time: 6pm UTC, 2pm EDT, 11am PDT
13 | - [Zoom room](https://us02web.zoom.us/j/81664389075?pwd=QXVRK0tVZmdsUmVMREdsK21TR2xGZz09), Meeting ID: 843 0611 0644 , Password: 799969
14 |
15 |
16 | ## Meeting Template
17 | - PR review
18 | - Issue Review
19 | - Additional Topics
20 |
21 | ## Meeting - Monday 15th August 2022 - (6pm UTC)
22 |
23 | ### Chair
24 |
25 | Tobias Looker
26 |
27 | ### Agenda
28 |
29 | - IPR reminder, and Introductions
30 | - Agenda bashing
31 | - Other items
32 | - PR review
33 | - Issue Review
34 |
35 | ### Attendees
36 |
37 | ### Notes
38 |
39 | ## Previous Meetings
40 |
41 | - [8th August 2022](./meetings/2022-08-08/agenda.md)
42 | - [11th July 2022](./meetings/2022-07-11/agenda.md)
43 | - [4th July 2022](./meetings/2022-07-04/agenda.md)
44 | - [27th June 2022](./meetings/2022-06-27/agenda.md)
45 | - [20th June 2022](./meetings/2022-06-20/agenda.md)
46 | - [13th June 2022](./meetings/2022-06-13/agenda.md)
47 | - [6th June 2022](./meetings/2022-06-06/agenda.md)
48 | - [30th May 2022](./meetings/2022-05-23/agenda.md)
49 | - [23rd May 2022](./meetings/2022-05-23/agenda.md)
50 | - [16th May 2022](./meetings/2022-05-16/agenda.md)
51 | - [9th May 2022](./meetings/2022-05-09/agenda.md)
52 | - [2nd May 2022](./meetings/2022-05-02/agenda.md)
53 | - [18th April 2022](./meetings/2022-04-18/agenda.md)
54 | - [5th April 2022](./meetings/2022-04-05/agenda.md)
55 | - [21st March 2022](./meetings/2022-03-21/agenda.md)
56 | - [7th March 2022](./meetings/2022-03-07/agenda.md)
57 | - [21st February 2022](./meetings/2022-02-21/agenda.md)
58 | - [2nd February 2022](./meetings/2022-02-08/agenda.md)
59 | - [24th January 2022](./meetings/2022-01-24/agenda.md)
60 | - [10th January 2022](./meetings/2022-01-01/agenda.md)
61 | - [15th November 2021](./meetings/2021-11-15/agenda.md)
62 | - [27th September 2021](./meetings/2021-08-27/agenda.md)
63 | - [13th September 2021](./meetings/2021-08-13/agenda.md)
64 |
--------------------------------------------------------------------------------
/draft-bbs-signatures.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
6 |
9 |
Redirecting...
10 |
11 | This document has been moved to the
12 | The BBS Signature Scheme.
--------------------------------------------------------------------------------
/meetings/2021-01-24/agenda.md:
--------------------------------------------------------------------------------
1 | ## Meeting - Monday 24th January 2022 - (6pm UTC)
2 |
3 | ### Chair
4 |
5 | Tobias Looker
6 |
7 | ### Agenda
8 |
9 | - IPR reminder, and Introductions
10 | - Annoucments
11 | - Request to present at interoperability WG (DW)
12 | - Agenda bashing
13 | - PR review
14 | - https://github.com/decentralized-identity/bbs-signature/pull/17
15 | - Issue Review
16 | - Data encoding
17 | - Default generators
18 | -
19 |
20 | ### Attendees
21 |
22 | * Jeremie Miller
23 | * Mike Lodder
24 | * Martin Schanzenbach
25 | * Vasileios Kalos
26 | * Brian Ritcher
27 | * Christian Paquin
28 | * David Waite
29 | * Jeremie Miller
30 | * Juan Caballero
31 | * Seth Back
32 | * Tomislav Markovski
33 |
34 | ### Notes
35 |
36 | - Discussed the nonce PR, suggestion is to rename this to presentation message instead to reduce confusion
37 | - Mikes proposal for flexible message encoding (https://hackmd.io/Q587Q9p7T5ab30NTn4MvTA#Data-Encoding)
38 |
--------------------------------------------------------------------------------
/meetings/2021-08-13/agenda.md:
--------------------------------------------------------------------------------
1 | ## Meeting - Monday 13th September 2021 - (6pm UTC)
2 |
3 | ### Chair
4 |
5 | Tobias Looker
6 |
7 | ### Agenda
8 |
9 | - IPR reminder, Agenda Review, and Introductions
10 | - Agenda bashing
11 | - Agree meeting cadence
12 | - Brief review of current draft
13 | - Agree ways of working
14 |
15 | ### Attendees
16 |
17 | - Mike Lodder
18 | - Tobias Looker
19 | - Andrew Whitehead
20 |
21 | ### Notes
22 |
23 | Opened issues
24 | - https://github.com/decentralized-identity/bbs-signature/issues/1
25 | - https://github.com/decentralized-identity/bbs-signature/issues/2
26 | - https://github.com/decentralized-identity/bbs-signature/issues/3
27 | - https://github.com/decentralized-identity/bbs-signature/issues/4
28 | - https://github.com/decentralized-identity/bbs-signature/issues/5
29 | - https://github.com/decentralized-identity/bbs-signature/issues/6
--------------------------------------------------------------------------------
/meetings/2021-08-27/agenda.md:
--------------------------------------------------------------------------------
1 | ## Meeting - Monday 27th September 2021 - (6pm UTC)
2 |
3 | ### Chair
4 |
5 | Tobias Looker
6 |
7 | ### Agenda
8 |
9 | - IPR reminder, Agenda Review, and Introductions
10 | - Agenda bashing
11 | - Formal steps of the BBS methods
12 | - How the `e` and `s` values are calculated for deterministic signatures
13 |
14 | ### Attendees
15 |
16 | - Mike Lodder
17 | - Tobias Looker
18 | - Andrew Whitehead
19 | - Martin
20 |
21 | ### Notes
22 |
23 | Opened issues
24 |
25 | - https://github.com/decentralized-identity/bbs-signature/issues/7
26 | - https://github.com/decentralized-identity/bbs-signature/issues/8
--------------------------------------------------------------------------------
/meetings/2021-11-15/agenda.md:
--------------------------------------------------------------------------------
1 | ## Meeting - Monday 15th November 2021 - (6pm UTC)
2 |
3 | ### Chair
4 |
5 | Tobias Looker
6 |
7 | ### Agenda
8 |
9 | - IPR reminder, Agenda Review, and Introductions
10 | - Agenda bashing
11 | - Issue Review
12 | - PR Review
13 | - Additional Topics
14 |
15 | ### Attendees
16 |
17 | - Tobias Looker
18 | - Vasileios Kalos
19 | - Juan Caballero
20 | - Christian Paquin
21 |
22 | ### Notes
23 |
24 | - PR review - None!
25 | - Issue Review
26 | - #10 - [at a crossroads approach-wise](https://github.com/decentralized-identity/bbs-signature/issues/10#issuecomment-939546272)
27 |
28 | Presentation from Vasileios Kalos on Message Indexes
--------------------------------------------------------------------------------
/meetings/2022-01-10/agenda.md:
--------------------------------------------------------------------------------
1 | ## Meeting - Monday 10th January 2022 - (6pm UTC)
2 |
3 | ### Chair
4 |
5 | Tobias Looker
6 |
7 | ### Agenda
8 |
9 | - IPR reminder, and Introductions
10 | - Agenda bashing
11 | - PR review
12 | - [Checks for the blind message generators and PoK during signing](https://github.com/decentralized-identity/bbs-signature/pull/17)
13 | - [Clarified nonce requirements](https://github.com/decentralized-identity/bbs-signature/pull/21)
14 | - [Add various comments as FIXMEs](https://github.com/decentralized-identity/bbs-signature/pull/22)
15 | - [Check the hash for the challenge of the Fiat-Shamir heuristic](https://github.com/decentralized-identity/bbs-signature/pull/23)
16 | - Issue Review
17 |
18 | ### Attendees
19 |
20 | - Andrew Whitehead
21 | - Tobias Looker
22 | - Vasileios Kalos
23 | - Tomislav Markovski (Trinsic)
24 | - Christian Paquin (MSR)
25 |
26 | ### Notes
27 |
28 | Reviewed the above PR's and associated issues, commentary captured in the discussed issues and PR's
--------------------------------------------------------------------------------
/meetings/2022-02-08/agenda.md:
--------------------------------------------------------------------------------
1 | ## Meeting - Monday 8th February 2022 - (6pm UTC)
2 |
3 | ### Chair
4 |
5 | Tobias Looker
6 |
7 | ### Agenda
8 |
9 | - IPR reminder, and Introductions
10 | - Agenda bashing
11 | - PR review
12 | - Issue Review
13 | - [Supporting deterministic signatures](https://github.com/decentralized-identity/bbs-signature/issues/43)
14 | - [Interop profile for use with BLS12-381](https://github.com/decentralized-identity/bbs-signature/issues/46)
15 | - [Message Generator Creation Method](https://github.com/decentralized-identity/bbs-signature/issues/38)
16 | - [Holder binding](https://github.com/decentralized-identity/bbs-signature/issues/37)
17 | - [Variable and function naming](https://github.com/decentralized-identity/bbs-signature/issues/25)
18 |
19 | ### Attendees
20 |
21 | - Andrew Whitehead
22 | - Vasileios Kalos
23 | - Christian Paquin
24 | - Jeremie Miller
25 | - David Waite
26 | - Mike Lodder
27 |
28 | ### Notes
29 |
30 | Reviewed the above PR's
31 |
--------------------------------------------------------------------------------
/meetings/2022-02-21/agenda.md:
--------------------------------------------------------------------------------
1 | ## Meeting - Monday 21th February 2022 - (6pm UTC)
2 |
3 | ### Chair
4 |
5 | Tobias Looker
6 |
7 | ### Agenda
8 |
9 | - IPR reminder, and Introductions
10 | - Agenda bashing
11 | - PR review
12 | - Issue Review
13 |
14 | ### Attendees
15 | - Jo Vercammen
16 | - Jeremie Miller
17 | - Andrew Whitehead
18 | - Vasileios Kalos
19 |
20 | ### Notes
21 |
22 | Reviewed open issues and PR's
23 |
--------------------------------------------------------------------------------
/meetings/2022-03-07/agenda.md:
--------------------------------------------------------------------------------
1 | ## Meeting - Monday 7th March 2022 - (6pm UTC)
2 |
3 | ### Chair
4 |
5 | Tobias Looker
6 |
7 | ### Agenda
8 |
9 | - IPR reminder, and Introductions
10 | - Agenda bashing
11 | - PR review
12 | - [Add message mapping to scalar](https://github.com/decentralized-identity/bbs-signature/pull/61)
13 | - [Document generator creation procedure](https://github.com/decentralized-identity/bbs-signature/pull/71)
14 | - [Auto create message generators](https://github.com/decentralized-identity/bbs-signature/pull/72)
15 | - Issue Review
16 | - [Adding the revealed messages to the challenge to avoid forgery](https://github.com/decentralized-identity/bbs-signature/issues/74)
17 | - [Deterministic SPK](https://github.com/decentralized-identity/bbs-signature/issues/73)
18 | - [Simpler SpkGen option](https://github.com/decentralized-identity/bbs-signature/issues/70)
19 | - [Named message generators](https://github.com/decentralized-identity/bbs-signature/issues/68)
20 |
21 | ### Attendees
22 |
23 | - David Waite
24 | - Vasileios Kalos
25 | - Christian Paquin
26 | - Andrew Whitehead
27 |
28 | ### Notes
29 |
30 | [Add message mapping to scalar](https://github.com/decentralized-identity/bbs-signature/pull/61)
31 |
32 | - Needs to be extendable
33 | - Mapping procedure tied to a protocol identifier?
34 |
--------------------------------------------------------------------------------
/meetings/2022-03-21/agenda.md:
--------------------------------------------------------------------------------
1 | ## Meeting - Monday 21st March 2022 - (6pm UTC)
2 |
3 | ### Chair
4 |
5 | Tobias Looker
6 |
7 | ### Agenda
8 |
9 | - IPR reminder, and Introductions
10 | - Agenda bashing
11 | - PR review
12 | - [BBS spk security against the issuer](https://github.com/decentralized-identity/bbs-signature/pull/86)
13 | - [Change usages of HASH function to use XOF](https://github.com/decentralized-identity/bbs-signature/pull/84)
14 | - [Add message mapping to scalar](https://github.com/decentralized-identity/bbs-signature/pull/61)
15 | - Issue Review
16 |
17 | ### Attendees
18 |
19 | - Christian Paquin (MSR)
20 | - Seth Back (Trinsic)
21 | - Jeremie Miller (Ping)
22 | - Vasileios Kalos (MATTR)
23 |
24 | ### Notes
25 |
26 | https://github.com/decentralized-identity/bbs-signature/pull/86
27 | - Approved and merged
28 |
29 | https://github.com/decentralized-identity/bbs-signature/pull/84
30 | - Are there performance tradeoffs here by using XOF everywhere instead of other digest algorithms
31 |
32 | https://github.com/decentralized-identity/bbs-signature/pull/88
33 | - Resolved not to head in this direction, instead going to use hash_to_field in places throughout the draft where the input is not a message (e.g challenge)
34 |
35 | https://github.com/decentralized-identity/bbs-signature/issues/48
36 | - Resolved to close based on other upstream drafts filling this purpose
37 |
--------------------------------------------------------------------------------
/meetings/2022-04-05/agenda.md:
--------------------------------------------------------------------------------
1 | ## Meeting - Monday 5th April 2022 - (6pm UTC)
2 |
3 | ### Chair
4 |
5 | Tobias Looker
6 |
7 | ### Agenda
8 |
9 | - IPR reminder, and Introductions
10 | - Agenda bashing
11 | - PR review
12 | - [Collapsing random element generation](https://github.com/decentralized-identity/bbs-signature/pull/92)
13 | - [[PROPOSAL] refactor key generation procedure](https://github.com/decentralized-identity/bbs-signature/pull/87)
14 | - [Change usages of HASH function to use XOF](https://github.com/decentralized-identity/bbs-signature/pull/84)
15 | - Issue Review
16 |
17 | ### Attendees
18 |
19 | - Christian Paquin (MSR)
20 | - Jeremie Miller (Ping Identity)
21 | - Andrew Whitehead
22 | - David Waite (Ping Identity)
23 | - Vasileios Kalos (MATTR)
24 | - Brian Richer
25 |
26 | ### Notes
27 |
28 | Merged [Collapsing random element generation](https://github.com/decentralized-identity/bbs-signature/pull/92)
29 |
30 | Discussed closing
31 | - [[PROPOSAL] refactor key generation procedure](https://github.com/decentralized-identity/bbs-signature/pull/87)
32 | - [Change usages of HASH function to use XOF](https://github.com/decentralized-identity/bbs-signature/pull/84)
33 |
--------------------------------------------------------------------------------
/meetings/2022-04-18/agenda.md:
--------------------------------------------------------------------------------
1 | ## Meeting - Monday 18th April 2022 - (6pm UTC)
2 |
3 | ### Chair
4 |
5 | Tobias Looker
6 |
7 | ### Agenda
8 |
9 | - IPR reminder, and Introductions
10 | - Agenda bashing
11 | - PR review
12 | - [Add signature dst](https://github.com/decentralized-identity/bbs-signature/pull/95)
13 | - [Encoding for elements to be hashed](https://github.com/decentralized-identity/bbs-signature/pull/97)
14 | - [Adding hash-to-scalar function](https://github.com/decentralized-identity/bbs-signature/pull/101)
15 | - Issue Review
16 | - [Handling information that must always be revealed in signature proof](https://github.com/decentralized-identity/bbs-signature/issues/102)
17 |
18 | ### Attendees
19 |
20 | - Mike Lodder (CryptID)
21 | - Christian Paquin (MSR)
22 | - Vasileios Kalos (Mattr)
23 | - Jeremie Miller (Ping)
24 | - David Waite (Ping)
25 |
26 | ### Notes
27 |
28 | Discussed open PR's, feedback given during the call that will be incoperated into an update.
29 |
30 | Issue 102 was discussed at length, group agreed that we should proceed with a cryptographically enforce-able mechanism for this and PR 95 will be update to accomodate this.
31 |
--------------------------------------------------------------------------------
/meetings/2022-05-02/agenda.md:
--------------------------------------------------------------------------------
1 | ## Meeting - Monday 2nd May 2022 - (6pm UTC)
2 |
3 | ### Chair
4 |
5 | Tobias Looker
6 |
7 | ### Agenda
8 |
9 | - IPR reminder, and Introductions
10 | - Agenda bashing
11 | - Other items
12 | - Request to move to weekly working group call
13 | - PR review
14 | - [Update KeyValidate procedure](https://github.com/decentralized-identity/bbs-signature/pull/115)
15 | - [More editorial tweaks](https://github.com/decentralized-identity/bbs-signature/pull/112/files)
16 | - [Adding hash-to-scalar function](https://github.com/decentralized-identity/bbs-signature/pull/101)
17 | - [Add signature DST](https://github.com/decentralized-identity/bbs-signature/pull/95)
18 | - Issue Review
19 |
20 | ### Attendees
21 |
22 | - Andrew Whitehead
23 | - David Waite
24 | - Vasilis Kalos
25 | - Christian Paquin
26 |
27 | ### Notes
28 |
29 | - Discussed moving to a weekly call, no objections
30 | - Reviewed all open PR's
31 | - Reviewed newly opened issues
32 |
--------------------------------------------------------------------------------
/meetings/2022-05-09/agenda.md:
--------------------------------------------------------------------------------
1 | ## Meeting - Monday 9th May 2022 - (6pm UTC)
2 |
3 | ### Chair
4 |
5 | Tobias Looker
6 |
7 | ### Agenda
8 |
9 | - IPR reminder, and Introductions
10 | - Agenda bashing
11 | - Other items
12 | - BoF Session IETF 114
13 | - Prototype implementation (Christian?)
14 | - Agree timeline for implementers draft
15 | - Other implementation status
16 | - PR review
17 | - [Editorial pass](https://github.com/decentralized-identity/bbs-signature/pull/129)
18 | - [Adding revealed messages to challenge hash](https://github.com/decentralized-identity/bbs-signature/pull/128)
19 | - [Update KeyValidate Operation](https://github.com/decentralized-identity/bbs-signature/pull/115)
20 | - Issue Review
21 |
22 | ### Attendees
23 |
24 | - Andrew Whitehead
25 | - Vasileios Kalos
26 |
27 | ### Notes
28 |
29 | - Tobias has reached out to the security area director for the IETF about a BoF Session for IETF 114 (23rd-29th of July), unsure what day the session will be at this stage. Still waiting to hear back on this. Date of session likely confirmed by July 1st.
30 | - Andrew is working on an updated implementation of BBS in aries askar (https://github.com/hyperledger/aries-askar)
31 | - No other updates on implementation statuses
32 |
33 | - Reviewed https://github.com/decentralized-identity/bbs-signature/pull/115 and merged
34 |
--------------------------------------------------------------------------------
/meetings/2022-05-16/agenda.md:
--------------------------------------------------------------------------------
1 | ## Meeting - Monday 16th May 2022 - (6pm UTC)
2 |
3 | ### Chair
4 |
5 | Tobias Looker
6 |
7 | ### Agenda
8 |
9 | - IPR reminder, and Introductions
10 | - Agenda bashing
11 | - Other items
12 | - IETF 114 Sec Dispatch Meeting
13 | - IETF Draft Submission (https://datatracker.ietf.org/meeting/114/important-dates/)
14 | - PR review
15 | - [Change q to r](https://github.com/decentralized-identity/bbs-signature/pull/140)
16 | - [API update](https://github.com/decentralized-identity/bbs-signature/pull/138)
17 | - [Ciphersuite ID definition](https://github.com/decentralized-identity/bbs-signature/pull/137)
18 | - [Update the sign procedure](https://github.com/decentralized-identity/bbs-signature/pull/135)
19 | - [Adding revelaed messages to challenge hash](https://github.com/decentralized-identity/bbs-signature/pull/128)
20 | - Issue Review
21 |
22 | ### Attendees
23 |
24 | - Andrew Whitehead
25 | - Vasileios Kalos
26 | - David Waite
27 | - Tomislav Markovski
28 |
29 | ### Notes
30 |
31 | - Discussed the Sec Dispatch meeting at IETF 114
32 | - Reviewed above PR's, merged #140
33 |
--------------------------------------------------------------------------------
/meetings/2022-05-23/agenda.md:
--------------------------------------------------------------------------------
1 | ## Meeting - Monday 23th May 2022 - (6pm UTC)
2 |
3 | ### Chair
4 |
5 | Tobias Looker
6 |
7 | ### Agenda
8 |
9 | - IPR reminder, and Introductions
10 | - Agenda bashing
11 | - Other items
12 | - CFRG proposal progress, spoken with the chairs who have offered for us to present at IETF 114
13 | - Important reminder we must have an initial draft submitted into the IETF data tracker by 11th of July according to https://datatracker.ietf.org/meeting/114/important-dates/
14 | - PR review
15 | - [Updates the sign procedure](https://github.com/decentralized-identity/bbs-signature/pull/135)
16 | - [Use of hash_to_scalar](https://github.com/decentralized-identity/bbs-signature/pull/142)
17 | - [API Update](https://github.com/decentralized-identity/bbs-signature/pull/138)
18 | - [Minor tweak to CreateGenerators](https://github.com/decentralized-identity/bbs-signature/pull/145)
19 | - [Editorial Updates](https://github.com/decentralized-identity/bbs-signature/pull/152)
20 | - [Alternative hash_to_scalar without xof](https://github.com/decentralized-identity/bbs-signature/pull/151)
21 | - Issue Review
22 |
23 | ### Attendees
24 |
25 | - Vasileios Kalos
26 |
27 | ### Notes
28 |
29 | Merged
30 | - [Updates the sign procedure](https://github.com/decentralized-identity/bbs-signature/pull/135)
31 | - [Use of hash_to_scalar](https://github.com/decentralized-identity/bbs-signature/pull/142)
32 |
--------------------------------------------------------------------------------
/meetings/2022-05-30/agenda.md:
--------------------------------------------------------------------------------
1 | ## Meeting - Monday 30th May 2022 - (6pm UTC)
2 |
3 | ### Chair
4 |
5 | Tobias Looker
6 |
7 | ### Agenda
8 |
9 | - IPR reminder, and Introductions
10 | - Agenda bashing
11 | - Other items
12 | - CFRG proposal progress, spoken with the chairs who have offered for us to present at IETF 114
13 | - Important reminder we must have an initial draft submitted into the IETF data tracker by 11th of July according to https://datatracker.ietf.org/meeting/114/important-dates/
14 | - Need to start preparing the presentation for the CFRG for IETF
15 |
16 | - PR review
17 | - [Proof serialization/de-serialization](https://github.com/decentralized-identity/bbs-signature/pull/155)
18 | - [Re-organizing the sections](https://github.com/decentralized-identity/bbs-signature/pull/154)
19 | - [API Update](https://github.com/decentralized-identity/bbs-signature/pull/138)
20 | - [Alternative hash_to_scalar without an xof](https://github.com/decentralized-identity/bbs-signature/pull/151)
21 | - [Minor tweak to CreateGenerators](https://github.com/decentralized-identity/bbs-signature/pull/145)
22 | - [Adding revealed messages to challenge hash](https://github.com/decentralized-identity/bbs-signature/pull/128)
23 | - Issue Review
24 |
25 | ### Attendees
26 |
27 | - Andrew Whitehead
28 | - Vasileios Kalos
29 |
30 | ### Notes
31 |
32 | Discussed open PR's and new issues
33 |
--------------------------------------------------------------------------------
/meetings/2022-06-06/agenda.md:
--------------------------------------------------------------------------------
1 | ## Meeting - Monday 30th May 2022 - (6pm UTC)
2 |
3 | ### Chair
4 |
5 | Tobias Looker
6 |
7 | ### Agenda
8 |
9 | - IPR reminder, and Introductions
10 | - Agenda bashing
11 | - Other items
12 | - CFRG proposal progress, spoken with the chairs who have offered for us to present at IETF 114
13 | - Important reminder we must have an initial draft submitted into the IETF data tracker by 11th of July according to https://datatracker.ietf.org/meeting/114/important-dates/
14 | - Need to start preparing the presentation for the CFRG for IETF
15 |
16 | - PR review
17 | - [Proof serialization/de-serialization](https://github.com/decentralized-identity/bbs-signature/pull/155)
18 | - [Re-organizing the sections](https://github.com/decentralized-identity/bbs-signature/pull/154)
19 | - [API Update](https://github.com/decentralized-identity/bbs-signature/pull/138)
20 | - [Alternative hash_to_scalar without an xof](https://github.com/decentralized-identity/bbs-signature/pull/151)
21 | - [Minor tweak to CreateGenerators](https://github.com/decentralized-identity/bbs-signature/pull/145)
22 | - [Adding revealed messages to challenge hash](https://github.com/decentralized-identity/bbs-signature/pull/128)
23 | - Issue Review
24 |
25 | ### Attendees
26 |
27 | - Andrew Whitehead
28 | - Vasileios Kalos
29 |
30 | ### Notes
31 |
32 | Discussed open PR's and new issues
33 |
--------------------------------------------------------------------------------
/meetings/2022-06-13/agenda.md:
--------------------------------------------------------------------------------
1 | ## Meeting - Monday 13th June 2022 - (6pm UTC)
2 |
3 | ### Chair
4 |
5 | Tobias Looker
6 |
7 | ### Agenda
8 |
9 | - IPR reminder, and Introductions
10 | - Agenda bashing
11 | - Other items
12 | - Reminder IETF submission for CFRG due start of july
13 | - PR review
14 | - Issue Review
15 |
16 | ### Attendees
17 |
18 | - David Waite
19 | - Vasilis
20 | - Andrew Whitehead
21 |
22 | ### Notes
23 |
24 | Reviewed issues and PR's on the call
25 |
--------------------------------------------------------------------------------
/meetings/2022-06-20/agenda.md:
--------------------------------------------------------------------------------
1 | ## Meeting - Monday 20th June 2022 - (6pm UTC)
2 |
3 | ### Chair
4 |
5 | Tobias Looker
6 |
7 | ### Agenda
8 |
9 | - IPR reminder, and Introductions
10 | - Agenda bashing
11 | - Other items
12 | - PR review
13 | - Issue Review
14 |
15 | ### Attendees
16 |
17 | - Christian Paquin
18 | - Vasilis
19 | - Mateo Manfredi
20 |
21 | ### Notes
22 |
23 | - Intro from Mateo
24 | - Merged PR #177
25 | - Reviewed open PR's
26 | - Reminder about IETF submission due date, agreed to merge all current PR's before submission
27 |
--------------------------------------------------------------------------------
/meetings/2022-06-27/agenda.md:
--------------------------------------------------------------------------------
1 | ## Meeting - Monday 27th June 2022 - (6pm UTC)
2 |
3 | ### Chair
4 |
5 | Tobias Looker
6 |
7 | ### Agenda
8 |
9 | - IPR reminder, and Introductions
10 | - Agenda bashing
11 | - Other items
12 | - Reminder IETF submission for CFRG due start of july.
13 | - PR review
14 | - [Update KeyGen procedure to use hash_to_scalar](https://github.com/decentralized-identity/bbs-signature/pull/186)
15 | - [Editorial updates](https://github.com/decentralized-identity/bbs-signature/pull/187)
16 | - [Add the revealed messages to the challenge](https://github.com/decentralized-identity/bbs-signature/pull/188)
17 | - [encode for hash operation](https://github.com/decentralized-identity/bbs-signature/pull/190)
18 | - [Minor update to terminology](https://github.com/decentralized-identity/bbs-signature/pull/191)
19 | - [Consistency updates](https://github.com/decentralized-identity/bbs-signature/pull/192)
20 | - Issue Review
21 | - [Defintions of P1 and P2 in Ciphersuites](https://github.com/decentralized-identity/bbs-signature/issues/164)
22 | - [Integer endianness](https://github.com/decentralized-identity/bbs-signature/issues/157)
23 |
24 | ### Attendees
25 |
26 | - Andrew Whitehead
27 | - Vasilis Kalos
28 | - Christian Paquin
29 |
30 | ### Notes
31 |
32 | - Merged PRs #187, #188, #191
33 | - Closed Issue #74 as completed
34 | - Reviewed open PR's and Issues
35 | - For practical reasons, the spec no longer has concrete definitions for some variables (like the output length of the PRF etc.). Will address those in the operation descriptions (as examples) and or in the test vectors section (similar to the [H2C spec](https://www.ietf.org/archive/id/draft-irtf-cfrg-hash-to-curve-16.html#name-bls12-381-g1-2)).
36 |
--------------------------------------------------------------------------------
/meetings/2022-07-04/agenda.md:
--------------------------------------------------------------------------------
1 | ## Meeting - Monday 4th July 2022 - (6pm UTC)
2 |
3 | ### Chair
4 |
5 | Tobias Looker
6 |
7 | ### Agenda
8 |
9 | - IPR reminder, and Introductions
10 | - Agenda bashing
11 | - Other items
12 | - PR review:
13 | - [ Update KeyGen procedure to use hash_to_scalar #186 ](https://github.com/decentralized-identity/bbs-signature/pull/186)
14 | - Issue review:
15 | - [ expand_message domain separation #194 ](https://github.com/decentralized-identity/bbs-signature/issues/194)
16 | - [ Handling subgroup checks #179 ](https://github.com/decentralized-identity/bbs-signature/issues/179)
17 | - [ H2C using SHA256 #143 ](https://github.com/decentralized-identity/bbs-signature/issues/143)
18 |
19 | ### Attendees
20 |
21 | - Andrew Whitehead
22 | - Vasilis Kalos
23 |
24 | ### Notes
25 |
26 | - Discussed and closed issues prior to the submision to the CFRG.
27 | - Closed issues:
28 | - [Update security considerations #196](https://github.com/decentralized-identity/bbs-signature/issues/196)
29 | - [Consider splitting operations into Core and Higher level definitions #131](https://github.com/decentralized-identity/bbs-signature/issues/131)
30 | - [ Add an IsValidPoint operation #126 ](https://github.com/decentralized-identity/bbs-signature/issues/126)
31 | - [ Consider making "messages" and therefore "message generators" optional to all operation APIs #117 ](https://github.com/decentralized-identity/bbs-signature/issues/117)
32 | - [ API Update #159 ](https://github.com/decentralized-identity/bbs-signature/issues/159)
33 | - [ Elements to be hashed update #185 ](https://github.com/decentralized-identity/bbs-signature/issues/185)
34 | - Merged PRs:
35 | - [ editorial updates #195 ](https://github.com/decentralized-identity/bbs-signature/pull/195)
36 | - [ encode for hash operation #190 ](https://github.com/decentralized-identity/bbs-signature/pull/190)
37 | - Will leave Issue #143 open until we decide if we will define a sha256-based suite.
38 | - Discussed Issue #179. The agreed direction is for the spec to assume that `octet_to_point_g*` will return VALID. Will keep open until this assumption is made explicit.
--------------------------------------------------------------------------------
/meetings/2022-07-11/agenda.md:
--------------------------------------------------------------------------------
1 | ## Meeting - Monday 11th July 2022 - (6pm UTC)
2 |
3 | ### Chair
4 |
5 | Tobias Looker
6 |
7 | ### Agenda
8 |
9 | - IPR reminder, and Introductions
10 | - Agenda bashing
11 | - PR review
12 | - [ Update KeyGen procedure to use hash_to_scalar #186 ](https://github.com/decentralized-identity/bbs-signature/pull/186)
13 | - Issue Review:
14 | - [ H2C using SHA256 #143 ](https://github.com/decentralized-identity/bbs-signature/issues/143)
15 | - [ expand_message domain separation #194 ](https://github.com/decentralized-identity/bbs-signature/issues/194)
16 |
17 | ### Attendees
18 |
19 | - Vasilis Kalos
20 | - Mike Lodder
21 |
22 | ### Notes
23 |
24 | - Discussed open PRs and Issues.
25 | - Discussed the suitability of hash-to-scalar as an alternative of the HKDF based KeyGen operation. It was agreed that hash-to-scalar is most likely a good replacement for HKDF KeyGen.
26 | - Discussed alternative to hash-to-scalar that does not depend to exapnd_message from the hash to curve spec, and more specifically the approach from section 5 of [[CDMP07]](https://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.365.1590&rep=rep1&type=pdf).
27 | - Similarly, discussed alternative to hash-to-curve for creating generators and more specifically the approach from section 3.3 of [[BLS01]](https://link.springer.com/content/pdf/10.1007/3-540-45682-1_30.pdf).
28 |
--------------------------------------------------------------------------------
/meetings/2022-08-08/agenda.md:
--------------------------------------------------------------------------------
1 | ## Meeting - Monday 8th August 2022 - (6pm UTC)
2 |
3 | ### Chair
4 |
5 | Tobias Looker
6 |
7 | ### Agenda
8 |
9 | - IPR reminder, and Introductions
10 | - Agenda bashing
11 | - IETF Recap
12 | - PR review
13 | - Issue Review
14 |
15 | ### Attendees
16 |
17 | - Christian Paquin
18 | - Vasilis
19 | - Andrew Whitehead
20 |
21 | ### Notes
22 |
23 | - Discussed IETF meeting
24 | - Issue review
25 | - PR review
26 |
--------------------------------------------------------------------------------
/meetings/2022-08-15/agenda.md:
--------------------------------------------------------------------------------
1 | ## Meeting - Monday 15th August 2022 - (6pm UTC)
2 |
3 | ### Chair
4 |
5 | Tobias Looker
6 |
7 | ### Agenda
8 |
9 | - IPR reminder, and Introductions
10 | - Agenda bashing
11 | - IETF Recap
12 | - PR review
13 | - Issue Review
14 |
15 | ### Attendees
16 |
17 | - Christian Paquin
18 | - Vasilis Kalos
19 | - Andrew Whitehead
20 |
21 | ### Notes
22 | - Discussed CFRG/IETF updates, regarding the call for adoption of the draft.
23 | - Issues reviewd: [#76](https://github.com/decentralized-identity/bbs-signature/issues/76), [#111](https://github.com/decentralized-identity/bbs-signature/issues/111), [#125](https://github.com/decentralized-identity/bbs-signature/issues/125), [#143](https://github.com/decentralized-identity/bbs-signature/issues/143), [#148](https://github.com/decentralized-identity/bbs-signature/issues/148), [#194](https://github.com/decentralized-identity/bbs-signature/issues/194).
24 | - PRs reviewd: [#186](https://github.com/decentralized-identity/bbs-signature/pull/186).
25 |
--------------------------------------------------------------------------------
/meetings/2022-08-22/agenda.md:
--------------------------------------------------------------------------------
1 | ## Meeting - Monday 22nd August 2022 - (6pm UTC)
2 |
3 | ### Chair
4 |
5 | Tobias Looker
6 |
7 | ### Agenda
8 |
9 | - IPR reminder, and Introductions
10 | - Agenda bashing
11 | - Other items
12 | - PR review
13 | - Issue Review
14 |
15 | ### Attendees
16 |
17 | - Vasilis Kalos
18 | - Andrew Whitehead
19 |
20 | ### Notes
21 |
22 | - Issues reviewd: [#212](https://github.com/decentralized-identity/bbs-signature/issues/212), [#207](https://github.com/decentralized-identity/bbs-signature/issues/207), [#206](https://github.com/decentralized-identity/bbs-signature/issues/206).
23 | - PRs reviewd: [#213](https://github.com/decentralized-identity/bbs-signature/pull/213), [#211](https://github.com/decentralized-identity/bbs-signature/pull/211), [#208](https://github.com/decentralized-identity/bbs-signature/pull/208).
24 | - PRs will be updated based on the reviews. For issue #212 the different options will be documented, and the issue will be revisited. Other issues will be closed with subsequent PRs with the proposed approaches.
25 |
--------------------------------------------------------------------------------
/tooling/fixtures/fetchFixtures.ts:
--------------------------------------------------------------------------------
1 | import * as messages from "./fixture_data/messages.json";
2 | import * as path from "path";
3 | import { readdirSync } from 'fs';
4 |
5 | const FIXTURES_FILE = "./fixture_data"
6 |
7 | const isObject = (value: unknown) => value && typeof value === "object";
8 |
9 | // tslint:disable-next-line:no-var-requires
10 | const resolveFixtures = (subDirectory: string, filter: any) =>
11 | require("require-all")({
12 | dirname: `${__dirname}/${subDirectory}`,
13 | filter: filter,
14 | excludeDirs: [".github", "tests"],
15 | map: (__: unknown, path: unknown) => {
16 | return `${path}`;
17 | },
18 | });
19 |
20 | const suites = readdirSync(FIXTURES_FILE, { withFileTypes: true })
21 | .filter(dirent => dirent.isDirectory())
22 | .map(dirent => dirent.name);
23 |
24 |
25 | interface signatureTrace {
26 | readonly B: string;
27 | readonly domain: string;
28 | }
29 |
30 | export interface SignatureFixtureData {
31 | readonly caseName: string;
32 | readonly signature: string;
33 | readonly header: string;
34 | readonly messages: string[];
35 | result: { valid: false; reason: string } | { valid: true };
36 | readonly signerKeyPair: {
37 | readonly publicKey: string;
38 | readonly secretKey: string;
39 | };
40 | trace: signatureTrace;
41 | }
42 |
43 | interface proofTrace {
44 | readonly A_bar: string;
45 | readonly B_bar: string;
46 | readonly T: string;
47 | readonly domain: string;
48 | readonly challenge: string;
49 | }
50 |
51 | export interface ProofFixtureData {
52 | readonly caseName: string;
53 | readonly signerPublicKey: string;
54 | readonly header: string;
55 | readonly signature: string;
56 | readonly presentationHeader: string;
57 | readonly revealedMessages: { [index: string]: string };
58 | readonly totalMessageCount: number;
59 | readonly proof: string;
60 | readonly trace: proofTrace;
61 | result: { valid: false; reason: string } | { valid: true };
62 | }
63 |
64 | export interface GeneratorFixtureData {
65 | readonly P1: string;
66 | readonly Q1: string;
67 | readonly Q2: string;
68 | readonly MsgGenerators: string[];
69 | }
70 |
71 | export interface H2sFixtureData {
72 | readonly caseName: string;
73 | readonly message: string;
74 | readonly dst: string;
75 | readonly count: number;
76 | readonly scalars: string[];
77 | }
78 |
79 | export interface MapMessageToScalarCase {
80 | message: string;
81 | scalar: string;
82 | }
83 |
84 | export interface MapMessageToScalarFixtureData {
85 | readonly caseName: string;
86 | readonly dst: string;
87 | readonly cases: ReadonlyArray
88 | }
89 |
90 | export interface MockRngFixtureData {
91 | readonly caseName: string,
92 | readonly seed: string,
93 | readonly dst: string,
94 | readonly count: number,
95 | readonly mockedScalars: string[];
96 | }
97 |
98 | export interface KeyPairFixtureData {
99 | readonly caseName: string,
100 | readonly keyMaterial: string,
101 | readonly keyInfo: string,
102 | readonly keyPair: {
103 | readonly secretKey: string,
104 | readonly publicKey: string
105 | }
106 | }
107 |
108 | export interface Fixture {
109 | readonly name: string
110 | readonly value: T
111 | }
112 |
113 | const fetchNestedFixtures = (name: string, input: any): ReadonlyArray> => {
114 | if (input.caseName || input.MsgGenerators || input.mockedScalars) {
115 | return [
116 | {
117 | name: path.basename(name).split(".")[0] as string,
118 | value: input,
119 | } as any,
120 | ];
121 | }
122 | if (!isObject(input)) {
123 | return [];
124 | }
125 |
126 | const extractedFixtures = Object.keys(input).map((key) =>
127 | fetchNestedFixtures(key, input[key])
128 | );
129 | return Array.prototype.concat.apply([], extractedFixtures);
130 | };
131 |
132 |
133 | const fetchPerSuiteFixtures = (dir:string, filter = /.json$/) => {
134 | let fixtureMap = {}
135 | for (let suite of suites) {
136 | let suiteFixturesData = fetchNestedFixtures(
137 | "", resolveFixtures(FIXTURES_FILE+"/"+suite+dir, filter)
138 | )
139 | .reduce((map, item: Fixture) => {
140 | map = {
141 | ...map,
142 | [item.name]: item.value
143 | }
144 | return map
145 | }, {})
146 |
147 | fixtureMap = {
148 | ...fixtureMap,
149 | [suite]: suiteFixturesData
150 | }
151 | }
152 |
153 | return fixtureMap
154 | }
155 |
156 | export const signatureFixtures = fetchPerSuiteFixtures("/signature");
157 | export const proofFixtures = fetchPerSuiteFixtures("/proof");
158 | export const H2sFixture = fetchPerSuiteFixtures("", /h2s.json/)
159 | export const generatorFixtures = fetchPerSuiteFixtures("", /generators.json/);
160 | export const MapMessageToScalarFixtures =
161 | fetchPerSuiteFixtures("", /MapMessageToScalarAsHash.json/);
162 | export const MockRngFixtures = fetchPerSuiteFixtures("", /mockedRng.json/);
163 | export const KeyPairFixtures = fetchPerSuiteFixtures("", /keypair.json/);
164 |
165 | export { messages };
166 |
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-sha-256/MapMessageToScalarAsHash.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "MapMessageToScalar fixture",
3 | "dst": "4242535f424c53313233383147315f584d443a5348412d3235365f535357555f524f5f4832475f484d32535f4d41505f4d53475f544f5f5343414c41525f41535f484153485f",
4 | "cases": [
5 | {
6 | "message": "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
7 | "scalar": "1cb5bb86114b34dc438a911617655a1db595abafac92f47c5001799cf624b430"
8 | },
9 | {
10 | "message": "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
11 | "scalar": "154249d503c093ac2df516d4bb88b510d54fd97e8d7121aede420a25d9521952"
12 | },
13 | {
14 | "message": "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
15 | "scalar": "0c7c4c85cdab32e6fdb0de267b16fa3212733d4e3a3f0d0f751657578b26fe22"
16 | },
17 | {
18 | "message": "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
19 | "scalar": "4a196deafee5c23f630156ae13be3e46e53b7e39094d22877b8cba7f14640888"
20 | },
21 | {
22 | "message": "496694774c5604ab1b2544eababcf0f53278ff50",
23 | "scalar": "34c5ea4f2ba49117015a02c711bb173c11b06b3f1571b88a2952b93d0ed4cf7e"
24 | },
25 | {
26 | "message": "515ae153e22aae04ad16f759e07237b4",
27 | "scalar": "4045b39b83055cd57a4d0203e1660800fabe434004dbdc8730c21ce3f0048b08"
28 | },
29 | {
30 | "message": "d183ddc6e2665aa4e2f088af",
31 | "scalar": "064621da4377b6b1d05ecc37cf3b9dfc94b9498d7013dc5c4a82bf3bb1750743"
32 | },
33 | {
34 | "message": "ac55fb33a75909ed",
35 | "scalar": "34ac9196ace0a37e147e32319ea9b3d8cc7d21870d3c3ba071246859cca49b02"
36 | },
37 | {
38 | "message": "96012096",
39 | "scalar": "57eb93f417c43200e9784fa5ea5a59168d3dbc38df707a13bb597c871b2a5f74"
40 | },
41 | {
42 | "message": "",
43 | "scalar": "08e3afeb2b4f2b5f907924ef42856616e6f2d5f1fb373736db1cca32707a7d16"
44 | }
45 | ]
46 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-sha-256/generators.json:
--------------------------------------------------------------------------------
1 | {
2 | "P1": "a8ce256102840821a3e94ea9025e4662b205762f9776b3a766c872b948f1fd225e7c59698588e70d11406d161b4e28c9",
3 | "Q1": "a9ec65b70a7fbe40c874c9eb041c2cb0a7af36ccec1bea48fa2ba4c2eb67ef7f9ecb17ed27d38d27cdeddff44c8137be",
4 | "MsgGenerators": [
5 | "98cd5313283aaf5db1b3ba8611fe6070d19e605de4078c38df36019fbaad0bd28dd090fd24ed27f7f4d22d5ff5dea7d4",
6 | "a31fbe20c5c135bcaa8d9fc4e4ac665cc6db0226f35e737507e803044093f37697a9d452490a970eea6f9ad6c3dcaa3a",
7 | "b479263445f4d2108965a9086f9d1fdc8cde77d14a91c856769521ad3344754cc5ce90d9bc4c696dffbc9ef1d6ad1b62",
8 | "ac0401766d2128d4791d922557c7b4d1ae9a9b508ce266575244a8d6f32110d7b0b7557b77604869633bb49afbe20035",
9 | "b95d2898370ebc542857746a316ce32fa5151c31f9b57915e308ee9d1de7db69127d919e984ea0747f5223821b596335",
10 | "8f19359ae6ee508157492c06765b7df09e2e5ad591115742f2de9c08572bb2845cbf03fd7e23b7f031ed9c7564e52f39",
11 | "abc914abe2926324b2c848e8a411a2b6df18cbe7758db8644145fefb0bf0a2d558a8c9946bd35e00c69d167aadf304c1",
12 | "80755b3eb0dd4249cbefd20f177cee88e0761c066b71794825c9997b551f24051c352567ba6c01e57ac75dff763eaa17",
13 | "82701eb98070728e1769525e73abff1783cedc364adb20c05c897a62f2ab2927f86f118dcb7819a7b218d8f3fee4bd7f",
14 | "a1f229540474f4d6f1134761b92b788128c7ac8dc9b0c52d59493132679673032ac7db3fb3d79b46b13c1c41ee495bca"
15 | ]
16 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-sha-256/h2s.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "Hash to scalar output",
3 | "message": "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
4 | "dst": "4242535f424c53313233383147315f584d443a5348412d3235365f535357555f524f5f4832475f484d32535f4832535f",
5 | "scalar": "0f90cbee27beb214e6545becb8404640d3612da5d6758dffeccd77ed7169807c"
6 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-sha-256/keypair.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "key pair fixture",
3 | "keyMaterial": "746869732d49532d6a7573742d616e2d546573742d494b4d2d746f2d67656e65726174652d246528724074232d6b6579",
4 | "keyInfo": "746869732d49532d736f6d652d6b65792d6d657461646174612d746f2d62652d757365642d696e2d746573742d6b65792d67656e",
5 | "keyDst": "4242535f424c53313233383147315f584d443a5348412d3235365f535357555f524f5f4832475f484d32535f4b455947454e5f4453545f",
6 | "keyPair": {
7 | "secretKey": "60e55110f76883a13d030b2f6bd11883422d5abde717569fc0731f51237169fc",
8 | "publicKey": "a820f230f6ae38503b86c70dc50b61c58a77e45c39ab25c0652bbaa8fa136f2851bd4781c9dcde39fc9d1d52c9e60268061e7d7632171d91aa8d460acee0e96f1e7c4cfb12d3ff9ab5d5dc91c277db75c845d649ef3c4f63aebc364cd55ded0c"
9 | }
10 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-sha-256/mockedRng.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "mocked random scalars",
3 | "seed": "332e313431353932363533353839373933323338343632363433333833323739",
4 | "dst": "4242535f424c53313233383147315f584d443a5348412d3235365f535357555f524f5f4832475f484d32535f4d4f434b5f52414e444f4d5f5343414c4152535f4453545f",
5 | "count": 10,
6 | "mockedScalars": [
7 | "04f8e2518993c4383957ad14eb13a023c4ad0c67d01ec86eeb902e732ed6df3f",
8 | "5d87c1ba64c320ad601d227a1b74188a41a100325cecf00223729863966392b1",
9 | "0444607600ac70482e9c983b4b063214080b9e808300aa4cc02a91b3a92858fe",
10 | "548cd11eae4318e88cda10b4cd31ae29d41c3a0b057196ee9cf3a69d471e4e94",
11 | "2264b06a08638b69b4627756a62f08e0dc4d8240c1b974c9c7db779a769892f4",
12 | "4d99352986a9f8978b93485d21525244b21b396cf61f1d71f7c48e3fbc970a42",
13 | "5ed8be91662386243a6771fbdd2c627de31a44220e8d6f745bad5d99821a4880",
14 | "62ff1734b939ddd87beeb37a7bbcafa0a274cbc1b07384198f0e88398272208d",
15 | "05c2a0af016df58e844db8944082dcaf434de1b1e2e7136ec8a99b939b716223",
16 | "485e2adab17b76f5334c95bf36c03ccf91cef77dcfcdc6b8a69e2090b3156663"
17 | ]
18 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-sha-256/proof/proof001.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "valid single message signature, single-message revealed proof",
3 | "signerPublicKey": "a820f230f6ae38503b86c70dc50b61c58a77e45c39ab25c0652bbaa8fa136f2851bd4781c9dcde39fc9d1d52c9e60268061e7d7632171d91aa8d460acee0e96f1e7c4cfb12d3ff9ab5d5dc91c277db75c845d649ef3c4f63aebc364cd55ded0c",
4 | "signature": "84773160b824e194073a57493dac1a20b667af70cd2352d8af241c77658da5253aa8458317cca0eae615690d55b1f27164657dcafee1d5c1973947aa70e2cfbb4c892340be5969920d0916067b4565a0",
5 | "header": "11223344556677889900aabbccddeeff",
6 | "presentationHeader": "bed231d880675ed101ead304512e043ade9958dd0241ea70b4b3957fba941501",
7 | "messages": [
8 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02"
9 | ],
10 | "disclosedIndexes": [
11 | 0
12 | ],
13 | "proof": "94916292a7a6bade28456c601d3af33fcf39278d6594b467e128a3f83686a104ef2b2fcf72df0215eeaf69262ffe8194a19fab31a82ddbe06908985abc4c9825788b8a1610942d12b7f5debbea8985296361206dbace7af0cc834c80f33e0aadaeea5597befbb651827b5eed5a66f1a959bb46cfd5ca1a817a14475960f69b32c54db7587b5ee3ab665fbd37b506830a49f21d592f5e634f47cee05a025a2f8f94e73a6c15f02301d1178a92873b6e8634bafe4983c3e15a663d64080678dbf29417519b78af042be2b3e1c4d08b8d520ffab008cbaaca5671a15b22c239b38e940cfeaa5e72104576a9ec4a6fad78c532381aeaa6fb56409cef56ee5c140d455feeb04426193c57086c9b6d397d9418",
14 | "result": {
15 | "valid": true
16 | },
17 | "trace": {
18 | "random_scalars": {
19 | "r1": "60ca409f6b0563f687fc471c63d2819f446f39c23bb540925d9d4254ac58f337",
20 | "r2": "2ceff4982de0c913090f75f081df5ec594c310bb48c17cfdaab5332a682ef811",
21 | "e_tilde": "6101c4404895f3dff87ab39c34cb995af07e7139e6b3847180ffdd1bc8c313cd",
22 | "r1_tilde": "0dfcffd97a6ecdebef3c9c114b99d7a030c998d938905f357df62822dee072e8",
23 | "r3_tilde": "639e3417007d38e5d34ba8c511e836768ddc2669fdd3faff5c14ad27ac2b2da1",
24 | "m_tilde_scalars": []
25 | },
26 | "A_bar": "94916292a7a6bade28456c601d3af33fcf39278d6594b467e128a3f83686a104ef2b2fcf72df0215eeaf69262ffe8194",
27 | "B_bar": "a19fab31a82ddbe06908985abc4c9825788b8a1610942d12b7f5debbea8985296361206dbace7af0cc834c80f33e0aad",
28 | "D": "aeea5597befbb651827b5eed5a66f1a959bb46cfd5ca1a817a14475960f69b32c54db7587b5ee3ab665fbd37b506830a",
29 | "T1": "a862fa5d3ab4c264c22b8a02636fd4030e8b14ac20dee14e08fdb6cfc445432c08abb49ec111c1eb9d90abef50134a60",
30 | "T2": "ab9543a6b04303e997621d3d5cbd85924e7e69da498a2a9e9d3a8b01f39259c9c5920bd530de1d3b0afb99eb0c549d5a",
31 | "domain": "25d57fab92a8274c68fde5c3f16d4b275e4a156f211ae34b3ab32fbaf506ed5c",
32 | "challenge": "32381aeaa6fb56409cef56ee5c140d455feeb04426193c57086c9b6d397d9418"
33 | }
34 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-sha-256/proof/proof002.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "valid multi-message signature, all messages revealed proof",
3 | "signerPublicKey": "a820f230f6ae38503b86c70dc50b61c58a77e45c39ab25c0652bbaa8fa136f2851bd4781c9dcde39fc9d1d52c9e60268061e7d7632171d91aa8d460acee0e96f1e7c4cfb12d3ff9ab5d5dc91c277db75c845d649ef3c4f63aebc364cd55ded0c",
4 | "signature": "8339b285a4acd89dec7777c09543a43e3cc60684b0a6f8ab335da4825c96e1463e28f8c5f4fd0641d19cec5920d3a8ff4bedb6c9691454597bbd298288abed3632078557b2ace7d44caed846e1a0a1e8",
5 | "header": "11223344556677889900aabbccddeeff",
6 | "presentationHeader": "bed231d880675ed101ead304512e043ade9958dd0241ea70b4b3957fba941501",
7 | "messages": [
8 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
9 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
10 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
11 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
12 | "496694774c5604ab1b2544eababcf0f53278ff50",
13 | "515ae153e22aae04ad16f759e07237b4",
14 | "d183ddc6e2665aa4e2f088af",
15 | "ac55fb33a75909ed",
16 | "96012096",
17 | ""
18 | ],
19 | "disclosedIndexes": [
20 | 0,
21 | 1,
22 | 2,
23 | 3,
24 | 4,
25 | 5,
26 | 6,
27 | 7,
28 | 8,
29 | 9
30 | ],
31 | "proof": "b1f468aec2001c4f54cb56f707c6222a43e5803a25b2253e67b2210ab2ef9eab52db2d4b379935c4823281eaf767fd37b08ce80dc65de8f9769d27099ae649ad4c9b4bd2cc23edcba52073a298087d2495e6d57aaae051ef741adf1cbce65c64a73c8c97264177a76c4a03341956d2ae45ed3438ce598d5cda4f1bf9507fecef47855480b7b30b5e4052c92a4360110c67327365763f5aa9fb85ddcbc2975449b8c03db1216ca66b310f07d0ccf12ab460cdc6003b677fed36d0a23d0818a9d4d098d44f749e91008cf50e8567ef936704c8277b7710f41ab7e6e16408ab520edc290f9801349aee7b7b4e318e6a76e028e1dea911e2e7baec6a6a174da1a22362717fbae1cd961d7bf4adce1d31c2ab",
32 | "result": {
33 | "valid": true
34 | },
35 | "trace": {
36 | "random_scalars": {
37 | "r1": "60ca409f6b0563f687fc471c63d2819f446f39c23bb540925d9d4254ac58f337",
38 | "r2": "2ceff4982de0c913090f75f081df5ec594c310bb48c17cfdaab5332a682ef811",
39 | "e_tilde": "6101c4404895f3dff87ab39c34cb995af07e7139e6b3847180ffdd1bc8c313cd",
40 | "r1_tilde": "0dfcffd97a6ecdebef3c9c114b99d7a030c998d938905f357df62822dee072e8",
41 | "r3_tilde": "639e3417007d38e5d34ba8c511e836768ddc2669fdd3faff5c14ad27ac2b2da1",
42 | "m_tilde_scalars": []
43 | },
44 | "A_bar": "b1f468aec2001c4f54cb56f707c6222a43e5803a25b2253e67b2210ab2ef9eab52db2d4b379935c4823281eaf767fd37",
45 | "B_bar": "b08ce80dc65de8f9769d27099ae649ad4c9b4bd2cc23edcba52073a298087d2495e6d57aaae051ef741adf1cbce65c64",
46 | "D": "a73c8c97264177a76c4a03341956d2ae45ed3438ce598d5cda4f1bf9507fecef47855480b7b30b5e4052c92a4360110c",
47 | "T1": "9881efa96b2411626d490e399eb1c06badf23c2c0760bd403f50f45a6b470c5a9dbeef53a27916f2f165085a3878f1f4",
48 | "T2": "b9f8cf9271d10a04ae7116ad021f4b69c435d20a5af10ddd8f5b1ec6b9b8b91605aca76a140241784b7f161e21dfc3e7",
49 | "domain": "6272832582a0ac96e6fe53e879422f24c51680b25fbf17bad22a35ea93ce5b47",
50 | "challenge": "28e1dea911e2e7baec6a6a174da1a22362717fbae1cd961d7bf4adce1d31c2ab"
51 | }
52 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-sha-256/proof/proof003.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "valid multi-message signature, multiple messages revealed proof",
3 | "signerPublicKey": "a820f230f6ae38503b86c70dc50b61c58a77e45c39ab25c0652bbaa8fa136f2851bd4781c9dcde39fc9d1d52c9e60268061e7d7632171d91aa8d460acee0e96f1e7c4cfb12d3ff9ab5d5dc91c277db75c845d649ef3c4f63aebc364cd55ded0c",
4 | "signature": "8339b285a4acd89dec7777c09543a43e3cc60684b0a6f8ab335da4825c96e1463e28f8c5f4fd0641d19cec5920d3a8ff4bedb6c9691454597bbd298288abed3632078557b2ace7d44caed846e1a0a1e8",
5 | "header": "11223344556677889900aabbccddeeff",
6 | "presentationHeader": "bed231d880675ed101ead304512e043ade9958dd0241ea70b4b3957fba941501",
7 | "messages": [
8 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
9 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
10 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
11 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
12 | "496694774c5604ab1b2544eababcf0f53278ff50",
13 | "515ae153e22aae04ad16f759e07237b4",
14 | "d183ddc6e2665aa4e2f088af",
15 | "ac55fb33a75909ed",
16 | "96012096",
17 | ""
18 | ],
19 | "disclosedIndexes": [
20 | 0,
21 | 2,
22 | 4,
23 | 6
24 | ],
25 | "proof": "a2ed608e8e12ed21abc2bf154e462d744a367c7f1f969bdbf784a2a134c7db2d340394223a5397a3011b1c340ebc415199462ba6f31106d8a6da8b513b37a47afe93c9b3474d0d7a354b2edc1b88818b063332df774c141f7a07c48fe50d452f897739228c88afc797916dca01e8f03bd9c5375c7a7c59996e514bb952a436afd24457658acbaba5ddac2e693ac481356918cd38025d86b28650e909defe9604a7259f44386b861608be742af7775a2e71a6070e5836f5f54dc43c60096834a5b6da295bf8f081f72b7cdf7f3b4347fb3ff19edaa9e74055c8ba46dbcb7594fb2b06633bb5324192eb9be91be0d33e453b4d3127459de59a5e2193c900816f049a02cb9127dac894418105fa1641d5a206ec9c42177af9316f433417441478276ca0303da8f941bf2e0222a43251cf5c2bf6eac1961890aa740534e519c1767e1223392a3a286b0f4d91f7f25217a7862b8fcc1810cdcfddde2a01c80fcc90b632585fec12dc4ae8fea1918e9ddeb9414623a457e88f53f545841f9d5dcb1f8e160d1560770aa79d65e2eca8edeaecb73fb7e995608b820c4a64de6313a370ba05dc25ed7c1d185192084963652f2870341bdaa4b1a37f8c06348f38a4f80c5a2650a21d59f09e8305dcd3fc3ac30e2a",
26 | "result": {
27 | "valid": true
28 | },
29 | "trace": {
30 | "random_scalars": {
31 | "r1": "44679831fe60eca50938ef0e812e2a9284ad7971b6932a38c7303538b712e457",
32 | "r2": "6481692f89086cce11779e847ff884db8eebb85a13e81b2d0c79d6c1062069d8",
33 | "e_tilde": "721ce4c4c148a1d5826f326af6fd6ac2844f29533ba4127c3a43d222d51b7081",
34 | "r1_tilde": "1ecfaf5a079b0504b00a1f0d6fe8857291dd798291d7ad7454b398114393f37f",
35 | "r3_tilde": "0a4b3d59b34707bb9999bc6e2a6d382a2d2e214bff36ecd88639a14124b1622e",
36 | "m_tilde_scalars": [
37 | "7217411a9e329c7a5705e8db552274646e2949d62c288d7537dd62bc284715e4",
38 | "67d4d43660746759f598caac106a2b5f58ccd1c3eefaec31841a4f77d2548870",
39 | "715d965b1c3912d20505b381470ff1a528700b673e50ba89fd287e13171cc137",
40 | "4d3281a149674e58c9040fc7a10dd92cb9c7f76f6f0815a1afc3b09d74b92fe4",
41 | "438feebaa5894ca0da49992df2c97d872bf153eab07e08ff73b28131c46ff415",
42 | "602b723c8bbaec1b057d70f18269ae5e6de6197a5884967b03b933fa80006121"
43 | ]
44 | },
45 | "A_bar": "a2ed608e8e12ed21abc2bf154e462d744a367c7f1f969bdbf784a2a134c7db2d340394223a5397a3011b1c340ebc4151",
46 | "B_bar": "99462ba6f31106d8a6da8b513b37a47afe93c9b3474d0d7a354b2edc1b88818b063332df774c141f7a07c48fe50d452f",
47 | "D": "897739228c88afc797916dca01e8f03bd9c5375c7a7c59996e514bb952a436afd24457658acbaba5ddac2e693ac48135",
48 | "T1": "84719c2b5bb275ee74913dbf95fb9054f690c8e4035f1259e184e9024544bc4bbea9c244e7897f9db7c82b7b14b27d28",
49 | "T2": "8f5f191c956aefd5c960e57d2dfbab6761eb0ebc5efdba1aca1403dcc19e05296b16c9feb7636cb4ef2a360c5a148483",
50 | "domain": "6272832582a0ac96e6fe53e879422f24c51680b25fbf17bad22a35ea93ce5b47",
51 | "challenge": "341bdaa4b1a37f8c06348f38a4f80c5a2650a21d59f09e8305dcd3fc3ac30e2a"
52 | }
53 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-sha-256/proof/proof004.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "invalid multi-message signature, all messages revealed proof (different presentation header)",
3 | "signerPublicKey": "a820f230f6ae38503b86c70dc50b61c58a77e45c39ab25c0652bbaa8fa136f2851bd4781c9dcde39fc9d1d52c9e60268061e7d7632171d91aa8d460acee0e96f1e7c4cfb12d3ff9ab5d5dc91c277db75c845d649ef3c4f63aebc364cd55ded0c",
4 | "signature": "8339b285a4acd89dec7777c09543a43e3cc60684b0a6f8ab335da4825c96e1463e28f8c5f4fd0641d19cec5920d3a8ff4bedb6c9691454597bbd298288abed3632078557b2ace7d44caed846e1a0a1e8",
5 | "header": "11223344556677889900aabbccddeeff",
6 | "presentationHeader": "011594ba7f95b3b470ea4102dd5899de3a042e5104d3ea01d15e6780d831d2be",
7 | "messages": [
8 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
9 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
10 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
11 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
12 | "496694774c5604ab1b2544eababcf0f53278ff50",
13 | "515ae153e22aae04ad16f759e07237b4",
14 | "d183ddc6e2665aa4e2f088af",
15 | "ac55fb33a75909ed",
16 | "96012096",
17 | ""
18 | ],
19 | "disclosedIndexes": [
20 | 0,
21 | 2,
22 | 4,
23 | 6
24 | ],
25 | "proof": "a2ed608e8e12ed21abc2bf154e462d744a367c7f1f969bdbf784a2a134c7db2d340394223a5397a3011b1c340ebc415199462ba6f31106d8a6da8b513b37a47afe93c9b3474d0d7a354b2edc1b88818b063332df774c141f7a07c48fe50d452f897739228c88afc797916dca01e8f03bd9c5375c7a7c59996e514bb952a436afd24457658acbaba5ddac2e693ac481356918cd38025d86b28650e909defe9604a7259f44386b861608be742af7775a2e71a6070e5836f5f54dc43c60096834a5b6da295bf8f081f72b7cdf7f3b4347fb3ff19edaa9e74055c8ba46dbcb7594fb2b06633bb5324192eb9be91be0d33e453b4d3127459de59a5e2193c900816f049a02cb9127dac894418105fa1641d5a206ec9c42177af9316f433417441478276ca0303da8f941bf2e0222a43251cf5c2bf6eac1961890aa740534e519c1767e1223392a3a286b0f4d91f7f25217a7862b8fcc1810cdcfddde2a01c80fcc90b632585fec12dc4ae8fea1918e9ddeb9414623a457e88f53f545841f9d5dcb1f8e160d1560770aa79d65e2eca8edeaecb73fb7e995608b820c4a64de6313a370ba05dc25ed7c1d185192084963652f2870341bdaa4b1a37f8c06348f38a4f80c5a2650a21d59f09e8305dcd3fc3ac30e2a",
26 | "result": {
27 | "valid": false,
28 | "reason": "different presentation header"
29 | },
30 | "trace": {
31 | "random_scalars": {
32 | "r1": "44679831fe60eca50938ef0e812e2a9284ad7971b6932a38c7303538b712e457",
33 | "r2": "6481692f89086cce11779e847ff884db8eebb85a13e81b2d0c79d6c1062069d8",
34 | "e_tilde": "721ce4c4c148a1d5826f326af6fd6ac2844f29533ba4127c3a43d222d51b7081",
35 | "r1_tilde": "1ecfaf5a079b0504b00a1f0d6fe8857291dd798291d7ad7454b398114393f37f",
36 | "r3_tilde": "0a4b3d59b34707bb9999bc6e2a6d382a2d2e214bff36ecd88639a14124b1622e",
37 | "m_tilde_scalars": [
38 | "7217411a9e329c7a5705e8db552274646e2949d62c288d7537dd62bc284715e4",
39 | "67d4d43660746759f598caac106a2b5f58ccd1c3eefaec31841a4f77d2548870",
40 | "715d965b1c3912d20505b381470ff1a528700b673e50ba89fd287e13171cc137",
41 | "4d3281a149674e58c9040fc7a10dd92cb9c7f76f6f0815a1afc3b09d74b92fe4",
42 | "438feebaa5894ca0da49992df2c97d872bf153eab07e08ff73b28131c46ff415",
43 | "602b723c8bbaec1b057d70f18269ae5e6de6197a5884967b03b933fa80006121"
44 | ]
45 | },
46 | "A_bar": "a2ed608e8e12ed21abc2bf154e462d744a367c7f1f969bdbf784a2a134c7db2d340394223a5397a3011b1c340ebc4151",
47 | "B_bar": "99462ba6f31106d8a6da8b513b37a47afe93c9b3474d0d7a354b2edc1b88818b063332df774c141f7a07c48fe50d452f",
48 | "D": "897739228c88afc797916dca01e8f03bd9c5375c7a7c59996e514bb952a436afd24457658acbaba5ddac2e693ac48135",
49 | "T1": "84719c2b5bb275ee74913dbf95fb9054f690c8e4035f1259e184e9024544bc4bbea9c244e7897f9db7c82b7b14b27d28",
50 | "T2": "8f5f191c956aefd5c960e57d2dfbab6761eb0ebc5efdba1aca1403dcc19e05296b16c9feb7636cb4ef2a360c5a148483",
51 | "domain": "6272832582a0ac96e6fe53e879422f24c51680b25fbf17bad22a35ea93ce5b47",
52 | "challenge": "341bdaa4b1a37f8c06348f38a4f80c5a2650a21d59f09e8305dcd3fc3ac30e2a"
53 | }
54 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-sha-256/proof/proof005.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "invalid multi-message signature, all messages revealed proof (wrong public key)",
3 | "signerPublicKey": "b064bd8d1ba99503cbb7f9d7ea00bce877206a85b1750e5583dd9399828a4d20610cb937ea928d90404c239b2835ffb104220a9c66a4c9ed3b54c0cac9ea465d0429556b438ceefb59650ddf67e7a8f103677561b7ef7fe3c3357ec6b94d41c6",
4 | "signature": "8339b285a4acd89dec7777c09543a43e3cc60684b0a6f8ab335da4825c96e1463e28f8c5f4fd0641d19cec5920d3a8ff4bedb6c9691454597bbd298288abed3632078557b2ace7d44caed846e1a0a1e8",
5 | "header": "11223344556677889900aabbccddeeff",
6 | "presentationHeader": "bed231d880675ed101ead304512e043ade9958dd0241ea70b4b3957fba941501",
7 | "messages": [
8 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
9 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
10 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
11 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
12 | "496694774c5604ab1b2544eababcf0f53278ff50",
13 | "515ae153e22aae04ad16f759e07237b4",
14 | "d183ddc6e2665aa4e2f088af",
15 | "ac55fb33a75909ed",
16 | "96012096",
17 | ""
18 | ],
19 | "disclosedIndexes": [
20 | 0,
21 | 2,
22 | 4,
23 | 6
24 | ],
25 | "proof": "a2ed608e8e12ed21abc2bf154e462d744a367c7f1f969bdbf784a2a134c7db2d340394223a5397a3011b1c340ebc415199462ba6f31106d8a6da8b513b37a47afe93c9b3474d0d7a354b2edc1b88818b063332df774c141f7a07c48fe50d452f897739228c88afc797916dca01e8f03bd9c5375c7a7c59996e514bb952a436afd24457658acbaba5ddac2e693ac481356918cd38025d86b28650e909defe9604a7259f44386b861608be742af7775a2e71a6070e5836f5f54dc43c60096834a5b6da295bf8f081f72b7cdf7f3b4347fb3ff19edaa9e74055c8ba46dbcb7594fb2b06633bb5324192eb9be91be0d33e453b4d3127459de59a5e2193c900816f049a02cb9127dac894418105fa1641d5a206ec9c42177af9316f433417441478276ca0303da8f941bf2e0222a43251cf5c2bf6eac1961890aa740534e519c1767e1223392a3a286b0f4d91f7f25217a7862b8fcc1810cdcfddde2a01c80fcc90b632585fec12dc4ae8fea1918e9ddeb9414623a457e88f53f545841f9d5dcb1f8e160d1560770aa79d65e2eca8edeaecb73fb7e995608b820c4a64de6313a370ba05dc25ed7c1d185192084963652f2870341bdaa4b1a37f8c06348f38a4f80c5a2650a21d59f09e8305dcd3fc3ac30e2a",
26 | "result": {
27 | "valid": false,
28 | "reason": "wrong public key"
29 | },
30 | "trace": {
31 | "random_scalars": {
32 | "r1": "44679831fe60eca50938ef0e812e2a9284ad7971b6932a38c7303538b712e457",
33 | "r2": "6481692f89086cce11779e847ff884db8eebb85a13e81b2d0c79d6c1062069d8",
34 | "e_tilde": "721ce4c4c148a1d5826f326af6fd6ac2844f29533ba4127c3a43d222d51b7081",
35 | "r1_tilde": "1ecfaf5a079b0504b00a1f0d6fe8857291dd798291d7ad7454b398114393f37f",
36 | "r3_tilde": "0a4b3d59b34707bb9999bc6e2a6d382a2d2e214bff36ecd88639a14124b1622e",
37 | "m_tilde_scalars": [
38 | "7217411a9e329c7a5705e8db552274646e2949d62c288d7537dd62bc284715e4",
39 | "67d4d43660746759f598caac106a2b5f58ccd1c3eefaec31841a4f77d2548870",
40 | "715d965b1c3912d20505b381470ff1a528700b673e50ba89fd287e13171cc137",
41 | "4d3281a149674e58c9040fc7a10dd92cb9c7f76f6f0815a1afc3b09d74b92fe4",
42 | "438feebaa5894ca0da49992df2c97d872bf153eab07e08ff73b28131c46ff415",
43 | "602b723c8bbaec1b057d70f18269ae5e6de6197a5884967b03b933fa80006121"
44 | ]
45 | },
46 | "A_bar": "a2ed608e8e12ed21abc2bf154e462d744a367c7f1f969bdbf784a2a134c7db2d340394223a5397a3011b1c340ebc4151",
47 | "B_bar": "99462ba6f31106d8a6da8b513b37a47afe93c9b3474d0d7a354b2edc1b88818b063332df774c141f7a07c48fe50d452f",
48 | "D": "897739228c88afc797916dca01e8f03bd9c5375c7a7c59996e514bb952a436afd24457658acbaba5ddac2e693ac48135",
49 | "T1": "84719c2b5bb275ee74913dbf95fb9054f690c8e4035f1259e184e9024544bc4bbea9c244e7897f9db7c82b7b14b27d28",
50 | "T2": "8f5f191c956aefd5c960e57d2dfbab6761eb0ebc5efdba1aca1403dcc19e05296b16c9feb7636cb4ef2a360c5a148483",
51 | "domain": "6272832582a0ac96e6fe53e879422f24c51680b25fbf17bad22a35ea93ce5b47",
52 | "challenge": "341bdaa4b1a37f8c06348f38a4f80c5a2650a21d59f09e8305dcd3fc3ac30e2a"
53 | }
54 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-sha-256/proof/proof006.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "invalid multi-message signature, all messages revealed proof (modified messages)",
3 | "signerPublicKey": "a820f230f6ae38503b86c70dc50b61c58a77e45c39ab25c0652bbaa8fa136f2851bd4781c9dcde39fc9d1d52c9e60268061e7d7632171d91aa8d460acee0e96f1e7c4cfb12d3ff9ab5d5dc91c277db75c845d649ef3c4f63aebc364cd55ded0c",
4 | "signature": "8339b285a4acd89dec7777c09543a43e3cc60684b0a6f8ab335da4825c96e1463e28f8c5f4fd0641d19cec5920d3a8ff4bedb6c9691454597bbd298288abed3632078557b2ace7d44caed846e1a0a1e8",
5 | "header": "11223344556677889900aabbccddeeff",
6 | "presentationHeader": "bed231d880675ed101ead304512e043ade9958dd0241ea70b4b3957fba941501",
7 | "messages": [
8 | "7385ee1a722e00e173b4cdb1c1e0c3fb379403a31b337d3778c447d9da664ac876b0f7c5587d9e994c51f9e2b6de09c0f1d0f3b39b275a96da4926c22e55166998b8c4e90372820c007ceb27bd34ec4ebfab63fea4dcc88d95f58b25ffd35b041f3fe994",
9 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
10 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
11 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
12 | "496694774c5604ab1b2544eababcf0f53278ff50",
13 | "515ae153e22aae04ad16f759e07237b4",
14 | "d183ddc6e2665aa4e2f088af",
15 | "ac55fb33a75909ed",
16 | "96012096",
17 | ""
18 | ],
19 | "disclosedIndexes": [
20 | 0,
21 | 2,
22 | 4,
23 | 6
24 | ],
25 | "proof": "a2ed608e8e12ed21abc2bf154e462d744a367c7f1f969bdbf784a2a134c7db2d340394223a5397a3011b1c340ebc415199462ba6f31106d8a6da8b513b37a47afe93c9b3474d0d7a354b2edc1b88818b063332df774c141f7a07c48fe50d452f897739228c88afc797916dca01e8f03bd9c5375c7a7c59996e514bb952a436afd24457658acbaba5ddac2e693ac481356918cd38025d86b28650e909defe9604a7259f44386b861608be742af7775a2e71a6070e5836f5f54dc43c60096834a5b6da295bf8f081f72b7cdf7f3b4347fb3ff19edaa9e74055c8ba46dbcb7594fb2b06633bb5324192eb9be91be0d33e453b4d3127459de59a5e2193c900816f049a02cb9127dac894418105fa1641d5a206ec9c42177af9316f433417441478276ca0303da8f941bf2e0222a43251cf5c2bf6eac1961890aa740534e519c1767e1223392a3a286b0f4d91f7f25217a7862b8fcc1810cdcfddde2a01c80fcc90b632585fec12dc4ae8fea1918e9ddeb9414623a457e88f53f545841f9d5dcb1f8e160d1560770aa79d65e2eca8edeaecb73fb7e995608b820c4a64de6313a370ba05dc25ed7c1d185192084963652f2870341bdaa4b1a37f8c06348f38a4f80c5a2650a21d59f09e8305dcd3fc3ac30e2a",
26 | "result": {
27 | "valid": false,
28 | "reason": "modified messages"
29 | },
30 | "trace": {
31 | "random_scalars": {
32 | "r1": "44679831fe60eca50938ef0e812e2a9284ad7971b6932a38c7303538b712e457",
33 | "r2": "6481692f89086cce11779e847ff884db8eebb85a13e81b2d0c79d6c1062069d8",
34 | "e_tilde": "721ce4c4c148a1d5826f326af6fd6ac2844f29533ba4127c3a43d222d51b7081",
35 | "r1_tilde": "1ecfaf5a079b0504b00a1f0d6fe8857291dd798291d7ad7454b398114393f37f",
36 | "r3_tilde": "0a4b3d59b34707bb9999bc6e2a6d382a2d2e214bff36ecd88639a14124b1622e",
37 | "m_tilde_scalars": [
38 | "7217411a9e329c7a5705e8db552274646e2949d62c288d7537dd62bc284715e4",
39 | "67d4d43660746759f598caac106a2b5f58ccd1c3eefaec31841a4f77d2548870",
40 | "715d965b1c3912d20505b381470ff1a528700b673e50ba89fd287e13171cc137",
41 | "4d3281a149674e58c9040fc7a10dd92cb9c7f76f6f0815a1afc3b09d74b92fe4",
42 | "438feebaa5894ca0da49992df2c97d872bf153eab07e08ff73b28131c46ff415",
43 | "602b723c8bbaec1b057d70f18269ae5e6de6197a5884967b03b933fa80006121"
44 | ]
45 | },
46 | "A_bar": "a2ed608e8e12ed21abc2bf154e462d744a367c7f1f969bdbf784a2a134c7db2d340394223a5397a3011b1c340ebc4151",
47 | "B_bar": "99462ba6f31106d8a6da8b513b37a47afe93c9b3474d0d7a354b2edc1b88818b063332df774c141f7a07c48fe50d452f",
48 | "D": "897739228c88afc797916dca01e8f03bd9c5375c7a7c59996e514bb952a436afd24457658acbaba5ddac2e693ac48135",
49 | "T1": "84719c2b5bb275ee74913dbf95fb9054f690c8e4035f1259e184e9024544bc4bbea9c244e7897f9db7c82b7b14b27d28",
50 | "T2": "8f5f191c956aefd5c960e57d2dfbab6761eb0ebc5efdba1aca1403dcc19e05296b16c9feb7636cb4ef2a360c5a148483",
51 | "domain": "6272832582a0ac96e6fe53e879422f24c51680b25fbf17bad22a35ea93ce5b47",
52 | "challenge": "341bdaa4b1a37f8c06348f38a4f80c5a2650a21d59f09e8305dcd3fc3ac30e2a"
53 | }
54 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-sha-256/proof/proof007.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "invalid multi-message signature, all messages revealed proof (extra message un-revealed in proof)",
3 | "signerPublicKey": "a820f230f6ae38503b86c70dc50b61c58a77e45c39ab25c0652bbaa8fa136f2851bd4781c9dcde39fc9d1d52c9e60268061e7d7632171d91aa8d460acee0e96f1e7c4cfb12d3ff9ab5d5dc91c277db75c845d649ef3c4f63aebc364cd55ded0c",
4 | "signature": "8339b285a4acd89dec7777c09543a43e3cc60684b0a6f8ab335da4825c96e1463e28f8c5f4fd0641d19cec5920d3a8ff4bedb6c9691454597bbd298288abed3632078557b2ace7d44caed846e1a0a1e8",
5 | "header": "11223344556677889900aabbccddeeff",
6 | "presentationHeader": "bed231d880675ed101ead304512e043ade9958dd0241ea70b4b3957fba941501",
7 | "messages": [
8 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
9 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
10 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
11 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
12 | "496694774c5604ab1b2544eababcf0f53278ff50",
13 | "515ae153e22aae04ad16f759e07237b4",
14 | "d183ddc6e2665aa4e2f088af",
15 | "ac55fb33a75909ed",
16 | "96012096",
17 | "",
18 | ""
19 | ],
20 | "disclosedIndexes": [
21 | 0,
22 | 2,
23 | 4,
24 | 6,
25 | 9
26 | ],
27 | "proof": "a2ed608e8e12ed21abc2bf154e462d744a367c7f1f969bdbf784a2a134c7db2d340394223a5397a3011b1c340ebc415199462ba6f31106d8a6da8b513b37a47afe93c9b3474d0d7a354b2edc1b88818b063332df774c141f7a07c48fe50d452f897739228c88afc797916dca01e8f03bd9c5375c7a7c59996e514bb952a436afd24457658acbaba5ddac2e693ac481356918cd38025d86b28650e909defe9604a7259f44386b861608be742af7775a2e71a6070e5836f5f54dc43c60096834a5b6da295bf8f081f72b7cdf7f3b4347fb3ff19edaa9e74055c8ba46dbcb7594fb2b06633bb5324192eb9be91be0d33e453b4d3127459de59a5e2193c900816f049a02cb9127dac894418105fa1641d5a206ec9c42177af9316f433417441478276ca0303da8f941bf2e0222a43251cf5c2bf6eac1961890aa740534e519c1767e1223392a3a286b0f4d91f7f25217a7862b8fcc1810cdcfddde2a01c80fcc90b632585fec12dc4ae8fea1918e9ddeb9414623a457e88f53f545841f9d5dcb1f8e160d1560770aa79d65e2eca8edeaecb73fb7e995608b820c4a64de6313a370ba05dc25ed7c1d185192084963652f2870341bdaa4b1a37f8c06348f38a4f80c5a2650a21d59f09e8305dcd3fc3ac30e2a",
28 | "result": {
29 | "valid": false,
30 | "reason": "extra message un-revealed in proof"
31 | },
32 | "trace": {
33 | "random_scalars": {
34 | "r1": "44679831fe60eca50938ef0e812e2a9284ad7971b6932a38c7303538b712e457",
35 | "r2": "6481692f89086cce11779e847ff884db8eebb85a13e81b2d0c79d6c1062069d8",
36 | "e_tilde": "721ce4c4c148a1d5826f326af6fd6ac2844f29533ba4127c3a43d222d51b7081",
37 | "r1_tilde": "1ecfaf5a079b0504b00a1f0d6fe8857291dd798291d7ad7454b398114393f37f",
38 | "r3_tilde": "0a4b3d59b34707bb9999bc6e2a6d382a2d2e214bff36ecd88639a14124b1622e",
39 | "m_tilde_scalars": [
40 | "7217411a9e329c7a5705e8db552274646e2949d62c288d7537dd62bc284715e4",
41 | "67d4d43660746759f598caac106a2b5f58ccd1c3eefaec31841a4f77d2548870",
42 | "715d965b1c3912d20505b381470ff1a528700b673e50ba89fd287e13171cc137",
43 | "4d3281a149674e58c9040fc7a10dd92cb9c7f76f6f0815a1afc3b09d74b92fe4",
44 | "438feebaa5894ca0da49992df2c97d872bf153eab07e08ff73b28131c46ff415",
45 | "602b723c8bbaec1b057d70f18269ae5e6de6197a5884967b03b933fa80006121"
46 | ]
47 | },
48 | "A_bar": "a2ed608e8e12ed21abc2bf154e462d744a367c7f1f969bdbf784a2a134c7db2d340394223a5397a3011b1c340ebc4151",
49 | "B_bar": "99462ba6f31106d8a6da8b513b37a47afe93c9b3474d0d7a354b2edc1b88818b063332df774c141f7a07c48fe50d452f",
50 | "D": "897739228c88afc797916dca01e8f03bd9c5375c7a7c59996e514bb952a436afd24457658acbaba5ddac2e693ac48135",
51 | "T1": "84719c2b5bb275ee74913dbf95fb9054f690c8e4035f1259e184e9024544bc4bbea9c244e7897f9db7c82b7b14b27d28",
52 | "T2": "8f5f191c956aefd5c960e57d2dfbab6761eb0ebc5efdba1aca1403dcc19e05296b16c9feb7636cb4ef2a360c5a148483",
53 | "domain": "6272832582a0ac96e6fe53e879422f24c51680b25fbf17bad22a35ea93ce5b47",
54 | "challenge": "341bdaa4b1a37f8c06348f38a4f80c5a2650a21d59f09e8305dcd3fc3ac30e2a"
55 | }
56 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-sha-256/proof/proof008.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "invalid multi-message signature, all messages revealed proof (extra message invalid message un-revealed in proof)",
3 | "signerPublicKey": "a820f230f6ae38503b86c70dc50b61c58a77e45c39ab25c0652bbaa8fa136f2851bd4781c9dcde39fc9d1d52c9e60268061e7d7632171d91aa8d460acee0e96f1e7c4cfb12d3ff9ab5d5dc91c277db75c845d649ef3c4f63aebc364cd55ded0c",
4 | "signature": "8339b285a4acd89dec7777c09543a43e3cc60684b0a6f8ab335da4825c96e1463e28f8c5f4fd0641d19cec5920d3a8ff4bedb6c9691454597bbd298288abed3632078557b2ace7d44caed846e1a0a1e8",
5 | "header": "11223344556677889900aabbccddeeff",
6 | "presentationHeader": "bed231d880675ed101ead304512e043ade9958dd0241ea70b4b3957fba941501",
7 | "messages": [
8 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
9 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
10 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
11 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
12 | "496694774c5604ab1b2544eababcf0f53278ff50",
13 | "515ae153e22aae04ad16f759e07237b4",
14 | "d183ddc6e2665aa4e2f088af",
15 | "ac55fb33a75909ed",
16 | "96012096",
17 | "",
18 | "96012096"
19 | ],
20 | "disclosedIndexes": [
21 | 0,
22 | 2,
23 | 4,
24 | 6,
25 | 9
26 | ],
27 | "proof": "a2ed608e8e12ed21abc2bf154e462d744a367c7f1f969bdbf784a2a134c7db2d340394223a5397a3011b1c340ebc415199462ba6f31106d8a6da8b513b37a47afe93c9b3474d0d7a354b2edc1b88818b063332df774c141f7a07c48fe50d452f897739228c88afc797916dca01e8f03bd9c5375c7a7c59996e514bb952a436afd24457658acbaba5ddac2e693ac481356918cd38025d86b28650e909defe9604a7259f44386b861608be742af7775a2e71a6070e5836f5f54dc43c60096834a5b6da295bf8f081f72b7cdf7f3b4347fb3ff19edaa9e74055c8ba46dbcb7594fb2b06633bb5324192eb9be91be0d33e453b4d3127459de59a5e2193c900816f049a02cb9127dac894418105fa1641d5a206ec9c42177af9316f433417441478276ca0303da8f941bf2e0222a43251cf5c2bf6eac1961890aa740534e519c1767e1223392a3a286b0f4d91f7f25217a7862b8fcc1810cdcfddde2a01c80fcc90b632585fec12dc4ae8fea1918e9ddeb9414623a457e88f53f545841f9d5dcb1f8e160d1560770aa79d65e2eca8edeaecb73fb7e995608b820c4a64de6313a370ba05dc25ed7c1d185192084963652f2870341bdaa4b1a37f8c06348f38a4f80c5a2650a21d59f09e8305dcd3fc3ac30e2a",
28 | "result": {
29 | "valid": false,
30 | "reason": "extra message invalid message un-revealed in proof"
31 | },
32 | "trace": {
33 | "random_scalars": {
34 | "r1": "44679831fe60eca50938ef0e812e2a9284ad7971b6932a38c7303538b712e457",
35 | "r2": "6481692f89086cce11779e847ff884db8eebb85a13e81b2d0c79d6c1062069d8",
36 | "e_tilde": "721ce4c4c148a1d5826f326af6fd6ac2844f29533ba4127c3a43d222d51b7081",
37 | "r1_tilde": "1ecfaf5a079b0504b00a1f0d6fe8857291dd798291d7ad7454b398114393f37f",
38 | "r3_tilde": "0a4b3d59b34707bb9999bc6e2a6d382a2d2e214bff36ecd88639a14124b1622e",
39 | "m_tilde_scalars": [
40 | "7217411a9e329c7a5705e8db552274646e2949d62c288d7537dd62bc284715e4",
41 | "67d4d43660746759f598caac106a2b5f58ccd1c3eefaec31841a4f77d2548870",
42 | "715d965b1c3912d20505b381470ff1a528700b673e50ba89fd287e13171cc137",
43 | "4d3281a149674e58c9040fc7a10dd92cb9c7f76f6f0815a1afc3b09d74b92fe4",
44 | "438feebaa5894ca0da49992df2c97d872bf153eab07e08ff73b28131c46ff415",
45 | "602b723c8bbaec1b057d70f18269ae5e6de6197a5884967b03b933fa80006121"
46 | ]
47 | },
48 | "A_bar": "a2ed608e8e12ed21abc2bf154e462d744a367c7f1f969bdbf784a2a134c7db2d340394223a5397a3011b1c340ebc4151",
49 | "B_bar": "99462ba6f31106d8a6da8b513b37a47afe93c9b3474d0d7a354b2edc1b88818b063332df774c141f7a07c48fe50d452f",
50 | "D": "897739228c88afc797916dca01e8f03bd9c5375c7a7c59996e514bb952a436afd24457658acbaba5ddac2e693ac48135",
51 | "T1": "84719c2b5bb275ee74913dbf95fb9054f690c8e4035f1259e184e9024544bc4bbea9c244e7897f9db7c82b7b14b27d28",
52 | "T2": "8f5f191c956aefd5c960e57d2dfbab6761eb0ebc5efdba1aca1403dcc19e05296b16c9feb7636cb4ef2a360c5a148483",
53 | "domain": "6272832582a0ac96e6fe53e879422f24c51680b25fbf17bad22a35ea93ce5b47",
54 | "challenge": "341bdaa4b1a37f8c06348f38a4f80c5a2650a21d59f09e8305dcd3fc3ac30e2a"
55 | }
56 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-sha-256/proof/proof009.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "invalid multi-message signature, all messages revealed proof (missing message revealed in proof)",
3 | "signerPublicKey": "a820f230f6ae38503b86c70dc50b61c58a77e45c39ab25c0652bbaa8fa136f2851bd4781c9dcde39fc9d1d52c9e60268061e7d7632171d91aa8d460acee0e96f1e7c4cfb12d3ff9ab5d5dc91c277db75c845d649ef3c4f63aebc364cd55ded0c",
4 | "signature": "8339b285a4acd89dec7777c09543a43e3cc60684b0a6f8ab335da4825c96e1463e28f8c5f4fd0641d19cec5920d3a8ff4bedb6c9691454597bbd298288abed3632078557b2ace7d44caed846e1a0a1e8",
5 | "header": "11223344556677889900aabbccddeeff",
6 | "presentationHeader": "bed231d880675ed101ead304512e043ade9958dd0241ea70b4b3957fba941501",
7 | "messages": [
8 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
9 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
10 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
11 | "496694774c5604ab1b2544eababcf0f53278ff50",
12 | "515ae153e22aae04ad16f759e07237b4",
13 | "d183ddc6e2665aa4e2f088af",
14 | "ac55fb33a75909ed",
15 | "96012096",
16 | ""
17 | ],
18 | "disclosedIndexes": [
19 | 0,
20 | 2,
21 | 6
22 | ],
23 | "proof": "a2ed608e8e12ed21abc2bf154e462d744a367c7f1f969bdbf784a2a134c7db2d340394223a5397a3011b1c340ebc415199462ba6f31106d8a6da8b513b37a47afe93c9b3474d0d7a354b2edc1b88818b063332df774c141f7a07c48fe50d452f897739228c88afc797916dca01e8f03bd9c5375c7a7c59996e514bb952a436afd24457658acbaba5ddac2e693ac481356918cd38025d86b28650e909defe9604a7259f44386b861608be742af7775a2e71a6070e5836f5f54dc43c60096834a5b6da295bf8f081f72b7cdf7f3b4347fb3ff19edaa9e74055c8ba46dbcb7594fb2b06633bb5324192eb9be91be0d33e453b4d3127459de59a5e2193c900816f049a02cb9127dac894418105fa1641d5a206ec9c42177af9316f433417441478276ca0303da8f941bf2e0222a43251cf5c2bf6eac1961890aa740534e519c1767e1223392a3a286b0f4d91f7f25217a7862b8fcc1810cdcfddde2a01c80fcc90b632585fec12dc4ae8fea1918e9ddeb9414623a457e88f53f545841f9d5dcb1f8e160d1560770aa79d65e2eca8edeaecb73fb7e995608b820c4a64de6313a370ba05dc25ed7c1d185192084963652f2870341bdaa4b1a37f8c06348f38a4f80c5a2650a21d59f09e8305dcd3fc3ac30e2a",
24 | "result": {
25 | "valid": false,
26 | "reason": "missing message revealed in proof"
27 | },
28 | "trace": {
29 | "random_scalars": {
30 | "r1": "44679831fe60eca50938ef0e812e2a9284ad7971b6932a38c7303538b712e457",
31 | "r2": "6481692f89086cce11779e847ff884db8eebb85a13e81b2d0c79d6c1062069d8",
32 | "e_tilde": "721ce4c4c148a1d5826f326af6fd6ac2844f29533ba4127c3a43d222d51b7081",
33 | "r1_tilde": "1ecfaf5a079b0504b00a1f0d6fe8857291dd798291d7ad7454b398114393f37f",
34 | "r3_tilde": "0a4b3d59b34707bb9999bc6e2a6d382a2d2e214bff36ecd88639a14124b1622e",
35 | "m_tilde_scalars": [
36 | "7217411a9e329c7a5705e8db552274646e2949d62c288d7537dd62bc284715e4",
37 | "67d4d43660746759f598caac106a2b5f58ccd1c3eefaec31841a4f77d2548870",
38 | "715d965b1c3912d20505b381470ff1a528700b673e50ba89fd287e13171cc137",
39 | "4d3281a149674e58c9040fc7a10dd92cb9c7f76f6f0815a1afc3b09d74b92fe4",
40 | "438feebaa5894ca0da49992df2c97d872bf153eab07e08ff73b28131c46ff415",
41 | "602b723c8bbaec1b057d70f18269ae5e6de6197a5884967b03b933fa80006121"
42 | ]
43 | },
44 | "A_bar": "a2ed608e8e12ed21abc2bf154e462d744a367c7f1f969bdbf784a2a134c7db2d340394223a5397a3011b1c340ebc4151",
45 | "B_bar": "99462ba6f31106d8a6da8b513b37a47afe93c9b3474d0d7a354b2edc1b88818b063332df774c141f7a07c48fe50d452f",
46 | "D": "897739228c88afc797916dca01e8f03bd9c5375c7a7c59996e514bb952a436afd24457658acbaba5ddac2e693ac48135",
47 | "T1": "84719c2b5bb275ee74913dbf95fb9054f690c8e4035f1259e184e9024544bc4bbea9c244e7897f9db7c82b7b14b27d28",
48 | "T2": "8f5f191c956aefd5c960e57d2dfbab6761eb0ebc5efdba1aca1403dcc19e05296b16c9feb7636cb4ef2a360c5a148483",
49 | "domain": "6272832582a0ac96e6fe53e879422f24c51680b25fbf17bad22a35ea93ce5b47",
50 | "challenge": "341bdaa4b1a37f8c06348f38a4f80c5a2650a21d59f09e8305dcd3fc3ac30e2a"
51 | }
52 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-sha-256/proof/proof010.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "invalid multi-message signature, all messages revealed proof (re-ordered messages)",
3 | "signerPublicKey": "a820f230f6ae38503b86c70dc50b61c58a77e45c39ab25c0652bbaa8fa136f2851bd4781c9dcde39fc9d1d52c9e60268061e7d7632171d91aa8d460acee0e96f1e7c4cfb12d3ff9ab5d5dc91c277db75c845d649ef3c4f63aebc364cd55ded0c",
4 | "signature": "8339b285a4acd89dec7777c09543a43e3cc60684b0a6f8ab335da4825c96e1463e28f8c5f4fd0641d19cec5920d3a8ff4bedb6c9691454597bbd298288abed3632078557b2ace7d44caed846e1a0a1e8",
5 | "header": "11223344556677889900aabbccddeeff",
6 | "presentationHeader": "bed231d880675ed101ead304512e043ade9958dd0241ea70b4b3957fba941501",
7 | "messages": [
8 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
9 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
10 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
11 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
12 | "496694774c5604ab1b2544eababcf0f53278ff50",
13 | "515ae153e22aae04ad16f759e07237b4",
14 | "d183ddc6e2665aa4e2f088af",
15 | "ac55fb33a75909ed",
16 | "96012096",
17 | ""
18 | ],
19 | "disclosedIndexes": [
20 | 4,
21 | 2,
22 | 4,
23 | 6
24 | ],
25 | "proof": "a2ed608e8e12ed21abc2bf154e462d744a367c7f1f969bdbf784a2a134c7db2d340394223a5397a3011b1c340ebc415199462ba6f31106d8a6da8b513b37a47afe93c9b3474d0d7a354b2edc1b88818b063332df774c141f7a07c48fe50d452f897739228c88afc797916dca01e8f03bd9c5375c7a7c59996e514bb952a436afd24457658acbaba5ddac2e693ac481356918cd38025d86b28650e909defe9604a7259f44386b861608be742af7775a2e71a6070e5836f5f54dc43c60096834a5b6da295bf8f081f72b7cdf7f3b4347fb3ff19edaa9e74055c8ba46dbcb7594fb2b06633bb5324192eb9be91be0d33e453b4d3127459de59a5e2193c900816f049a02cb9127dac894418105fa1641d5a206ec9c42177af9316f433417441478276ca0303da8f941bf2e0222a43251cf5c2bf6eac1961890aa740534e519c1767e1223392a3a286b0f4d91f7f25217a7862b8fcc1810cdcfddde2a01c80fcc90b632585fec12dc4ae8fea1918e9ddeb9414623a457e88f53f545841f9d5dcb1f8e160d1560770aa79d65e2eca8edeaecb73fb7e995608b820c4a64de6313a370ba05dc25ed7c1d185192084963652f2870341bdaa4b1a37f8c06348f38a4f80c5a2650a21d59f09e8305dcd3fc3ac30e2a",
26 | "result": {
27 | "valid": false,
28 | "reason": "re-ordered messages"
29 | },
30 | "trace": {
31 | "random_scalars": {
32 | "r1": "44679831fe60eca50938ef0e812e2a9284ad7971b6932a38c7303538b712e457",
33 | "r2": "6481692f89086cce11779e847ff884db8eebb85a13e81b2d0c79d6c1062069d8",
34 | "e_tilde": "721ce4c4c148a1d5826f326af6fd6ac2844f29533ba4127c3a43d222d51b7081",
35 | "r1_tilde": "1ecfaf5a079b0504b00a1f0d6fe8857291dd798291d7ad7454b398114393f37f",
36 | "r3_tilde": "0a4b3d59b34707bb9999bc6e2a6d382a2d2e214bff36ecd88639a14124b1622e",
37 | "m_tilde_scalars": [
38 | "7217411a9e329c7a5705e8db552274646e2949d62c288d7537dd62bc284715e4",
39 | "67d4d43660746759f598caac106a2b5f58ccd1c3eefaec31841a4f77d2548870",
40 | "715d965b1c3912d20505b381470ff1a528700b673e50ba89fd287e13171cc137",
41 | "4d3281a149674e58c9040fc7a10dd92cb9c7f76f6f0815a1afc3b09d74b92fe4",
42 | "438feebaa5894ca0da49992df2c97d872bf153eab07e08ff73b28131c46ff415",
43 | "602b723c8bbaec1b057d70f18269ae5e6de6197a5884967b03b933fa80006121"
44 | ]
45 | },
46 | "A_bar": "a2ed608e8e12ed21abc2bf154e462d744a367c7f1f969bdbf784a2a134c7db2d340394223a5397a3011b1c340ebc4151",
47 | "B_bar": "99462ba6f31106d8a6da8b513b37a47afe93c9b3474d0d7a354b2edc1b88818b063332df774c141f7a07c48fe50d452f",
48 | "D": "897739228c88afc797916dca01e8f03bd9c5375c7a7c59996e514bb952a436afd24457658acbaba5ddac2e693ac48135",
49 | "T1": "84719c2b5bb275ee74913dbf95fb9054f690c8e4035f1259e184e9024544bc4bbea9c244e7897f9db7c82b7b14b27d28",
50 | "T2": "8f5f191c956aefd5c960e57d2dfbab6761eb0ebc5efdba1aca1403dcc19e05296b16c9feb7636cb4ef2a360c5a148483",
51 | "domain": "6272832582a0ac96e6fe53e879422f24c51680b25fbf17bad22a35ea93ce5b47",
52 | "challenge": "341bdaa4b1a37f8c06348f38a4f80c5a2650a21d59f09e8305dcd3fc3ac30e2a"
53 | }
54 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-sha-256/proof/proof011.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "invalid multi-message signature, all messages revealed proof (extra valid message, modified total message count)",
3 | "signerPublicKey": "a820f230f6ae38503b86c70dc50b61c58a77e45c39ab25c0652bbaa8fa136f2851bd4781c9dcde39fc9d1d52c9e60268061e7d7632171d91aa8d460acee0e96f1e7c4cfb12d3ff9ab5d5dc91c277db75c845d649ef3c4f63aebc364cd55ded0c",
4 | "signature": "8339b285a4acd89dec7777c09543a43e3cc60684b0a6f8ab335da4825c96e1463e28f8c5f4fd0641d19cec5920d3a8ff4bedb6c9691454597bbd298288abed3632078557b2ace7d44caed846e1a0a1e8",
5 | "header": "11223344556677889900aabbccddeeff",
6 | "presentationHeader": "bed231d880675ed101ead304512e043ade9958dd0241ea70b4b3957fba941501",
7 | "messages": [
8 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
9 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
10 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
11 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
12 | "496694774c5604ab1b2544eababcf0f53278ff50",
13 | "515ae153e22aae04ad16f759e07237b4",
14 | "d183ddc6e2665aa4e2f088af",
15 | "ac55fb33a75909ed",
16 | "96012096",
17 | "",
18 | ""
19 | ],
20 | "disclosedIndexes": [
21 | 0,
22 | 2,
23 | 4,
24 | 6,
25 | 9
26 | ],
27 | "proof": "a2ed608e8e12ed21abc2bf154e462d744a367c7f1f969bdbf784a2a134c7db2d340394223a5397a3011b1c340ebc415199462ba6f31106d8a6da8b513b37a47afe93c9b3474d0d7a354b2edc1b88818b063332df774c141f7a07c48fe50d452f897739228c88afc797916dca01e8f03bd9c5375c7a7c59996e514bb952a436afd24457658acbaba5ddac2e693ac481356918cd38025d86b28650e909defe9604a7259f44386b861608be742af7775a2e71a6070e5836f5f54dc43c60096834a5b6da295bf8f081f72b7cdf7f3b4347fb3ff19edaa9e74055c8ba46dbcb7594fb2b06633bb5324192eb9be91be0d33e453b4d3127459de59a5e2193c900816f049a02cb9127dac894418105fa1641d5a206ec9c42177af9316f433417441478276ca0303da8f941bf2e0222a43251cf5c2bf6eac1961890aa740534e519c1767e1223392a3a286b0f4d91f7f25217a7862b8fcc1810cdcfddde2a01c80fcc90b632585fec12dc4ae8fea1918e9ddeb9414623a457e88f53f545841f9d5dcb1f8e160d1560770aa79d65e2eca8edeaecb73fb7e995608b820c4a64de6313a370ba05dc25ed7c1d185192084963652f2870341bdaa4b1a37f8c06348f38a4f80c5a2650a21d59f09e8305dcd3fc3ac30e2a",
28 | "result": {
29 | "valid": false,
30 | "reason": "extra valid message, modified total message count"
31 | },
32 | "trace": {
33 | "random_scalars": {
34 | "r1": "44679831fe60eca50938ef0e812e2a9284ad7971b6932a38c7303538b712e457",
35 | "r2": "6481692f89086cce11779e847ff884db8eebb85a13e81b2d0c79d6c1062069d8",
36 | "e_tilde": "721ce4c4c148a1d5826f326af6fd6ac2844f29533ba4127c3a43d222d51b7081",
37 | "r1_tilde": "1ecfaf5a079b0504b00a1f0d6fe8857291dd798291d7ad7454b398114393f37f",
38 | "r3_tilde": "0a4b3d59b34707bb9999bc6e2a6d382a2d2e214bff36ecd88639a14124b1622e",
39 | "m_tilde_scalars": [
40 | "7217411a9e329c7a5705e8db552274646e2949d62c288d7537dd62bc284715e4",
41 | "67d4d43660746759f598caac106a2b5f58ccd1c3eefaec31841a4f77d2548870",
42 | "715d965b1c3912d20505b381470ff1a528700b673e50ba89fd287e13171cc137",
43 | "4d3281a149674e58c9040fc7a10dd92cb9c7f76f6f0815a1afc3b09d74b92fe4",
44 | "438feebaa5894ca0da49992df2c97d872bf153eab07e08ff73b28131c46ff415",
45 | "602b723c8bbaec1b057d70f18269ae5e6de6197a5884967b03b933fa80006121"
46 | ]
47 | },
48 | "A_bar": "a2ed608e8e12ed21abc2bf154e462d744a367c7f1f969bdbf784a2a134c7db2d340394223a5397a3011b1c340ebc4151",
49 | "B_bar": "99462ba6f31106d8a6da8b513b37a47afe93c9b3474d0d7a354b2edc1b88818b063332df774c141f7a07c48fe50d452f",
50 | "D": "897739228c88afc797916dca01e8f03bd9c5375c7a7c59996e514bb952a436afd24457658acbaba5ddac2e693ac48135",
51 | "T1": "84719c2b5bb275ee74913dbf95fb9054f690c8e4035f1259e184e9024544bc4bbea9c244e7897f9db7c82b7b14b27d28",
52 | "T2": "8f5f191c956aefd5c960e57d2dfbab6761eb0ebc5efdba1aca1403dcc19e05296b16c9feb7636cb4ef2a360c5a148483",
53 | "domain": "6272832582a0ac96e6fe53e879422f24c51680b25fbf17bad22a35ea93ce5b47",
54 | "challenge": "341bdaa4b1a37f8c06348f38a4f80c5a2650a21d59f09e8305dcd3fc3ac30e2a"
55 | }
56 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-sha-256/proof/proof012.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "invalid multi-message signature, all messages revealed proof (truncated proof, one less undisclosed message)",
3 | "signerPublicKey": "a820f230f6ae38503b86c70dc50b61c58a77e45c39ab25c0652bbaa8fa136f2851bd4781c9dcde39fc9d1d52c9e60268061e7d7632171d91aa8d460acee0e96f1e7c4cfb12d3ff9ab5d5dc91c277db75c845d649ef3c4f63aebc364cd55ded0c",
4 | "signature": "8339b285a4acd89dec7777c09543a43e3cc60684b0a6f8ab335da4825c96e1463e28f8c5f4fd0641d19cec5920d3a8ff4bedb6c9691454597bbd298288abed3632078557b2ace7d44caed846e1a0a1e8",
5 | "header": "11223344556677889900aabbccddeeff",
6 | "presentationHeader": "bed231d880675ed101ead304512e043ade9958dd0241ea70b4b3957fba941501",
7 | "messages": [
8 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
9 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
10 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
11 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
12 | "496694774c5604ab1b2544eababcf0f53278ff50",
13 | "515ae153e22aae04ad16f759e07237b4",
14 | "d183ddc6e2665aa4e2f088af",
15 | "ac55fb33a75909ed",
16 | "96012096",
17 | ""
18 | ],
19 | "disclosedIndexes": [
20 | 0,
21 | 2,
22 | 4,
23 | 6
24 | ],
25 | "proof": "a2ed608e8e12ed21abc2bf154e462d744a367c7f1f969bdbf784a2a134c7db2d340394223a5397a3011b1c340ebc415199462ba6f31106d8a6da8b513b37a47afe93c9b3474d0d7a354b2edc1b88818b063332df774c141f7a07c48fe50d452f897739228c88afc797916dca01e8f03bd9c5375c7a7c59996e514bb952a436afd24457658acbaba5ddac2e693ac481356918cd38025d86b28650e909defe9604a7259f44386b861608be742af7775a2e71a6070e5836f5f54dc43c60096834a5b6da295bf8f081f72b7cdf7f3b4347fb3ff19edaa9e74055c8ba46dbcb7594fb2b06633bb5324192eb9be91be0d33e453b4d3127459de59a5e2193c900816f049a02cb9127dac894418105fa1641d5a206ec9c42177af9316f433417441478276ca0303da8f941bf2e0222a43251cf5c2bf6eac1961890aa740534e519c1767e1223392a3a286b0f4d91f7f25217a7862b8fcc1810cdcfddde2a01c80fcc90b632585fec12dc4ae8fea1918e9ddeb9414623a457e88f53f545841f9d5dcb1f8e160d1560770aa79d65e2eca8edeaecb73fb7e995608b820c4a64de6313a370ba05dc25ed7c1d185192084963652f2870",
26 | "result": {
27 | "valid": false,
28 | "reason": "truncated proof, one less undisclosed message"
29 | },
30 | "trace": {
31 | "random_scalars": {
32 | "r1": "44679831fe60eca50938ef0e812e2a9284ad7971b6932a38c7303538b712e457",
33 | "r2": "6481692f89086cce11779e847ff884db8eebb85a13e81b2d0c79d6c1062069d8",
34 | "e_tilde": "721ce4c4c148a1d5826f326af6fd6ac2844f29533ba4127c3a43d222d51b7081",
35 | "r1_tilde": "1ecfaf5a079b0504b00a1f0d6fe8857291dd798291d7ad7454b398114393f37f",
36 | "r3_tilde": "0a4b3d59b34707bb9999bc6e2a6d382a2d2e214bff36ecd88639a14124b1622e",
37 | "m_tilde_scalars": [
38 | "7217411a9e329c7a5705e8db552274646e2949d62c288d7537dd62bc284715e4",
39 | "67d4d43660746759f598caac106a2b5f58ccd1c3eefaec31841a4f77d2548870",
40 | "715d965b1c3912d20505b381470ff1a528700b673e50ba89fd287e13171cc137",
41 | "4d3281a149674e58c9040fc7a10dd92cb9c7f76f6f0815a1afc3b09d74b92fe4",
42 | "438feebaa5894ca0da49992df2c97d872bf153eab07e08ff73b28131c46ff415",
43 | "602b723c8bbaec1b057d70f18269ae5e6de6197a5884967b03b933fa80006121"
44 | ]
45 | },
46 | "A_bar": "a2ed608e8e12ed21abc2bf154e462d744a367c7f1f969bdbf784a2a134c7db2d340394223a5397a3011b1c340ebc4151",
47 | "B_bar": "99462ba6f31106d8a6da8b513b37a47afe93c9b3474d0d7a354b2edc1b88818b063332df774c141f7a07c48fe50d452f",
48 | "D": "897739228c88afc797916dca01e8f03bd9c5375c7a7c59996e514bb952a436afd24457658acbaba5ddac2e693ac48135",
49 | "T1": "84719c2b5bb275ee74913dbf95fb9054f690c8e4035f1259e184e9024544bc4bbea9c244e7897f9db7c82b7b14b27d28",
50 | "T2": "8f5f191c956aefd5c960e57d2dfbab6761eb0ebc5efdba1aca1403dcc19e05296b16c9feb7636cb4ef2a360c5a148483",
51 | "domain": "6272832582a0ac96e6fe53e879422f24c51680b25fbf17bad22a35ea93ce5b47",
52 | "challenge": "341bdaa4b1a37f8c06348f38a4f80c5a2650a21d59f09e8305dcd3fc3ac30e2a"
53 | }
54 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-sha-256/proof/proof013.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "invalid multi-message signature, all messages revealed proof (different header)",
3 | "signerPublicKey": "a820f230f6ae38503b86c70dc50b61c58a77e45c39ab25c0652bbaa8fa136f2851bd4781c9dcde39fc9d1d52c9e60268061e7d7632171d91aa8d460acee0e96f1e7c4cfb12d3ff9ab5d5dc91c277db75c845d649ef3c4f63aebc364cd55ded0c",
4 | "signature": "8339b285a4acd89dec7777c09543a43e3cc60684b0a6f8ab335da4825c96e1463e28f8c5f4fd0641d19cec5920d3a8ff4bedb6c9691454597bbd298288abed3632078557b2ace7d44caed846e1a0a1e8",
5 | "header": "ffeeddccbbaa00998877665544332211",
6 | "presentationHeader": "bed231d880675ed101ead304512e043ade9958dd0241ea70b4b3957fba941501",
7 | "messages": [
8 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
9 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
10 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
11 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
12 | "496694774c5604ab1b2544eababcf0f53278ff50",
13 | "515ae153e22aae04ad16f759e07237b4",
14 | "d183ddc6e2665aa4e2f088af",
15 | "ac55fb33a75909ed",
16 | "96012096",
17 | ""
18 | ],
19 | "disclosedIndexes": [
20 | 0,
21 | 2,
22 | 4,
23 | 6
24 | ],
25 | "proof": "a2ed608e8e12ed21abc2bf154e462d744a367c7f1f969bdbf784a2a134c7db2d340394223a5397a3011b1c340ebc415199462ba6f31106d8a6da8b513b37a47afe93c9b3474d0d7a354b2edc1b88818b063332df774c141f7a07c48fe50d452f897739228c88afc797916dca01e8f03bd9c5375c7a7c59996e514bb952a436afd24457658acbaba5ddac2e693ac481356918cd38025d86b28650e909defe9604a7259f44386b861608be742af7775a2e71a6070e5836f5f54dc43c60096834a5b6da295bf8f081f72b7cdf7f3b4347fb3ff19edaa9e74055c8ba46dbcb7594fb2b06633bb5324192eb9be91be0d33e453b4d3127459de59a5e2193c900816f049a02cb9127dac894418105fa1641d5a206ec9c42177af9316f433417441478276ca0303da8f941bf2e0222a43251cf5c2bf6eac1961890aa740534e519c1767e1223392a3a286b0f4d91f7f25217a7862b8fcc1810cdcfddde2a01c80fcc90b632585fec12dc4ae8fea1918e9ddeb9414623a457e88f53f545841f9d5dcb1f8e160d1560770aa79d65e2eca8edeaecb73fb7e995608b820c4a64de6313a370ba05dc25ed7c1d185192084963652f2870341bdaa4b1a37f8c06348f38a4f80c5a2650a21d59f09e8305dcd3fc3ac30e2a",
26 | "result": {
27 | "valid": false,
28 | "reason": "different header"
29 | },
30 | "trace": {
31 | "random_scalars": {
32 | "r1": "44679831fe60eca50938ef0e812e2a9284ad7971b6932a38c7303538b712e457",
33 | "r2": "6481692f89086cce11779e847ff884db8eebb85a13e81b2d0c79d6c1062069d8",
34 | "e_tilde": "721ce4c4c148a1d5826f326af6fd6ac2844f29533ba4127c3a43d222d51b7081",
35 | "r1_tilde": "1ecfaf5a079b0504b00a1f0d6fe8857291dd798291d7ad7454b398114393f37f",
36 | "r3_tilde": "0a4b3d59b34707bb9999bc6e2a6d382a2d2e214bff36ecd88639a14124b1622e",
37 | "m_tilde_scalars": [
38 | "7217411a9e329c7a5705e8db552274646e2949d62c288d7537dd62bc284715e4",
39 | "67d4d43660746759f598caac106a2b5f58ccd1c3eefaec31841a4f77d2548870",
40 | "715d965b1c3912d20505b381470ff1a528700b673e50ba89fd287e13171cc137",
41 | "4d3281a149674e58c9040fc7a10dd92cb9c7f76f6f0815a1afc3b09d74b92fe4",
42 | "438feebaa5894ca0da49992df2c97d872bf153eab07e08ff73b28131c46ff415",
43 | "602b723c8bbaec1b057d70f18269ae5e6de6197a5884967b03b933fa80006121"
44 | ]
45 | },
46 | "A_bar": "a2ed608e8e12ed21abc2bf154e462d744a367c7f1f969bdbf784a2a134c7db2d340394223a5397a3011b1c340ebc4151",
47 | "B_bar": "99462ba6f31106d8a6da8b513b37a47afe93c9b3474d0d7a354b2edc1b88818b063332df774c141f7a07c48fe50d452f",
48 | "D": "897739228c88afc797916dca01e8f03bd9c5375c7a7c59996e514bb952a436afd24457658acbaba5ddac2e693ac48135",
49 | "T1": "84719c2b5bb275ee74913dbf95fb9054f690c8e4035f1259e184e9024544bc4bbea9c244e7897f9db7c82b7b14b27d28",
50 | "T2": "8f5f191c956aefd5c960e57d2dfbab6761eb0ebc5efdba1aca1403dcc19e05296b16c9feb7636cb4ef2a360c5a148483",
51 | "domain": "6272832582a0ac96e6fe53e879422f24c51680b25fbf17bad22a35ea93ce5b47",
52 | "challenge": "341bdaa4b1a37f8c06348f38a4f80c5a2650a21d59f09e8305dcd3fc3ac30e2a"
53 | }
54 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-sha-256/proof/proof014.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "valid multi-message signature, multiple messages revealed proof, no header",
3 | "signerPublicKey": "a820f230f6ae38503b86c70dc50b61c58a77e45c39ab25c0652bbaa8fa136f2851bd4781c9dcde39fc9d1d52c9e60268061e7d7632171d91aa8d460acee0e96f1e7c4cfb12d3ff9ab5d5dc91c277db75c845d649ef3c4f63aebc364cd55ded0c",
4 | "signature": "8c87e2080859a97299c148427cd2fcf390d24bea850103a9748879039262ecf4f42206f6ef767f298b6a96b424c1e86c26f8fba62212d0e05b95261c2cc0e5fdc63a32731347e810fd12e9c58355aa0d",
5 | "header": "",
6 | "presentationHeader": "bed231d880675ed101ead304512e043ade9958dd0241ea70b4b3957fba941501",
7 | "messages": [
8 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
9 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
10 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
11 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
12 | "496694774c5604ab1b2544eababcf0f53278ff50",
13 | "515ae153e22aae04ad16f759e07237b4",
14 | "d183ddc6e2665aa4e2f088af",
15 | "ac55fb33a75909ed",
16 | "96012096",
17 | ""
18 | ],
19 | "disclosedIndexes": [
20 | 0,
21 | 2,
22 | 4,
23 | 6
24 | ],
25 | "proof": "81925c2e525d9fbb0ba95b438b5a13fff5874c7c0515c193628d7d143ddc3bb487771ad73658895997a88dd5b254ed29abc019bfca62c09b8dafb37e5f09b1d380e084ec3623d071ec38d6b8602af93aa0ddbada307c9309cca86be16db53dc7ac310574f509c712bb1a181d64ea3c1ee075c018a2bc773e2480b5c033ccb9bfea5af347a88ab83746c9342ba76db3675ff70ce9006d166fd813a81b448a632216521c864594f3f92965974914992f8d1845230915b11680cf44b25886c5670904ac2d88255c8c31aea7b072e9c4eb7e4c3fdd38836ae9d2e9fa271c8d9fd42f669a9938aeeba9d8ae613bf11f489ce947616f5cbaee95511dfaa5c73d85e4ddd2f29340f821dc2fb40db3eae5f5bc08467eb195e38d7d436b63e556ea653168282a23b53d5792a107f85b1203f82aab46f6940650760e5b320261ffc0ca5f15917b51e7d2ad4bcbec94de792e229db663abff23af392a5e73ce115c27e8492ec24a0815091c69874dbd9dae2d2eed000810c748a798a78a804a39034c6e745cee455812cc982eea7105948b2cb55b82278a77237fcbec4748e2d2255af0994dd09dba8ac60515a39b24632a2c1c840c4a70506add5b2eb0be9ff66e3ea8deae666f198edfbb1391c6834e6df4f1026d",
26 | "result": {
27 | "valid": true
28 | },
29 | "trace": {
30 | "random_scalars": {
31 | "r1": "44679831fe60eca50938ef0e812e2a9284ad7971b6932a38c7303538b712e457",
32 | "r2": "6481692f89086cce11779e847ff884db8eebb85a13e81b2d0c79d6c1062069d8",
33 | "e_tilde": "721ce4c4c148a1d5826f326af6fd6ac2844f29533ba4127c3a43d222d51b7081",
34 | "r1_tilde": "1ecfaf5a079b0504b00a1f0d6fe8857291dd798291d7ad7454b398114393f37f",
35 | "r3_tilde": "0a4b3d59b34707bb9999bc6e2a6d382a2d2e214bff36ecd88639a14124b1622e",
36 | "m_tilde_scalars": [
37 | "7217411a9e329c7a5705e8db552274646e2949d62c288d7537dd62bc284715e4",
38 | "67d4d43660746759f598caac106a2b5f58ccd1c3eefaec31841a4f77d2548870",
39 | "715d965b1c3912d20505b381470ff1a528700b673e50ba89fd287e13171cc137",
40 | "4d3281a149674e58c9040fc7a10dd92cb9c7f76f6f0815a1afc3b09d74b92fe4",
41 | "438feebaa5894ca0da49992df2c97d872bf153eab07e08ff73b28131c46ff415",
42 | "602b723c8bbaec1b057d70f18269ae5e6de6197a5884967b03b933fa80006121"
43 | ]
44 | },
45 | "A_bar": "81925c2e525d9fbb0ba95b438b5a13fff5874c7c0515c193628d7d143ddc3bb487771ad73658895997a88dd5b254ed29",
46 | "B_bar": "abc019bfca62c09b8dafb37e5f09b1d380e084ec3623d071ec38d6b8602af93aa0ddbada307c9309cca86be16db53dc7",
47 | "D": "ac310574f509c712bb1a181d64ea3c1ee075c018a2bc773e2480b5c033ccb9bfea5af347a88ab83746c9342ba76db367",
48 | "T1": "ada552bd7ee0d6914b89eaa0e9426b3bdbdfa7ecac26b3c118aefefc577095e894c1b4a828c184e091a563e09763f3a9",
49 | "T2": "818dd907bf0321cf982648f91d7201b357358d3b2f6f7678afa722d89bbe5eba4415e4a65567a03292d9c7859da20cad",
50 | "domain": "41c5fe0290d0da734ce9bba57bfe0dfc14f3f9cfef18a0d7438cf2075fd71cc7",
51 | "challenge": "4a70506add5b2eb0be9ff66e3ea8deae666f198edfbb1391c6834e6df4f1026d"
52 | }
53 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-sha-256/proof/proof015.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "valid multi-message signature, multiple messages revealed proof, no presentation header",
3 | "signerPublicKey": "a820f230f6ae38503b86c70dc50b61c58a77e45c39ab25c0652bbaa8fa136f2851bd4781c9dcde39fc9d1d52c9e60268061e7d7632171d91aa8d460acee0e96f1e7c4cfb12d3ff9ab5d5dc91c277db75c845d649ef3c4f63aebc364cd55ded0c",
4 | "signature": "8339b285a4acd89dec7777c09543a43e3cc60684b0a6f8ab335da4825c96e1463e28f8c5f4fd0641d19cec5920d3a8ff4bedb6c9691454597bbd298288abed3632078557b2ace7d44caed846e1a0a1e8",
5 | "header": "11223344556677889900aabbccddeeff",
6 | "presentationHeader": "",
7 | "messages": [
8 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
9 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
10 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
11 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
12 | "496694774c5604ab1b2544eababcf0f53278ff50",
13 | "515ae153e22aae04ad16f759e07237b4",
14 | "d183ddc6e2665aa4e2f088af",
15 | "ac55fb33a75909ed",
16 | "96012096",
17 | ""
18 | ],
19 | "disclosedIndexes": [
20 | 0,
21 | 2,
22 | 4,
23 | 6
24 | ],
25 | "proof": "a2ed608e8e12ed21abc2bf154e462d744a367c7f1f969bdbf784a2a134c7db2d340394223a5397a3011b1c340ebc415199462ba6f31106d8a6da8b513b37a47afe93c9b3474d0d7a354b2edc1b88818b063332df774c141f7a07c48fe50d452f897739228c88afc797916dca01e8f03bd9c5375c7a7c59996e514bb952a436afd24457658acbaba5ddac2e693ac48135672556358e78b5398f1a547a2a98dfe16230f244ba742dea737e4f810b4d94e03ac068ef840aaadf12b2ed51d3fb774c2a0a620019fd1f39c52c6f89a0e6067e3039413a91129791b2af215a82ad2356b6bc305c1d7a828fe519619dd026eaaf07ea81cee52b21aab3e8320519bf37c2bb228a8b580f899d84327bdc5e84a66000e8bac17d2fa039bb2246c8eacc623ccd9eb26e184a96a9e3a6702e1dbafe194772394b05251f72bcd2d20f542b15b2406f899791f6f285c7b469e7c7b9624147f305c38c903273a949f6e85b9774aeeccfafa432e2cdd7c8f97d1687741ed30d725444428dd87d9884711d9a46baaf0c04b03a2a228b7033be0841880134b03b15f698756eca5f37503a0411a9586d3027a8b8b9118e95a9949b2719e85e4a669d9e4b7bb6d4544c8cc558c30d79f9c85a87e1a95611400b7c7dac5673d800",
26 | "result": {
27 | "valid": true
28 | },
29 | "trace": {
30 | "random_scalars": {
31 | "r1": "44679831fe60eca50938ef0e812e2a9284ad7971b6932a38c7303538b712e457",
32 | "r2": "6481692f89086cce11779e847ff884db8eebb85a13e81b2d0c79d6c1062069d8",
33 | "e_tilde": "721ce4c4c148a1d5826f326af6fd6ac2844f29533ba4127c3a43d222d51b7081",
34 | "r1_tilde": "1ecfaf5a079b0504b00a1f0d6fe8857291dd798291d7ad7454b398114393f37f",
35 | "r3_tilde": "0a4b3d59b34707bb9999bc6e2a6d382a2d2e214bff36ecd88639a14124b1622e",
36 | "m_tilde_scalars": [
37 | "7217411a9e329c7a5705e8db552274646e2949d62c288d7537dd62bc284715e4",
38 | "67d4d43660746759f598caac106a2b5f58ccd1c3eefaec31841a4f77d2548870",
39 | "715d965b1c3912d20505b381470ff1a528700b673e50ba89fd287e13171cc137",
40 | "4d3281a149674e58c9040fc7a10dd92cb9c7f76f6f0815a1afc3b09d74b92fe4",
41 | "438feebaa5894ca0da49992df2c97d872bf153eab07e08ff73b28131c46ff415",
42 | "602b723c8bbaec1b057d70f18269ae5e6de6197a5884967b03b933fa80006121"
43 | ]
44 | },
45 | "A_bar": "a2ed608e8e12ed21abc2bf154e462d744a367c7f1f969bdbf784a2a134c7db2d340394223a5397a3011b1c340ebc4151",
46 | "B_bar": "99462ba6f31106d8a6da8b513b37a47afe93c9b3474d0d7a354b2edc1b88818b063332df774c141f7a07c48fe50d452f",
47 | "D": "897739228c88afc797916dca01e8f03bd9c5375c7a7c59996e514bb952a436afd24457658acbaba5ddac2e693ac48135",
48 | "T1": "84719c2b5bb275ee74913dbf95fb9054f690c8e4035f1259e184e9024544bc4bbea9c244e7897f9db7c82b7b14b27d28",
49 | "T2": "8f5f191c956aefd5c960e57d2dfbab6761eb0ebc5efdba1aca1403dcc19e05296b16c9feb7636cb4ef2a360c5a148483",
50 | "domain": "6272832582a0ac96e6fe53e879422f24c51680b25fbf17bad22a35ea93ce5b47",
51 | "challenge": "669d9e4b7bb6d4544c8cc558c30d79f9c85a87e1a95611400b7c7dac5673d800"
52 | }
53 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-sha-256/signature/signature001.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "valid single message signature",
3 | "signerKeyPair": {
4 | "secretKey": "60e55110f76883a13d030b2f6bd11883422d5abde717569fc0731f51237169fc",
5 | "publicKey": "a820f230f6ae38503b86c70dc50b61c58a77e45c39ab25c0652bbaa8fa136f2851bd4781c9dcde39fc9d1d52c9e60268061e7d7632171d91aa8d460acee0e96f1e7c4cfb12d3ff9ab5d5dc91c277db75c845d649ef3c4f63aebc364cd55ded0c"
6 | },
7 | "header": "11223344556677889900aabbccddeeff",
8 | "messages": [
9 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02"
10 | ],
11 | "signature": "84773160b824e194073a57493dac1a20b667af70cd2352d8af241c77658da5253aa8458317cca0eae615690d55b1f27164657dcafee1d5c1973947aa70e2cfbb4c892340be5969920d0916067b4565a0",
12 | "result": {
13 | "valid": true
14 | },
15 | "trace": {
16 | "B": "92d264aed02bf23de022ebe778c4f929fddf829f504e451d011ed89a313b8167ac947332e1648157ceffc6e6e41ab255",
17 | "domain": "25d57fab92a8274c68fde5c3f16d4b275e4a156f211ae34b3ab32fbaf506ed5c"
18 | }
19 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-sha-256/signature/signature002.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "invalid single message signature (modified message)",
3 | "signerKeyPair": {
4 | "secretKey": "60e55110f76883a13d030b2f6bd11883422d5abde717569fc0731f51237169fc",
5 | "publicKey": "a820f230f6ae38503b86c70dc50b61c58a77e45c39ab25c0652bbaa8fa136f2851bd4781c9dcde39fc9d1d52c9e60268061e7d7632171d91aa8d460acee0e96f1e7c4cfb12d3ff9ab5d5dc91c277db75c845d649ef3c4f63aebc364cd55ded0c"
6 | },
7 | "header": "11223344556677889900aabbccddeeff",
8 | "messages": [
9 | ""
10 | ],
11 | "signature": "84773160b824e194073a57493dac1a20b667af70cd2352d8af241c77658da5253aa8458317cca0eae615690d55b1f27164657dcafee1d5c1973947aa70e2cfbb4c892340be5969920d0916067b4565a0",
12 | "result": {
13 | "valid": false,
14 | "reason": "modified message"
15 | },
16 | "trace": {
17 | "B": "92d264aed02bf23de022ebe778c4f929fddf829f504e451d011ed89a313b8167ac947332e1648157ceffc6e6e41ab255",
18 | "domain": "25d57fab92a8274c68fde5c3f16d4b275e4a156f211ae34b3ab32fbaf506ed5c"
19 | }
20 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-sha-256/signature/signature003.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "invalid single message signature (extra unsigned message)",
3 | "signerKeyPair": {
4 | "secretKey": "60e55110f76883a13d030b2f6bd11883422d5abde717569fc0731f51237169fc",
5 | "publicKey": "a820f230f6ae38503b86c70dc50b61c58a77e45c39ab25c0652bbaa8fa136f2851bd4781c9dcde39fc9d1d52c9e60268061e7d7632171d91aa8d460acee0e96f1e7c4cfb12d3ff9ab5d5dc91c277db75c845d649ef3c4f63aebc364cd55ded0c"
6 | },
7 | "header": "11223344556677889900aabbccddeeff",
8 | "messages": [
9 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
10 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80"
11 | ],
12 | "signature": "84773160b824e194073a57493dac1a20b667af70cd2352d8af241c77658da5253aa8458317cca0eae615690d55b1f27164657dcafee1d5c1973947aa70e2cfbb4c892340be5969920d0916067b4565a0",
13 | "result": {
14 | "valid": false,
15 | "reason": "extra unsigned message"
16 | },
17 | "trace": {
18 | "B": "92d264aed02bf23de022ebe778c4f929fddf829f504e451d011ed89a313b8167ac947332e1648157ceffc6e6e41ab255",
19 | "domain": "25d57fab92a8274c68fde5c3f16d4b275e4a156f211ae34b3ab32fbaf506ed5c"
20 | }
21 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-sha-256/signature/signature004.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "valid multi-message signature",
3 | "signerKeyPair": {
4 | "secretKey": "60e55110f76883a13d030b2f6bd11883422d5abde717569fc0731f51237169fc",
5 | "publicKey": "a820f230f6ae38503b86c70dc50b61c58a77e45c39ab25c0652bbaa8fa136f2851bd4781c9dcde39fc9d1d52c9e60268061e7d7632171d91aa8d460acee0e96f1e7c4cfb12d3ff9ab5d5dc91c277db75c845d649ef3c4f63aebc364cd55ded0c"
6 | },
7 | "header": "11223344556677889900aabbccddeeff",
8 | "messages": [
9 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
10 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
11 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
12 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
13 | "496694774c5604ab1b2544eababcf0f53278ff50",
14 | "515ae153e22aae04ad16f759e07237b4",
15 | "d183ddc6e2665aa4e2f088af",
16 | "ac55fb33a75909ed",
17 | "96012096",
18 | ""
19 | ],
20 | "signature": "8339b285a4acd89dec7777c09543a43e3cc60684b0a6f8ab335da4825c96e1463e28f8c5f4fd0641d19cec5920d3a8ff4bedb6c9691454597bbd298288abed3632078557b2ace7d44caed846e1a0a1e8",
21 | "result": {
22 | "valid": true
23 | },
24 | "trace": {
25 | "B": "84f48376f7df6af40bc329cf484cdbfd0b19d0b326fccab4e9d8f00d1dbcf48139d498b19667f203cf8a1d1f8340c522",
26 | "domain": "6272832582a0ac96e6fe53e879422f24c51680b25fbf17bad22a35ea93ce5b47"
27 | }
28 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-sha-256/signature/signature005.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "invalid multi-message signature (missing messages)",
3 | "signerKeyPair": {
4 | "secretKey": "60e55110f76883a13d030b2f6bd11883422d5abde717569fc0731f51237169fc",
5 | "publicKey": "a820f230f6ae38503b86c70dc50b61c58a77e45c39ab25c0652bbaa8fa136f2851bd4781c9dcde39fc9d1d52c9e60268061e7d7632171d91aa8d460acee0e96f1e7c4cfb12d3ff9ab5d5dc91c277db75c845d649ef3c4f63aebc364cd55ded0c"
6 | },
7 | "header": "11223344556677889900aabbccddeeff",
8 | "messages": [
9 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
10 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80"
11 | ],
12 | "signature": "8339b285a4acd89dec7777c09543a43e3cc60684b0a6f8ab335da4825c96e1463e28f8c5f4fd0641d19cec5920d3a8ff4bedb6c9691454597bbd298288abed3632078557b2ace7d44caed846e1a0a1e8",
13 | "result": {
14 | "valid": false,
15 | "reason": "missing messages"
16 | },
17 | "trace": {
18 | "B": "84f48376f7df6af40bc329cf484cdbfd0b19d0b326fccab4e9d8f00d1dbcf48139d498b19667f203cf8a1d1f8340c522",
19 | "domain": "6272832582a0ac96e6fe53e879422f24c51680b25fbf17bad22a35ea93ce5b47"
20 | }
21 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-sha-256/signature/signature006.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "invalid multi-message signature (re-ordered messages)",
3 | "signerKeyPair": {
4 | "secretKey": "60e55110f76883a13d030b2f6bd11883422d5abde717569fc0731f51237169fc",
5 | "publicKey": "a820f230f6ae38503b86c70dc50b61c58a77e45c39ab25c0652bbaa8fa136f2851bd4781c9dcde39fc9d1d52c9e60268061e7d7632171d91aa8d460acee0e96f1e7c4cfb12d3ff9ab5d5dc91c277db75c845d649ef3c4f63aebc364cd55ded0c"
6 | },
7 | "header": "11223344556677889900aabbccddeeff",
8 | "messages": [
9 | "",
10 | "96012096",
11 | "ac55fb33a75909ed",
12 | "d183ddc6e2665aa4e2f088af",
13 | "515ae153e22aae04ad16f759e07237b4",
14 | "496694774c5604ab1b2544eababcf0f53278ff50",
15 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
16 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
17 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
18 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02"
19 | ],
20 | "signature": "8339b285a4acd89dec7777c09543a43e3cc60684b0a6f8ab335da4825c96e1463e28f8c5f4fd0641d19cec5920d3a8ff4bedb6c9691454597bbd298288abed3632078557b2ace7d44caed846e1a0a1e8",
21 | "result": {
22 | "valid": false,
23 | "reason": "re-ordered messages"
24 | },
25 | "trace": {
26 | "B": "84f48376f7df6af40bc329cf484cdbfd0b19d0b326fccab4e9d8f00d1dbcf48139d498b19667f203cf8a1d1f8340c522",
27 | "domain": "6272832582a0ac96e6fe53e879422f24c51680b25fbf17bad22a35ea93ce5b47"
28 | }
29 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-sha-256/signature/signature007.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "invalid multi-message signature (wrong public key)",
3 | "signerKeyPair": {
4 | "secretKey": "60e55110f76883a13d030b2f6bd11883422d5abde717569fc0731f51237169fc",
5 | "publicKey": "b064bd8d1ba99503cbb7f9d7ea00bce877206a85b1750e5583dd9399828a4d20610cb937ea928d90404c239b2835ffb104220a9c66a4c9ed3b54c0cac9ea465d0429556b438ceefb59650ddf67e7a8f103677561b7ef7fe3c3357ec6b94d41c6"
6 | },
7 | "header": "11223344556677889900aabbccddeeff",
8 | "messages": [
9 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
10 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
11 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
12 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
13 | "496694774c5604ab1b2544eababcf0f53278ff50",
14 | "515ae153e22aae04ad16f759e07237b4",
15 | "d183ddc6e2665aa4e2f088af",
16 | "ac55fb33a75909ed",
17 | "96012096",
18 | ""
19 | ],
20 | "signature": "8339b285a4acd89dec7777c09543a43e3cc60684b0a6f8ab335da4825c96e1463e28f8c5f4fd0641d19cec5920d3a8ff4bedb6c9691454597bbd298288abed3632078557b2ace7d44caed846e1a0a1e8",
21 | "result": {
22 | "valid": false,
23 | "reason": "wrong public key"
24 | },
25 | "trace": {
26 | "B": "84f48376f7df6af40bc329cf484cdbfd0b19d0b326fccab4e9d8f00d1dbcf48139d498b19667f203cf8a1d1f8340c522",
27 | "domain": "6272832582a0ac96e6fe53e879422f24c51680b25fbf17bad22a35ea93ce5b47"
28 | }
29 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-sha-256/signature/signature008.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "invalid multi-message signature (different header)",
3 | "signerKeyPair": {
4 | "secretKey": "60e55110f76883a13d030b2f6bd11883422d5abde717569fc0731f51237169fc",
5 | "publicKey": "a820f230f6ae38503b86c70dc50b61c58a77e45c39ab25c0652bbaa8fa136f2851bd4781c9dcde39fc9d1d52c9e60268061e7d7632171d91aa8d460acee0e96f1e7c4cfb12d3ff9ab5d5dc91c277db75c845d649ef3c4f63aebc364cd55ded0c"
6 | },
7 | "header": "ffeeddccbbaa00998877665544332211",
8 | "messages": [
9 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
10 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
11 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
12 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
13 | "496694774c5604ab1b2544eababcf0f53278ff50",
14 | "515ae153e22aae04ad16f759e07237b4",
15 | "d183ddc6e2665aa4e2f088af",
16 | "ac55fb33a75909ed",
17 | "96012096",
18 | ""
19 | ],
20 | "signature": "8339b285a4acd89dec7777c09543a43e3cc60684b0a6f8ab335da4825c96e1463e28f8c5f4fd0641d19cec5920d3a8ff4bedb6c9691454597bbd298288abed3632078557b2ace7d44caed846e1a0a1e8",
21 | "result": {
22 | "valid": false,
23 | "reason": "different header"
24 | },
25 | "trace": {
26 | "B": "84f48376f7df6af40bc329cf484cdbfd0b19d0b326fccab4e9d8f00d1dbcf48139d498b19667f203cf8a1d1f8340c522",
27 | "domain": "6272832582a0ac96e6fe53e879422f24c51680b25fbf17bad22a35ea93ce5b47"
28 | }
29 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-sha-256/signature/signature009.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "invalid multi-message signature (re-ordered(randomly shuffled) messages)",
3 | "signerKeyPair": {
4 | "secretKey": "60e55110f76883a13d030b2f6bd11883422d5abde717569fc0731f51237169fc",
5 | "publicKey": "a820f230f6ae38503b86c70dc50b61c58a77e45c39ab25c0652bbaa8fa136f2851bd4781c9dcde39fc9d1d52c9e60268061e7d7632171d91aa8d460acee0e96f1e7c4cfb12d3ff9ab5d5dc91c277db75c845d649ef3c4f63aebc364cd55ded0c"
6 | },
7 | "header": "11223344556677889900aabbccddeeff",
8 | "messages": [
9 | "ac55fb33a75909ed",
10 | "",
11 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
12 | "d183ddc6e2665aa4e2f088af",
13 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
14 | "96012096",
15 | "515ae153e22aae04ad16f759e07237b4",
16 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
17 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
18 | "496694774c5604ab1b2544eababcf0f53278ff50"
19 | ],
20 | "signature": "8339b285a4acd89dec7777c09543a43e3cc60684b0a6f8ab335da4825c96e1463e28f8c5f4fd0641d19cec5920d3a8ff4bedb6c9691454597bbd298288abed3632078557b2ace7d44caed846e1a0a1e8",
21 | "result": {
22 | "valid": false,
23 | "reason": "re-ordered(randomly shuffled) messages"
24 | },
25 | "trace": {
26 | "B": "84f48376f7df6af40bc329cf484cdbfd0b19d0b326fccab4e9d8f00d1dbcf48139d498b19667f203cf8a1d1f8340c522",
27 | "domain": "6272832582a0ac96e6fe53e879422f24c51680b25fbf17bad22a35ea93ce5b47"
28 | }
29 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-sha-256/signature/signature010.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "valid multi-message signature, no header",
3 | "signerKeyPair": {
4 | "secretKey": "60e55110f76883a13d030b2f6bd11883422d5abde717569fc0731f51237169fc",
5 | "publicKey": "a820f230f6ae38503b86c70dc50b61c58a77e45c39ab25c0652bbaa8fa136f2851bd4781c9dcde39fc9d1d52c9e60268061e7d7632171d91aa8d460acee0e96f1e7c4cfb12d3ff9ab5d5dc91c277db75c845d649ef3c4f63aebc364cd55ded0c"
6 | },
7 | "header": "",
8 | "messages": [
9 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
10 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
11 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
12 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
13 | "496694774c5604ab1b2544eababcf0f53278ff50",
14 | "515ae153e22aae04ad16f759e07237b4",
15 | "d183ddc6e2665aa4e2f088af",
16 | "ac55fb33a75909ed",
17 | "96012096",
18 | ""
19 | ],
20 | "signature": "8c87e2080859a97299c148427cd2fcf390d24bea850103a9748879039262ecf4f42206f6ef767f298b6a96b424c1e86c26f8fba62212d0e05b95261c2cc0e5fdc63a32731347e810fd12e9c58355aa0d",
21 | "result": {
22 | "valid": true
23 | },
24 | "trace": {
25 | "B": "98e38eadb6a2232cf91f41861089cda14d7e3ddef0c6eaba4d11a2732f66408f394d58301ffcc8fcfb3c89bb75136f61",
26 | "domain": "41c5fe0290d0da734ce9bba57bfe0dfc14f3f9cfef18a0d7438cf2075fd71cc7"
27 | }
28 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-shake-256/MapMessageToScalarAsHash.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "MapMessageToScalar fixture",
3 | "dst": "4242535f424c53313233383147315f584f463a5348414b452d3235365f535357555f524f5f4832475f484d32535f4d41505f4d53475f544f5f5343414c41525f41535f484153485f",
4 | "cases": [
5 | {
6 | "message": "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
7 | "scalar": "1e0dea6c9ea8543731d331a0ab5f64954c188542b33c5bbc8ae5b3a830f2d99f"
8 | },
9 | {
10 | "message": "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
11 | "scalar": "3918a40fb277b4c796805d1371931e08a314a8bf8200a92463c06054d2c56a9f"
12 | },
13 | {
14 | "message": "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
15 | "scalar": "6642b981edf862adf34214d933c5d042bfa8f7ef343165c325131e2ffa32fa94"
16 | },
17 | {
18 | "message": "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
19 | "scalar": "33c021236956a2006f547e22ff8790c9d2d40c11770c18cce6037786c6f23512"
20 | },
21 | {
22 | "message": "496694774c5604ab1b2544eababcf0f53278ff50",
23 | "scalar": "52b249313abbe323e7d84230550f448d99edfb6529dec8c4e783dbd6dd2a8471"
24 | },
25 | {
26 | "message": "515ae153e22aae04ad16f759e07237b4",
27 | "scalar": "2a50bdcbe7299e47e1046100aadffe35b4247bf3f059d525f921537484dd54fc"
28 | },
29 | {
30 | "message": "d183ddc6e2665aa4e2f088af",
31 | "scalar": "0e92550915e275f8cfd6da5e08e334d8ef46797ee28fa29de40a1ebccd9d95d3"
32 | },
33 | {
34 | "message": "ac55fb33a75909ed",
35 | "scalar": "4c28f612e6c6f82f51f95e1e4faaf597547f93f6689827a6dcda3cb94971d356"
36 | },
37 | {
38 | "message": "96012096",
39 | "scalar": "1db51bedc825b85efe1dab3e3ab0274fa82bbd39732be3459525faf70f197650"
40 | },
41 | {
42 | "message": "",
43 | "scalar": "27878da72f7775e709bb693d81b819dc4e9fa60711f4ea927740e40073489e78"
44 | }
45 | ]
46 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-shake-256/generators.json:
--------------------------------------------------------------------------------
1 | {
2 | "P1": "8929dfbc7e6642c4ed9cba0856e493f8b9d7d5fcb0c31ef8fdcd34d50648a56c795e106e9eada6e0bda386b414150755",
3 | "Q1": "a9d40131066399fd41af51d883f4473b0dcd7d028d3d34ef17f3241d204e28507d7ecae032afa1d5490849b7678ec1f8",
4 | "MsgGenerators": [
5 | "903c7ca0b7e78a2017d0baf74103bd00ca8ff9bf429f834f071c75ffe6bfdec6d6dca15417e4ac08ca4ae1e78b7adc0e",
6 | "84321f5855bfb6b001f0dfcb47ac9b5cc68f1a4edd20f0ec850e0563b27d2accee6edff1a26b357762fb24e8ddbb6fcb",
7 | "b3060dff0d12a32819e08da00e61810676cc9185fdd750e5ef82b1a9798c7d76d63de3b6225d6c9a479d6c21a7c8bf93",
8 | "8f1093d1e553cdead3c70ce55b6d664e5d1912cc9edfdd37bf1dad11ca396a0a8bb062092d391ebf8790ea5722413f68",
9 | "990824e00b48a68c3d9a308e8c52a57b1bc84d1cf5d3c0f8c6fb6b1230e4e5b8eb752fb374da0b1ef687040024868140",
10 | "b86d1c6ab8ce22bc53f625d1ce9796657f18060fcb1893ce8931156ef992fe56856199f8fa6c998e5d855a354a26b0dd",
11 | "b4cdd98c5c1e64cb324e0c57954f719d5c5f9e8d991fd8e159b31c8d079c76a67321a30311975c706578d3a0ddc313b7",
12 | "8311492d43ec9182a5fc44a75419b09547e311251fe38b6864dc1e706e29446cb3ea4d501634eb13327245fd8a574f77",
13 | "ac00b493f92d17837a28d1f5b07991ca5ab9f370ae40d4f9b9f2711749ca200110ce6517dc28400d4ea25dddc146cacc",
14 | "965a6c62451d4be6cb175dec39727dc665762673ee42bf0ac13a37a74784fbd61e84e0915277a6f59863b2bb4f5f6005"
15 | ]
16 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-shake-256/h2s.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "Hash to scalar output",
3 | "message": "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
4 | "dst": "4242535f424c53313233383147315f584f463a5348414b452d3235365f535357555f524f5f4832475f484d32535f4832535f",
5 | "scalar": "0500031f786fde5326aa9370dd7ffe9535ec7a52cf2b8f432cad5d9acfb73cd3"
6 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-shake-256/keypair.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "key pair fixture",
3 | "keyMaterial": "746869732d49532d6a7573742d616e2d546573742d494b4d2d746f2d67656e65726174652d246528724074232d6b6579",
4 | "keyInfo": "746869732d49532d736f6d652d6b65792d6d657461646174612d746f2d62652d757365642d696e2d746573742d6b65792d67656e",
5 | "keyDst": "4242535f424c53313233383147315f584f463a5348414b452d3235365f535357555f524f5f4832475f484d32535f4b455947454e5f4453545f",
6 | "keyPair": {
7 | "secretKey": "2eee0f60a8a3a8bec0ee942bfd46cbdae9a0738ee68f5a64e7238311cf09a079",
8 | "publicKey": "92d37d1d6cd38fea3a873953333eab23a4c0377e3e049974eb62bd45949cdeb18fb0490edcd4429adff56e65cbce42cf188b31bddbd619e419b99c2c41b38179eb001963bc3decaae0d9f702c7a8c004f207f46c734a5eae2e8e82833f3e7ea5"
9 | }
10 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-shake-256/mockedRng.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "mocked random scalars",
3 | "seed": "332e313431353932363533353839373933323338343632363433333833323739",
4 | "dst": "4242535f424c53313233383147315f584f463a5348414b452d3235365f535357555f524f5f4832475f484d32535f4d4f434b5f52414e444f4d5f5343414c4152535f4453545f",
5 | "count": 10,
6 | "mockedScalars": [
7 | "1004262112c3eaa95941b2b0d1311c09c845db0099a50e67eda628ad26b43083",
8 | "6da7f145a94c1fa7f116b2482d59e4d466fe49c955ae8726e79453065156a9a4",
9 | "05017919b3607e78c51e8ec34329955d49c8c90e4488079c43e74824e98f1306",
10 | "4d451dad519b6a226bba79e11b44c441f1a74800eecfec6a2e2d79ea65b9d32d",
11 | "5e7e4894e6dbe68023bc92ef15c410b01f3828109fc72b3b5ab159fc427b3f51",
12 | "646e3014f49accb375253d268eb6c7f3289a1510f1e9452b612dd73a06ec5dd4",
13 | "363ecc4c1f9d6d9144374de8f1f7991405e3345a3ec49dd485a39982753c11a4",
14 | "12e592fe28d91d7b92a198c29afaa9d5329a4dcfdaf8b08557807412faeb4ac6",
15 | "513325acdcdec7ea572360587b350a8b095ca19bdd8258c5c69d375e8706141a",
16 | "6474fceba35e7e17365dde1a0284170180e446ae96c82943290d7baa3a6ed429"
17 | ]
18 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-shake-256/proof/proof001.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "valid single message signature, single-message revealed proof",
3 | "signerPublicKey": "92d37d1d6cd38fea3a873953333eab23a4c0377e3e049974eb62bd45949cdeb18fb0490edcd4429adff56e65cbce42cf188b31bddbd619e419b99c2c41b38179eb001963bc3decaae0d9f702c7a8c004f207f46c734a5eae2e8e82833f3e7ea5",
4 | "signature": "b9a622a4b404e6ca4c85c15739d2124a1deb16df750be202e2430e169bc27fb71c44d98e6d40792033e1c452145ada95030832c5dc778334f2f1b528eced21b0b97a12025a283d78b7136bb9825d04ef",
5 | "header": "11223344556677889900aabbccddeeff",
6 | "presentationHeader": "bed231d880675ed101ead304512e043ade9958dd0241ea70b4b3957fba941501",
7 | "messages": [
8 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02"
9 | ],
10 | "disclosedIndexes": [
11 | 0
12 | ],
13 | "proof": "89e4ab0c160880e0c2f12a754b9c051ed7f5fccfee3d5cbbb62e1239709196c737fff4303054660f8fcd08267a5de668a2e395ebe8866bdcb0dff9786d7014fa5e3c8cf7b41f8d7510e27d307f18032f6b788e200b9d6509f40ce1d2f962ceedb023d58ee44d660434e6ba60ed0da1a5d2cde031b483684cd7c5b13295a82f57e209b584e8fe894bcc964117bf3521b43d8e2eb59ce31f34d68b39f05bb2c625e4de5e61e95ff38bfd62ab07105d016414b45b01625c69965ad3c8a933e7b25d93daeb777302b966079827a99178240e6c3f13b7db2fb1f14790940e239d775ab32f539bdf9f9b582b250b05882996832652f7f5d3b6e04744c73ada1702d6791940ccbd75e719537f7ace6ee817298d",
14 | "result": {
15 | "valid": true
16 | },
17 | "trace": {
18 | "random_scalars": {
19 | "r1": "1308e6f945f663b96de1c76461cf7d7f88b92eb99a9034685150db443d733881",
20 | "r2": "25f81cb69a8fac6fb55d44a084557258575d1003be2bd94f1922dad2c3e447fd",
21 | "e_tilde": "5e8041a7ab02976ee50226c4b062b47d38829bbf42ee7eb899b29720377a584c",
22 | "r1_tilde": "3bbf1d5dc2904dbb7b2ba75c5dce8a5ad2d56a359c13ff0fa5fcb1339cd2fe58",
23 | "r3_tilde": "016b1460eee7707c524a86a4aedeb826ce9597b42906dccaa96c6b49a8ea7da2",
24 | "m_tilde_scalars": []
25 | },
26 | "A_bar": "89e4ab0c160880e0c2f12a754b9c051ed7f5fccfee3d5cbbb62e1239709196c737fff4303054660f8fcd08267a5de668",
27 | "B_bar": "a2e395ebe8866bdcb0dff9786d7014fa5e3c8cf7b41f8d7510e27d307f18032f6b788e200b9d6509f40ce1d2f962ceed",
28 | "D": "b023d58ee44d660434e6ba60ed0da1a5d2cde031b483684cd7c5b13295a82f57e209b584e8fe894bcc964117bf3521b4",
29 | "T1": "91a10e73cf4090812e8ea25f31aaa61be53fcb42ce86e9f0e5df6f6dac4c3eee62ac846b0b83a5cfcbe78315175a4961",
30 | "T2": "988f3d473186634e41478dc4527cf240e64de23a763037454d39a876862ebc617738ba6c458142e3746b01eab58ca8d7",
31 | "domain": "2f18dd269c11c512256a9d1d57e61a7d2de6ebcf41cac3053f37afedc4e650a9",
32 | "challenge": "2652f7f5d3b6e04744c73ada1702d6791940ccbd75e719537f7ace6ee817298d"
33 | }
34 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-shake-256/proof/proof002.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "valid multi-message signature, all messages revealed proof",
3 | "signerPublicKey": "92d37d1d6cd38fea3a873953333eab23a4c0377e3e049974eb62bd45949cdeb18fb0490edcd4429adff56e65cbce42cf188b31bddbd619e419b99c2c41b38179eb001963bc3decaae0d9f702c7a8c004f207f46c734a5eae2e8e82833f3e7ea5",
4 | "signature": "956a3427b1b8e3642e60e6a7990b67626811adeec7a0a6cb4f770cdd7c20cf08faabb913ac94d18e1e92832e924cb6e202912b624261fc6c59b0fea801547f67fb7d3253e1e2acbcf90ef59a6911931e",
5 | "header": "11223344556677889900aabbccddeeff",
6 | "presentationHeader": "bed231d880675ed101ead304512e043ade9958dd0241ea70b4b3957fba941501",
7 | "messages": [
8 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
9 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
10 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
11 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
12 | "496694774c5604ab1b2544eababcf0f53278ff50",
13 | "515ae153e22aae04ad16f759e07237b4",
14 | "d183ddc6e2665aa4e2f088af",
15 | "ac55fb33a75909ed",
16 | "96012096",
17 | ""
18 | ],
19 | "disclosedIndexes": [
20 | 0,
21 | 1,
22 | 2,
23 | 3,
24 | 4,
25 | 5,
26 | 6,
27 | 7,
28 | 8,
29 | 9
30 | ],
31 | "proof": "91b0f598268c57b67bc9e55327c3c2b9b1654be89a0cf963ab392fa9e1637c565241d71fd6d7bbd7dfe243de85a9bac8b7461575c1e13b5055fed0b51fd0ec1433096607755b2f2f9ba6dc614dfa456916ca0d7fc6482b39c679cfb747a50ea1b3dd7ed57aaadc348361e2501a17317352e555a333e014e8e7d71eef808ae4f8fbdf45cd19fde45038bb310d5135f5205fc550b077e381fb3a3543dca31a0d8bba97bc0b660a5aa239eb74921e184aa3035fa01eaba32f52029319ec3df4fa4a4f716edb31a6ce19a19dbb971380099345070bd0fdeecf7c4774a33e0a116e069d5e215992fb637984802066dee6919146ae50b70ea52332dfe57f6e05c66e99f1764d8b890d121d65bfcc2984886ee0",
32 | "result": {
33 | "valid": true
34 | },
35 | "trace": {
36 | "random_scalars": {
37 | "r1": "1308e6f945f663b96de1c76461cf7d7f88b92eb99a9034685150db443d733881",
38 | "r2": "25f81cb69a8fac6fb55d44a084557258575d1003be2bd94f1922dad2c3e447fd",
39 | "e_tilde": "5e8041a7ab02976ee50226c4b062b47d38829bbf42ee7eb899b29720377a584c",
40 | "r1_tilde": "3bbf1d5dc2904dbb7b2ba75c5dce8a5ad2d56a359c13ff0fa5fcb1339cd2fe58",
41 | "r3_tilde": "016b1460eee7707c524a86a4aedeb826ce9597b42906dccaa96c6b49a8ea7da2",
42 | "m_tilde_scalars": []
43 | },
44 | "A_bar": "91b0f598268c57b67bc9e55327c3c2b9b1654be89a0cf963ab392fa9e1637c565241d71fd6d7bbd7dfe243de85a9bac8",
45 | "B_bar": "b7461575c1e13b5055fed0b51fd0ec1433096607755b2f2f9ba6dc614dfa456916ca0d7fc6482b39c679cfb747a50ea1",
46 | "D": "b3dd7ed57aaadc348361e2501a17317352e555a333e014e8e7d71eef808ae4f8fbdf45cd19fde45038bb310d5135f520",
47 | "T1": "8890adfc78da24768d59dbfdb3f380e2793e9018b20c23e9ba05baa60f1b21456bc047a5d27049dab5dc6a94696ce711",
48 | "T2": "a49f953636d3651a3ae6fe45a99a2e4fec079eef3be8b8a6a4ba70885d7e028642f7224e9f451529915c88a7edc59fbe",
49 | "domain": "6f7ee8de30835599bb540d2cb4dd02fd0c6cf8246f14c9ee9a8463f7fd400f7b",
50 | "challenge": "46ae50b70ea52332dfe57f6e05c66e99f1764d8b890d121d65bfcc2984886ee0"
51 | }
52 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-shake-256/proof/proof003.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "valid multi-message signature, multiple messages revealed proof",
3 | "signerPublicKey": "92d37d1d6cd38fea3a873953333eab23a4c0377e3e049974eb62bd45949cdeb18fb0490edcd4429adff56e65cbce42cf188b31bddbd619e419b99c2c41b38179eb001963bc3decaae0d9f702c7a8c004f207f46c734a5eae2e8e82833f3e7ea5",
4 | "signature": "956a3427b1b8e3642e60e6a7990b67626811adeec7a0a6cb4f770cdd7c20cf08faabb913ac94d18e1e92832e924cb6e202912b624261fc6c59b0fea801547f67fb7d3253e1e2acbcf90ef59a6911931e",
5 | "header": "11223344556677889900aabbccddeeff",
6 | "presentationHeader": "bed231d880675ed101ead304512e043ade9958dd0241ea70b4b3957fba941501",
7 | "messages": [
8 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
9 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
10 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
11 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
12 | "496694774c5604ab1b2544eababcf0f53278ff50",
13 | "515ae153e22aae04ad16f759e07237b4",
14 | "d183ddc6e2665aa4e2f088af",
15 | "ac55fb33a75909ed",
16 | "96012096",
17 | ""
18 | ],
19 | "disclosedIndexes": [
20 | 0,
21 | 2,
22 | 4,
23 | 6
24 | ],
25 | "proof": "b1f8bf99a11c39f04e2a032183c1ead12956ad322dd06799c50f20fb8cf6b0ac279210ef5a2920a7be3ec2aa0911ace7b96811a98f3c1cceba4a2147ae763b3ba036f47bc21c39179f2b395e0ab1ac49017ea5b27848547bedd27be481c1dfc0b73372346feb94ab16189d4c525652b8d3361bab43463700720ecfb0ee75e595ea1b13330615011050a0dfcffdb21af356dd39bf8bcbfd41bf95d913f4c9b2979e1ed2ca10ac7e881bb6a271722549681e398d29e9ba4eac8848b168eddd5e4acec7df4103e2ed165e6e32edc80f0a3b28c36fb39ca19b4b8acee570deadba2da9ec20d1f236b571e0d4c2ea3b826fe924175ed4dfffbf18a9cfa98546c241efb9164c444d970e8c89849bc8601e96cf228fdefe38ab3b7e289cac859e68d9cbb0e648faf692b27df5ff6539c30da17e5444a65143de02ca64cee7b0823be65865cdc310be038ec6b594b99280072ae067bad1117b0ff3201a5506a8533b925c7ffae9cdb64558857db0ac5f5e0f18e750ae77ec9cf35263474fef3f78138c7a1ef5cfbc878975458239824fad3ce05326ba3969b1f5451bd82bd1f8075f3d32ece2d61d89a064ab4804c3c892d651d11bc325464a71cd7aacc2d956a811aaff13ea4c35cef7842b656e8ba4758e7558",
26 | "result": {
27 | "valid": true
28 | },
29 | "trace": {
30 | "random_scalars": {
31 | "r1": "5ee9426ae206e3a127eb53c79044bc9ed1b71354f8354b01bf410a02220be7d0",
32 | "r2": "280d4fcc38376193ffc777b68459ed7ba897e2857f938581acf95ae5a68988f3",
33 | "e_tilde": "39966b00042fc43906297d692ebb41de08e36aada8d9504d4e0ae02ad59e9230",
34 | "r1_tilde": "61f5c273999b0b50be8f84d2380eb9220fc5a88afe144efc4007545f0ab9c089",
35 | "r3_tilde": "63af117e0c8b7d2f1f3e375fcf5d9430e136ff0f7e879423e49dadc401a50089",
36 | "m_tilde_scalars": [
37 | "020b83ca2ab319cba0744d6d58da75ac3dfb6ba682bfce2587c5a6d86a4e4e7b",
38 | "5bf565343611c08f83e4420e8b1577ace8cc4df5d5303aeb3c4e425f1080f836",
39 | "049d77949af1192534da28975f76d4f211315dce1e36f93ffcf2a555de516b28",
40 | "407e5a952f145de7da53533de8366bbd2e0c854721a204f03906dc82fde10f48",
41 | "1c925d9052849edddcf04d5f1f0d4ff183a66b66eb820f59b675aee121cfc63c",
42 | "07d7c41b02158a9c5eac212ed6d7c2cddeb8e38baea6e93e1a00b2e83e2a0995"
43 | ]
44 | },
45 | "A_bar": "b1f8bf99a11c39f04e2a032183c1ead12956ad322dd06799c50f20fb8cf6b0ac279210ef5a2920a7be3ec2aa0911ace7",
46 | "B_bar": "b96811a98f3c1cceba4a2147ae763b3ba036f47bc21c39179f2b395e0ab1ac49017ea5b27848547bedd27be481c1dfc0",
47 | "D": "b73372346feb94ab16189d4c525652b8d3361bab43463700720ecfb0ee75e595ea1b13330615011050a0dfcffdb21af3",
48 | "T1": "8b497dd4dcdcf7eb58c9b43e57e06bcea3468a223ae2fc015d7a86506a952d68055e73f5a5847e58f133ea154256d0da",
49 | "T2": "8655584d3da1313f881f48c239384a5623d2d292f08dae7ac1d8129c19a02a89b82fa45de3f6c2c439510fce5919656f",
50 | "domain": "6f7ee8de30835599bb540d2cb4dd02fd0c6cf8246f14c9ee9a8463f7fd400f7b",
51 | "challenge": "1bc325464a71cd7aacc2d956a811aaff13ea4c35cef7842b656e8ba4758e7558"
52 | }
53 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-shake-256/proof/proof004.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "invalid multi-message signature, all messages revealed proof (different presentation header)",
3 | "signerPublicKey": "92d37d1d6cd38fea3a873953333eab23a4c0377e3e049974eb62bd45949cdeb18fb0490edcd4429adff56e65cbce42cf188b31bddbd619e419b99c2c41b38179eb001963bc3decaae0d9f702c7a8c004f207f46c734a5eae2e8e82833f3e7ea5",
4 | "signature": "956a3427b1b8e3642e60e6a7990b67626811adeec7a0a6cb4f770cdd7c20cf08faabb913ac94d18e1e92832e924cb6e202912b624261fc6c59b0fea801547f67fb7d3253e1e2acbcf90ef59a6911931e",
5 | "header": "11223344556677889900aabbccddeeff",
6 | "presentationHeader": "011594ba7f95b3b470ea4102dd5899de3a042e5104d3ea01d15e6780d831d2be",
7 | "messages": [
8 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
9 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
10 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
11 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
12 | "496694774c5604ab1b2544eababcf0f53278ff50",
13 | "515ae153e22aae04ad16f759e07237b4",
14 | "d183ddc6e2665aa4e2f088af",
15 | "ac55fb33a75909ed",
16 | "96012096",
17 | ""
18 | ],
19 | "disclosedIndexes": [
20 | 0,
21 | 2,
22 | 4,
23 | 6
24 | ],
25 | "proof": "b1f8bf99a11c39f04e2a032183c1ead12956ad322dd06799c50f20fb8cf6b0ac279210ef5a2920a7be3ec2aa0911ace7b96811a98f3c1cceba4a2147ae763b3ba036f47bc21c39179f2b395e0ab1ac49017ea5b27848547bedd27be481c1dfc0b73372346feb94ab16189d4c525652b8d3361bab43463700720ecfb0ee75e595ea1b13330615011050a0dfcffdb21af356dd39bf8bcbfd41bf95d913f4c9b2979e1ed2ca10ac7e881bb6a271722549681e398d29e9ba4eac8848b168eddd5e4acec7df4103e2ed165e6e32edc80f0a3b28c36fb39ca19b4b8acee570deadba2da9ec20d1f236b571e0d4c2ea3b826fe924175ed4dfffbf18a9cfa98546c241efb9164c444d970e8c89849bc8601e96cf228fdefe38ab3b7e289cac859e68d9cbb0e648faf692b27df5ff6539c30da17e5444a65143de02ca64cee7b0823be65865cdc310be038ec6b594b99280072ae067bad1117b0ff3201a5506a8533b925c7ffae9cdb64558857db0ac5f5e0f18e750ae77ec9cf35263474fef3f78138c7a1ef5cfbc878975458239824fad3ce05326ba3969b1f5451bd82bd1f8075f3d32ece2d61d89a064ab4804c3c892d651d11bc325464a71cd7aacc2d956a811aaff13ea4c35cef7842b656e8ba4758e7558",
26 | "result": {
27 | "valid": false,
28 | "reason": "different presentation header"
29 | },
30 | "trace": {
31 | "random_scalars": {
32 | "r1": "5ee9426ae206e3a127eb53c79044bc9ed1b71354f8354b01bf410a02220be7d0",
33 | "r2": "280d4fcc38376193ffc777b68459ed7ba897e2857f938581acf95ae5a68988f3",
34 | "e_tilde": "39966b00042fc43906297d692ebb41de08e36aada8d9504d4e0ae02ad59e9230",
35 | "r1_tilde": "61f5c273999b0b50be8f84d2380eb9220fc5a88afe144efc4007545f0ab9c089",
36 | "r3_tilde": "63af117e0c8b7d2f1f3e375fcf5d9430e136ff0f7e879423e49dadc401a50089",
37 | "m_tilde_scalars": [
38 | "020b83ca2ab319cba0744d6d58da75ac3dfb6ba682bfce2587c5a6d86a4e4e7b",
39 | "5bf565343611c08f83e4420e8b1577ace8cc4df5d5303aeb3c4e425f1080f836",
40 | "049d77949af1192534da28975f76d4f211315dce1e36f93ffcf2a555de516b28",
41 | "407e5a952f145de7da53533de8366bbd2e0c854721a204f03906dc82fde10f48",
42 | "1c925d9052849edddcf04d5f1f0d4ff183a66b66eb820f59b675aee121cfc63c",
43 | "07d7c41b02158a9c5eac212ed6d7c2cddeb8e38baea6e93e1a00b2e83e2a0995"
44 | ]
45 | },
46 | "A_bar": "b1f8bf99a11c39f04e2a032183c1ead12956ad322dd06799c50f20fb8cf6b0ac279210ef5a2920a7be3ec2aa0911ace7",
47 | "B_bar": "b96811a98f3c1cceba4a2147ae763b3ba036f47bc21c39179f2b395e0ab1ac49017ea5b27848547bedd27be481c1dfc0",
48 | "D": "b73372346feb94ab16189d4c525652b8d3361bab43463700720ecfb0ee75e595ea1b13330615011050a0dfcffdb21af3",
49 | "T1": "8b497dd4dcdcf7eb58c9b43e57e06bcea3468a223ae2fc015d7a86506a952d68055e73f5a5847e58f133ea154256d0da",
50 | "T2": "8655584d3da1313f881f48c239384a5623d2d292f08dae7ac1d8129c19a02a89b82fa45de3f6c2c439510fce5919656f",
51 | "domain": "6f7ee8de30835599bb540d2cb4dd02fd0c6cf8246f14c9ee9a8463f7fd400f7b",
52 | "challenge": "1bc325464a71cd7aacc2d956a811aaff13ea4c35cef7842b656e8ba4758e7558"
53 | }
54 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-shake-256/proof/proof005.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "invalid multi-message signature, all messages revealed proof (wrong public key)",
3 | "signerPublicKey": "b24c723803f84e210f7a95f6265c5cbfa4ecc51488bf7acf24b921807801c0798b725b9a2dcfa29953efcdfef03328720196c78b2e613727fd6e085302a0cc2d8d7e1d820cf1d36b20e79eee78c13a1a5da51a298f1aef86f07bc33388f089d8",
4 | "signature": "956a3427b1b8e3642e60e6a7990b67626811adeec7a0a6cb4f770cdd7c20cf08faabb913ac94d18e1e92832e924cb6e202912b624261fc6c59b0fea801547f67fb7d3253e1e2acbcf90ef59a6911931e",
5 | "header": "11223344556677889900aabbccddeeff",
6 | "presentationHeader": "bed231d880675ed101ead304512e043ade9958dd0241ea70b4b3957fba941501",
7 | "messages": [
8 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
9 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
10 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
11 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
12 | "496694774c5604ab1b2544eababcf0f53278ff50",
13 | "515ae153e22aae04ad16f759e07237b4",
14 | "d183ddc6e2665aa4e2f088af",
15 | "ac55fb33a75909ed",
16 | "96012096",
17 | ""
18 | ],
19 | "disclosedIndexes": [
20 | 0,
21 | 2,
22 | 4,
23 | 6
24 | ],
25 | "proof": "b1f8bf99a11c39f04e2a032183c1ead12956ad322dd06799c50f20fb8cf6b0ac279210ef5a2920a7be3ec2aa0911ace7b96811a98f3c1cceba4a2147ae763b3ba036f47bc21c39179f2b395e0ab1ac49017ea5b27848547bedd27be481c1dfc0b73372346feb94ab16189d4c525652b8d3361bab43463700720ecfb0ee75e595ea1b13330615011050a0dfcffdb21af356dd39bf8bcbfd41bf95d913f4c9b2979e1ed2ca10ac7e881bb6a271722549681e398d29e9ba4eac8848b168eddd5e4acec7df4103e2ed165e6e32edc80f0a3b28c36fb39ca19b4b8acee570deadba2da9ec20d1f236b571e0d4c2ea3b826fe924175ed4dfffbf18a9cfa98546c241efb9164c444d970e8c89849bc8601e96cf228fdefe38ab3b7e289cac859e68d9cbb0e648faf692b27df5ff6539c30da17e5444a65143de02ca64cee7b0823be65865cdc310be038ec6b594b99280072ae067bad1117b0ff3201a5506a8533b925c7ffae9cdb64558857db0ac5f5e0f18e750ae77ec9cf35263474fef3f78138c7a1ef5cfbc878975458239824fad3ce05326ba3969b1f5451bd82bd1f8075f3d32ece2d61d89a064ab4804c3c892d651d11bc325464a71cd7aacc2d956a811aaff13ea4c35cef7842b656e8ba4758e7558",
26 | "result": {
27 | "valid": false,
28 | "reason": "wrong public key"
29 | },
30 | "trace": {
31 | "random_scalars": {
32 | "r1": "5ee9426ae206e3a127eb53c79044bc9ed1b71354f8354b01bf410a02220be7d0",
33 | "r2": "280d4fcc38376193ffc777b68459ed7ba897e2857f938581acf95ae5a68988f3",
34 | "e_tilde": "39966b00042fc43906297d692ebb41de08e36aada8d9504d4e0ae02ad59e9230",
35 | "r1_tilde": "61f5c273999b0b50be8f84d2380eb9220fc5a88afe144efc4007545f0ab9c089",
36 | "r3_tilde": "63af117e0c8b7d2f1f3e375fcf5d9430e136ff0f7e879423e49dadc401a50089",
37 | "m_tilde_scalars": [
38 | "020b83ca2ab319cba0744d6d58da75ac3dfb6ba682bfce2587c5a6d86a4e4e7b",
39 | "5bf565343611c08f83e4420e8b1577ace8cc4df5d5303aeb3c4e425f1080f836",
40 | "049d77949af1192534da28975f76d4f211315dce1e36f93ffcf2a555de516b28",
41 | "407e5a952f145de7da53533de8366bbd2e0c854721a204f03906dc82fde10f48",
42 | "1c925d9052849edddcf04d5f1f0d4ff183a66b66eb820f59b675aee121cfc63c",
43 | "07d7c41b02158a9c5eac212ed6d7c2cddeb8e38baea6e93e1a00b2e83e2a0995"
44 | ]
45 | },
46 | "A_bar": "b1f8bf99a11c39f04e2a032183c1ead12956ad322dd06799c50f20fb8cf6b0ac279210ef5a2920a7be3ec2aa0911ace7",
47 | "B_bar": "b96811a98f3c1cceba4a2147ae763b3ba036f47bc21c39179f2b395e0ab1ac49017ea5b27848547bedd27be481c1dfc0",
48 | "D": "b73372346feb94ab16189d4c525652b8d3361bab43463700720ecfb0ee75e595ea1b13330615011050a0dfcffdb21af3",
49 | "T1": "8b497dd4dcdcf7eb58c9b43e57e06bcea3468a223ae2fc015d7a86506a952d68055e73f5a5847e58f133ea154256d0da",
50 | "T2": "8655584d3da1313f881f48c239384a5623d2d292f08dae7ac1d8129c19a02a89b82fa45de3f6c2c439510fce5919656f",
51 | "domain": "6f7ee8de30835599bb540d2cb4dd02fd0c6cf8246f14c9ee9a8463f7fd400f7b",
52 | "challenge": "1bc325464a71cd7aacc2d956a811aaff13ea4c35cef7842b656e8ba4758e7558"
53 | }
54 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-shake-256/proof/proof006.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "invalid multi-message signature, all messages revealed proof (modified messages)",
3 | "signerPublicKey": "92d37d1d6cd38fea3a873953333eab23a4c0377e3e049974eb62bd45949cdeb18fb0490edcd4429adff56e65cbce42cf188b31bddbd619e419b99c2c41b38179eb001963bc3decaae0d9f702c7a8c004f207f46c734a5eae2e8e82833f3e7ea5",
4 | "signature": "956a3427b1b8e3642e60e6a7990b67626811adeec7a0a6cb4f770cdd7c20cf08faabb913ac94d18e1e92832e924cb6e202912b624261fc6c59b0fea801547f67fb7d3253e1e2acbcf90ef59a6911931e",
5 | "header": "11223344556677889900aabbccddeeff",
6 | "presentationHeader": "bed231d880675ed101ead304512e043ade9958dd0241ea70b4b3957fba941501",
7 | "messages": [
8 | "b3e4043a1e148028b85dfbf39d1e44d7bfc8277fd310aeda5deb4a6eb7b3d1293c86788288e86b1819caa0b11a4f2c6330abda72b1bcb082d660dc78b5271f6a047bb96c250f2ca877cc72464d363c3bd0bfc4d4b4de7233419234e94f16ec24359e13b6",
9 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
10 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
11 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
12 | "496694774c5604ab1b2544eababcf0f53278ff50",
13 | "515ae153e22aae04ad16f759e07237b4",
14 | "d183ddc6e2665aa4e2f088af",
15 | "ac55fb33a75909ed",
16 | "96012096",
17 | ""
18 | ],
19 | "disclosedIndexes": [
20 | 0,
21 | 2,
22 | 4,
23 | 6
24 | ],
25 | "proof": "b1f8bf99a11c39f04e2a032183c1ead12956ad322dd06799c50f20fb8cf6b0ac279210ef5a2920a7be3ec2aa0911ace7b96811a98f3c1cceba4a2147ae763b3ba036f47bc21c39179f2b395e0ab1ac49017ea5b27848547bedd27be481c1dfc0b73372346feb94ab16189d4c525652b8d3361bab43463700720ecfb0ee75e595ea1b13330615011050a0dfcffdb21af356dd39bf8bcbfd41bf95d913f4c9b2979e1ed2ca10ac7e881bb6a271722549681e398d29e9ba4eac8848b168eddd5e4acec7df4103e2ed165e6e32edc80f0a3b28c36fb39ca19b4b8acee570deadba2da9ec20d1f236b571e0d4c2ea3b826fe924175ed4dfffbf18a9cfa98546c241efb9164c444d970e8c89849bc8601e96cf228fdefe38ab3b7e289cac859e68d9cbb0e648faf692b27df5ff6539c30da17e5444a65143de02ca64cee7b0823be65865cdc310be038ec6b594b99280072ae067bad1117b0ff3201a5506a8533b925c7ffae9cdb64558857db0ac5f5e0f18e750ae77ec9cf35263474fef3f78138c7a1ef5cfbc878975458239824fad3ce05326ba3969b1f5451bd82bd1f8075f3d32ece2d61d89a064ab4804c3c892d651d11bc325464a71cd7aacc2d956a811aaff13ea4c35cef7842b656e8ba4758e7558",
26 | "result": {
27 | "valid": false,
28 | "reason": "modified messages"
29 | },
30 | "trace": {
31 | "random_scalars": {
32 | "r1": "5ee9426ae206e3a127eb53c79044bc9ed1b71354f8354b01bf410a02220be7d0",
33 | "r2": "280d4fcc38376193ffc777b68459ed7ba897e2857f938581acf95ae5a68988f3",
34 | "e_tilde": "39966b00042fc43906297d692ebb41de08e36aada8d9504d4e0ae02ad59e9230",
35 | "r1_tilde": "61f5c273999b0b50be8f84d2380eb9220fc5a88afe144efc4007545f0ab9c089",
36 | "r3_tilde": "63af117e0c8b7d2f1f3e375fcf5d9430e136ff0f7e879423e49dadc401a50089",
37 | "m_tilde_scalars": [
38 | "020b83ca2ab319cba0744d6d58da75ac3dfb6ba682bfce2587c5a6d86a4e4e7b",
39 | "5bf565343611c08f83e4420e8b1577ace8cc4df5d5303aeb3c4e425f1080f836",
40 | "049d77949af1192534da28975f76d4f211315dce1e36f93ffcf2a555de516b28",
41 | "407e5a952f145de7da53533de8366bbd2e0c854721a204f03906dc82fde10f48",
42 | "1c925d9052849edddcf04d5f1f0d4ff183a66b66eb820f59b675aee121cfc63c",
43 | "07d7c41b02158a9c5eac212ed6d7c2cddeb8e38baea6e93e1a00b2e83e2a0995"
44 | ]
45 | },
46 | "A_bar": "b1f8bf99a11c39f04e2a032183c1ead12956ad322dd06799c50f20fb8cf6b0ac279210ef5a2920a7be3ec2aa0911ace7",
47 | "B_bar": "b96811a98f3c1cceba4a2147ae763b3ba036f47bc21c39179f2b395e0ab1ac49017ea5b27848547bedd27be481c1dfc0",
48 | "D": "b73372346feb94ab16189d4c525652b8d3361bab43463700720ecfb0ee75e595ea1b13330615011050a0dfcffdb21af3",
49 | "T1": "8b497dd4dcdcf7eb58c9b43e57e06bcea3468a223ae2fc015d7a86506a952d68055e73f5a5847e58f133ea154256d0da",
50 | "T2": "8655584d3da1313f881f48c239384a5623d2d292f08dae7ac1d8129c19a02a89b82fa45de3f6c2c439510fce5919656f",
51 | "domain": "6f7ee8de30835599bb540d2cb4dd02fd0c6cf8246f14c9ee9a8463f7fd400f7b",
52 | "challenge": "1bc325464a71cd7aacc2d956a811aaff13ea4c35cef7842b656e8ba4758e7558"
53 | }
54 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-shake-256/proof/proof007.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "invalid multi-message signature, all messages revealed proof (extra message un-revealed in proof)",
3 | "signerPublicKey": "92d37d1d6cd38fea3a873953333eab23a4c0377e3e049974eb62bd45949cdeb18fb0490edcd4429adff56e65cbce42cf188b31bddbd619e419b99c2c41b38179eb001963bc3decaae0d9f702c7a8c004f207f46c734a5eae2e8e82833f3e7ea5",
4 | "signature": "956a3427b1b8e3642e60e6a7990b67626811adeec7a0a6cb4f770cdd7c20cf08faabb913ac94d18e1e92832e924cb6e202912b624261fc6c59b0fea801547f67fb7d3253e1e2acbcf90ef59a6911931e",
5 | "header": "11223344556677889900aabbccddeeff",
6 | "presentationHeader": "bed231d880675ed101ead304512e043ade9958dd0241ea70b4b3957fba941501",
7 | "messages": [
8 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
9 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
10 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
11 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
12 | "496694774c5604ab1b2544eababcf0f53278ff50",
13 | "515ae153e22aae04ad16f759e07237b4",
14 | "d183ddc6e2665aa4e2f088af",
15 | "ac55fb33a75909ed",
16 | "96012096",
17 | "",
18 | ""
19 | ],
20 | "disclosedIndexes": [
21 | 0,
22 | 2,
23 | 4,
24 | 6,
25 | 9
26 | ],
27 | "proof": "b1f8bf99a11c39f04e2a032183c1ead12956ad322dd06799c50f20fb8cf6b0ac279210ef5a2920a7be3ec2aa0911ace7b96811a98f3c1cceba4a2147ae763b3ba036f47bc21c39179f2b395e0ab1ac49017ea5b27848547bedd27be481c1dfc0b73372346feb94ab16189d4c525652b8d3361bab43463700720ecfb0ee75e595ea1b13330615011050a0dfcffdb21af356dd39bf8bcbfd41bf95d913f4c9b2979e1ed2ca10ac7e881bb6a271722549681e398d29e9ba4eac8848b168eddd5e4acec7df4103e2ed165e6e32edc80f0a3b28c36fb39ca19b4b8acee570deadba2da9ec20d1f236b571e0d4c2ea3b826fe924175ed4dfffbf18a9cfa98546c241efb9164c444d970e8c89849bc8601e96cf228fdefe38ab3b7e289cac859e68d9cbb0e648faf692b27df5ff6539c30da17e5444a65143de02ca64cee7b0823be65865cdc310be038ec6b594b99280072ae067bad1117b0ff3201a5506a8533b925c7ffae9cdb64558857db0ac5f5e0f18e750ae77ec9cf35263474fef3f78138c7a1ef5cfbc878975458239824fad3ce05326ba3969b1f5451bd82bd1f8075f3d32ece2d61d89a064ab4804c3c892d651d11bc325464a71cd7aacc2d956a811aaff13ea4c35cef7842b656e8ba4758e7558",
28 | "result": {
29 | "valid": false,
30 | "reason": "extra message un-revealed in proof"
31 | },
32 | "trace": {
33 | "random_scalars": {
34 | "r1": "5ee9426ae206e3a127eb53c79044bc9ed1b71354f8354b01bf410a02220be7d0",
35 | "r2": "280d4fcc38376193ffc777b68459ed7ba897e2857f938581acf95ae5a68988f3",
36 | "e_tilde": "39966b00042fc43906297d692ebb41de08e36aada8d9504d4e0ae02ad59e9230",
37 | "r1_tilde": "61f5c273999b0b50be8f84d2380eb9220fc5a88afe144efc4007545f0ab9c089",
38 | "r3_tilde": "63af117e0c8b7d2f1f3e375fcf5d9430e136ff0f7e879423e49dadc401a50089",
39 | "m_tilde_scalars": [
40 | "020b83ca2ab319cba0744d6d58da75ac3dfb6ba682bfce2587c5a6d86a4e4e7b",
41 | "5bf565343611c08f83e4420e8b1577ace8cc4df5d5303aeb3c4e425f1080f836",
42 | "049d77949af1192534da28975f76d4f211315dce1e36f93ffcf2a555de516b28",
43 | "407e5a952f145de7da53533de8366bbd2e0c854721a204f03906dc82fde10f48",
44 | "1c925d9052849edddcf04d5f1f0d4ff183a66b66eb820f59b675aee121cfc63c",
45 | "07d7c41b02158a9c5eac212ed6d7c2cddeb8e38baea6e93e1a00b2e83e2a0995"
46 | ]
47 | },
48 | "A_bar": "b1f8bf99a11c39f04e2a032183c1ead12956ad322dd06799c50f20fb8cf6b0ac279210ef5a2920a7be3ec2aa0911ace7",
49 | "B_bar": "b96811a98f3c1cceba4a2147ae763b3ba036f47bc21c39179f2b395e0ab1ac49017ea5b27848547bedd27be481c1dfc0",
50 | "D": "b73372346feb94ab16189d4c525652b8d3361bab43463700720ecfb0ee75e595ea1b13330615011050a0dfcffdb21af3",
51 | "T1": "8b497dd4dcdcf7eb58c9b43e57e06bcea3468a223ae2fc015d7a86506a952d68055e73f5a5847e58f133ea154256d0da",
52 | "T2": "8655584d3da1313f881f48c239384a5623d2d292f08dae7ac1d8129c19a02a89b82fa45de3f6c2c439510fce5919656f",
53 | "domain": "6f7ee8de30835599bb540d2cb4dd02fd0c6cf8246f14c9ee9a8463f7fd400f7b",
54 | "challenge": "1bc325464a71cd7aacc2d956a811aaff13ea4c35cef7842b656e8ba4758e7558"
55 | }
56 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-shake-256/proof/proof008.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "invalid multi-message signature, all messages revealed proof (extra message invalid message un-revealed in proof)",
3 | "signerPublicKey": "92d37d1d6cd38fea3a873953333eab23a4c0377e3e049974eb62bd45949cdeb18fb0490edcd4429adff56e65cbce42cf188b31bddbd619e419b99c2c41b38179eb001963bc3decaae0d9f702c7a8c004f207f46c734a5eae2e8e82833f3e7ea5",
4 | "signature": "956a3427b1b8e3642e60e6a7990b67626811adeec7a0a6cb4f770cdd7c20cf08faabb913ac94d18e1e92832e924cb6e202912b624261fc6c59b0fea801547f67fb7d3253e1e2acbcf90ef59a6911931e",
5 | "header": "11223344556677889900aabbccddeeff",
6 | "presentationHeader": "bed231d880675ed101ead304512e043ade9958dd0241ea70b4b3957fba941501",
7 | "messages": [
8 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
9 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
10 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
11 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
12 | "496694774c5604ab1b2544eababcf0f53278ff50",
13 | "515ae153e22aae04ad16f759e07237b4",
14 | "d183ddc6e2665aa4e2f088af",
15 | "ac55fb33a75909ed",
16 | "96012096",
17 | "",
18 | "96012096"
19 | ],
20 | "disclosedIndexes": [
21 | 0,
22 | 2,
23 | 4,
24 | 6,
25 | 9
26 | ],
27 | "proof": "b1f8bf99a11c39f04e2a032183c1ead12956ad322dd06799c50f20fb8cf6b0ac279210ef5a2920a7be3ec2aa0911ace7b96811a98f3c1cceba4a2147ae763b3ba036f47bc21c39179f2b395e0ab1ac49017ea5b27848547bedd27be481c1dfc0b73372346feb94ab16189d4c525652b8d3361bab43463700720ecfb0ee75e595ea1b13330615011050a0dfcffdb21af356dd39bf8bcbfd41bf95d913f4c9b2979e1ed2ca10ac7e881bb6a271722549681e398d29e9ba4eac8848b168eddd5e4acec7df4103e2ed165e6e32edc80f0a3b28c36fb39ca19b4b8acee570deadba2da9ec20d1f236b571e0d4c2ea3b826fe924175ed4dfffbf18a9cfa98546c241efb9164c444d970e8c89849bc8601e96cf228fdefe38ab3b7e289cac859e68d9cbb0e648faf692b27df5ff6539c30da17e5444a65143de02ca64cee7b0823be65865cdc310be038ec6b594b99280072ae067bad1117b0ff3201a5506a8533b925c7ffae9cdb64558857db0ac5f5e0f18e750ae77ec9cf35263474fef3f78138c7a1ef5cfbc878975458239824fad3ce05326ba3969b1f5451bd82bd1f8075f3d32ece2d61d89a064ab4804c3c892d651d11bc325464a71cd7aacc2d956a811aaff13ea4c35cef7842b656e8ba4758e7558",
28 | "result": {
29 | "valid": false,
30 | "reason": "extra message invalid message un-revealed in proof"
31 | },
32 | "trace": {
33 | "random_scalars": {
34 | "r1": "5ee9426ae206e3a127eb53c79044bc9ed1b71354f8354b01bf410a02220be7d0",
35 | "r2": "280d4fcc38376193ffc777b68459ed7ba897e2857f938581acf95ae5a68988f3",
36 | "e_tilde": "39966b00042fc43906297d692ebb41de08e36aada8d9504d4e0ae02ad59e9230",
37 | "r1_tilde": "61f5c273999b0b50be8f84d2380eb9220fc5a88afe144efc4007545f0ab9c089",
38 | "r3_tilde": "63af117e0c8b7d2f1f3e375fcf5d9430e136ff0f7e879423e49dadc401a50089",
39 | "m_tilde_scalars": [
40 | "020b83ca2ab319cba0744d6d58da75ac3dfb6ba682bfce2587c5a6d86a4e4e7b",
41 | "5bf565343611c08f83e4420e8b1577ace8cc4df5d5303aeb3c4e425f1080f836",
42 | "049d77949af1192534da28975f76d4f211315dce1e36f93ffcf2a555de516b28",
43 | "407e5a952f145de7da53533de8366bbd2e0c854721a204f03906dc82fde10f48",
44 | "1c925d9052849edddcf04d5f1f0d4ff183a66b66eb820f59b675aee121cfc63c",
45 | "07d7c41b02158a9c5eac212ed6d7c2cddeb8e38baea6e93e1a00b2e83e2a0995"
46 | ]
47 | },
48 | "A_bar": "b1f8bf99a11c39f04e2a032183c1ead12956ad322dd06799c50f20fb8cf6b0ac279210ef5a2920a7be3ec2aa0911ace7",
49 | "B_bar": "b96811a98f3c1cceba4a2147ae763b3ba036f47bc21c39179f2b395e0ab1ac49017ea5b27848547bedd27be481c1dfc0",
50 | "D": "b73372346feb94ab16189d4c525652b8d3361bab43463700720ecfb0ee75e595ea1b13330615011050a0dfcffdb21af3",
51 | "T1": "8b497dd4dcdcf7eb58c9b43e57e06bcea3468a223ae2fc015d7a86506a952d68055e73f5a5847e58f133ea154256d0da",
52 | "T2": "8655584d3da1313f881f48c239384a5623d2d292f08dae7ac1d8129c19a02a89b82fa45de3f6c2c439510fce5919656f",
53 | "domain": "6f7ee8de30835599bb540d2cb4dd02fd0c6cf8246f14c9ee9a8463f7fd400f7b",
54 | "challenge": "1bc325464a71cd7aacc2d956a811aaff13ea4c35cef7842b656e8ba4758e7558"
55 | }
56 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-shake-256/proof/proof009.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "invalid multi-message signature, all messages revealed proof (missing message revealed in proof)",
3 | "signerPublicKey": "92d37d1d6cd38fea3a873953333eab23a4c0377e3e049974eb62bd45949cdeb18fb0490edcd4429adff56e65cbce42cf188b31bddbd619e419b99c2c41b38179eb001963bc3decaae0d9f702c7a8c004f207f46c734a5eae2e8e82833f3e7ea5",
4 | "signature": "956a3427b1b8e3642e60e6a7990b67626811adeec7a0a6cb4f770cdd7c20cf08faabb913ac94d18e1e92832e924cb6e202912b624261fc6c59b0fea801547f67fb7d3253e1e2acbcf90ef59a6911931e",
5 | "header": "11223344556677889900aabbccddeeff",
6 | "presentationHeader": "bed231d880675ed101ead304512e043ade9958dd0241ea70b4b3957fba941501",
7 | "messages": [
8 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
9 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
10 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
11 | "496694774c5604ab1b2544eababcf0f53278ff50",
12 | "515ae153e22aae04ad16f759e07237b4",
13 | "d183ddc6e2665aa4e2f088af",
14 | "ac55fb33a75909ed",
15 | "96012096",
16 | ""
17 | ],
18 | "disclosedIndexes": [
19 | 0,
20 | 2,
21 | 6
22 | ],
23 | "proof": "b1f8bf99a11c39f04e2a032183c1ead12956ad322dd06799c50f20fb8cf6b0ac279210ef5a2920a7be3ec2aa0911ace7b96811a98f3c1cceba4a2147ae763b3ba036f47bc21c39179f2b395e0ab1ac49017ea5b27848547bedd27be481c1dfc0b73372346feb94ab16189d4c525652b8d3361bab43463700720ecfb0ee75e595ea1b13330615011050a0dfcffdb21af356dd39bf8bcbfd41bf95d913f4c9b2979e1ed2ca10ac7e881bb6a271722549681e398d29e9ba4eac8848b168eddd5e4acec7df4103e2ed165e6e32edc80f0a3b28c36fb39ca19b4b8acee570deadba2da9ec20d1f236b571e0d4c2ea3b826fe924175ed4dfffbf18a9cfa98546c241efb9164c444d970e8c89849bc8601e96cf228fdefe38ab3b7e289cac859e68d9cbb0e648faf692b27df5ff6539c30da17e5444a65143de02ca64cee7b0823be65865cdc310be038ec6b594b99280072ae067bad1117b0ff3201a5506a8533b925c7ffae9cdb64558857db0ac5f5e0f18e750ae77ec9cf35263474fef3f78138c7a1ef5cfbc878975458239824fad3ce05326ba3969b1f5451bd82bd1f8075f3d32ece2d61d89a064ab4804c3c892d651d11bc325464a71cd7aacc2d956a811aaff13ea4c35cef7842b656e8ba4758e7558",
24 | "result": {
25 | "valid": false,
26 | "reason": "missing message revealed in proof"
27 | },
28 | "trace": {
29 | "random_scalars": {
30 | "r1": "5ee9426ae206e3a127eb53c79044bc9ed1b71354f8354b01bf410a02220be7d0",
31 | "r2": "280d4fcc38376193ffc777b68459ed7ba897e2857f938581acf95ae5a68988f3",
32 | "e_tilde": "39966b00042fc43906297d692ebb41de08e36aada8d9504d4e0ae02ad59e9230",
33 | "r1_tilde": "61f5c273999b0b50be8f84d2380eb9220fc5a88afe144efc4007545f0ab9c089",
34 | "r3_tilde": "63af117e0c8b7d2f1f3e375fcf5d9430e136ff0f7e879423e49dadc401a50089",
35 | "m_tilde_scalars": [
36 | "020b83ca2ab319cba0744d6d58da75ac3dfb6ba682bfce2587c5a6d86a4e4e7b",
37 | "5bf565343611c08f83e4420e8b1577ace8cc4df5d5303aeb3c4e425f1080f836",
38 | "049d77949af1192534da28975f76d4f211315dce1e36f93ffcf2a555de516b28",
39 | "407e5a952f145de7da53533de8366bbd2e0c854721a204f03906dc82fde10f48",
40 | "1c925d9052849edddcf04d5f1f0d4ff183a66b66eb820f59b675aee121cfc63c",
41 | "07d7c41b02158a9c5eac212ed6d7c2cddeb8e38baea6e93e1a00b2e83e2a0995"
42 | ]
43 | },
44 | "A_bar": "b1f8bf99a11c39f04e2a032183c1ead12956ad322dd06799c50f20fb8cf6b0ac279210ef5a2920a7be3ec2aa0911ace7",
45 | "B_bar": "b96811a98f3c1cceba4a2147ae763b3ba036f47bc21c39179f2b395e0ab1ac49017ea5b27848547bedd27be481c1dfc0",
46 | "D": "b73372346feb94ab16189d4c525652b8d3361bab43463700720ecfb0ee75e595ea1b13330615011050a0dfcffdb21af3",
47 | "T1": "8b497dd4dcdcf7eb58c9b43e57e06bcea3468a223ae2fc015d7a86506a952d68055e73f5a5847e58f133ea154256d0da",
48 | "T2": "8655584d3da1313f881f48c239384a5623d2d292f08dae7ac1d8129c19a02a89b82fa45de3f6c2c439510fce5919656f",
49 | "domain": "6f7ee8de30835599bb540d2cb4dd02fd0c6cf8246f14c9ee9a8463f7fd400f7b",
50 | "challenge": "1bc325464a71cd7aacc2d956a811aaff13ea4c35cef7842b656e8ba4758e7558"
51 | }
52 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-shake-256/proof/proof010.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "invalid multi-message signature, all messages revealed proof (re-ordered messages)",
3 | "signerPublicKey": "92d37d1d6cd38fea3a873953333eab23a4c0377e3e049974eb62bd45949cdeb18fb0490edcd4429adff56e65cbce42cf188b31bddbd619e419b99c2c41b38179eb001963bc3decaae0d9f702c7a8c004f207f46c734a5eae2e8e82833f3e7ea5",
4 | "signature": "956a3427b1b8e3642e60e6a7990b67626811adeec7a0a6cb4f770cdd7c20cf08faabb913ac94d18e1e92832e924cb6e202912b624261fc6c59b0fea801547f67fb7d3253e1e2acbcf90ef59a6911931e",
5 | "header": "11223344556677889900aabbccddeeff",
6 | "presentationHeader": "bed231d880675ed101ead304512e043ade9958dd0241ea70b4b3957fba941501",
7 | "messages": [
8 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
9 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
10 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
11 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
12 | "496694774c5604ab1b2544eababcf0f53278ff50",
13 | "515ae153e22aae04ad16f759e07237b4",
14 | "d183ddc6e2665aa4e2f088af",
15 | "ac55fb33a75909ed",
16 | "96012096",
17 | ""
18 | ],
19 | "disclosedIndexes": [
20 | 4,
21 | 2,
22 | 4,
23 | 6
24 | ],
25 | "proof": "b1f8bf99a11c39f04e2a032183c1ead12956ad322dd06799c50f20fb8cf6b0ac279210ef5a2920a7be3ec2aa0911ace7b96811a98f3c1cceba4a2147ae763b3ba036f47bc21c39179f2b395e0ab1ac49017ea5b27848547bedd27be481c1dfc0b73372346feb94ab16189d4c525652b8d3361bab43463700720ecfb0ee75e595ea1b13330615011050a0dfcffdb21af356dd39bf8bcbfd41bf95d913f4c9b2979e1ed2ca10ac7e881bb6a271722549681e398d29e9ba4eac8848b168eddd5e4acec7df4103e2ed165e6e32edc80f0a3b28c36fb39ca19b4b8acee570deadba2da9ec20d1f236b571e0d4c2ea3b826fe924175ed4dfffbf18a9cfa98546c241efb9164c444d970e8c89849bc8601e96cf228fdefe38ab3b7e289cac859e68d9cbb0e648faf692b27df5ff6539c30da17e5444a65143de02ca64cee7b0823be65865cdc310be038ec6b594b99280072ae067bad1117b0ff3201a5506a8533b925c7ffae9cdb64558857db0ac5f5e0f18e750ae77ec9cf35263474fef3f78138c7a1ef5cfbc878975458239824fad3ce05326ba3969b1f5451bd82bd1f8075f3d32ece2d61d89a064ab4804c3c892d651d11bc325464a71cd7aacc2d956a811aaff13ea4c35cef7842b656e8ba4758e7558",
26 | "result": {
27 | "valid": false,
28 | "reason": "re-ordered messages"
29 | },
30 | "trace": {
31 | "random_scalars": {
32 | "r1": "5ee9426ae206e3a127eb53c79044bc9ed1b71354f8354b01bf410a02220be7d0",
33 | "r2": "280d4fcc38376193ffc777b68459ed7ba897e2857f938581acf95ae5a68988f3",
34 | "e_tilde": "39966b00042fc43906297d692ebb41de08e36aada8d9504d4e0ae02ad59e9230",
35 | "r1_tilde": "61f5c273999b0b50be8f84d2380eb9220fc5a88afe144efc4007545f0ab9c089",
36 | "r3_tilde": "63af117e0c8b7d2f1f3e375fcf5d9430e136ff0f7e879423e49dadc401a50089",
37 | "m_tilde_scalars": [
38 | "020b83ca2ab319cba0744d6d58da75ac3dfb6ba682bfce2587c5a6d86a4e4e7b",
39 | "5bf565343611c08f83e4420e8b1577ace8cc4df5d5303aeb3c4e425f1080f836",
40 | "049d77949af1192534da28975f76d4f211315dce1e36f93ffcf2a555de516b28",
41 | "407e5a952f145de7da53533de8366bbd2e0c854721a204f03906dc82fde10f48",
42 | "1c925d9052849edddcf04d5f1f0d4ff183a66b66eb820f59b675aee121cfc63c",
43 | "07d7c41b02158a9c5eac212ed6d7c2cddeb8e38baea6e93e1a00b2e83e2a0995"
44 | ]
45 | },
46 | "A_bar": "b1f8bf99a11c39f04e2a032183c1ead12956ad322dd06799c50f20fb8cf6b0ac279210ef5a2920a7be3ec2aa0911ace7",
47 | "B_bar": "b96811a98f3c1cceba4a2147ae763b3ba036f47bc21c39179f2b395e0ab1ac49017ea5b27848547bedd27be481c1dfc0",
48 | "D": "b73372346feb94ab16189d4c525652b8d3361bab43463700720ecfb0ee75e595ea1b13330615011050a0dfcffdb21af3",
49 | "T1": "8b497dd4dcdcf7eb58c9b43e57e06bcea3468a223ae2fc015d7a86506a952d68055e73f5a5847e58f133ea154256d0da",
50 | "T2": "8655584d3da1313f881f48c239384a5623d2d292f08dae7ac1d8129c19a02a89b82fa45de3f6c2c439510fce5919656f",
51 | "domain": "6f7ee8de30835599bb540d2cb4dd02fd0c6cf8246f14c9ee9a8463f7fd400f7b",
52 | "challenge": "1bc325464a71cd7aacc2d956a811aaff13ea4c35cef7842b656e8ba4758e7558"
53 | }
54 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-shake-256/proof/proof011.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "invalid multi-message signature, all messages revealed proof (extra valid message, modified total message count)",
3 | "signerPublicKey": "92d37d1d6cd38fea3a873953333eab23a4c0377e3e049974eb62bd45949cdeb18fb0490edcd4429adff56e65cbce42cf188b31bddbd619e419b99c2c41b38179eb001963bc3decaae0d9f702c7a8c004f207f46c734a5eae2e8e82833f3e7ea5",
4 | "signature": "956a3427b1b8e3642e60e6a7990b67626811adeec7a0a6cb4f770cdd7c20cf08faabb913ac94d18e1e92832e924cb6e202912b624261fc6c59b0fea801547f67fb7d3253e1e2acbcf90ef59a6911931e",
5 | "header": "11223344556677889900aabbccddeeff",
6 | "presentationHeader": "bed231d880675ed101ead304512e043ade9958dd0241ea70b4b3957fba941501",
7 | "messages": [
8 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
9 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
10 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
11 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
12 | "496694774c5604ab1b2544eababcf0f53278ff50",
13 | "515ae153e22aae04ad16f759e07237b4",
14 | "d183ddc6e2665aa4e2f088af",
15 | "ac55fb33a75909ed",
16 | "96012096",
17 | "",
18 | ""
19 | ],
20 | "disclosedIndexes": [
21 | 0,
22 | 2,
23 | 4,
24 | 6,
25 | 9
26 | ],
27 | "proof": "b1f8bf99a11c39f04e2a032183c1ead12956ad322dd06799c50f20fb8cf6b0ac279210ef5a2920a7be3ec2aa0911ace7b96811a98f3c1cceba4a2147ae763b3ba036f47bc21c39179f2b395e0ab1ac49017ea5b27848547bedd27be481c1dfc0b73372346feb94ab16189d4c525652b8d3361bab43463700720ecfb0ee75e595ea1b13330615011050a0dfcffdb21af356dd39bf8bcbfd41bf95d913f4c9b2979e1ed2ca10ac7e881bb6a271722549681e398d29e9ba4eac8848b168eddd5e4acec7df4103e2ed165e6e32edc80f0a3b28c36fb39ca19b4b8acee570deadba2da9ec20d1f236b571e0d4c2ea3b826fe924175ed4dfffbf18a9cfa98546c241efb9164c444d970e8c89849bc8601e96cf228fdefe38ab3b7e289cac859e68d9cbb0e648faf692b27df5ff6539c30da17e5444a65143de02ca64cee7b0823be65865cdc310be038ec6b594b99280072ae067bad1117b0ff3201a5506a8533b925c7ffae9cdb64558857db0ac5f5e0f18e750ae77ec9cf35263474fef3f78138c7a1ef5cfbc878975458239824fad3ce05326ba3969b1f5451bd82bd1f8075f3d32ece2d61d89a064ab4804c3c892d651d11bc325464a71cd7aacc2d956a811aaff13ea4c35cef7842b656e8ba4758e7558",
28 | "result": {
29 | "valid": false,
30 | "reason": "extra valid message, modified total message count"
31 | },
32 | "trace": {
33 | "random_scalars": {
34 | "r1": "5ee9426ae206e3a127eb53c79044bc9ed1b71354f8354b01bf410a02220be7d0",
35 | "r2": "280d4fcc38376193ffc777b68459ed7ba897e2857f938581acf95ae5a68988f3",
36 | "e_tilde": "39966b00042fc43906297d692ebb41de08e36aada8d9504d4e0ae02ad59e9230",
37 | "r1_tilde": "61f5c273999b0b50be8f84d2380eb9220fc5a88afe144efc4007545f0ab9c089",
38 | "r3_tilde": "63af117e0c8b7d2f1f3e375fcf5d9430e136ff0f7e879423e49dadc401a50089",
39 | "m_tilde_scalars": [
40 | "020b83ca2ab319cba0744d6d58da75ac3dfb6ba682bfce2587c5a6d86a4e4e7b",
41 | "5bf565343611c08f83e4420e8b1577ace8cc4df5d5303aeb3c4e425f1080f836",
42 | "049d77949af1192534da28975f76d4f211315dce1e36f93ffcf2a555de516b28",
43 | "407e5a952f145de7da53533de8366bbd2e0c854721a204f03906dc82fde10f48",
44 | "1c925d9052849edddcf04d5f1f0d4ff183a66b66eb820f59b675aee121cfc63c",
45 | "07d7c41b02158a9c5eac212ed6d7c2cddeb8e38baea6e93e1a00b2e83e2a0995"
46 | ]
47 | },
48 | "A_bar": "b1f8bf99a11c39f04e2a032183c1ead12956ad322dd06799c50f20fb8cf6b0ac279210ef5a2920a7be3ec2aa0911ace7",
49 | "B_bar": "b96811a98f3c1cceba4a2147ae763b3ba036f47bc21c39179f2b395e0ab1ac49017ea5b27848547bedd27be481c1dfc0",
50 | "D": "b73372346feb94ab16189d4c525652b8d3361bab43463700720ecfb0ee75e595ea1b13330615011050a0dfcffdb21af3",
51 | "T1": "8b497dd4dcdcf7eb58c9b43e57e06bcea3468a223ae2fc015d7a86506a952d68055e73f5a5847e58f133ea154256d0da",
52 | "T2": "8655584d3da1313f881f48c239384a5623d2d292f08dae7ac1d8129c19a02a89b82fa45de3f6c2c439510fce5919656f",
53 | "domain": "6f7ee8de30835599bb540d2cb4dd02fd0c6cf8246f14c9ee9a8463f7fd400f7b",
54 | "challenge": "1bc325464a71cd7aacc2d956a811aaff13ea4c35cef7842b656e8ba4758e7558"
55 | }
56 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-shake-256/proof/proof012.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "invalid multi-message signature, all messages revealed proof (truncated proof, one less undisclosed message)",
3 | "signerPublicKey": "92d37d1d6cd38fea3a873953333eab23a4c0377e3e049974eb62bd45949cdeb18fb0490edcd4429adff56e65cbce42cf188b31bddbd619e419b99c2c41b38179eb001963bc3decaae0d9f702c7a8c004f207f46c734a5eae2e8e82833f3e7ea5",
4 | "signature": "956a3427b1b8e3642e60e6a7990b67626811adeec7a0a6cb4f770cdd7c20cf08faabb913ac94d18e1e92832e924cb6e202912b624261fc6c59b0fea801547f67fb7d3253e1e2acbcf90ef59a6911931e",
5 | "header": "11223344556677889900aabbccddeeff",
6 | "presentationHeader": "bed231d880675ed101ead304512e043ade9958dd0241ea70b4b3957fba941501",
7 | "messages": [
8 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
9 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
10 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
11 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
12 | "496694774c5604ab1b2544eababcf0f53278ff50",
13 | "515ae153e22aae04ad16f759e07237b4",
14 | "d183ddc6e2665aa4e2f088af",
15 | "ac55fb33a75909ed",
16 | "96012096",
17 | ""
18 | ],
19 | "disclosedIndexes": [
20 | 0,
21 | 2,
22 | 4,
23 | 6
24 | ],
25 | "proof": "b1f8bf99a11c39f04e2a032183c1ead12956ad322dd06799c50f20fb8cf6b0ac279210ef5a2920a7be3ec2aa0911ace7b96811a98f3c1cceba4a2147ae763b3ba036f47bc21c39179f2b395e0ab1ac49017ea5b27848547bedd27be481c1dfc0b73372346feb94ab16189d4c525652b8d3361bab43463700720ecfb0ee75e595ea1b13330615011050a0dfcffdb21af356dd39bf8bcbfd41bf95d913f4c9b2979e1ed2ca10ac7e881bb6a271722549681e398d29e9ba4eac8848b168eddd5e4acec7df4103e2ed165e6e32edc80f0a3b28c36fb39ca19b4b8acee570deadba2da9ec20d1f236b571e0d4c2ea3b826fe924175ed4dfffbf18a9cfa98546c241efb9164c444d970e8c89849bc8601e96cf228fdefe38ab3b7e289cac859e68d9cbb0e648faf692b27df5ff6539c30da17e5444a65143de02ca64cee7b0823be65865cdc310be038ec6b594b99280072ae067bad1117b0ff3201a5506a8533b925c7ffae9cdb64558857db0ac5f5e0f18e750ae77ec9cf35263474fef3f78138c7a1ef5cfbc878975458239824fad3ce05326ba3969b1f5451bd82bd1f8075f3d32ece2d61d89a064ab4804c3c892d651d1",
26 | "result": {
27 | "valid": false,
28 | "reason": "truncated proof, one less undisclosed message"
29 | },
30 | "trace": {
31 | "random_scalars": {
32 | "r1": "5ee9426ae206e3a127eb53c79044bc9ed1b71354f8354b01bf410a02220be7d0",
33 | "r2": "280d4fcc38376193ffc777b68459ed7ba897e2857f938581acf95ae5a68988f3",
34 | "e_tilde": "39966b00042fc43906297d692ebb41de08e36aada8d9504d4e0ae02ad59e9230",
35 | "r1_tilde": "61f5c273999b0b50be8f84d2380eb9220fc5a88afe144efc4007545f0ab9c089",
36 | "r3_tilde": "63af117e0c8b7d2f1f3e375fcf5d9430e136ff0f7e879423e49dadc401a50089",
37 | "m_tilde_scalars": [
38 | "020b83ca2ab319cba0744d6d58da75ac3dfb6ba682bfce2587c5a6d86a4e4e7b",
39 | "5bf565343611c08f83e4420e8b1577ace8cc4df5d5303aeb3c4e425f1080f836",
40 | "049d77949af1192534da28975f76d4f211315dce1e36f93ffcf2a555de516b28",
41 | "407e5a952f145de7da53533de8366bbd2e0c854721a204f03906dc82fde10f48",
42 | "1c925d9052849edddcf04d5f1f0d4ff183a66b66eb820f59b675aee121cfc63c",
43 | "07d7c41b02158a9c5eac212ed6d7c2cddeb8e38baea6e93e1a00b2e83e2a0995"
44 | ]
45 | },
46 | "A_bar": "b1f8bf99a11c39f04e2a032183c1ead12956ad322dd06799c50f20fb8cf6b0ac279210ef5a2920a7be3ec2aa0911ace7",
47 | "B_bar": "b96811a98f3c1cceba4a2147ae763b3ba036f47bc21c39179f2b395e0ab1ac49017ea5b27848547bedd27be481c1dfc0",
48 | "D": "b73372346feb94ab16189d4c525652b8d3361bab43463700720ecfb0ee75e595ea1b13330615011050a0dfcffdb21af3",
49 | "T1": "8b497dd4dcdcf7eb58c9b43e57e06bcea3468a223ae2fc015d7a86506a952d68055e73f5a5847e58f133ea154256d0da",
50 | "T2": "8655584d3da1313f881f48c239384a5623d2d292f08dae7ac1d8129c19a02a89b82fa45de3f6c2c439510fce5919656f",
51 | "domain": "6f7ee8de30835599bb540d2cb4dd02fd0c6cf8246f14c9ee9a8463f7fd400f7b",
52 | "challenge": "1bc325464a71cd7aacc2d956a811aaff13ea4c35cef7842b656e8ba4758e7558"
53 | }
54 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-shake-256/proof/proof013.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "invalid multi-message signature, all messages revealed proof (different header)",
3 | "signerPublicKey": "92d37d1d6cd38fea3a873953333eab23a4c0377e3e049974eb62bd45949cdeb18fb0490edcd4429adff56e65cbce42cf188b31bddbd619e419b99c2c41b38179eb001963bc3decaae0d9f702c7a8c004f207f46c734a5eae2e8e82833f3e7ea5",
4 | "signature": "956a3427b1b8e3642e60e6a7990b67626811adeec7a0a6cb4f770cdd7c20cf08faabb913ac94d18e1e92832e924cb6e202912b624261fc6c59b0fea801547f67fb7d3253e1e2acbcf90ef59a6911931e",
5 | "header": "ffeeddccbbaa00998877665544332211",
6 | "presentationHeader": "bed231d880675ed101ead304512e043ade9958dd0241ea70b4b3957fba941501",
7 | "messages": [
8 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
9 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
10 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
11 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
12 | "496694774c5604ab1b2544eababcf0f53278ff50",
13 | "515ae153e22aae04ad16f759e07237b4",
14 | "d183ddc6e2665aa4e2f088af",
15 | "ac55fb33a75909ed",
16 | "96012096",
17 | ""
18 | ],
19 | "disclosedIndexes": [
20 | 0,
21 | 2,
22 | 4,
23 | 6
24 | ],
25 | "proof": "b1f8bf99a11c39f04e2a032183c1ead12956ad322dd06799c50f20fb8cf6b0ac279210ef5a2920a7be3ec2aa0911ace7b96811a98f3c1cceba4a2147ae763b3ba036f47bc21c39179f2b395e0ab1ac49017ea5b27848547bedd27be481c1dfc0b73372346feb94ab16189d4c525652b8d3361bab43463700720ecfb0ee75e595ea1b13330615011050a0dfcffdb21af356dd39bf8bcbfd41bf95d913f4c9b2979e1ed2ca10ac7e881bb6a271722549681e398d29e9ba4eac8848b168eddd5e4acec7df4103e2ed165e6e32edc80f0a3b28c36fb39ca19b4b8acee570deadba2da9ec20d1f236b571e0d4c2ea3b826fe924175ed4dfffbf18a9cfa98546c241efb9164c444d970e8c89849bc8601e96cf228fdefe38ab3b7e289cac859e68d9cbb0e648faf692b27df5ff6539c30da17e5444a65143de02ca64cee7b0823be65865cdc310be038ec6b594b99280072ae067bad1117b0ff3201a5506a8533b925c7ffae9cdb64558857db0ac5f5e0f18e750ae77ec9cf35263474fef3f78138c7a1ef5cfbc878975458239824fad3ce05326ba3969b1f5451bd82bd1f8075f3d32ece2d61d89a064ab4804c3c892d651d11bc325464a71cd7aacc2d956a811aaff13ea4c35cef7842b656e8ba4758e7558",
26 | "result": {
27 | "valid": false,
28 | "reason": "different header"
29 | },
30 | "trace": {
31 | "random_scalars": {
32 | "r1": "5ee9426ae206e3a127eb53c79044bc9ed1b71354f8354b01bf410a02220be7d0",
33 | "r2": "280d4fcc38376193ffc777b68459ed7ba897e2857f938581acf95ae5a68988f3",
34 | "e_tilde": "39966b00042fc43906297d692ebb41de08e36aada8d9504d4e0ae02ad59e9230",
35 | "r1_tilde": "61f5c273999b0b50be8f84d2380eb9220fc5a88afe144efc4007545f0ab9c089",
36 | "r3_tilde": "63af117e0c8b7d2f1f3e375fcf5d9430e136ff0f7e879423e49dadc401a50089",
37 | "m_tilde_scalars": [
38 | "020b83ca2ab319cba0744d6d58da75ac3dfb6ba682bfce2587c5a6d86a4e4e7b",
39 | "5bf565343611c08f83e4420e8b1577ace8cc4df5d5303aeb3c4e425f1080f836",
40 | "049d77949af1192534da28975f76d4f211315dce1e36f93ffcf2a555de516b28",
41 | "407e5a952f145de7da53533de8366bbd2e0c854721a204f03906dc82fde10f48",
42 | "1c925d9052849edddcf04d5f1f0d4ff183a66b66eb820f59b675aee121cfc63c",
43 | "07d7c41b02158a9c5eac212ed6d7c2cddeb8e38baea6e93e1a00b2e83e2a0995"
44 | ]
45 | },
46 | "A_bar": "b1f8bf99a11c39f04e2a032183c1ead12956ad322dd06799c50f20fb8cf6b0ac279210ef5a2920a7be3ec2aa0911ace7",
47 | "B_bar": "b96811a98f3c1cceba4a2147ae763b3ba036f47bc21c39179f2b395e0ab1ac49017ea5b27848547bedd27be481c1dfc0",
48 | "D": "b73372346feb94ab16189d4c525652b8d3361bab43463700720ecfb0ee75e595ea1b13330615011050a0dfcffdb21af3",
49 | "T1": "8b497dd4dcdcf7eb58c9b43e57e06bcea3468a223ae2fc015d7a86506a952d68055e73f5a5847e58f133ea154256d0da",
50 | "T2": "8655584d3da1313f881f48c239384a5623d2d292f08dae7ac1d8129c19a02a89b82fa45de3f6c2c439510fce5919656f",
51 | "domain": "6f7ee8de30835599bb540d2cb4dd02fd0c6cf8246f14c9ee9a8463f7fd400f7b",
52 | "challenge": "1bc325464a71cd7aacc2d956a811aaff13ea4c35cef7842b656e8ba4758e7558"
53 | }
54 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-shake-256/proof/proof014.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "valid multi-message signature, multiple messages revealed proof, no header",
3 | "signerPublicKey": "92d37d1d6cd38fea3a873953333eab23a4c0377e3e049974eb62bd45949cdeb18fb0490edcd4429adff56e65cbce42cf188b31bddbd619e419b99c2c41b38179eb001963bc3decaae0d9f702c7a8c004f207f46c734a5eae2e8e82833f3e7ea5",
4 | "signature": "88beeb970f803160d3058eacde505207c576a8c9e4e5dc7c5249cbcf2a046c15f8df047031eef3436e04b779d92a9cdb1fe4c6cc035ba1634f1740f9dd49816d3ca745ecbe39f655ea61fb700137fded",
5 | "header": "",
6 | "presentationHeader": "bed231d880675ed101ead304512e043ade9958dd0241ea70b4b3957fba941501",
7 | "messages": [
8 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
9 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
10 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
11 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
12 | "496694774c5604ab1b2544eababcf0f53278ff50",
13 | "515ae153e22aae04ad16f759e07237b4",
14 | "d183ddc6e2665aa4e2f088af",
15 | "ac55fb33a75909ed",
16 | "96012096",
17 | ""
18 | ],
19 | "disclosedIndexes": [
20 | 0,
21 | 2,
22 | 4,
23 | 6
24 | ],
25 | "proof": "8ac336eea1d278656372d9914483c3d3b3069dfa4a7862293ac021dfeeebca93cadd7eb2b818f7b89719cdeffa5aa85989a7d691be11b1929a2bf089bfe9f2adc2c06788edc30585546efb74877f34ad91f0d6923b4ed7a53c49051dda8d056a95644ee738810772d90c1033f1dfe45c0b1b453d131170aafa8a99f812f3b90a5d1d9e6bd05a4dee6a50dd277ffc646f2429372f3ad9d5946ffeb53f24d41ffcc83c32cbb68afc9b6e0b64eebd24c69c6a7bd3bca8a6394ed8ae315abd555a6996f34d9da7680447947b3f35f54c38b562e990ee4d17a21569af4fc02f2991e6db78cc32d3ef9f6069fc5c2d47c8d8ff116dfb8a59641641961b854427f67649df14ab6e63f2d0d2a0cba2b2e1e835d20cd45e41f274532e9d50f31a690e5fef1c1456b65c668b80d8ec17b09bd5fb3b2c4edd6d6f5f790a5d6da22eb9a1aa2196d1a607f3c753813ba2bc6ece15d35263218fc7667c5f0fabfffe74745a8000e0415c8dafd5654ce6850ac2c6485d02433fdaebd9993f8b86a2eebb3beb10b4cc7735330384a3f4dfd4d5b21998ad0227b37e736cf9c144a0386f28cccf27a01e50aab45dda8275eb877728e77d2055309dba8c6604e7cff0d2c46ce6026b8e232c192955f909da6e47c2130c7e3f4f",
26 | "result": {
27 | "valid": true
28 | },
29 | "trace": {
30 | "random_scalars": {
31 | "r1": "5ee9426ae206e3a127eb53c79044bc9ed1b71354f8354b01bf410a02220be7d0",
32 | "r2": "280d4fcc38376193ffc777b68459ed7ba897e2857f938581acf95ae5a68988f3",
33 | "e_tilde": "39966b00042fc43906297d692ebb41de08e36aada8d9504d4e0ae02ad59e9230",
34 | "r1_tilde": "61f5c273999b0b50be8f84d2380eb9220fc5a88afe144efc4007545f0ab9c089",
35 | "r3_tilde": "63af117e0c8b7d2f1f3e375fcf5d9430e136ff0f7e879423e49dadc401a50089",
36 | "m_tilde_scalars": [
37 | "020b83ca2ab319cba0744d6d58da75ac3dfb6ba682bfce2587c5a6d86a4e4e7b",
38 | "5bf565343611c08f83e4420e8b1577ace8cc4df5d5303aeb3c4e425f1080f836",
39 | "049d77949af1192534da28975f76d4f211315dce1e36f93ffcf2a555de516b28",
40 | "407e5a952f145de7da53533de8366bbd2e0c854721a204f03906dc82fde10f48",
41 | "1c925d9052849edddcf04d5f1f0d4ff183a66b66eb820f59b675aee121cfc63c",
42 | "07d7c41b02158a9c5eac212ed6d7c2cddeb8e38baea6e93e1a00b2e83e2a0995"
43 | ]
44 | },
45 | "A_bar": "8ac336eea1d278656372d9914483c3d3b3069dfa4a7862293ac021dfeeebca93cadd7eb2b818f7b89719cdeffa5aa859",
46 | "B_bar": "89a7d691be11b1929a2bf089bfe9f2adc2c06788edc30585546efb74877f34ad91f0d6923b4ed7a53c49051dda8d056a",
47 | "D": "95644ee738810772d90c1033f1dfe45c0b1b453d131170aafa8a99f812f3b90a5d1d9e6bd05a4dee6a50dd277ffc646f",
48 | "T1": "a5405cc2c5965dda18714ab35f4d4a7ae4024f388fa7a5ba71202d4455b50b316ec37b360659e3012234562fa8989980",
49 | "T2": "9827a40454cdc90a70e9c927f097019dbdd84768babb10ebcb460c2d918e1ce1c0512bf2cc49ed7ec476dfcde7a6a10c",
50 | "domain": "333d8686761cff65a3a2ef20bfa217d37bdf19105e87c210e9ce64ea1210a157",
51 | "challenge": "309dba8c6604e7cff0d2c46ce6026b8e232c192955f909da6e47c2130c7e3f4f"
52 | }
53 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-shake-256/proof/proof015.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "valid multi-message signature, multiple messages revealed proof, no presentation header",
3 | "signerPublicKey": "92d37d1d6cd38fea3a873953333eab23a4c0377e3e049974eb62bd45949cdeb18fb0490edcd4429adff56e65cbce42cf188b31bddbd619e419b99c2c41b38179eb001963bc3decaae0d9f702c7a8c004f207f46c734a5eae2e8e82833f3e7ea5",
4 | "signature": "956a3427b1b8e3642e60e6a7990b67626811adeec7a0a6cb4f770cdd7c20cf08faabb913ac94d18e1e92832e924cb6e202912b624261fc6c59b0fea801547f67fb7d3253e1e2acbcf90ef59a6911931e",
5 | "header": "11223344556677889900aabbccddeeff",
6 | "presentationHeader": "",
7 | "messages": [
8 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
9 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
10 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
11 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
12 | "496694774c5604ab1b2544eababcf0f53278ff50",
13 | "515ae153e22aae04ad16f759e07237b4",
14 | "d183ddc6e2665aa4e2f088af",
15 | "ac55fb33a75909ed",
16 | "96012096",
17 | ""
18 | ],
19 | "disclosedIndexes": [
20 | 0,
21 | 2,
22 | 4,
23 | 6
24 | ],
25 | "proof": "b1f8bf99a11c39f04e2a032183c1ead12956ad322dd06799c50f20fb8cf6b0ac279210ef5a2920a7be3ec2aa0911ace7b96811a98f3c1cceba4a2147ae763b3ba036f47bc21c39179f2b395e0ab1ac49017ea5b27848547bedd27be481c1dfc0b73372346feb94ab16189d4c525652b8d3361bab43463700720ecfb0ee75e595ea1b13330615011050a0dfcffdb21af33fda9e14ba4cc0fcad8015bce3fecc4704799bef9924ab19688fc04f760c4da35017072a3e295788eff1b0dc2311bb199c186f86ea0540379d5a2ac8b7bd02d22487f2acc0e299115e16097b970badea802752a6fcb56cfbbcc2569916a8d3fe6d2d0fb1ae801cfc5ce056699adf23e3cd16b1fdf197deac099ab093da049a5b4451d038c71b7cc69e8390967594f6777a855c7f5d301f0f0573211ac85e2e165ea196f78c33f54092645a51341b777f0f5342301991f3da276c04b0224f7308090ae0b290d428a0570a71605a27977e7daf01d42dfbdcec252686c3060a73d81f6e151e23e3df2473b322da389f15a55cb2cd8a2bf29ef0d83d4876117735465fae956d8df56ec9eb0e4748ad3ef5587797368c51a0ccd67eb6da38602a1c2d4fd411214efc6932334ba0bcbf562626e7c0e1ae0db912c28d99f194fa3cd3a2",
26 | "result": {
27 | "valid": true
28 | },
29 | "trace": {
30 | "random_scalars": {
31 | "r1": "5ee9426ae206e3a127eb53c79044bc9ed1b71354f8354b01bf410a02220be7d0",
32 | "r2": "280d4fcc38376193ffc777b68459ed7ba897e2857f938581acf95ae5a68988f3",
33 | "e_tilde": "39966b00042fc43906297d692ebb41de08e36aada8d9504d4e0ae02ad59e9230",
34 | "r1_tilde": "61f5c273999b0b50be8f84d2380eb9220fc5a88afe144efc4007545f0ab9c089",
35 | "r3_tilde": "63af117e0c8b7d2f1f3e375fcf5d9430e136ff0f7e879423e49dadc401a50089",
36 | "m_tilde_scalars": [
37 | "020b83ca2ab319cba0744d6d58da75ac3dfb6ba682bfce2587c5a6d86a4e4e7b",
38 | "5bf565343611c08f83e4420e8b1577ace8cc4df5d5303aeb3c4e425f1080f836",
39 | "049d77949af1192534da28975f76d4f211315dce1e36f93ffcf2a555de516b28",
40 | "407e5a952f145de7da53533de8366bbd2e0c854721a204f03906dc82fde10f48",
41 | "1c925d9052849edddcf04d5f1f0d4ff183a66b66eb820f59b675aee121cfc63c",
42 | "07d7c41b02158a9c5eac212ed6d7c2cddeb8e38baea6e93e1a00b2e83e2a0995"
43 | ]
44 | },
45 | "A_bar": "b1f8bf99a11c39f04e2a032183c1ead12956ad322dd06799c50f20fb8cf6b0ac279210ef5a2920a7be3ec2aa0911ace7",
46 | "B_bar": "b96811a98f3c1cceba4a2147ae763b3ba036f47bc21c39179f2b395e0ab1ac49017ea5b27848547bedd27be481c1dfc0",
47 | "D": "b73372346feb94ab16189d4c525652b8d3361bab43463700720ecfb0ee75e595ea1b13330615011050a0dfcffdb21af3",
48 | "T1": "8b497dd4dcdcf7eb58c9b43e57e06bcea3468a223ae2fc015d7a86506a952d68055e73f5a5847e58f133ea154256d0da",
49 | "T2": "8655584d3da1313f881f48c239384a5623d2d292f08dae7ac1d8129c19a02a89b82fa45de3f6c2c439510fce5919656f",
50 | "domain": "6f7ee8de30835599bb540d2cb4dd02fd0c6cf8246f14c9ee9a8463f7fd400f7b",
51 | "challenge": "4fd411214efc6932334ba0bcbf562626e7c0e1ae0db912c28d99f194fa3cd3a2"
52 | }
53 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-shake-256/signature/signature001.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "valid single message signature",
3 | "signerKeyPair": {
4 | "secretKey": "2eee0f60a8a3a8bec0ee942bfd46cbdae9a0738ee68f5a64e7238311cf09a079",
5 | "publicKey": "92d37d1d6cd38fea3a873953333eab23a4c0377e3e049974eb62bd45949cdeb18fb0490edcd4429adff56e65cbce42cf188b31bddbd619e419b99c2c41b38179eb001963bc3decaae0d9f702c7a8c004f207f46c734a5eae2e8e82833f3e7ea5"
6 | },
7 | "header": "11223344556677889900aabbccddeeff",
8 | "messages": [
9 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02"
10 | ],
11 | "signature": "b9a622a4b404e6ca4c85c15739d2124a1deb16df750be202e2430e169bc27fb71c44d98e6d40792033e1c452145ada95030832c5dc778334f2f1b528eced21b0b97a12025a283d78b7136bb9825d04ef",
12 | "result": {
13 | "valid": true
14 | },
15 | "trace": {
16 | "B": "8bbc8c123d3f128f206dd0d2dae490e82af08b84e8d70af3dc291d32a6e98f635beefcc4533b2599804a164aabe68d7c",
17 | "domain": "2f18dd269c11c512256a9d1d57e61a7d2de6ebcf41cac3053f37afedc4e650a9"
18 | }
19 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-shake-256/signature/signature002.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "invalid single message signature (modified message)",
3 | "signerKeyPair": {
4 | "secretKey": "2eee0f60a8a3a8bec0ee942bfd46cbdae9a0738ee68f5a64e7238311cf09a079",
5 | "publicKey": "92d37d1d6cd38fea3a873953333eab23a4c0377e3e049974eb62bd45949cdeb18fb0490edcd4429adff56e65cbce42cf188b31bddbd619e419b99c2c41b38179eb001963bc3decaae0d9f702c7a8c004f207f46c734a5eae2e8e82833f3e7ea5"
6 | },
7 | "header": "11223344556677889900aabbccddeeff",
8 | "messages": [
9 | ""
10 | ],
11 | "signature": "b9a622a4b404e6ca4c85c15739d2124a1deb16df750be202e2430e169bc27fb71c44d98e6d40792033e1c452145ada95030832c5dc778334f2f1b528eced21b0b97a12025a283d78b7136bb9825d04ef",
12 | "result": {
13 | "valid": false,
14 | "reason": "modified message"
15 | },
16 | "trace": {
17 | "B": "8bbc8c123d3f128f206dd0d2dae490e82af08b84e8d70af3dc291d32a6e98f635beefcc4533b2599804a164aabe68d7c",
18 | "domain": "2f18dd269c11c512256a9d1d57e61a7d2de6ebcf41cac3053f37afedc4e650a9"
19 | }
20 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-shake-256/signature/signature003.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "invalid single message signature (extra unsigned message)",
3 | "signerKeyPair": {
4 | "secretKey": "2eee0f60a8a3a8bec0ee942bfd46cbdae9a0738ee68f5a64e7238311cf09a079",
5 | "publicKey": "92d37d1d6cd38fea3a873953333eab23a4c0377e3e049974eb62bd45949cdeb18fb0490edcd4429adff56e65cbce42cf188b31bddbd619e419b99c2c41b38179eb001963bc3decaae0d9f702c7a8c004f207f46c734a5eae2e8e82833f3e7ea5"
6 | },
7 | "header": "11223344556677889900aabbccddeeff",
8 | "messages": [
9 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
10 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80"
11 | ],
12 | "signature": "b9a622a4b404e6ca4c85c15739d2124a1deb16df750be202e2430e169bc27fb71c44d98e6d40792033e1c452145ada95030832c5dc778334f2f1b528eced21b0b97a12025a283d78b7136bb9825d04ef",
13 | "result": {
14 | "valid": false,
15 | "reason": "extra unsigned message"
16 | },
17 | "trace": {
18 | "B": "8bbc8c123d3f128f206dd0d2dae490e82af08b84e8d70af3dc291d32a6e98f635beefcc4533b2599804a164aabe68d7c",
19 | "domain": "2f18dd269c11c512256a9d1d57e61a7d2de6ebcf41cac3053f37afedc4e650a9"
20 | }
21 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-shake-256/signature/signature004.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "valid multi-message signature",
3 | "signerKeyPair": {
4 | "secretKey": "2eee0f60a8a3a8bec0ee942bfd46cbdae9a0738ee68f5a64e7238311cf09a079",
5 | "publicKey": "92d37d1d6cd38fea3a873953333eab23a4c0377e3e049974eb62bd45949cdeb18fb0490edcd4429adff56e65cbce42cf188b31bddbd619e419b99c2c41b38179eb001963bc3decaae0d9f702c7a8c004f207f46c734a5eae2e8e82833f3e7ea5"
6 | },
7 | "header": "11223344556677889900aabbccddeeff",
8 | "messages": [
9 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
10 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
11 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
12 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
13 | "496694774c5604ab1b2544eababcf0f53278ff50",
14 | "515ae153e22aae04ad16f759e07237b4",
15 | "d183ddc6e2665aa4e2f088af",
16 | "ac55fb33a75909ed",
17 | "96012096",
18 | ""
19 | ],
20 | "signature": "956a3427b1b8e3642e60e6a7990b67626811adeec7a0a6cb4f770cdd7c20cf08faabb913ac94d18e1e92832e924cb6e202912b624261fc6c59b0fea801547f67fb7d3253e1e2acbcf90ef59a6911931e",
21 | "result": {
22 | "valid": true
23 | },
24 | "trace": {
25 | "B": "ae8d4ebe248b9ad9c933d5661bfb46c56721fba2a1182ddda7e8fb443bda3c0a571ad018ad31d0b6d1f4e8b985e6c58d",
26 | "domain": "6f7ee8de30835599bb540d2cb4dd02fd0c6cf8246f14c9ee9a8463f7fd400f7b"
27 | }
28 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-shake-256/signature/signature005.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "invalid multi-message signature (missing messages)",
3 | "signerKeyPair": {
4 | "secretKey": "2eee0f60a8a3a8bec0ee942bfd46cbdae9a0738ee68f5a64e7238311cf09a079",
5 | "publicKey": "92d37d1d6cd38fea3a873953333eab23a4c0377e3e049974eb62bd45949cdeb18fb0490edcd4429adff56e65cbce42cf188b31bddbd619e419b99c2c41b38179eb001963bc3decaae0d9f702c7a8c004f207f46c734a5eae2e8e82833f3e7ea5"
6 | },
7 | "header": "11223344556677889900aabbccddeeff",
8 | "messages": [
9 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
10 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80"
11 | ],
12 | "signature": "956a3427b1b8e3642e60e6a7990b67626811adeec7a0a6cb4f770cdd7c20cf08faabb913ac94d18e1e92832e924cb6e202912b624261fc6c59b0fea801547f67fb7d3253e1e2acbcf90ef59a6911931e",
13 | "result": {
14 | "valid": false,
15 | "reason": "missing messages"
16 | },
17 | "trace": {
18 | "B": "ae8d4ebe248b9ad9c933d5661bfb46c56721fba2a1182ddda7e8fb443bda3c0a571ad018ad31d0b6d1f4e8b985e6c58d",
19 | "domain": "6f7ee8de30835599bb540d2cb4dd02fd0c6cf8246f14c9ee9a8463f7fd400f7b"
20 | }
21 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-shake-256/signature/signature006.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "invalid multi-message signature (re-ordered messages)",
3 | "signerKeyPair": {
4 | "secretKey": "2eee0f60a8a3a8bec0ee942bfd46cbdae9a0738ee68f5a64e7238311cf09a079",
5 | "publicKey": "92d37d1d6cd38fea3a873953333eab23a4c0377e3e049974eb62bd45949cdeb18fb0490edcd4429adff56e65cbce42cf188b31bddbd619e419b99c2c41b38179eb001963bc3decaae0d9f702c7a8c004f207f46c734a5eae2e8e82833f3e7ea5"
6 | },
7 | "header": "11223344556677889900aabbccddeeff",
8 | "messages": [
9 | "",
10 | "96012096",
11 | "ac55fb33a75909ed",
12 | "d183ddc6e2665aa4e2f088af",
13 | "515ae153e22aae04ad16f759e07237b4",
14 | "496694774c5604ab1b2544eababcf0f53278ff50",
15 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
16 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
17 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
18 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02"
19 | ],
20 | "signature": "956a3427b1b8e3642e60e6a7990b67626811adeec7a0a6cb4f770cdd7c20cf08faabb913ac94d18e1e92832e924cb6e202912b624261fc6c59b0fea801547f67fb7d3253e1e2acbcf90ef59a6911931e",
21 | "result": {
22 | "valid": false,
23 | "reason": "re-ordered messages"
24 | },
25 | "trace": {
26 | "B": "ae8d4ebe248b9ad9c933d5661bfb46c56721fba2a1182ddda7e8fb443bda3c0a571ad018ad31d0b6d1f4e8b985e6c58d",
27 | "domain": "6f7ee8de30835599bb540d2cb4dd02fd0c6cf8246f14c9ee9a8463f7fd400f7b"
28 | }
29 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-shake-256/signature/signature007.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "invalid multi-message signature (wrong public key)",
3 | "signerKeyPair": {
4 | "secretKey": "2eee0f60a8a3a8bec0ee942bfd46cbdae9a0738ee68f5a64e7238311cf09a079",
5 | "publicKey": "b24c723803f84e210f7a95f6265c5cbfa4ecc51488bf7acf24b921807801c0798b725b9a2dcfa29953efcdfef03328720196c78b2e613727fd6e085302a0cc2d8d7e1d820cf1d36b20e79eee78c13a1a5da51a298f1aef86f07bc33388f089d8"
6 | },
7 | "header": "11223344556677889900aabbccddeeff",
8 | "messages": [
9 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
10 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
11 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
12 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
13 | "496694774c5604ab1b2544eababcf0f53278ff50",
14 | "515ae153e22aae04ad16f759e07237b4",
15 | "d183ddc6e2665aa4e2f088af",
16 | "ac55fb33a75909ed",
17 | "96012096",
18 | ""
19 | ],
20 | "signature": "956a3427b1b8e3642e60e6a7990b67626811adeec7a0a6cb4f770cdd7c20cf08faabb913ac94d18e1e92832e924cb6e202912b624261fc6c59b0fea801547f67fb7d3253e1e2acbcf90ef59a6911931e",
21 | "result": {
22 | "valid": false,
23 | "reason": "wrong public key"
24 | },
25 | "trace": {
26 | "B": "ae8d4ebe248b9ad9c933d5661bfb46c56721fba2a1182ddda7e8fb443bda3c0a571ad018ad31d0b6d1f4e8b985e6c58d",
27 | "domain": "6f7ee8de30835599bb540d2cb4dd02fd0c6cf8246f14c9ee9a8463f7fd400f7b"
28 | }
29 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-shake-256/signature/signature008.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "invalid multi-message signature (different header)",
3 | "signerKeyPair": {
4 | "secretKey": "2eee0f60a8a3a8bec0ee942bfd46cbdae9a0738ee68f5a64e7238311cf09a079",
5 | "publicKey": "92d37d1d6cd38fea3a873953333eab23a4c0377e3e049974eb62bd45949cdeb18fb0490edcd4429adff56e65cbce42cf188b31bddbd619e419b99c2c41b38179eb001963bc3decaae0d9f702c7a8c004f207f46c734a5eae2e8e82833f3e7ea5"
6 | },
7 | "header": "ffeeddccbbaa00998877665544332211",
8 | "messages": [
9 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
10 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
11 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
12 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
13 | "496694774c5604ab1b2544eababcf0f53278ff50",
14 | "515ae153e22aae04ad16f759e07237b4",
15 | "d183ddc6e2665aa4e2f088af",
16 | "ac55fb33a75909ed",
17 | "96012096",
18 | ""
19 | ],
20 | "signature": "956a3427b1b8e3642e60e6a7990b67626811adeec7a0a6cb4f770cdd7c20cf08faabb913ac94d18e1e92832e924cb6e202912b624261fc6c59b0fea801547f67fb7d3253e1e2acbcf90ef59a6911931e",
21 | "result": {
22 | "valid": false,
23 | "reason": "different header"
24 | },
25 | "trace": {
26 | "B": "ae8d4ebe248b9ad9c933d5661bfb46c56721fba2a1182ddda7e8fb443bda3c0a571ad018ad31d0b6d1f4e8b985e6c58d",
27 | "domain": "6f7ee8de30835599bb540d2cb4dd02fd0c6cf8246f14c9ee9a8463f7fd400f7b"
28 | }
29 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-shake-256/signature/signature009.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "invalid multi-message signature (re-ordered(randomly shuffled) messages)",
3 | "signerKeyPair": {
4 | "secretKey": "2eee0f60a8a3a8bec0ee942bfd46cbdae9a0738ee68f5a64e7238311cf09a079",
5 | "publicKey": "92d37d1d6cd38fea3a873953333eab23a4c0377e3e049974eb62bd45949cdeb18fb0490edcd4429adff56e65cbce42cf188b31bddbd619e419b99c2c41b38179eb001963bc3decaae0d9f702c7a8c004f207f46c734a5eae2e8e82833f3e7ea5"
6 | },
7 | "header": "11223344556677889900aabbccddeeff",
8 | "messages": [
9 | "",
10 | "96012096",
11 | "496694774c5604ab1b2544eababcf0f53278ff50",
12 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
13 | "ac55fb33a75909ed",
14 | "d183ddc6e2665aa4e2f088af",
15 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
16 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
17 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
18 | "515ae153e22aae04ad16f759e07237b4"
19 | ],
20 | "signature": "956a3427b1b8e3642e60e6a7990b67626811adeec7a0a6cb4f770cdd7c20cf08faabb913ac94d18e1e92832e924cb6e202912b624261fc6c59b0fea801547f67fb7d3253e1e2acbcf90ef59a6911931e",
21 | "result": {
22 | "valid": false,
23 | "reason": "re-ordered(randomly shuffled) messages"
24 | },
25 | "trace": {
26 | "B": "ae8d4ebe248b9ad9c933d5661bfb46c56721fba2a1182ddda7e8fb443bda3c0a571ad018ad31d0b6d1f4e8b985e6c58d",
27 | "domain": "6f7ee8de30835599bb540d2cb4dd02fd0c6cf8246f14c9ee9a8463f7fd400f7b"
28 | }
29 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/bls12-381-shake-256/signature/signature010.json:
--------------------------------------------------------------------------------
1 | {
2 | "caseName": "valid multi-message signature, no header",
3 | "signerKeyPair": {
4 | "secretKey": "2eee0f60a8a3a8bec0ee942bfd46cbdae9a0738ee68f5a64e7238311cf09a079",
5 | "publicKey": "92d37d1d6cd38fea3a873953333eab23a4c0377e3e049974eb62bd45949cdeb18fb0490edcd4429adff56e65cbce42cf188b31bddbd619e419b99c2c41b38179eb001963bc3decaae0d9f702c7a8c004f207f46c734a5eae2e8e82833f3e7ea5"
6 | },
7 | "header": "",
8 | "messages": [
9 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
10 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
11 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
12 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
13 | "496694774c5604ab1b2544eababcf0f53278ff50",
14 | "515ae153e22aae04ad16f759e07237b4",
15 | "d183ddc6e2665aa4e2f088af",
16 | "ac55fb33a75909ed",
17 | "96012096",
18 | ""
19 | ],
20 | "signature": "88beeb970f803160d3058eacde505207c576a8c9e4e5dc7c5249cbcf2a046c15f8df047031eef3436e04b779d92a9cdb1fe4c6cc035ba1634f1740f9dd49816d3ca745ecbe39f655ea61fb700137fded",
21 | "result": {
22 | "valid": true
23 | },
24 | "trace": {
25 | "B": "8607ebc413b397c1e27ce591d1daa39f73da329018bda0f90bf996355cc28c3cdba19feeb81e35be9e1503a018e4086e",
26 | "domain": "333d8686761cff65a3a2ef20bfa217d37bdf19105e87c210e9ce64ea1210a157"
27 | }
28 | }
--------------------------------------------------------------------------------
/tooling/fixtures/fixture_data/messages.json:
--------------------------------------------------------------------------------
1 | [
2 | "9872ad089e452c7b6e283dfac2a80d58e8d0ff71cc4d5e310a1debdda4a45f02",
3 | "c344136d9ab02da4dd5908bbba913ae6f58c2cc844b802a6f811f5fb075f9b80",
4 | "7372e9daa5ed31e6cd5c825eac1b855e84476a1d94932aa348e07b73",
5 | "77fe97eb97a1ebe2e81e4e3597a3ee740a66e9ef2412472c",
6 | "496694774c5604ab1b2544eababcf0f53278ff50",
7 | "515ae153e22aae04ad16f759e07237b4",
8 | "d183ddc6e2665aa4e2f088af",
9 | "ac55fb33a75909ed",
10 | "96012096",
11 | ""
12 | ]
--------------------------------------------------------------------------------
/tooling/fixtures/index.ts:
--------------------------------------------------------------------------------
1 | import { promises } from "fs";
2 | import * as path from "path";
3 | import * as fixtures from "./fetchFixtures";
4 | import get from "lodash.get";
5 |
6 | // matching lines of the form "name = {{ $ }}" (for
7 | // example "m_1 = {{ $messages[1] }}" etc).
8 | const VARIABLE_REGEX = /(([^\S\n\t]*[a-zA-Z0-9_~]+\d*)\s=\s)?({{ \$)([a-zA-Z_|.|\-|\d|\[|\]]*)( }},?)$/gm
9 |
10 | const DRAFT_NAME = "../../draft-irtf-cfrg-bbs-signatures.md";
11 |
12 | const main = async () => {
13 | // Read the text of the draft out
14 | const filePath = path.join(process.env.PWD as string, DRAFT_NAME);
15 | let fileContents = (await promises.readFile(filePath)).toString();
16 |
17 | const results = Array.from(fileContents.matchAll(VARIABLE_REGEX)).map(
18 | (item: any) => {
19 | return { match: "{{ $" + item[4] + " }}", path: item[4], intent: item[1] };
20 | }
21 | );
22 |
23 | results.forEach((result) => {
24 | var value = get(fixtures, result.path);
25 |
26 | // handle values that are arrays
27 | if (Array.isArray(value)) {
28 | let array_value = "[ ";
29 | for (let el of value.slice(0, -1)) {
30 | array_value = array_value + el + ", ";
31 | }
32 | array_value = array_value + value.slice(-1) + " ]";
33 | value = array_value;
34 | }
35 |
36 | value = "\x22" + value + "\x22";
37 |
38 | let intent_len = result.intent ? result.intent.length : 0;
39 | let max_len = 71 - intent_len;
40 | if (max_len <= 0) {throw Error("Not enough space in the line to add the fixture")}
41 |
42 | // make everything 72 chars long
43 | if (value.length + intent_len > 72) {
44 | value = value.slice(0, max_len + 1) + "\n" + " ".repeat(intent_len + 1) + value.slice(max_len + 1);
45 | }
46 |
47 | for (let i = 1; i < ~~(value.length/72); i++) {
48 | value = value.slice(0, 145 - intent_len + (i - 1)*73) + "\n" + " ".repeat(intent_len + 1) + value.slice(145 - intent_len + (i - 1)*73);
49 | }
50 |
51 | // remove trailing whitespace from the value to be added in the draft
52 | value = value.trim();
53 |
54 | if (value || value === '') {
55 | fileContents = fileContents.replace(result.match, value);
56 | }
57 | });
58 |
59 | // Write an updated copy of the file
60 | await promises.writeFile(filePath, fileContents);
61 | };
62 |
63 | main();
64 |
--------------------------------------------------------------------------------
/tooling/fixtures/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "bbs-signature-fixture-population",
3 | "version": "0.1.0",
4 | "license": "Apache-2.0",
5 | "private": false,
6 | "scripts": {
7 | "populate-fixtures": "ts-node index.ts"
8 | },
9 | "devDependencies": {
10 | "@types/node": "14.0.27",
11 | "@types/lodash.get": "4.4.6",
12 | "lodash.get": "4.4.2",
13 | "require-all": "^3.0.0",
14 | "ts-node": "10.4.0",
15 | "typescript": "4.5.5"
16 | }
17 | }
--------------------------------------------------------------------------------
/tooling/fixtures/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "module": "commonjs",
4 | "target": "es2021",
5 | "sourceMap": true,
6 | "allowJs": false,
7 | "moduleResolution": "node",
8 | "strict": true,
9 | "declaration": true,
10 | "downlevelIteration": true,
11 | "baseUrl": ".",
12 | "esModuleInterop": true,
13 | "resolveJsonModule": true,
14 | "outDir": "./bin",
15 | "types": ["jest", "node"]
16 | },
17 | "include": ["./src"]
18 | }
--------------------------------------------------------------------------------
/tooling/fixtures/yarn.lock:
--------------------------------------------------------------------------------
1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
2 | # yarn lockfile v1
3 |
4 |
5 | "@cspotcode/source-map-consumer@0.8.0":
6 | version "0.8.0"
7 | resolved "https://registry.yarnpkg.com/@cspotcode/source-map-consumer/-/source-map-consumer-0.8.0.tgz#33bf4b7b39c178821606f669bbc447a6a629786b"
8 | integrity sha512-41qniHzTU8yAGbCp04ohlmSrZf8bkf/iJsl3V0dRGsQN/5GFfx+LbCSsCpp2gqrqjTVg/K6O8ycoV35JIwAzAg==
9 |
10 | "@cspotcode/source-map-support@0.7.0":
11 | version "0.7.0"
12 | resolved "https://registry.yarnpkg.com/@cspotcode/source-map-support/-/source-map-support-0.7.0.tgz#4789840aa859e46d2f3173727ab707c66bf344f5"
13 | integrity sha512-X4xqRHqN8ACt2aHVe51OxeA2HjbcL4MqFqXkrmQszJ1NOUuUu5u6Vqx/0lZSVNku7velL5FC/s5uEAj1lsBMhA==
14 | dependencies:
15 | "@cspotcode/source-map-consumer" "0.8.0"
16 |
17 | "@tsconfig/node10@^1.0.7":
18 | version "1.0.8"
19 | resolved "https://registry.yarnpkg.com/@tsconfig/node10/-/node10-1.0.8.tgz#c1e4e80d6f964fbecb3359c43bd48b40f7cadad9"
20 | integrity sha512-6XFfSQmMgq0CFLY1MslA/CPUfhIL919M1rMsa5lP2P097N2Wd1sSX0tx1u4olM16fLNhtHZpRhedZJphNJqmZg==
21 |
22 | "@tsconfig/node12@^1.0.7":
23 | version "1.0.9"
24 | resolved "https://registry.yarnpkg.com/@tsconfig/node12/-/node12-1.0.9.tgz#62c1f6dee2ebd9aead80dc3afa56810e58e1a04c"
25 | integrity sha512-/yBMcem+fbvhSREH+s14YJi18sp7J9jpuhYByADT2rypfajMZZN4WQ6zBGgBKp53NKmqI36wFYDb3yaMPurITw==
26 |
27 | "@tsconfig/node14@^1.0.0":
28 | version "1.0.1"
29 | resolved "https://registry.yarnpkg.com/@tsconfig/node14/-/node14-1.0.1.tgz#95f2d167ffb9b8d2068b0b235302fafd4df711f2"
30 | integrity sha512-509r2+yARFfHHE7T6Puu2jjkoycftovhXRqW328PDXTVGKihlb1P8Z9mMZH04ebyajfRY7dedfGynlrFHJUQCg==
31 |
32 | "@tsconfig/node16@^1.0.2":
33 | version "1.0.2"
34 | resolved "https://registry.yarnpkg.com/@tsconfig/node16/-/node16-1.0.2.tgz#423c77877d0569db20e1fc80885ac4118314010e"
35 | integrity sha512-eZxlbI8GZscaGS7kkc/trHTT5xgrjH3/1n2JDwusC9iahPKWMRvRjJSAN5mCXviuTGQ/lHnhvv8Q1YTpnfz9gA==
36 |
37 | "@types/lodash.get@4.4.6":
38 | version "4.4.6"
39 | resolved "https://registry.yarnpkg.com/@types/lodash.get/-/lodash.get-4.4.6.tgz#0c7ac56243dae0f9f09ab6f75b29471e2e777240"
40 | integrity sha512-E6zzjR3GtNig8UJG/yodBeJeIOtgPkMgsLjDU3CbgCAPC++vJ0eCMnJhVpRZb/ENqEFlov1+3K9TKtY4UdWKtQ==
41 | dependencies:
42 | "@types/lodash" "*"
43 |
44 | "@types/lodash@*":
45 | version "4.14.178"
46 | resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.178.tgz#341f6d2247db528d4a13ddbb374bcdc80406f4f8"
47 | integrity sha512-0d5Wd09ItQWH1qFbEyQ7oTQ3GZrMfth5JkbN3EvTKLXcHLRDSXeLnlvlOn0wvxVIwK5o2M8JzP/OWz7T3NRsbw==
48 |
49 | "@types/node@14.0.27":
50 | version "14.0.27"
51 | resolved "https://registry.yarnpkg.com/@types/node/-/node-14.0.27.tgz#a151873af5a5e851b51b3b065c9e63390a9e0eb1"
52 | integrity sha512-kVrqXhbclHNHGu9ztnAwSncIgJv/FaxmzXJvGXNdcCpV1b8u1/Mi6z6m0vwy0LzKeXFTPLH0NzwmoJ3fNCIq0g==
53 |
54 | acorn-walk@^8.1.1:
55 | version "8.2.0"
56 | resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.2.0.tgz#741210f2e2426454508853a2f44d0ab83b7f69c1"
57 | integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==
58 |
59 | acorn@^8.4.1:
60 | version "8.7.0"
61 | resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.7.0.tgz#90951fde0f8f09df93549481e5fc141445b791cf"
62 | integrity sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==
63 |
64 | arg@^4.1.0:
65 | version "4.1.3"
66 | resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089"
67 | integrity sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==
68 |
69 | create-require@^1.1.0:
70 | version "1.1.1"
71 | resolved "https://registry.yarnpkg.com/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333"
72 | integrity sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==
73 |
74 | diff@^4.0.1:
75 | version "4.0.2"
76 | resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d"
77 | integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==
78 |
79 | lodash.get@4.4.2:
80 | version "4.4.2"
81 | resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99"
82 | integrity sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=
83 |
84 | make-error@^1.1.1:
85 | version "1.3.6"
86 | resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2"
87 | integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==
88 |
89 | require-all@^3.0.0:
90 | version "3.0.0"
91 | resolved "https://registry.yarnpkg.com/require-all/-/require-all-3.0.0.tgz#473d49704be310115ce124f77383b1ebd8671312"
92 | integrity sha1-Rz1JcEvjEBFc4ST3c4Ox69hnExI=
93 |
94 | ts-node@10.4.0:
95 | version "10.4.0"
96 | resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-10.4.0.tgz#680f88945885f4e6cf450e7f0d6223dd404895f7"
97 | integrity sha512-g0FlPvvCXSIO1JDF6S232P5jPYqBkRL9qly81ZgAOSU7rwI0stphCgd2kLiCrU9DjQCrJMWEqcNSjQL02s6d8A==
98 | dependencies:
99 | "@cspotcode/source-map-support" "0.7.0"
100 | "@tsconfig/node10" "^1.0.7"
101 | "@tsconfig/node12" "^1.0.7"
102 | "@tsconfig/node14" "^1.0.0"
103 | "@tsconfig/node16" "^1.0.2"
104 | acorn "^8.4.1"
105 | acorn-walk "^8.1.1"
106 | arg "^4.1.0"
107 | create-require "^1.1.0"
108 | diff "^4.0.1"
109 | make-error "^1.1.1"
110 | yn "3.1.1"
111 |
112 | typescript@4.5.5:
113 | version "4.5.5"
114 | resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.5.5.tgz#d8c953832d28924a9e3d37c73d729c846c5896f3"
115 | integrity sha512-TCTIul70LyWe6IJWT8QSYeA54WQe8EjQFU4wY52Fasj5UKx88LNYKCgBEHcOMOrFF1rKGbD8v/xcNWVUq9SymA==
116 |
117 | yn@3.1.1:
118 | version "3.1.1"
119 | resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50"
120 | integrity sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==
121 |
--------------------------------------------------------------------------------
/tooling/keygen/.gitignore:
--------------------------------------------------------------------------------
1 | Cargo.lock
2 | target/
3 |
--------------------------------------------------------------------------------
/tooling/keygen/Cargo.toml:
--------------------------------------------------------------------------------
1 | [package]
2 | name = "keygen"
3 | version = "0.1.0"
4 | edition = "2021"
5 |
6 | [dependencies]
7 | bls12_381 = { version = "0.8.0", default-features = false, features = ["experimental", "groups"] }
8 | ff = { version = "0.13", default-features = false }
9 | group = "0.13"
10 | hex = "0.4"
11 | sha2 = "0.9"
12 | sha3 = "0.9"
13 | serde_json = "1.0"
14 | structopt = "0.3"
15 | serde = { version = "1.0", features = ["derive"] }
16 |
--------------------------------------------------------------------------------
/tooling/keygen/README.md:
--------------------------------------------------------------------------------
1 | # Key Generation CLI
2 |
3 | A reference tool for creating a BBS key pair.
4 |
5 | ## Build
6 |
7 | You need to have Rust install. After, run the following from the current directory to build the tool
8 |
9 | ```
10 | cargo build -p keygen
11 | ```
12 |
13 | ## Running
14 |
15 | From the current directory, run the tool using
16 |
17 | ```
18 | cargo run -p keygen -- -h
19 | ```
20 | This will print the help screen with the following different options for using the tool.
21 |
22 | ```
23 | USAGE:
24 | keygen [OPTIONS]
25 |
26 | FLAGS:
27 | -h, --help Prints help information
28 | -V, --version Prints version information
29 |
30 | OPTIONS:
31 | -f, --file
32 | --ikm [default: ]
33 | --key-info [default: ]
34 | -o, --out [default: Print]
35 | ```
36 |
37 | Note: The `` and `` are the following.
38 |
39 | ```
40 | DEFAULT IKM = 746869732d49532d6a7573742d616e2d546573742d494b4d2d746f2d67656e65726174652d246528724074232d6b6579
41 |
42 | DEFAULT KEY_INFO = 746869732d49532d6a7573742d616e2d546573742d494b4d2d746f2d67656e65726174652d246528724074232d6b6579
43 | ```
44 |
45 | ## Saving the key pair to a file
46 | From the current directory, run
47 | ```
48 | cargo run -p keygen -- -o file
49 | ```
50 | This will save the keygen to the default output direction `../fixtures/fixture_data/keyPair.json`. You can supply a new destination using
51 | ```
52 | cargo run -p keygen -- -o file -f
53 | ```
54 | Note: `` will be relative to the current directory, not the project's root.
--------------------------------------------------------------------------------
/tooling/message-generators/.gitignore:
--------------------------------------------------------------------------------
1 | Cargo.lock
2 | target/
3 | .idea/
4 |
--------------------------------------------------------------------------------
/tooling/message-generators/Cargo.toml:
--------------------------------------------------------------------------------
1 | [package]
2 | name = "bbs-signature-generator-demo"
3 | version = "0.1.0"
4 | edition = "2021"
5 |
6 | [dependencies]
7 | bls12_381_plus = "0.5"
8 | ff = "0.10"
9 | group = "0.10"
10 | hex = "0.4"
11 | rand = { version = "0.8", features = ["std_rng"] }
12 | sha3 = "0.9"
13 | sha2 = "0.9"
14 | structopt = "0.3"
15 | serde_json = "1.0.59"
16 | serde = "1.0"
17 |
--------------------------------------------------------------------------------
/tooling/message-generators/README.md:
--------------------------------------------------------------------------------
1 | # Message Generator CLI
2 |
3 | The following is a rust based tool used to produce the set of public parameters known as message generators which are used by the BBS Signature scheme.
4 |
5 | # Installation
6 |
7 | To build this CLI you must have rust installed. The recommended way to set this up is via [rustup](https://www.rust-lang.org/tools/install).
8 |
9 | # Build
10 |
11 | Run the following to build the CLI tool
12 |
13 | ```bash
14 | cargo build
15 | ```
16 |
17 | # Running
18 |
19 | Run the following to produce the help screen for the CLI tool
20 |
21 | ```bash
22 | ./target/debug/bbs-signature-generator-demo -h
23 | ```
24 |
25 | *Note* This CLI tool is used to automatically populate the `../fixtures/generators.json` file required by the spec tool which is responsible for automatically populating the spec with the latest fixtures.
26 |
27 | # Usage
28 |
29 | The CLI accepts two arguments
30 |
31 | ```bash
32 | USAGE:
33 | bbs-signature-generator-demo [OPTIONS]
34 |
35 | FLAGS:
36 | -h, --help Prints help information
37 | -V, --version Prints version information
38 |
39 | OPTIONS:
40 | -g, --generator-type [default: Global]
41 | -l, --length [default: 10]
42 | -s, --suite [default: Shake]
43 | ```
44 |
45 | 1. `-g` accepted values are Global and Signer
46 | 1. Global creates the generators for a global setting
47 | 2. Signer creates the generators for a signer specific setting
48 | 2. `-l` accepts any positive integer
49 | 3. `-s` accepted values are Shake, xof, Sha and xmd
50 | 1. Shake or xof creates generators for the [BLS12-381-SHAKE-256](https://identity.foundation/bbs-signature/draft-irtf-cfrg-bbs-signatures.html#name-bls12-381-shake-256) ciphersuite
51 | 2. Sha or xmd creates generators for the [BLS12-381-SHA-256](https://identity.foundation/bbs-signature/draft-irtf-cfrg-bbs-signatures.html#name-bls12-381-sha-256) ciphersuite
52 |
53 | The demo will output the generators in compressed format hex encoded, an example of which is
54 |
55 | ```
56 | G_1 = a9b48966d6ed474ff66dc68ec717704a6b4fe40c1cbcbd3f1ca4feeed708893868b879e1d2d3ee0af1cca5fa35c28dcd
57 | G_2 = 93db6ae63cf4491e2323ba5c5f5f4383f7bb7d333d6c2aa301f96c3c6afdb5bdce69f5ad3c908977b6c5febaf0840d61
58 | G_3 = a384953d5ea2f88219a91da5942d9ad3d76b9e2048eb22a1002659dc44e8a174167cfa191e7a7eefc6888cb90e72c8b3
59 | G_4 = a4961c6d98f4212cff26f51cc303c05ee699552042b65dfe45cc4f9f7f354ec458395405a879b45f898be3c31ac1e291
60 | G_5 = 904580545192ce5b623072e013e4172dac9a28ae28e4816b7f95b91cf8baa18504ac7025e1eff5dec935c228862c7359
61 | G_6 = 8e3803894adfd3e7882caa45199a7a4d51e797f09b56173d6d9b0e98f946736485d39a9c1451708e1958e4e1e4ece5d1
62 | G_7 = b6ceacbd6198d20d9f224395be3e9560fd50e97d3b061edc4eecfd186f738c0d0964dba23a48c8ca564c1af20a1e5d23
63 | G_8 = adc6113b820926ecd41a05082e0ada9a5625c20c591e2e6d7de1732730a67e06298d26054cdb7ec3ed12b6e92c817821
64 | G_9 = 85cf61e7a7a8b5074eeac147066366feab925e8239126da7e0c341deed5be180b34808a8275e2ffc476ce8dc613a38cb
65 | G_10 = b4800a3c8260068b65bee8b687f99d39cac1a66292d39afb88610ad023b861df1f1424566d9be2ffcdc624c65d8cad5b
66 | ```
67 |
--------------------------------------------------------------------------------
/tooling/message-generators/rust-toolchain:
--------------------------------------------------------------------------------
1 | 1.58.1
2 |
--------------------------------------------------------------------------------
/tooling/message-generators/src/ciphersuites.rs:
--------------------------------------------------------------------------------
1 | use sha3::Shake256;
2 | use sha2::Sha256;
3 | use bls12_381_plus::{ExpandMsg, ExpandMsgXof, ExpandMsgXmd};
4 |
5 |
6 | pub trait BbsCiphersuite<'a> {
7 | const ID: &'a [u8];
8 |
9 | type Expander: ExpandMsg;
10 |
11 | fn generator_seed() -> Vec {
12 | [Self::ID, b"MESSAGE_GENERATOR_SEED"].concat()
13 | }
14 |
15 | // The G1 base point generator seed
16 | fn bp_generator_seed() -> Vec {
17 | [Self::ID, b"BP_MESSAGE_GENERATOR_SEED"].concat()
18 | }
19 |
20 | fn generator_seed_dst() -> Vec {
21 | [Self::ID, b"SIG_GENERATOR_SEED_"].concat()
22 | }
23 |
24 | fn generator_dst() -> Vec {
25 | [Self::ID, b"SIG_GENERATOR_DST_"].concat()
26 | }
27 | }
28 |
29 | pub struct Bls12381Shake256;
30 | pub struct Bls12381Sha256;
31 |
32 | impl<'a> BbsCiphersuite<'a> for Bls12381Shake256 {
33 | const ID: &'a [u8] = b"BBS_BLS12381G1_XOF:SHAKE-256_SSWU_RO_";
34 | type Expander = ExpandMsgXof;
35 | }
36 |
37 |
38 | impl<'a> BbsCiphersuite<'a> for Bls12381Sha256 {
39 | const ID: &'a [u8] = b"BBS_BLS12381G1_XMD:SHA-256_SSWU_RO_";
40 | type Expander = ExpandMsgXmd;
41 | }
42 |
--------------------------------------------------------------------------------