Make meta.py
loop until finding a problem
This commit is contained in:
parent
e4c8d820cc
commit
cd7f9ddfd7
37
meta.py
37
meta.py
@ -2,8 +2,6 @@
|
||||
|
||||
import subprocess, ast
|
||||
|
||||
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')]
|
||||
|
||||
def getProgramLine(program):
|
||||
return program.stdout.readline()
|
||||
|
||||
@ -16,23 +14,28 @@ def getProgramOutput(program):
|
||||
def write(program, toWrite):
|
||||
program.stdin.write(toWrite + '\n')
|
||||
|
||||
protocolInitializationPhaseId = getProgramOutput(verifier)
|
||||
print(f'{protocolInitializationPhaseId=}')
|
||||
protocolExecutionPhaseId = getProgramOutput(verifier)
|
||||
print(f'{protocolExecutionPhaseId=}')
|
||||
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')]
|
||||
|
||||
write(prover, protocolInitializationPhaseId)
|
||||
write(prover, protocolExecutionPhaseId)
|
||||
protocolInitializationPhaseId = getProgramOutput(verifier)
|
||||
print(f'{protocolInitializationPhaseId=}')
|
||||
protocolExecutionPhaseId = getProgramOutput(verifier)
|
||||
print(f'{protocolExecutionPhaseId=}')
|
||||
|
||||
merkleTreeRoot = getOutput(getProgramLine(prover).split()[-1])
|
||||
print(f'{merkleTreeRoot=}')
|
||||
write(prover, protocolInitializationPhaseId)
|
||||
write(prover, protocolExecutionPhaseId)
|
||||
|
||||
write(verifier, merkleTreeRoot)
|
||||
getProgramLine(verifier)
|
||||
merkleTreeRoot = getOutput(getProgramLine(prover).split()[-1])
|
||||
print(f'{merkleTreeRoot=}')
|
||||
|
||||
write(prover, 'indexesRequest.txt')
|
||||
getProgramLine(prover)
|
||||
write(verifier, merkleTreeRoot)
|
||||
getProgramLine(verifier)
|
||||
|
||||
write(verifier, 'entries.txt')
|
||||
result = ' '.join(getProgramLine(verifier).split()[1:])
|
||||
print(result)
|
||||
write(prover, 'indexesRequest.txt')
|
||||
getProgramLine(prover)
|
||||
|
||||
write(verifier, 'entries.txt')
|
||||
result = ' '.join(getProgramLine(verifier).split()[1:])
|
||||
print(result)
|
||||
if not result.startswith('Verified'):
|
||||
break
|
||||
|
Loading…
x
Reference in New Issue
Block a user