Compare commits
5 Commits
2196afc414
...
cd7f9ddfd7
| Author | SHA1 | Date | |
|---|---|---|---|
|
cd7f9ddfd7
|
|||
|
e4c8d820cc
|
|||
|
7bfdf166dc
|
|||
|
7b1098d90d
|
|||
|
b1418bcd91
|
41
meta.py
Executable file
41
meta.py
Executable file
@@ -0,0 +1,41 @@
|
||||
#!/usr/bin/python3
|
||||
|
||||
import subprocess, ast
|
||||
|
||||
def getProgramLine(program):
|
||||
return program.stdout.readline()
|
||||
|
||||
def getOutput(line):
|
||||
return ast.literal_eval(line.split('=')[1])
|
||||
|
||||
def getProgramOutput(program):
|
||||
return getOutput(getProgramLine(program))
|
||||
|
||||
def write(program, toWrite):
|
||||
program.stdin.write(toWrite + '\n')
|
||||
|
||||
while True:
|
||||
verifier, prover = [subprocess.Popen(f'./{program}.py', stdout = subprocess.PIPE, stdin = subprocess.PIPE, stderr = subprocess.DEVNULL, universal_newlines=True, bufsize=1) for program in ('verifier', 'prover')]
|
||||
|
||||
protocolInitializationPhaseId = getProgramOutput(verifier)
|
||||
print(f'{protocolInitializationPhaseId=}')
|
||||
protocolExecutionPhaseId = getProgramOutput(verifier)
|
||||
print(f'{protocolExecutionPhaseId=}')
|
||||
|
||||
write(prover, protocolInitializationPhaseId)
|
||||
write(prover, protocolExecutionPhaseId)
|
||||
|
||||
merkleTreeRoot = getOutput(getProgramLine(prover).split()[-1])
|
||||
print(f'{merkleTreeRoot=}')
|
||||
|
||||
write(verifier, merkleTreeRoot)
|
||||
getProgramLine(verifier)
|
||||
|
||||
write(prover, 'indexesRequest.txt')
|
||||
getProgramLine(prover)
|
||||
|
||||
write(verifier, 'entries.txt')
|
||||
result = ' '.join(getProgramLine(verifier).split()[1:])
|
||||
print(result)
|
||||
if not result.startswith('Verified'):
|
||||
break
|
||||
Reference in New Issue
Block a user