Skip to content

Instantly share code, notes, and snippets.

@jvehent
Last active August 29, 2018 12:26
Show Gist options
  • Save jvehent/65e1d18a93422fdfa20e8256158b731b to your computer and use it in GitHub Desktop.
Save jvehent/65e1d18a93422fdfa20e8256158b731b to your computer and use it in GitHub Desktop.

autograph-mar.yaml

server:
    listen: "0.0.0.0:8000"
    noncecachesize: 524288

signers:
    - id: testmar
      type: mar
      privatekey: |
          -----BEGIN RSA PRIVATE KEY-----
          MIIEowIBAAKCAQEAzX7/HaiF/lbTMwgVxU60AXIuZmnLNPEG1w7VzJv0Y9aJyA5V
          Ru9kUCJBd97ptLB4n5gh3wp4Gu2eI/Kdhg6riIJerkmveIUZulqEszDbLRjMWA0s
          w47SmsXKYlApKa5C39WDwovpMVZNMRMPOIwIqwuQH1TZoLJKrzYTSi5lUiH4Ev5+
          dKtk9870F1LmN0UptNYNUOhLozykpwVvdAZVYhZWMZJDlWo9qps1/Fml/T64zNvM
          zPT/ikJZ1VJ+OIGoqwP8f14HQWJzKArvHQqyRQYRx9gfBFVS8w4Cbgtf3LtKSeFZ
          gQT3g3EZ8eor42+zOiTU8Wp6RKHWXwyjY2xsVwIDAQABAoIBAEByCH37oPIPtrJ1
          YaZ8NTWS4nxZx1G2GSgOzfwaGL3KxXEJFbNmVjZPV+rI7NAu29VpN44kUWBYjtTF
          PKOTLDZmdF0CXNZWH6hyxNURiFsPQN6IWzaFLwU87GiCrTYWIYDjDCxSBnLjltfC
          G27nc7x4pt08lfewkn16XvhPrpTf5GuVPVC1WiayO9eCB8z0hadEG3meQJicyFkI
          gV/e1FVixB4059xDxf0nryNIfBC0j7kBOIke3qccqr/WaGjoy0XhSaZO3EPzMLqu
          T00Nol0TD5wk8/7w+NQ8j4Mwu9WVeAyK3ARjUCwI+CW2+TK2mc2rmNq9fLSl48Ko
          fr28RkkCgYEA66UO+WCBH1MG/4Q59qPSavgR9UaUkln+RF7vUDIVv8LrAOM7/KPJ
          L3PojCUFN9Uz4InJtgjplmD+Q+POuXC/CB7/2QM+tXe+wmaCXworIV3o0TF67DzO
          H1e8JJCPMFaK5W563HQEoMFwWokU36NsGAgGEWUo9X0hcU8+7rZREVUCgYEA3z8+
          ajZydDoec+yEjGRmPpjFtDMcLnuI36FFNi8EZhanlYPVYr4eCCk/+ybWr8hZwhV/
          Dmdh3jG7Vl62BiGDRpJcjekaPi9Vb5cCcOrxAtmrXLjViuqkEGeTCZmS93UiL8vI
          O6sSPjp4xIH99DrvSOLCsq3FC1Xi9pxvwrkmtvsCgYABiQrG7y0IMjdKdOcXx0t4
          rPMZAQO4zGNOuLugbyMbI776O4DJjZui9oNeXmNhUL9MyDkLOZWkCC+/630OUkC8
          Yc9S76V58zTH+XkB+4P6bK02p7bgUSkapSyxpEt6iiXPht/ADfV1wqzjuh7rshnj
          MjIv7NPOfak5HsYPMhrnHQKBgQCudc8B08DHwW9w6iF/USpxupOtyc85KAMDuBTN
          Thri6MtX1WmZO7dea1X7oBNf1XMHcCMVj4b0y+p5iZQ34FKlgNVhdQu0EutyRBF9
          SqzDrHT1BeCjKdDCnR5T/zbRuTDZJyg4MO0Vwj4EWw2pobDDRaofVhrJS/oM/J1+
          D5EIpwKBgA1R/1b7QEIAVG9tgVjLnqSHONy6WNVpy+ghIy4aEK1ual7ZGMrpfFPB
          EomSdNruG+zPhEbKyNoMxJqiXofKmoQBNYTXAAAqzA3dRdKJ6FROnCb14TTXtI8c
          zGr+fRXgzuP2QWpIzXJZSM579MQvIwTxACrVqFwi+N2zpX6XFM/e
          -----END RSA PRIVATE KEY-----

authorizations:
    - id: alice
      key: fs5wgcer9qj819kfptdlp8gm227ewxnzvsuj9ztycsx08hfhzu
      signers:
          - testmar

monitoring:
    key: 19zd4w3xirb5syjgdx8atq6g91m03bdsmzjifs2oddivswlu9qs

Running Autograph

$ go get -u go.mozilla.org/autograph
$ $GOPATH/bin/autograph -c autograph-mar.yaml

Signing a hash with autograph-client

$ go get -u go.mozilla.org/autograph/tools/autograph-client
$ $GOPATH/bin/autograph-client -a Re8J74Mx+fLDPuEp/Zvb0MgFL/4= -sa 1

where -a contains the base64 of the input hash, and -sa is the signature algorithm (1=sha1, 2=sha384)

Adding -D to autograph-client forces it to print raw http requests and responses. Below is the signature response for this particular command:

[
  {
    "ref": "3fr3txt560ynb53j8y25y8emk",
    "type": "mar",
    "mode": "",
    "signer_id": "testmar",
    "public_key": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzX7/HaiF/lbTMwgVxU60AXIuZmnLNPEG1w7VzJv0Y9aJyA5VRu9kUCJBd97ptLB4n5gh3wp4Gu2eI/Kdhg6riIJerkmveIUZulqEszDbLRjMWA0sw47SmsXKYlApKa5C39WDwovpMVZNMRMPOIwIqwuQH1TZoLJKrzYTSi5lUiH4Ev5+dKtk9870F1LmN0UptNYNUOhLozykpwVvdAZVYhZWMZJDlWo9qps1/Fml/T64zNvMzPT/ikJZ1VJ+OIGoqwP8f14HQWJzKArvHQqyRQYRx9gfBFVS8w4Cbgtf3LtKSeFZgQT3g3EZ8eor42+zOiTU8Wp6RKHWXwyjY2xsVwIDAQAB",
    "signature": "njgkavniBGLj7ZmCW1HTAtjX2jENpA7zx4vOencxdO2Wbt45sycmD5TK/AqGKyccR4G7DP3IJ0eZCnvgfI6mBlfQmBN599RNa0F+Svz5jeRqmyYQolwaDhMsBzLdHo9JuBZDKHgIh562hAGmf+atDLr9ttYKZiPfYgmeEvpHbH11v7moXngYJBAUzrKOMOm/zeMfN32p8MFzmKUwwmd4ydO7gTzZbcQE7Z5jLtgf5ee/ZUl9Zd8SLcgYh8sp6l7B9RzbggDJGutOZF2bYexnscDoqW14dvcEygabfEJW9ifa+Du9IgWAdM6MPuy6uSxho3KJ2flR/Z3P7CaOncZ2kQ=="
  }
]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment