@forgesworn/fold-kit 0.10.0 → 0.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +371 -0
- package/EXTRACTION.md +549 -0
- package/README.md +178 -17
- package/dist/epoch.d.ts +42 -1
- package/dist/epoch.js +137 -70
- package/dist/index.d.ts +7 -3
- package/dist/index.js +4 -2
- package/dist/invitation-decline.d.ts +26 -0
- package/dist/invitation-decline.js +74 -0
- package/dist/invitation.d.ts +56 -6
- package/dist/invitation.js +289 -67
- package/dist/mls-admission.d.ts +79 -0
- package/dist/mls-admission.js +400 -0
- package/dist/persistent-invitation-evidence.d.ts +83 -0
- package/dist/persistent-invitation-evidence.js +381 -0
- package/dist/quiet-reply.d.ts +45 -0
- package/dist/quiet-reply.js +82 -0
- package/dist/seal.d.ts +20 -0
- package/dist/seal.js +25 -0
- package/docs/extraction-plan-excerpt.md +56 -0
- package/docs/live-persistent-admission.md +192 -0
- package/docs/member-epoch-catch-up.md +346 -0
- package/docs/mls-admission-v4.md +84 -0
- package/docs/persistent-invitation-evidence.md +135 -0
- package/docs/quiet-replies.md +81 -0
- package/docs/room-destruct.md +142 -0
- package/docs/scheduled-rekey.md +142 -0
- package/docs/seal-key.md +143 -0
- package/llms.txt +98 -29
- package/package.json +22 -4
- package/vectors/fold-vectors.json +894 -0
- package/vectors/invitation-account-vectors.json +134 -0
- package/vectors/invitation-decline-vectors.json +110 -0
- package/vectors/mls-admission-v4.json +25 -0
- package/vectors/seal-vectors.json +304 -0
|
@@ -623,6 +623,310 @@
|
|
|
623
623
|
},
|
|
624
624
|
"thief": null
|
|
625
625
|
}
|
|
626
|
+
},
|
|
627
|
+
{
|
|
628
|
+
"name": "rekey-one-time-sender",
|
|
629
|
+
"kind": "positive",
|
|
630
|
+
"note": "rekey-seal's rekey with `oneTimeSender`: tags d, epoch, then [\"from\", x-only pubkey of a key made for this rekey alone], still signed by the authority, so the tag is the authority's word. Every copy is sealed from that one-time key to the recipient's seal key (or device key), and the one-time secret is discarded, so whoever later takes the authority's key cannot recompute the copies (`authorityOpens` false). A reader opens its copy with the key the single `from` tag names (`sealSender`), and with the signer when there is none, which is every earlier rekey. `randomHex`: the 48-byte seed for the one-time key (`senderSkHex`), one seal nonce per recipient in order, the body nonce, the signature aux-rand. A reader older than this opens no copy, reads the rekey without a secret and asks for the epoch.",
|
|
631
|
+
"input": {
|
|
632
|
+
"roomId": "58c0b5a427b80559f5b67f35e74c686f630259dcdafca2ab03e3b082f4a1740c",
|
|
633
|
+
"authority": "4fca1ba4b39e24ea0acea325af3e6a62315903952c277e197cccfe8f0143c533",
|
|
634
|
+
"authoritySkHex": "bb058b43370d37b7ed3f09e3a36a6ffcc88a8dad56c5ee204b1715240a1466e0",
|
|
635
|
+
"previousKeyHex": "09126b23a6148694280325e5a433c1badbc853026c8e71c0833ffd4bd0ea08ab",
|
|
636
|
+
"next": {
|
|
637
|
+
"epoch": 1,
|
|
638
|
+
"secretHex": "cc4e6941abd893daab2fdce0bbb182816b531fbc04b9531fdc5d03fd742fb26b"
|
|
639
|
+
},
|
|
640
|
+
"recipients": [
|
|
641
|
+
{
|
|
642
|
+
"device": "f29e30f72c9aaaa5066aa366afd4f0970e13853d10922cf5ba2ece21dc18ee5b",
|
|
643
|
+
"credential": {
|
|
644
|
+
"id": "3c3f64a769c826a89f2712ed9898e43afacc5f2784201999e8ca0ed5cdcf3d6c",
|
|
645
|
+
"pubkey": "3683caad0bf9bb5a653582155c0ba9192fd23d7d6c717a7b0d233c8356a7042f",
|
|
646
|
+
"created_at": 1800000000,
|
|
647
|
+
"kind": 20460,
|
|
648
|
+
"tags": [
|
|
649
|
+
[
|
|
650
|
+
"d",
|
|
651
|
+
"58c0b5a427b80559f5b67f35e74c686f630259dcdafca2ab03e3b082f4a1740c"
|
|
652
|
+
],
|
|
653
|
+
[
|
|
654
|
+
"device",
|
|
655
|
+
"f29e30f72c9aaaa5066aa366afd4f0970e13853d10922cf5ba2ece21dc18ee5b"
|
|
656
|
+
],
|
|
657
|
+
[
|
|
658
|
+
"expiration",
|
|
659
|
+
"1800043200"
|
|
660
|
+
],
|
|
661
|
+
[
|
|
662
|
+
"seal",
|
|
663
|
+
"63a40c9bc84c065f4aab7e63208ea37c3edcd3ab47a334b157cf000409c7eaaf"
|
|
664
|
+
]
|
|
665
|
+
],
|
|
666
|
+
"content": "",
|
|
667
|
+
"sig": "fdd0c5f23d2f1531594100470d6fe6c87d6c28d2185898b49844b664ffcb65f3c76ce0b9fcef3166708baca068d7f9d2ee74a827f56140b6cef11591ce942049"
|
|
668
|
+
}
|
|
669
|
+
},
|
|
670
|
+
"1cddb17ae843752d2469ea50b2a6bd1468edbb75b7913ea58ba7847663cb1b8e"
|
|
671
|
+
],
|
|
672
|
+
"deviceSkHex": "678d943bfdab0df34f3945be66ca867a4c15b507d7a9c125651f9018a905f305",
|
|
673
|
+
"bareDeviceSkHex": "32796464cb7434a5d397f03cce5055df28f9be8d15ce4bf14760d764bbd2e156",
|
|
674
|
+
"renewedSealSkHex": "7729de6b913094fc7fd121d12671448494184b9eff28633869a0c81567291035",
|
|
675
|
+
"copiedSealSkHex": "22b29538be86feaf0dbe57fcd046cc95ca39082e813d450d8d9d653a2434a374",
|
|
676
|
+
"createdAt": 1800000000,
|
|
677
|
+
"event": {
|
|
678
|
+
"id": "3f38d5f8a93cb0818f9a62fccc8ba59b44ebc413c1369205447f840e46bfb474",
|
|
679
|
+
"pubkey": "4fca1ba4b39e24ea0acea325af3e6a62315903952c277e197cccfe8f0143c533",
|
|
680
|
+
"created_at": 1800000000,
|
|
681
|
+
"kind": 1462,
|
|
682
|
+
"tags": [
|
|
683
|
+
[
|
|
684
|
+
"d",
|
|
685
|
+
"58c0b5a427b80559f5b67f35e74c686f630259dcdafca2ab03e3b082f4a1740c"
|
|
686
|
+
],
|
|
687
|
+
[
|
|
688
|
+
"epoch",
|
|
689
|
+
"1"
|
|
690
|
+
],
|
|
691
|
+
[
|
|
692
|
+
"from",
|
|
693
|
+
"02f71d0f7235cbe6e623bc1542539c9db10601a3a892af483783614c00c7fd99"
|
|
694
|
+
]
|
|
695
|
+
],
|
|
696
|
+
"content": "AmcNeMrs/5cl6E/Z1PoCcQXOxzckQIRSjE9XOZJKvrsqFN0ZfMu/0hPX0dWFqdgAWRDZ5/K+9O3ajNsKlDmnx5zcAtlrzeJUTDGtN6YrwcorfL6NRMeSz9bnic0jAGAxo+Zj5n0FUV9qOzAkjKktseXy6y2oQeQ3gN2uPW1GXSOcaH++d3YwmiND6c48I8SlsNB5wRVawNb5Dm6UViC4h0wpbBR9sLqA08+p8IMFx2HxmENDbNNMfeQVcMhNGZ+XobZcsH4Zd0JNVxRVUGF0TOYCfaOQFAzO3LxfXI9tcC9vaisCA/DbGoGiz5nqOwU4xnsF5RgdX6yX+xIQXSzCtne69p/tdjePhsL8WmlENE131aSBdY/L7bUAumu+FJxfVJBzNCz+y/o0noBLirOrUuUIqWxFnQ/zoWsE+gYCU9Um9LvtbhK+m1+COhl6K09ruh/qlcZBn7OEciUywGZSkRadpm4kktc5cCfGbdrlkfVPwgrJiRVYLkIC+O+N+xqx037XLOtI3wC460QDnaoii207OrsdGip8F5K1sZ8ZV/Mc+gNmcCKAZJEGaoyowPvP4cYXMyos7j3MCZ0lpwi1E8jwyXYJZK17JKXmykEpBywPpYLSgBQR9C9yJ6oCfaVsxkOBVgbEiPKpA+hGngsiDmGBoy41VdgpA9ZCBTIH5W8B2z1xqCk+dHVkczJqYNpM+Dad0Xagq42rnK1kLff2bFsIKxly3ak1uFRYBCQbS74BEo2kbczOAn1XLfPYMLiEiMCdjXgILzVgqe4TVjue9Nv7Zak5iheUPqLVZfxTbuQUWIWrLakQWSVHfQ8c+/L98/5M9TsgYSIV5BS5JCABvbCVe4RHeq4ibECcsf41I2qPUeCSXxHuTvJ26L/T3ONpAEzXRw2+8tJNaK3Plczm5f9TfYPL3yuZGcplKsgPwogm0us=",
|
|
697
|
+
"sig": "a6e036a4b6ac94703f747337bf28c308a295fcfc2ab3c028d5a35cc50969ba19807a9ba14252ef7782e4b4bfd3395c71986eea1cdcdc36e2fe18a77d9ce1219d"
|
|
698
|
+
},
|
|
699
|
+
"randomHex": [
|
|
700
|
+
"a110c4cffaadabb2fedbf6279627cc857757f036ecaffdcb89452e2eb12acc8349c693f9cce385720b83f75629ae26e6",
|
|
701
|
+
"6d4bbae698b19d076387d818c6a9b8aaaa23ab42850bb933ab1ab0ab4a36ce91",
|
|
702
|
+
"a25e6555c2cbbf30733f70ba666453a3712cf5dbefd4c1cea47fa9b70b1b691a",
|
|
703
|
+
"670d78caecff9725e84fd9d4fa027105cec737244084528c4f5739924abebb2a",
|
|
704
|
+
"18c1fc0b6372dc662bcafd2d4704e5c1f4bcc9c61b1e129a91dec165a6296212"
|
|
705
|
+
],
|
|
706
|
+
"senderSkHex": "4405467674110e0cb5278a657356cac70724f7442d2dc3ade9e350768088ff67"
|
|
707
|
+
},
|
|
708
|
+
"output": {
|
|
709
|
+
"sealSender": "02f71d0f7235cbe6e623bc1542539c9db10601a3a892af483783614c00c7fd99",
|
|
710
|
+
"renewedDevice": {
|
|
711
|
+
"epoch": 1,
|
|
712
|
+
"secretHex": "cc4e6941abd893daab2fdce0bbb182816b531fbc04b9531fdc5d03fd742fb26b"
|
|
713
|
+
},
|
|
714
|
+
"thief": {
|
|
715
|
+
"epoch": 1
|
|
716
|
+
},
|
|
717
|
+
"bareDevice": {
|
|
718
|
+
"epoch": 1,
|
|
719
|
+
"secretHex": "cc4e6941abd893daab2fdce0bbb182816b531fbc04b9531fdc5d03fd742fb26b"
|
|
720
|
+
},
|
|
721
|
+
"authorityOpens": {
|
|
722
|
+
"f29e30f72c9aaaa5066aa366afd4f0970e13853d10922cf5ba2ece21dc18ee5b": false,
|
|
723
|
+
"1cddb17ae843752d2469ea50b2a6bd1468edbb75b7913ea58ba7847663cb1b8e": false
|
|
724
|
+
}
|
|
725
|
+
}
|
|
726
|
+
},
|
|
727
|
+
{
|
|
728
|
+
"name": "rekey-from-doubled",
|
|
729
|
+
"kind": "negative",
|
|
730
|
+
"note": "rekey-one-time-sender's content re-signed by the authority with two `from` tags. Only the authority could sign it, so it is a broken writer, not an attack: `sealSender` is null, the rekey is still read for its epoch and removals, and no copy is opened (no secretHex); the device asks for the epoch.",
|
|
731
|
+
"input": {
|
|
732
|
+
"roomId": "58c0b5a427b80559f5b67f35e74c686f630259dcdafca2ab03e3b082f4a1740c",
|
|
733
|
+
"authority": "4fca1ba4b39e24ea0acea325af3e6a62315903952c277e197cccfe8f0143c533",
|
|
734
|
+
"previousKeyHex": "09126b23a6148694280325e5a433c1badbc853026c8e71c0833ffd4bd0ea08ab",
|
|
735
|
+
"deviceSkHex": "678d943bfdab0df34f3945be66ca867a4c15b507d7a9c125651f9018a905f305",
|
|
736
|
+
"renewedSealSkHex": "7729de6b913094fc7fd121d12671448494184b9eff28633869a0c81567291035",
|
|
737
|
+
"event": {
|
|
738
|
+
"id": "fc8be7e8e1965a5888ca5351706456d76c8e548c3fc0a9378e0bb1caf4be23f6",
|
|
739
|
+
"pubkey": "4fca1ba4b39e24ea0acea325af3e6a62315903952c277e197cccfe8f0143c533",
|
|
740
|
+
"created_at": 1800000000,
|
|
741
|
+
"kind": 1462,
|
|
742
|
+
"tags": [
|
|
743
|
+
[
|
|
744
|
+
"d",
|
|
745
|
+
"58c0b5a427b80559f5b67f35e74c686f630259dcdafca2ab03e3b082f4a1740c"
|
|
746
|
+
],
|
|
747
|
+
[
|
|
748
|
+
"epoch",
|
|
749
|
+
"1"
|
|
750
|
+
],
|
|
751
|
+
[
|
|
752
|
+
"from",
|
|
753
|
+
"02f71d0f7235cbe6e623bc1542539c9db10601a3a892af483783614c00c7fd99"
|
|
754
|
+
],
|
|
755
|
+
[
|
|
756
|
+
"from",
|
|
757
|
+
"4fca1ba4b39e24ea0acea325af3e6a62315903952c277e197cccfe8f0143c533"
|
|
758
|
+
]
|
|
759
|
+
],
|
|
760
|
+
"content": "AmcNeMrs/5cl6E/Z1PoCcQXOxzckQIRSjE9XOZJKvrsqFN0ZfMu/0hPX0dWFqdgAWRDZ5/K+9O3ajNsKlDmnx5zcAtlrzeJUTDGtN6YrwcorfL6NRMeSz9bnic0jAGAxo+Zj5n0FUV9qOzAkjKktseXy6y2oQeQ3gN2uPW1GXSOcaH++d3YwmiND6c48I8SlsNB5wRVawNb5Dm6UViC4h0wpbBR9sLqA08+p8IMFx2HxmENDbNNMfeQVcMhNGZ+XobZcsH4Zd0JNVxRVUGF0TOYCfaOQFAzO3LxfXI9tcC9vaisCA/DbGoGiz5nqOwU4xnsF5RgdX6yX+xIQXSzCtne69p/tdjePhsL8WmlENE131aSBdY/L7bUAumu+FJxfVJBzNCz+y/o0noBLirOrUuUIqWxFnQ/zoWsE+gYCU9Um9LvtbhK+m1+COhl6K09ruh/qlcZBn7OEciUywGZSkRadpm4kktc5cCfGbdrlkfVPwgrJiRVYLkIC+O+N+xqx037XLOtI3wC460QDnaoii207OrsdGip8F5K1sZ8ZV/Mc+gNmcCKAZJEGaoyowPvP4cYXMyos7j3MCZ0lpwi1E8jwyXYJZK17JKXmykEpBywPpYLSgBQR9C9yJ6oCfaVsxkOBVgbEiPKpA+hGngsiDmGBoy41VdgpA9ZCBTIH5W8B2z1xqCk+dHVkczJqYNpM+Dad0Xagq42rnK1kLff2bFsIKxly3ak1uFRYBCQbS74BEo2kbczOAn1XLfPYMLiEiMCdjXgILzVgqe4TVjue9Nv7Zak5iheUPqLVZfxTbuQUWIWrLakQWSVHfQ8c+/L98/5M9TsgYSIV5BS5JCABvbCVe4RHeq4ibECcsf41I2qPUeCSXxHuTvJ26L/T3ONpAEzXRw2+8tJNaK3Plczm5f9TfYPL3yuZGcplKsgPwogm0us=",
|
|
761
|
+
"sig": "6f034c009f3eb02e069355d5a065f3aa72d1fe92dd5e6bc1bedbd905dfca08370fdc39b21470341397eafc2a5ad1c977c4658811aab3198937099ce844f0db37"
|
|
762
|
+
}
|
|
763
|
+
},
|
|
764
|
+
"output": {
|
|
765
|
+
"sealSender": null,
|
|
766
|
+
"renewedDevice": {
|
|
767
|
+
"epoch": 1
|
|
768
|
+
}
|
|
769
|
+
}
|
|
770
|
+
},
|
|
771
|
+
{
|
|
772
|
+
"name": "rekey-from-off-curve",
|
|
773
|
+
"kind": "negative",
|
|
774
|
+
"note": "The same with one `from` tag that is not the x coordinate of any point (x = 5): `sealSender` null, read without a secret.",
|
|
775
|
+
"input": {
|
|
776
|
+
"roomId": "58c0b5a427b80559f5b67f35e74c686f630259dcdafca2ab03e3b082f4a1740c",
|
|
777
|
+
"authority": "4fca1ba4b39e24ea0acea325af3e6a62315903952c277e197cccfe8f0143c533",
|
|
778
|
+
"previousKeyHex": "09126b23a6148694280325e5a433c1badbc853026c8e71c0833ffd4bd0ea08ab",
|
|
779
|
+
"deviceSkHex": "678d943bfdab0df34f3945be66ca867a4c15b507d7a9c125651f9018a905f305",
|
|
780
|
+
"renewedSealSkHex": "7729de6b913094fc7fd121d12671448494184b9eff28633869a0c81567291035",
|
|
781
|
+
"event": {
|
|
782
|
+
"id": "3d0722b71fa5a04938936d6fd89ba718830a59c89ecb060931f442394e1702ab",
|
|
783
|
+
"pubkey": "4fca1ba4b39e24ea0acea325af3e6a62315903952c277e197cccfe8f0143c533",
|
|
784
|
+
"created_at": 1800000000,
|
|
785
|
+
"kind": 1462,
|
|
786
|
+
"tags": [
|
|
787
|
+
[
|
|
788
|
+
"d",
|
|
789
|
+
"58c0b5a427b80559f5b67f35e74c686f630259dcdafca2ab03e3b082f4a1740c"
|
|
790
|
+
],
|
|
791
|
+
[
|
|
792
|
+
"epoch",
|
|
793
|
+
"1"
|
|
794
|
+
],
|
|
795
|
+
[
|
|
796
|
+
"from",
|
|
797
|
+
"0000000000000000000000000000000000000000000000000000000000000005"
|
|
798
|
+
]
|
|
799
|
+
],
|
|
800
|
+
"content": "AmcNeMrs/5cl6E/Z1PoCcQXOxzckQIRSjE9XOZJKvrsqFN0ZfMu/0hPX0dWFqdgAWRDZ5/K+9O3ajNsKlDmnx5zcAtlrzeJUTDGtN6YrwcorfL6NRMeSz9bnic0jAGAxo+Zj5n0FUV9qOzAkjKktseXy6y2oQeQ3gN2uPW1GXSOcaH++d3YwmiND6c48I8SlsNB5wRVawNb5Dm6UViC4h0wpbBR9sLqA08+p8IMFx2HxmENDbNNMfeQVcMhNGZ+XobZcsH4Zd0JNVxRVUGF0TOYCfaOQFAzO3LxfXI9tcC9vaisCA/DbGoGiz5nqOwU4xnsF5RgdX6yX+xIQXSzCtne69p/tdjePhsL8WmlENE131aSBdY/L7bUAumu+FJxfVJBzNCz+y/o0noBLirOrUuUIqWxFnQ/zoWsE+gYCU9Um9LvtbhK+m1+COhl6K09ruh/qlcZBn7OEciUywGZSkRadpm4kktc5cCfGbdrlkfVPwgrJiRVYLkIC+O+N+xqx037XLOtI3wC460QDnaoii207OrsdGip8F5K1sZ8ZV/Mc+gNmcCKAZJEGaoyowPvP4cYXMyos7j3MCZ0lpwi1E8jwyXYJZK17JKXmykEpBywPpYLSgBQR9C9yJ6oCfaVsxkOBVgbEiPKpA+hGngsiDmGBoy41VdgpA9ZCBTIH5W8B2z1xqCk+dHVkczJqYNpM+Dad0Xagq42rnK1kLff2bFsIKxly3ak1uFRYBCQbS74BEo2kbczOAn1XLfPYMLiEiMCdjXgILzVgqe4TVjue9Nv7Zak5iheUPqLVZfxTbuQUWIWrLakQWSVHfQ8c+/L98/5M9TsgYSIV5BS5JCABvbCVe4RHeq4ibECcsf41I2qPUeCSXxHuTvJ26L/T3ONpAEzXRw2+8tJNaK3Plczm5f9TfYPL3yuZGcplKsgPwogm0us=",
|
|
801
|
+
"sig": "eff2cc0225466dd6367fda5509d36fcb17e88b28039148b17870100ebe65b7658b005a18d0563ae01003ff88833d0716d01029b2e1b78456d63e19d27261cb24"
|
|
802
|
+
}
|
|
803
|
+
},
|
|
804
|
+
"output": {
|
|
805
|
+
"sealSender": null,
|
|
806
|
+
"renewedDevice": {
|
|
807
|
+
"epoch": 1
|
|
808
|
+
}
|
|
809
|
+
}
|
|
810
|
+
},
|
|
811
|
+
{
|
|
812
|
+
"name": "epoch-grant-one-time-sender",
|
|
813
|
+
"kind": "positive",
|
|
814
|
+
"note": "epoch-grant-seal's grant with `oneTimeSender`: tags d, p, then [\"from\", one-time pubkey], signed by the authority, content sealed from the one-time key to the renewed seal key. `randomHex`: the 48-byte seed for the one-time key (`senderSkHex`), body nonce, aux-rand. The renewed device opens it; the thief does not; the authority's key no longer opens it. A reader older than this cannot open it at all, which is why writers wait for readers.",
|
|
815
|
+
"input": {
|
|
816
|
+
"roomId": "58c0b5a427b80559f5b67f35e74c686f630259dcdafca2ab03e3b082f4a1740c",
|
|
817
|
+
"authority": "4fca1ba4b39e24ea0acea325af3e6a62315903952c277e197cccfe8f0143c533",
|
|
818
|
+
"authoritySkHex": "bb058b43370d37b7ed3f09e3a36a6ffcc88a8dad56c5ee204b1715240a1466e0",
|
|
819
|
+
"deviceSkHex": "678d943bfdab0df34f3945be66ca867a4c15b507d7a9c125651f9018a905f305",
|
|
820
|
+
"now": 1800000000,
|
|
821
|
+
"request": "ef8f52180b25300214a75780fc12a89cb1d4ee1a88a78b2f8afb92605769e87a",
|
|
822
|
+
"credential": {
|
|
823
|
+
"id": "3c3f64a769c826a89f2712ed9898e43afacc5f2784201999e8ca0ed5cdcf3d6c",
|
|
824
|
+
"pubkey": "3683caad0bf9bb5a653582155c0ba9192fd23d7d6c717a7b0d233c8356a7042f",
|
|
825
|
+
"created_at": 1800000000,
|
|
826
|
+
"kind": 20460,
|
|
827
|
+
"tags": [
|
|
828
|
+
[
|
|
829
|
+
"d",
|
|
830
|
+
"58c0b5a427b80559f5b67f35e74c686f630259dcdafca2ab03e3b082f4a1740c"
|
|
831
|
+
],
|
|
832
|
+
[
|
|
833
|
+
"device",
|
|
834
|
+
"f29e30f72c9aaaa5066aa366afd4f0970e13853d10922cf5ba2ece21dc18ee5b"
|
|
835
|
+
],
|
|
836
|
+
[
|
|
837
|
+
"expiration",
|
|
838
|
+
"1800043200"
|
|
839
|
+
],
|
|
840
|
+
[
|
|
841
|
+
"seal",
|
|
842
|
+
"63a40c9bc84c065f4aab7e63208ea37c3edcd3ab47a334b157cf000409c7eaaf"
|
|
843
|
+
]
|
|
844
|
+
],
|
|
845
|
+
"content": "",
|
|
846
|
+
"sig": "fdd0c5f23d2f1531594100470d6fe6c87d6c28d2185898b49844b664ffcb65f3c76ce0b9fcef3166708baca068d7f9d2ee74a827f56140b6cef11591ce942049"
|
|
847
|
+
},
|
|
848
|
+
"epoch": {
|
|
849
|
+
"epoch": 2,
|
|
850
|
+
"secretHex": "1173b8e8457a46fdb6ae949e37aa41ce259534d4bb4f15a5fdb74aefc83344f5"
|
|
851
|
+
},
|
|
852
|
+
"renewedSealSkHex": "7729de6b913094fc7fd121d12671448494184b9eff28633869a0c81567291035",
|
|
853
|
+
"copiedSealSkHex": "22b29538be86feaf0dbe57fcd046cc95ca39082e813d450d8d9d653a2434a374",
|
|
854
|
+
"event": {
|
|
855
|
+
"id": "38ad58597fa0c34a18e3975e755c27523b4c1cdf60d4a49aa89d2817f734dc76",
|
|
856
|
+
"pubkey": "4fca1ba4b39e24ea0acea325af3e6a62315903952c277e197cccfe8f0143c533",
|
|
857
|
+
"created_at": 1800000000,
|
|
858
|
+
"kind": 20469,
|
|
859
|
+
"tags": [
|
|
860
|
+
[
|
|
861
|
+
"d",
|
|
862
|
+
"58c0b5a427b80559f5b67f35e74c686f630259dcdafca2ab03e3b082f4a1740c"
|
|
863
|
+
],
|
|
864
|
+
[
|
|
865
|
+
"p",
|
|
866
|
+
"f29e30f72c9aaaa5066aa366afd4f0970e13853d10922cf5ba2ece21dc18ee5b"
|
|
867
|
+
],
|
|
868
|
+
[
|
|
869
|
+
"from",
|
|
870
|
+
"0f44811c4dab721de6ee8e8d740b264fe8e106453fca7fe2a4543656cf10bb98"
|
|
871
|
+
]
|
|
872
|
+
],
|
|
873
|
+
"content": "Ar+D/3yOjgZRgyeW88MD9C17M37/kTTSSXfT5gTHvH8ecKBRUai4cGo/MMEiMBPN7b/YLj+HKOab20VjFGh1b6+CwWjoruSUpgvxNvZUcKiOF2lmZp6Awd2R46k55IJ8ShyGHQ674wyHyBs7J2GbZeEZZlsAPOztW0iCXEB4RzdUP4HrmyYbhKxY9g+8juxhT91aMIH7bmFN+kOCrOO3W+4gaj73tGRyB6OBvMKledoK1ypL+COkXqj4GzFUcDsG88fFOD6+JMnVoUDNhyobovbxRsj6B5wApTkr6Bj6nAr5+er5RTTEBAwmUuIc/V7qFzK76NUmYGunr6r5bZHaxLld3Q==",
|
|
874
|
+
"sig": "7992b0b101abb281e45c6066132e571a30ef8b02fcd0eb25f8764cf967c960d89f8d6def75e7bf91cf31d6af1efaa7b9d0171eaeba7482521afe9bc07d1fde17"
|
|
875
|
+
},
|
|
876
|
+
"randomHex": [
|
|
877
|
+
"5ac80b90d9396022bf334b58968aec74e7c8c72a7f62635b91a13924910c605a62efa5fac4e4ce2c169755acc6d1b49c",
|
|
878
|
+
"bf83ff7c8e8e0651832796f3c303f42d7b337eff9134d24977d3e604c7bc7f1e",
|
|
879
|
+
"a100e717ef4874d688fb51f37339cc25d5eddb8a17f3c554f939a7d3098ad8fa"
|
|
880
|
+
],
|
|
881
|
+
"senderSkHex": "5b2583975fba6efa84bdfd6fa48d2422e1d31090140b71d4cadc19e4ed5ee25d"
|
|
882
|
+
},
|
|
883
|
+
"output": {
|
|
884
|
+
"sealSender": "0f44811c4dab721de6ee8e8d740b264fe8e106453fca7fe2a4543656cf10bb98",
|
|
885
|
+
"renewedDevice": {
|
|
886
|
+
"epoch": 2,
|
|
887
|
+
"secretHex": "1173b8e8457a46fdb6ae949e37aa41ce259534d4bb4f15a5fdb74aefc83344f5"
|
|
888
|
+
},
|
|
889
|
+
"thief": null,
|
|
890
|
+
"authorityOpens": false
|
|
891
|
+
}
|
|
892
|
+
},
|
|
893
|
+
{
|
|
894
|
+
"name": "epoch-grant-from-off-curve",
|
|
895
|
+
"kind": "negative",
|
|
896
|
+
"note": "epoch-grant-one-time-sender's content re-signed by the authority with a `from` tag off the curve: the grant is refused (null).",
|
|
897
|
+
"input": {
|
|
898
|
+
"roomId": "58c0b5a427b80559f5b67f35e74c686f630259dcdafca2ab03e3b082f4a1740c",
|
|
899
|
+
"authority": "4fca1ba4b39e24ea0acea325af3e6a62315903952c277e197cccfe8f0143c533",
|
|
900
|
+
"deviceSkHex": "678d943bfdab0df34f3945be66ca867a4c15b507d7a9c125651f9018a905f305",
|
|
901
|
+
"now": 1800000000,
|
|
902
|
+
"request": "ef8f52180b25300214a75780fc12a89cb1d4ee1a88a78b2f8afb92605769e87a",
|
|
903
|
+
"renewedSealSkHex": "7729de6b913094fc7fd121d12671448494184b9eff28633869a0c81567291035",
|
|
904
|
+
"event": {
|
|
905
|
+
"id": "3185002094d21dd5f585b6e718c8587a5ab494235e73a5351f51ba0648af5db9",
|
|
906
|
+
"pubkey": "4fca1ba4b39e24ea0acea325af3e6a62315903952c277e197cccfe8f0143c533",
|
|
907
|
+
"created_at": 1800000000,
|
|
908
|
+
"kind": 20469,
|
|
909
|
+
"tags": [
|
|
910
|
+
[
|
|
911
|
+
"d",
|
|
912
|
+
"58c0b5a427b80559f5b67f35e74c686f630259dcdafca2ab03e3b082f4a1740c"
|
|
913
|
+
],
|
|
914
|
+
[
|
|
915
|
+
"p",
|
|
916
|
+
"f29e30f72c9aaaa5066aa366afd4f0970e13853d10922cf5ba2ece21dc18ee5b"
|
|
917
|
+
],
|
|
918
|
+
[
|
|
919
|
+
"from",
|
|
920
|
+
"0000000000000000000000000000000000000000000000000000000000000005"
|
|
921
|
+
]
|
|
922
|
+
],
|
|
923
|
+
"content": "Ar+D/3yOjgZRgyeW88MD9C17M37/kTTSSXfT5gTHvH8ecKBRUai4cGo/MMEiMBPN7b/YLj+HKOab20VjFGh1b6+CwWjoruSUpgvxNvZUcKiOF2lmZp6Awd2R46k55IJ8ShyGHQ674wyHyBs7J2GbZeEZZlsAPOztW0iCXEB4RzdUP4HrmyYbhKxY9g+8juxhT91aMIH7bmFN+kOCrOO3W+4gaj73tGRyB6OBvMKledoK1ypL+COkXqj4GzFUcDsG88fFOD6+JMnVoUDNhyobovbxRsj6B5wApTkr6Bj6nAr5+er5RTTEBAwmUuIc/V7qFzK76NUmYGunr6r5bZHaxLld3Q==",
|
|
924
|
+
"sig": "ba59c2a57832972de1b73a75724f6636fd2cea73e6a9040e05bc3ea022a10a5260d866d94c49dd16408237ea62a65e9bfb39cf332099a23f560ff7ca463eed02"
|
|
925
|
+
}
|
|
926
|
+
},
|
|
927
|
+
"output": {
|
|
928
|
+
"renewedDevice": null
|
|
929
|
+
}
|
|
626
930
|
}
|
|
627
931
|
]
|
|
628
932
|
}
|