Skip to content

Commit

Permalink
added fixture with delegation as per @cyli's comment and tests to go …
Browse files Browse the repository at this point in the history
…with it

Signed-off-by: Avi Vaid <avaid1996@gmail.com>
  • Loading branch information
avaid96 committed Aug 11, 2016
1 parent 570cef9 commit c1c537f
Show file tree
Hide file tree
Showing 22 changed files with 98 additions and 43 deletions.
16 changes: 10 additions & 6 deletions client/backwards_compatibility_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -140,8 +140,8 @@ func Test0Dot3RepoFormat(t *testing.T) {
require.NoError(t, err)
require.NoError(t, recursiveCopy("../fixtures/compatibility/notary0.3", tmpDir))

gun := "docker.com/notary0.3/samplerepo"
passwd := "randompass"
gun := "docker.com/notary0.3/tst"
passwd := "password"

ts := fullTestServer(t)
defer ts.Close()
Expand All @@ -153,8 +153,7 @@ func Test0Dot3RepoFormat(t *testing.T) {
// targets should have 1 target, and it should be readable offline
targets, err := repo.ListTargets()
require.NoError(t, err)
require.Len(t, targets, 1)
require.Equal(t, "LICENSE", targets[0].Name)
require.Len(t, targets, 3)

// ok, now that everything has been loaded, verify that the fixture is valid
requireValidFixture(t, repo)
Expand All @@ -171,7 +170,12 @@ func Test0Dot3RepoFormat(t *testing.T) {

targets, err = repo.ListTargets()
require.NoError(t, err)
require.Len(t, targets, 2)
require.Len(t, targets, 5)
// the changelist target/releases delegation will get published with the above publish
delegations, err := repo.GetDelegationRoles()
require.NoError(t, err)
require.Len(t, delegations, 1)
require.Equal(t, "targets/releases", delegations[0].Name)

// Also check that we can add/remove keys by rotating keys
oldTargetsKeys := repo.CryptoService.ListKeys(data.CanonicalTargetsRole)
Expand Down Expand Up @@ -218,7 +222,7 @@ func TestDownloading0Dot1RepoFormat(t *testing.T) {

// Ensures that the current client can download metadata that is published from notary 0.3 repos
func TestDownloading0Dot3RepoFormat(t *testing.T) {
gun := "docker.com/notary0.3/samplerepo"
gun := "docker.com/notary0.3/tst"
passwd := "randompass"

metaCache, err := store.NewFilesystemStore(
Expand Down
24 changes: 20 additions & 4 deletions fixtures/compatibility/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,12 +20,28 @@ Relevant information for repositories:

- `notary0.3`
- GUN: `docker.com/notary0.3/samplerepo`
- delegations: targets/releases
- key passwords: "randompass"
- targets:

```
NAME DIGEST SIZE (BYTES)
---------------------------------------------------------------------------------------------
LICENSE 9395bac6fccb26bcb55efb083d1b4b0fe72a1c25f959f056c016120b3bb56a62 11309
NAME DIGEST SIZE (BYTES) ROLE
----------------------------------------------------------------------------------------------------------------
LICENSE 9395bac6fccb26bcb55efb083d1b4b0fe72a1c25f959f056c016120b3bb56a62 11309 targets
change e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 0 targets
hello e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 0 targets/releases
```
- It also has a changelist to add a `change` target (an empty file), that hasn't been published to testing publish success.
- Has a delegation key in the targets/releases role and a corresponding key imported
- It also has a changelist to add a `MAINTAINERS` target, that hasn't been published to testing publish success.
- It also has a changelist to add a `Dockerfile` target (an empty file) in the targets/releases role, that hasn't been published to testing publish success with a delegation.
- unpublished changes:

```
Unpublished changes for docker.com/notary0.3/tst:

action scope type path
----------------------------------------------------
create targets target MAINTAINERS
create targets/releasestarget Dockerfile
```

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
-----BEGIN EC PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: AES-256-CBC,cff71e822e527b0d56152dfcae5d8aee
role: root

09tikBacrC5LlLEcHUQbrYpHwD2n1FCh283bvZRFd2JzgOem5mCi4Vte7Mv8juBx
KIludm/liDsATDleyTRUnDWvQL1SRCx6i3TL6pcXcgezbZ9KeA/SM+RBMdFNZM03
GfkBHB099C1pYTq0d5fZTqilRlikq9eDTg3f5VXhnSg=
-----END EC PRIVATE KEY-----

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
-----BEGIN EC PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: AES-256-CBC,692438f652f088c478daf0e47373a9df
role: targets

eibpR1uC1gNyfUcbM7ZHm6hh0N0en1fDg6NJxlPPER+PMRocazO+36CQMCCr2+kL
vWJHYEAvB+MYt6EUcTY8TNKI1obwZ6ypuxsw/ovJhZthdeJSW3A4TakH0zUEMpif
cYPV/uWXqc8WPUJi9VhcCxjUhxgBtEa4wXk89Wqnpo4=
-----END EC PRIVATE KEY-----
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
-----BEGIN EC PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: AES-256-CBC,c2991dbcd2de915a8e325e5d89b66247
role: snapshot

EQCxj5WQrb46a8+JG1F//LXslfDru1sDj9ejRmXclLrt3lEgbKP4JVGH0iw/eDYA
nfwONgdoAq+8GcUikr1hG7KjrhW5PbFY53EeCJB4KTRhrkV0zGHgCyW0xnVSCLY8
u/QyvMmxXGjKhHPlitXJvgblGytQp2tCvMYzP9dhmhU=
-----END EC PRIVATE KEY-----
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: AES-256-CBC,a295442b7759389b59fcdcb9a65b2b92
role: targets/releases

sZEwxURu9E8nqc4HNoxeoPVQRSuRJDMjk861xkEWclKHdElFcBPBZAmYmeiIwGD1
zWd89qkbrGLjNK9JKIfU1k1jyKKDvKc7LbXk/TAFc0EP7jz0AnDh872xzbhYRwyt
ChAeeC3ryayRL5cVYSwX/AOtPQRYDIW+iDl8vJVAVyanm61XPP43bvZXjYiR//GD
kFlILNMiPziWXYvQcIeYNAXLuUIG7ll17SI0rOt/cs7LUN+F0hP3yW5PLnI/ZXZz
+wqcVdXju1U5Y5zeO11dCO/+C4JI28/iXQ0jin6Qt7ujxaOwtJB0egRfRMxddF0P
ZhlX+KCptBwhK1yAt965rpfrP10cPBU4uG4QBi1AnJ7rzHnUTiwHuLzFFn/DyeBe
aeUYskNMypyoZWBkbdpe5b5t5mgy/Jnwqjd1Vp4ZJ8ZPlKXW5rbYK3JTXUHTW/aQ
ax9rp5Juf11czjFuKaw1XaDN5CB4uYOVDETgL+BvPeionNPRdUwIl5JNgRW/Vm6g
OEXjzpZehDBW785IqbjFug7DqwVpCSIkxpbOSk/NsZuzRQQLKWhhPuroS2BH9U/c
iU6UPCmGd2xK3wU21pOd6EV51QymbZIc6/mobT2q09P4xm6FHDDOpskOtZaJCnRh
aDI/DCxM2YAZtRt0hIzAuthIhHy2uOG9odf3ctP1y+j1uXvTKIC7/IG/tD3uDIi+
rOOLRjixB3Fv3beT0wZc7FTCWQ6YTdewaWvBDsU97cjuPkjStn76Q4jvSYByRULm
8+G5vUWsZ+bYzMqPUr+atCHi1AZCqiwU80TdqMUBhITgxHhNVolQulDjB+dE2XGp
7a74WIDMzR4hyygvp49oUFhQpHlVsY0lSrog+5Zg0LVJO77SaggNAsihQPTNAy/3
BZjeuWDtbQcDKFmNSS0sncwFrekfgqBrQEtyoAcK8H5jSM253Au38SVJNQnuPHRS
kvy9lEc1jgZB9P+r/yNhAinUZd/BjrlgpCfWlfhxUlkXbW4kCU8iwJJuHPenKAAU
SIcXSzfUSXRbVeAG+XE66reDeFQc82xZ9IKM6clVd15c1HLQhFQNllbAmw+Xlbbr
W1K96eyOLJekOORAjOnQZ8wqjv3O68GtzFQaTL7XJXycW0fw+MKnDA2VOdS2gAy0
7Cgv23A+DWRirI4zoyD50XF2ShtiEE68uQ/L6scCPJ0KRJjisxCfyClu3V8MX9MB
X4ijrvBa1TJ4FWh0pW163pkV3EKI/aHRa1OJ03eLuUMa81jl9tBVvIwJbNxVi38j
ulb5dO/gAql3BNifQUqgttqjTkFEXsPcpH4wAVM2iWitJncjRkcbKApsSt60I4zb
YQwJ9tF3md6qVBXmOBd1Zt1Lv1dxI3VfSD+g1ew7/Jm03uU66GPbqHv+oqzz8yAN
lwzlybDo8Y/mT9MlpI9zmmy5yi/tacv/LsoJxJfYQEuVms1sTD+mJWo+X2UerHc+
Oe+eDJBUF2enrzUNFg8xmAztWjRyeCJnEXsPY75ES1XQEFVY853V4Kkrrc7gVANg
7oHZYloEZLrHQ5oK/HZL+uZkMWxyjZ2Hgwm3sQZ8xYI5e6My9fIL/jCGgBzPMzXq
-----END RSA PRIVATE KEY-----

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"action":"create","role":"targets","type":"target","path":"MAINTAINERS","data":"eyJsZW5ndGgiOjEzNDAsImhhc2hlcyI6eyJzaGEyNTYiOiJwL1IzUWhTNHNac3RZa0x6Z0pENFpvUVdQK2ovemRQZWsvalNoaEZ3RVMwPSIsInNoYTUxMiI6ImhkOFhsRlUvaDhJNDRPZ1BCRU0vamRlSXpHZ3RKcTdIZytDaU5EYVQ5cmJpQVYyb3M1bEhZYjRCZlEwUDJveGk2OHEvbDAzN1JuUCs2aG1pRWpaaGR3PT0ifX0="}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"action":"create","role":"targets/releases","type":"target","path":"Dockerfile","data":"eyJsZW5ndGgiOjEyMTcsImhhc2hlcyI6eyJzaGEyNTYiOiJVMHZCWm8wek5PZU02Umw2NkJCTG5tSzBPWW1NVVp1NW5OWmJWd2J5WVVFPSIsInNoYTUxMiI6IllEREx4am8wdEFhQmJVS3NLUHFnMmNMUE1KRVAzbDZBZDBVQTd4VzFjODJIb0RLbUZHUDZ6Ui9Tc3hNOXZUSm8yYi92RW10a2UyTHNkVzVaZklGMnZBPT0ifX0="}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"signed":{"_type":"Root","consistent_snapshot":false,"expires":"2116-07-03T17:56:36.027379879-05:00","keys":{"041b64dab281324ef2b62fd2d04f4758269e120ff063b7bc78709272821a0a02":{"keytype":"ecdsa","keyval":{"private":null,"public":"MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAENgK7kx/HdvmLUG4733JIJd0Bv6FML8SVEmgGynvhl64nCVmWzTLdziS1bMUgb6hlSkqTYtvyOCC5YMY+GrAH+Q=="}},"354e203ba09dbe17807b6a9d191bff887167c06d121e738d849446a9c76c2866":{"keytype":"ecdsa-x509","keyval":{"private":null,"public":"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUJlVENDQVIrZ0F3SUJBZ0lRRmdpeGZJdWs1ZCtLM2R5cElhU0RMREFLQmdncWhrak9QUVFEQWpBak1TRXcKSHdZRFZRUURFeGhrYjJOclpYSXVZMjl0TDI1dmRHRnllVEF1TXk5MGMzUXdIaGNOTVRZd056STNNakkxTmpNeQpXaGNOTWpZd056STFNakkxTmpNeVdqQWpNU0V3SHdZRFZRUURFeGhrYjJOclpYSXVZMjl0TDI1dmRHRnllVEF1Ck15OTBjM1F3V1RBVEJnY3Foa2pPUFFJQkJnZ3Foa2pPUFFNQkJ3TkNBQVNpajBzYUF1SnZoRVpVSFFTVzJjc3EKR1B6VldyVVAxUCtDRTZZNnVKaWZidmk3YldseEc2KzMvYTVsd2oxa2RGRWtPU1pUd0NST1lqbjA3QlRHVnoxZQpvelV3TXpBT0JnTlZIUThCQWY4RUJBTUNCYUF3RXdZRFZSMGxCQXd3Q2dZSUt3WUJCUVVIQXdNd0RBWURWUjBUCkFRSC9CQUl3QURBS0JnZ3Foa2pPUFFRREFnTklBREJGQWlBVWljS05LTFhVQ1pVbnVKUGtHRS9ITkM2Q0JuOEsKK2cvQlFhbDhDbE02bHdJaEFMWFEwVzdqQ21Gc2ViN09jREZLbTAzb1Jka0J6elVpbSsvQlVwWnNYa1d3Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K"}},"85559599cf3cf681ff193f432a7ca6d128182bd1cfa8ede2c70761deac8bc2dc":{"keytype":"ecdsa","keyval":{"private":null,"public":"MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEyidUV961UjagjWLmulPmQ6BX+EpJeoBFqHpfsM1L7tHF4fjdNRGPBmEktT9H3nh5YQpI4nxQ+K3Q2NZT0Cke8w=="}},"f694343ec1d508b2840d86aec5387d7b4d62a39647e33566b2b2abf96029750c":{"keytype":"ecdsa","keyval":{"private":null,"public":"MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEZKFFI+3g0NH+9mitd5bRO3hkH3PG2cniXVrzqKKfRyc5QvmNc6W8wZ5IGlls6ZZX/GgKRzcpIttDidrOGiGlwQ=="}}},"roles":{"root":{"keyids":["354e203ba09dbe17807b6a9d191bff887167c06d121e738d849446a9c76c2866"],"threshold":1},"snapshot":{"keyids":["85559599cf3cf681ff193f432a7ca6d128182bd1cfa8ede2c70761deac8bc2dc"],"threshold":1},"targets":{"keyids":["041b64dab281324ef2b62fd2d04f4758269e120ff063b7bc78709272821a0a02"],"threshold":1},"timestamp":{"keyids":["f694343ec1d508b2840d86aec5387d7b4d62a39647e33566b2b2abf96029750c"],"threshold":1}},"version":1},"signatures":[{"keyid":"354e203ba09dbe17807b6a9d191bff887167c06d121e738d849446a9c76c2866","method":"ecdsa","sig":"/rPtinVMAaEpnQnNir6Q+rM5CXAH15TvgSiuzwXX6YJn74KfyJjA+1Drcb8bldPtf43kLtv2Hlk1kHFRpeIlcQ=="}]}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"signed":{"_type":"Snapshot","expires":"2116-07-03T18:08:08.423870533-05:00","meta":{"root":{"hashes":{"sha256":"Nx4/VGy1hGXBUmnTuFfpeBFJlpS1hG6Hd75CKQjyDGY=","sha512":"ey1LYJvRYydPV8ZH65KnxqKDuVGTlVg0/pVI0ZCBBuaww2tps0HCrS+cgBNpUXF4XaSzh8vubhIvssk5bLhGOg=="},"length":2393},"targets":{"hashes":{"sha256":"4rhyO2kZXwREr/5WnQjvKrkHn5SHSmkHVYrmBTaD4OU=","sha512":"e9X5ghcThKpp6YON2cjMJYZrxAkGwMFFD95FkKrvisbLdi8tIQSrtnoMeNLZZ21JubezKegZNBUCuLhrLyW91A=="},"length":2534},"targets/releases":{"hashes":{"sha256":"hWxqh8bSAgalH+es/7nFKFlyhfbklgxI0gs7Tww4p8A=","sha512":"3q1C2ZA8apyaiHgqAKddqf//axoF2FBEx5nKTFCcsj555Qs8N5OrrkTyRnKPmGgFkEr6WuupyW+wmC4vYbC03g=="},"length":790}},"version":5},"signatures":[{"keyid":"85559599cf3cf681ff193f432a7ca6d128182bd1cfa8ede2c70761deac8bc2dc","method":"ecdsa","sig":"vpfHe9NLtEgGj2s0ut/1QKu0YLicWqdhpv+g/I1K0KTv1e0FIzKHdl7CriMSTPG79as+LZgnVWOjnpvJMYJWCA=="}]}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"signed":{"_type":"Targets","delegations":{"keys":{"68243a1f948be7841403f65fc8f24d5eda9050c337e727e2eacc3d3cb5227d73":{"keytype":"rsa-x509","keyval":{"private":null,"public":"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURMRENDQWhRQ0NRQ3QyQk1HNVkrQjVqQU5CZ2txaGtpRzl3MEJBUXNGQURCWU1Rc3dDUVlEVlFRR0V3SlYKVXpFTE1Ba0dBMVVFQ0F3Q1EwRXhDekFKQmdOVkJBY01BbE5HTVE4d0RRWURWUVFLREFaRWIyTnJaWEl4RERBSwpCZ05WQkFzTUExTmxZekVRTUE0R0ExVUVBd3dIWVhaaGFXUTVOakFlRncweE5qQTNNamN5TURJME5USmFGdzB4Ck56QTNNamN5TURJME5USmFNRmd4Q3pBSkJnTlZCQVlUQWxWVE1Rc3dDUVlEVlFRSURBSkRRVEVMTUFrR0ExVUUKQnd3Q1UwWXhEekFOQmdOVkJBb01Ca1J2WTJ0bGNqRU1NQW9HQTFVRUN3d0RVMlZqTVJBd0RnWURWUVFEREFkaApkbUZwWkRrMk1JSUJJakFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUThBTUlJQkNnS0NBUUVBdWhnRlVLVG5YMHM5CnIvVW5rbTJ3aVVrS0VoOTZMb080cWhxYmM1d3Q1bzJMY0xxRWwxZjRhTUhQd3lKVklHZHJNRm9JY0dnYmtMMmcKMUdNNjFYMnVwb1lITmRJU3EvNHNwc0QveEo1dzdGQkg5bWxwTDQzQlBjRnpJYlVkaXhwZGNhL1UxYkN1L3ZvbgpCdDhXdjhHWlc1MWhLRWY4Q1g4WVk3d1JROTgwR3AyejYzV3lZNU9oY0pqZGRYK0EyUkVrdmZhc3Rna2pCUllQCnlYM2RNZHVISkgyQ1B1Q25yeWhRT2dXQTNxdUVCMTMzNkpHUGNYYjdWNnRiSlBxZmRZemxjM3d6SVpha2pNY3UKTC81cXB5cmYvMnlDRkVOYUNrMkFnd00rVkkyTEVXY3pVdUJNU0oyOHd1RWJlYWFBS2RrTWU1RXVKc252NUVLdgpXWXo2R2g3Wm53SURBUUFCTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFCa2ltVk5QNmY2Ukx1SGx2MzJCVmtVCmM3RkplWlRjeExjYXNqRHVtbDkxbDZiWE96dVk0RGJ6RlRzdnRaSTErNlBzMm5WTEZUS0RtRmd6aG9UdzRMbVgKZHp5cGw3QUpSZkhqRllyQWpEVFBhVmNaQkZ4dHRRei9MV3JkaXZxWnhNUEIxM0o2enlLejdCOWc2K1NXUmZkcQorbUkwNCtRYmQrVGNVR3lOeFVua3FpaCtaR3FZLzl3aWJLRjFJMThsT05HUFFMdlRINURCcExIcmZOSnIvWDRtCktlN0JETlZLN3JGYklXRVBnaVQvQjlYRzFhZkIySFNKL0pHeXFtdElnLzdkbjhLNWx1T21lcTczdHU4a1FuYXgKemNNZk00ZnFSMjlZY09vNjFMYVMzWm94YWthelg5dlFxV2xjdFViUkM0QW9ERkp2UFNNSDZvVWRaYVFndkUrNQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg=="}}},"roles":[{"keyids":["68243a1f948be7841403f65fc8f24d5eda9050c337e727e2eacc3d3cb5227d73"],"name":"targets/releases","paths":[""],"threshold":1}]},"expires":"2116-07-03T18:08:08.41836542-05:00","targets":{"LICENSE":{"hashes":{"sha256":"k5W6xvzLJry1XvsIPRtLD+cqHCX5WfBWwBYSCzu1amI=","sha512":"oQ+9Z23BUvcZjTgmDUPzWWfLtFHWZ+LkRPYObGHWBsQlfgsc1c7tprb/r5anoYT1IpqXFIx3zET+0EE0010Nww=="},"length":11309},"change":{"hashes":{"sha256":"47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU=","sha512":"z4PhNX7vuL3xVChQ1m2AB9Yg5AULVxXcg/SpIdNs6c5H0NE8XYXysP+DGNKHfuwvY7kxvUdBeoGlODJ6+SfaPg=="},"length":0}},"version":5},"signatures":[{"keyid":"041b64dab281324ef2b62fd2d04f4758269e120ff063b7bc78709272821a0a02","method":"ecdsa","sig":"yW/hkghh/8oPlHQ3d5xLCBHytkg/+zoxHEB2lq8yc1g6MG9/+qBEy0Uf/fxc10n5bB6WkEO095Yb5zuRuAQb7g=="}]}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"signed":{"_type":"Targets","delegations":{"keys":{},"roles":[]},"expires":"2116-07-03T18:08:08.418734928-05:00","targets":{"hello":{"hashes":{"sha256":"47DEQpj8HBSa+/TImW+5JCeuQeRkm5NMpJWZG3hSuFU=","sha512":"z4PhNX7vuL3xVChQ1m2AB9Yg5AULVxXcg/SpIdNs6c5H0NE8XYXysP+DGNKHfuwvY7kxvUdBeoGlODJ6+SfaPg=="},"length":0}},"version":1},"signatures":[{"keyid":"68243a1f948be7841403f65fc8f24d5eda9050c337e727e2eacc3d3cb5227d73","method":"rsapss","sig":"KbPrBN9WiYzOUmty8GsnfxL749daycuPOdTiZguekYmThwsr3ZjEb1wShM0Q6iK8rNqNYehUPl7sj0aYbhFCK8e5hYCya/ezcANKdXkB/1OA+PCUq8zqpBkfXrRxwirM08vmonCB1xub8ve+8EbvGpldCMrMvdzJWNuw/JUt3VtKovPtf7WTpnebJj1kJKnynJKIN8Dw6/9quULjkg6vkWnZGkXDdt12QFuvbPSiHrOKY5SS1Mo2KHvVuyCo3TbqmquBFuDQaxRqnzzOGastQUrYoBLAh8wXxtKz6b2ssrIwhKU5LNQpLwnAyLUo+AAtZcSTzxHinyNvCSdtAB4vIw=="}]}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"signed":{"_type":"Timestamp","expires":"2116-07-03T23:08:08.447842546Z","meta":{"snapshot":{"hashes":{"sha256":"8tnrmLiB+sNtG1356+kGjie3nSTyfsPrlmDvbF/uXOo=","sha512":"1TrxLDAKNR8ifK271ZbK3pHFjqW9+IouIbcb9cAqApmnBLkmtSKQMEUPHKKvySFwd4keVOfinuPSJ8Lno358Yg=="},"length":890}},"version":4},"signatures":[{"keyid":"f694343ec1d508b2840d86aec5387d7b4d62a39647e33566b2b2abf96029750c","method":"ecdsa","sig":"4DDaOBIQmwft3PfzYaaeAORhgmXS/nths/hJX1QLSFQvQhZ6nSf/K4QmCzYJwQvgvcq+oUATMfk2OzGfpUWCSw=="}]}
Loading

0 comments on commit c1c537f

Please # to comment.