Skip to content

Instantly share code, notes, and snippets.

View vivianjeng's full-sized avatar

Ya-wen, Jeng vivianjeng

View GitHub Profile
@vivianjeng
vivianjeng / semaphore-v4-ceremony_attestation.log
Created June 11, 2024 18:33
Attestation for Semaphore V4 Ceremony MPC Phase 2 Trusted Setup ceremony
Hey, I'm vivianjeng-17507085 and I have contributed to the Semaphore V4 Ceremony.
The following are my contribution signatures:
Circuit # 1 (semaphorev4-1)
Contributor # 59
Contribution Hash:
9c48c413 9056c28b 032ec5e4 99c0c401
75ef40cc bed90b16 f4a11ce3 ac3866d3
a87faa45 9b063557 4062a262 2a56cfd7
fa375991 8c6d7ab1 4e21e551 62fad615
@vivianjeng
vivianjeng / anon-aadhaar-v2-trusted-setup-ceremony_attestation.log
Created June 7, 2024 05:52
Attestation for Anon Aadhaar V2 Trusted Setup Ceremony MPC Phase 2 Trusted Setup ceremony
Hey, I'm vivianjeng-17507085 and I have contributed to the Anon Aadhaar V2 Trusted Setup Ceremony MPC Phase2 Trusted Setup ceremony.
The following are my contribution signatures:
Circuit # 1 (aadhaarverifier)
Contributor # 16
Contribution Hash: 7364924c 2dc43afd c9a16c86 cbfdcfc9
bf2c41ec 829e38ad 0e20083d 248718c6
5ef4b9e3 7131d0fc 528e64bf 56123201
c7a27157 e33c832e fcd1fed3 c00003ec
load("@rules_cc//cc:defs.bzl", "cc_library")
package(default_visibility = ["//visibility:public"])
HEADERS = [
"gmp.h",
"gmpxx.h",
]
genrule(
var snarkjs=function(t){"use strict";const e=[0,1,2,2,3,3,3,3,4,4,4,4,4,4,4,4];function a(t,e){return e&&10!=e?16==e?"0x"==t.slice(0,2)?BigInt(t):BigInt("0x"+t):void 0:BigInt(t)}const i=a;function o(t){const a=t.toString(16);return 4*(a.length-1)+e[parseInt(a[0],16)]}function n(t){return BigInt(t)<BigInt(0)}function l(t){return!t}function r(t,e){return BigInt(t)<<BigInt(e)}function s(t,e){return BigInt(t)>>BigInt(e)}const c=r,d=s;function u(t){return(BigInt(t)&BigInt(1))==BigInt(1)}function g(t){let e=BigInt(t);const a=[];for(;e;)e&BigInt(1)?a.push(1):a.push(0),e>>=BigInt(1);return a}function f(t){if(t>BigInt(Number.MAX_SAFE_INTEGER))throw new Error("Number too big");return Number(t)}function h(t,e){return BigInt(t)+BigInt(e)}function _(t,e){return BigInt(t)-BigInt(e)}function p(t){return-BigInt(t)}function m(t,e){return BigInt(t)*BigInt(e)}function w(t,e){return BigInt(t)**BigInt(e)}function L(t,e){return BigInt(t)/BigInt(e)}function b(t,e){return BigInt(t)%BigInt(e)}function y(t,e){return BigInt(t)==BigInt(
#include <stdio.h>
#include <iostream>
#include <assert.h>
#include "circom.hpp"
#include "calcwit.hpp"
void IsZero_0_create(uint soffset,uint coffset,Circom_CalcWit* ctx,std::string componentName,uint componentFather);
void IsZero_0_run(uint ctx_index,Circom_CalcWit* ctx);
Circom_TemplateFunction _functionTable[1] = {
IsZero_0_run };
Circom_TemplateFunction _functionTableParallel[1] = {
let outputs: [String] = ["21888242871839275222246405745257275088548364400416034343698204186575808495616", "21888242871839275222246405745257275088548364400416034343698204186575808495616"]
print(outputs)
// ["21888242871839275222246405745257275088548364400416034343698204186575808495616", "21888242871839275222246405745257275088548364400416034343698204186575808495616"]
let generateProofResult = try moproCircom.generateProof(circuitInputs: inputs)
print(generateProofResult.inputs)
// 72 bytes
print([UInt8](generateProofResult.inputs))
// [2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 240, 147, 245, 225, 67, 145, 112, 185, 121, 72, 232, 51, 40, 93, 88, 129, 129, 182, 69, 80, 184, 41, 160, 49, 225, 114, 78, 100, 48, 0, 0, 0, 240, 147, 245, 225, 67, 145, 112, 185, 121, 72, 232, 51, 40, 93, 88, 129, 129, 182, 69, 80, 184, 41, 160, 49, 225, 114, 78, 100, 48]
@vivianjeng
vivianjeng / maci-v1-trusted-setup-ceremony_attestation.log
Created October 17, 2023 02:35
Attestation for Maci v1 Trusted Setup Ceremony MPC Phase 2 Trusted Setup ceremony
Hey, I'm vivianjeng-17507085 and I have contributed to the Maci v1 Trusted Setup Ceremony MPC Phase2 Trusted Setup ceremony.
The following are my contribution signatures:
Circuit # 1 (processmessages_6-8-2-3)
Contributor # 29
Contribution Hash: c44a224b 26e2f80e da4c6bdc a2426b95
a78e4b71 7e753519 b859eaad 91cd1e09
72f17ed9 0bbbc9a6 9b64077a a66e2b85
4059e53d 36599262 1f9c8015 e1e986c2
@vivianjeng
vivianjeng / rln-trusted-setup-ceremony_attestation.log
Created August 14, 2023 07:17
Attestation for RLN Trusted Setup Ceremony MPC Phase 2 Trusted Setup ceremony
Hey, I'm vivianjeng-17507085 and I have contributed to the RLN Trusted Setup Ceremony MPC Phase2 Trusted Setup ceremony.
The following are my contribution signatures:
Circuit # 1 (rln-withdraw)
Contributor # 44
Contribution Hash: 98521c69 020b771d ff86a437 4721f031
aae0d953 c627994f 55ea2bfb 32ceea88
2a1b3bd2 89aa64d3 1ad052a4 dc6585a8
c337914c dd5e8fce e11a4d30 03ae6132
I contributed to the Semaphore Trusted Setup Multi-Party Ceremony.
The following are my contribution signatures:
Circuit: semaphore16
Contributor # 9
Hash: f16db0ad e0a08c0e e22af2dd 8f983f02
ed328426 e24d864c 3629c53c 5737e5cf
5260d9ea 7f333544 e25c3eab 2632ecc1
51c8a377 8f389d2b 65f82841 b15fb694