---
# System prepended metadata

title: Cloud security JSON formats

---

# Cloud security JSON formats

## Ex 1 - Proof of possesion

Stage 1:6
```
Tf: Tagged block, List of tuples: [(Fr, Fr), (Fr, Fr), (Fr, Fr) ...]
jload({"Tf": [(Fr, Fr)]}, json_string)
```
Stage 2:
```
H: Challenge, tuple of (fresh_generator, X_c, fresh_generator * y_0)
IDf: string, identifier of the block
jload({"H": (G1, Fr, G1), "IDf": str}, json_string)
```
Stage 3:
```
Pf: proof, type G1
jload({"Pf": G1}, json_string)
```
Stage 4:
```
"ACCEPTED" or "REJECTED" string for verification
responder.send_message("ACCEPTED" if verified else "REJECTED")
```

## Ex 2 - Broadcast Encryption

Stage 1:
To each client:
```
point: shared point for user, tuple (Fr, Fr)
jload({"point": (Fr, Fr)}, json_string)
```

Stage 2:
To each client:
```
H: challenge tuple, (fresh_generator: G1, phi: List of tuples (points) [(Fr, G1), (Fr, G1), ...], x_c: Fr)
jload({"H": (G1, [(Fr, G1)], Fr)}, json_string)
```

Stage 1 and 2 can be in theory merged, but lets keep it separated

Stage 3: ?

## Ex 3 - Anonymous Authentication

## Ex 4

## Ex 5

## Ex 6