arnaucube
arnaucube/go-dvotePublic Self-hosted repository
Add censushttp cmd. Rename processHttp to censusmanager

Signed-off-by: p4u <p4u@dabax.net>
p4u p4u@dabax.net
Fri, 25 Jan 2019 19:04:58 +0100
commit

04dd103bb1040faaad92d2f9a16d2b0af67b9553

parent

408457d65bca54a54648c5b8fce8a5803afbf8f9

3 files changed, 82 insertions(+), 1 deletions(-)

jump to
A cmd/censushttp/README.md

@@ -0,0 +1,51 @@

+# censusService +Reference implementation of a voting census service running on the Vocdoni platform + +## Census HTTP service + +#### Compile + +``` +go get github.com/vocdoni/censusService +go build -o httpService http_census_service.go +``` + +#### Usage + +``` +./httpService 1500 +2018/12/17 09:54:20 Starting process HTTP service on port 1500 +2018/12/17 09:54:20 Starting server in http mode +``` + +##### add claims + +``` +curl -d '{"processID":"GoT_Favorite","claimData":"Jon Snow"}' http://localhost:1500/addClaim +{"error":false,"response":""} +``` + +``` +curl -d '{"processID":"GoT_Favorite","claimData":"Tyrion"}' http://localhost:1500/addClaim +{"error":false,"response":""} +``` + +##### generate proof + +``` +curl -d '{"processID":"GoT_Favorite","claimData":"Jon Snow"}' http://localhost:1500/genProof +{"error":false,"response":"0x000000000000000000000000000000000000000000000000000000000000000352f3ca2aaf635ec2ae4452f6a65be7bca72678287a8bb08ad4babfcccd76c2fef1aac7675261bf6d12c746fb7907beea6d1f1635af93ba931eec0c6a747ecc37"} +``` + +##### check proof + +``` +curl -d '{"processID":"GoT_Favorite","claimData":"Jon Snow", "proofData": "0x0000000000000000000000000000000000000000000000000000000000000000000123"}' http://localhost:1500/checkProof +{"error":false,"response":"invalid"} +``` + +``` +curl -d '{"processID":"GoT_Favorite","claimData":"Jon Snow", "proofData": "0x000000000000000000000000000000000000000000000000000000000000000352f3ca2aaf635ec2ae4452f6a65be7bca72678287a8bb08ad4babfcccd76c2fef1aac7675261bf6d12c746fb7907beea6d1f1635af93ba931eec0c6a747ecc37"}' http://localhost:1500/checkProof +{"error":false,"response":"valid"} +``` +
A cmd/censushttp/censushttp.go

@@ -0,0 +1,30 @@

+package main + +import ( + "log" + "os" + "strconv" + + censusmanager "github.com/vocdoni/dvote-census/service" +) + +func main() { + if len(os.Args) < 2 { + log.Fatal("Usage: " + os.Args[0] + " <port> [pubKey]") + os.Exit(2) + } + port, err := strconv.Atoi(os.Args[1]) + if err != nil { + log.Fatal(err) + os.Exit(2) + } + pubK := "" + if len(os.Args) > 2 { + log.Print("Public key authentication enabled") + pubK = os.Args[2] + } + log.Print("Starting process HTTP service on port " + os.Args[1]) + censusmanager.T.Init() + censusmanager.Listen(port, "http", pubK) + +}
M service/processHttp.go → service/censusmanager.go

@@ -1,4 +1,4 @@

-package processHttp +package censusmanager import ( "encoding/json"