chadtmiller.com/atproto
atproto's primitives in Rust, small and free of I/O
atproto 0.1.1 Latest 1 package
0
0
{
"keys": {
"rotation": "a1b2c3d4e5f60718293a4b5c6d7e8f90112233445566778899aabbccddeeff01",
"signing": "0f1e2d3c4b5a69788796a5b4c3d2e1f00112233445566778899aabbccddeeff0",
"p256Rotation": "1111111111111111111111111111111111111111111111111111111111111111"
},
"plc": [
{
"name": "k256 rotation",
"did": "did:plc:72hi64h42xani53ud76pudoq",
"genesis": {
"type": "plc_operation",
"verificationMethods": {
"atproto": "did:key:zQ3shQozXcnz15G51JC3Gm4qugNhwTcSg8fTg4YRr6XmHkSVe"
},
"rotationKeys": [
"did:key:zQ3shZ1gFKSNgByRCSLFZr5ZDmv9NybGo7CANHgynHf8erpUm"
],
"alsoKnownAs": [
"at://riders.groups.example.com"
],
"services": {
"atproto_pds": {
"type": "AtprotoPersonalDataServer",
"endpoint": "https://groups.example.com"
}
},
"prev": null,
"sig": "cRql1fq_raTriUyC8HA6fM_MOswflZvcBMR9ZDB0V7ImbwoP6ZZ9p9US8lz3UqA7yOx27JZESsXk6X9YWx7NjA"
},
"genesisCid": "bafyreih6r2hxb7gvydkho5a77t5a3uaybtft7guai2eediy3uax3cpzgyi",
"updateHandle": {
"type": "plc_operation",
"verificationMethods": {
"atproto": "did:key:zQ3shQozXcnz15G51JC3Gm4qugNhwTcSg8fTg4YRr6XmHkSVe"
},
"rotationKeys": [
"did:key:zQ3shZ1gFKSNgByRCSLFZr5ZDmv9NybGo7CANHgynHf8erpUm"
],
"alsoKnownAs": [
"at://riders.example.org"
],
"services": {
"atproto_pds": {
"type": "AtprotoPersonalDataServer",
"endpoint": "https://groups.example.com"
}
},
"prev": "bafyreih6r2hxb7gvydkho5a77t5a3uaybtft7guai2eediy3uax3cpzgyi",
"sig": "Fenc4sTCQpaPCme_kiYxgKmaR6x81WkleuPzatRl2AhPLBAPlWyEQkMHqcbEC3znkY5RT9cBo_UAtJcl1yxv1w"
},
"updatePds": {
"type": "plc_operation",
"verificationMethods": {
"atproto": "did:key:zQ3shQozXcnz15G51JC3Gm4qugNhwTcSg8fTg4YRr6XmHkSVe"
},
"rotationKeys": [
"did:key:zQ3shZ1gFKSNgByRCSLFZr5ZDmv9NybGo7CANHgynHf8erpUm"
],
"alsoKnownAs": [
"at://riders.example.org"
],
"services": {
"atproto_pds": {
"type": "AtprotoPersonalDataServer",
"endpoint": "https://other.example.com"
}
},
"prev": "bafyreihbzmfzd6azxizw4eoq2dlddbknvfhrnga2d3nqtqskhxqxkpxp2u",
"sig": "ep-peC8OEA1I7c1j3tA_K8yGaBY4OxRgG1mLdvWf4j0mj3tmpVIqz006DLwbnVIeGY_9j9trFstyhdrPbL-tQg"
},
"tombstone": {
"type": "plc_tombstone",
"prev": "bafyreih3b6a4l23km3vkt7xqsnotcf3dwx3vs4uo7sjnx3s5xr3sei2sey",
"sig": "Hedu8V2O4zHRb8GaSMQu44u8qJ_RrmYZLIGNUWjxNCotcneIC_POR88zdwMhJnAGYNNdkjOmhW5k1q_M7jZ5_A"
},
"document": {
"@context": [
"https://www.w3.org/ns/did/v1",
"https://w3id.org/security/suites/secp256k1-2019/v1"
],
"id": "did:plc:72hi64h42xani53ud76pudoq",
"alsoKnownAs": [
"at://riders.groups.example.com"
],
"verificationMethod": [
{
"id": "#atproto",
"type": "EcdsaSecp256k1VerificationKey2019",
"controller": "did:plc:72hi64h42xani53ud76pudoq",
"publicKeyMultibase": "zNV22yK93yTWeWjFZvBAsrKEjrxCZWpybUEpZ8vWPkpcmtVnw4r5Ma3tiHz6ijbYSm2HH3RKrj1inPTp4AR5tcE2h"
}
],
"service": [
{
"id": "#atproto_pds",
"type": "AtprotoPersonalDataServer",
"serviceEndpoint": "https://groups.example.com"
}
]
}
},
{
"name": "p256 rotation, a second key",
"did": "did:plc:lljzktf3kl772n33xdstllj7",
"genesis": {
"type": "plc_operation",
"verificationMethods": {
"atproto": "did:key:zQ3shQozXcnz15G51JC3Gm4qugNhwTcSg8fTg4YRr6XmHkSVe"
},
"rotationKeys": [
"did:key:zDnaeQa8zprPhHA7Yuxcgc2Uh6XNQgaKjmFZE4EaA9fk5svmJ",
"did:key:zQ3shZ1gFKSNgByRCSLFZr5ZDmv9NybGo7CANHgynHf8erpUm"
],
"alsoKnownAs": [
"at://riders.groups.example.com"
],
"services": {
"atproto_pds": {
"type": "AtprotoPersonalDataServer",
"endpoint": "https://groups.example.com"
}
},
"prev": null,
"sig": "FMekhOt9IsnnB6JVSrlNRMKDvCikXY-wYQW0YheM9ytRWJGrP5su6NQ4Txah8gkLxkzEhPR4Uko4DKxlvdIWUw"
},
"genesisCid": "bafyreic22okuzo2s776to65y4u222pz6noqrluhxm3hxrwsmalo2u2urle",
"updateHandle": {
"type": "plc_operation",
"verificationMethods": {
"atproto": "did:key:zQ3shQozXcnz15G51JC3Gm4qugNhwTcSg8fTg4YRr6XmHkSVe"
},
"rotationKeys": [
"did:key:zDnaeQa8zprPhHA7Yuxcgc2Uh6XNQgaKjmFZE4EaA9fk5svmJ",
"did:key:zQ3shZ1gFKSNgByRCSLFZr5ZDmv9NybGo7CANHgynHf8erpUm"
],
"alsoKnownAs": [
"at://riders.example.org"
],
"services": {
"atproto_pds": {
"type": "AtprotoPersonalDataServer",
"endpoint": "https://groups.example.com"
}
},
"prev": "bafyreic22okuzo2s776to65y4u222pz6noqrluhxm3hxrwsmalo2u2urle",
"sig": "3DeNoKqbOqNZXLXLmTnS8HsCIBqKtmeERqJPUucI8MA4hBZ6UsqQfFYHTgQSyhbweKy9GcKfpxoliypFZA-Tzw"
},
"updatePds": {
"type": "plc_operation",
"verificationMethods": {
"atproto": "did:key:zQ3shQozXcnz15G51JC3Gm4qugNhwTcSg8fTg4YRr6XmHkSVe"
},
"rotationKeys": [
"did:key:zDnaeQa8zprPhHA7Yuxcgc2Uh6XNQgaKjmFZE4EaA9fk5svmJ",
"did:key:zQ3shZ1gFKSNgByRCSLFZr5ZDmv9NybGo7CANHgynHf8erpUm"
],
"alsoKnownAs": [
"at://riders.example.org"
],
"services": {
"atproto_pds": {
"type": "AtprotoPersonalDataServer",
"endpoint": "https://other.example.com"
}
},
"prev": "bafyreidouofaj3mad33qxzajxbbd7qc5zdcvyue2jfjdass2b5igp2sw5i",
"sig": "7dN_sYQt5By4NrZYeAEQnllKby1khPE6jcDER5mJux5i6HTacq4ki9Kc385A1QfL0Q_Zt1QBa31ycvusuStnSw"
},
"tombstone": {
"type": "plc_tombstone",
"prev": "bafyreiacz7l4shchkhqiqqkljh5c333kxci4owwrrgkad4t3r6aygxlx4e",
"sig": "KN45Pfo4abkXranAT60undn0LX6tfPVLHbgP_CfqKa5SlStJ11NuIDZI0VbyDEwho_J8Hn8MHuKdG7obq3B9dQ"
},
"document": {
"@context": [
"https://www.w3.org/ns/did/v1",
"https://w3id.org/security/suites/secp256k1-2019/v1"
],
"id": "did:plc:lljzktf3kl772n33xdstllj7",
"alsoKnownAs": [
"at://riders.groups.example.com"
],
"verificationMethod": [
{
"id": "#atproto",
"type": "EcdsaSecp256k1VerificationKey2019",
"controller": "did:plc:lljzktf3kl772n33xdstllj7",
"publicKeyMultibase": "zNV22yK93yTWeWjFZvBAsrKEjrxCZWpybUEpZ8vWPkpcmtVnw4r5Ma3tiHz6ijbYSm2HH3RKrj1inPTp4AR5tcE2h"
}
],
"service": [
{
"id": "#atproto_pds",
"type": "AtprotoPersonalDataServer",
"serviceEndpoint": "https://groups.example.com"
}
]
}
}
],
"serviceJwt": {
"token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NksifQ.eyJpYXQiOjE3OTQwOTcxODMsImlzcyI6ImRpZDpwbGM6NzJoaTY0aDQyeGFuaTUzdWQ3NnB1ZG9xIiwiYXVkIjoiZGlkOndlYjpncm91cHMuZXhhbXBsZS5jb20iLCJleHAiOjQxMDI0NDQ4MDAsImx4bSI6ImNvbS5leGFtcGxlLmdldEdyb3VwIiwianRpIjoiM2YwZTU4NDZmYTc5OGE1OTkxMzVmNjZjNWUyZTU0ZGIifQ.fR6B9zXY-qFhMtuZ1w3GByurFwkMhTZhvGRX2MnSlPByqk8NATtRj37OaJobn8ZndnTEatpe7vGluDnE6kHt3A",
"iss": "did:plc:72hi64h42xani53ud76pudoq",
"aud": "did:web:groups.example.com",
"lxm": "com.example.getGroup",
"signingDidKey": "did:key:zQ3shQozXcnz15G51JC3Gm4qugNhwTcSg8fTg4YRr6XmHkSVe"
}
}