sig-auth.git

git clone https://git.crispbyte.dev/sig-auth.git

commit
b223a25
parent
4b143a6
author
cheddar
date
2025-02-15 01:41:22 +0100 CET
Add digest to request
3 files changed,  +16, -4
M go.mod
M go.sum
M go.mod
+1, -0
1@@ -4,6 +4,7 @@ go 1.23.4
2 
3 require (
4 	github.com/common-fate/httpsig v0.2.1
5+	github.com/opencontainers/go-digest v1.0.0
6 	golang.org/x/crypto v0.33.0
7 )
8 
M go.sum
+2, -0
1@@ -4,6 +4,8 @@ github.com/dunglas/httpsfv v1.0.2 h1:iERDp/YAfnojSDJ7PW3dj1AReJz4MrwbECSSE59JWL0
2 github.com/dunglas/httpsfv v1.0.2/go.mod h1:zID2mqw9mFsnt7YC3vYQ9/cjq30q41W+1AnDwH8TiMg=
3 github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI=
4 github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
5+github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U=
6+github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM=
7 golang.org/x/crypto v0.33.0 h1:IOBPskki6Lysi0lo9qQvbxiQ+FvsCC/YWOecCHAixus=
8 golang.org/x/crypto v0.33.0/go.mod h1:bVdXmD7IV/4GdElGPozy6U7lWdRXA4qyRVGJV57uQ5M=
9 golang.org/x/sys v0.30.0 h1:QjkSwP/36a20jFYWkSue1YwXzLmsV5Gfq7Eiy72C1uc=
M main.go
+13, -4
 1@@ -9,6 +9,7 @@ import (
 2 	"os"
 3 
 4 	"crispbyte.dev/sig-auth/client"
 5+	"github.com/opencontainers/go-digest"
 6 	"golang.org/x/crypto/ssh"
 7 )
 8 
 9@@ -30,10 +31,18 @@ func main() {
10 		log.Fatal(err)
11 	}
12 
13-	resp, err := client.Post(
14-		"http://localhost:8080/post",
15-		"application/json",
16-		bytes.NewBuffer(json_data))
17+	id := digest.FromBytes(json_data)
18+
19+	req, err := http.NewRequest("POST", "http://localhost:8080/post", bytes.NewBuffer(json_data))
20+
21+	if err != nil {
22+		log.Fatal(err)
23+	}
24+
25+	req.Header.Add("Content-Digest", string(id.Algorithm())+"="+id.Encoded())
26+	req.Header.Add("Content-Type", "application/json")
27+
28+	resp, err := client.Do(req)
29 
30 	if err != nil {
31 		log.Fatal(err)