Skip to content
This repository was archived by the owner on Aug 15, 2025. It is now read-only.

Commit 6ac90cf

Browse files
committed
Additions and format changes to sections 7.3.1 and 7.3.2
1 parent 1e508d1 commit 6ac90cf

File tree

1 file changed

+38
-3
lines changed
  • docs/Protocol Specifications

1 file changed

+38
-3
lines changed

docs/Protocol Specifications/core.md

Lines changed: 38 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1383,6 +1383,12 @@ The URI for resource addressing with relative roots is formatted as follows:
13831383

13841384
`<server_url>/.p2/core/resource/<resource_id>`
13851385

1386+
Uploaded resources can be made private and access to them can be controlled via allow- and deny lists,
1387+
specifying access properties for each individual resource. Individual actors and entire instances can
1388+
be part of these allow- and deny lists. Marking a resource as private restricts access to only the
1389+
uploader and the actors and instances part of the allow list. APIs and JSON schemas associated with
1390+
access control are part of the [API documentation](https://apidocs.polyproto.org).
1391+
13861392
The API routes for resource addressing with relative roots are documented more thoroughly in the [API
13871393
documentation](https://apidocs.polyproto.org).
13881394

@@ -1415,10 +1421,39 @@ File extensions are only added if they were known to the server.
14151421
`2c851bfb6daffa944fa1723c7bd4d362ffbc9defe292f2daaf05e895989d179b.jxl`, referencing the file
14161422
which was hosted at `<server_url>/.p2/core/resource/2c851bfb6daffa944fa1723c7bd4d362ffbc9defe292f2daaf05e895989d179b.jxl`.
14171423

1424+
In addition, the folder `rawr` contains a file named `access_properties.p2al`. This JSON
1425+
file contains a data structure mapping each resource ID to an access properties object. In particular,
1426+
the file is structured as an array containing objects. Each object has a key which is equal
1427+
to the resource ID of a resource in the `rawr` directory and a value which is an object
1428+
representing the access properties. An example of the contents of this file is given below:
1429+
1430+
???+ example "Example of a `access_properties.p2al` file"
1431+
1432+
```json
1433+
[
1434+
{
1435+
"2062a23e2a25b226ca4c546fec5ec06e0df9648281f45da8b5aaabebdf66cf4c.jxl": {
1436+
"private": false,
1437+
"allowlist": ["[email protected]", "instance.example.com"],
1438+
1439+
}
1440+
},
1441+
{
1442+
"a9144379a161e1fcf6b07801b70db6d6c481933bd634fe2409eb713723ab1a0a": {
1443+
"private": true,
1444+
"allowlist": ["[email protected]"],
1445+
"denylist": []
1446+
}
1447+
}
1448+
]
1449+
```
1450+
14181451
If the server where the data export was requested from is the actors' home server, the
1419-
archive will contain a folder `certs` and a file `crypt_certs.p2epk`. `certs` will contain all ID-Certs
1420-
the server has stored of the actor. The ID-Certs will be stored in
1421-
[ASCII PEM format](https://web.archive.org/web/20250107131731/https://learn.microsoft.com/en-us/azure/iot-hub/reference-x509-certificates#:~:text=ASN.1%20encoding.-,ascii%20pem%20format,-A%20PEM%20certificate)
1452+
archive will contain a folder `certs` and a file `crypt_certs.p2epk`.
1453+
1454+
The folder `certs` contains all ID-Certs the server has stored of the actor. The ID-Certs are stored
1455+
in [ASCII PEM format](https://web.archive.org/web/20250107131731/https://learn.microsoft.com/en-us/azure/iot-hub/reference-x509-certificates#:~:text=ASN.1%20encoding.-,ascii%20pem%20format,-A%20PEM%20certificate).
1456+
14221457
The file `crypt_certs.p2epk` contains all [encrypted private key material](#63-private-key-loss-prevention-and-private-key-recovery)
14231458
that the actor has uploaded to the server. Just like `messages.p2mb`, `crypt_certs.p2epk` is a standard
14241459
JSON file.

0 commit comments

Comments
 (0)