2 Commits

Author SHA1 Message Date
e7072ccdb3 Migrate to namespace forge.cadoles.com/Cadoles/go-http-peering 2019-10-16 11:18:34 +02:00
dab91eea29 Fix client token generation
- Set NotBefore timestamp one minute in the past to prevent false
negative checks
- Set NotAfter timestamp 5 minutes to the future
2019-05-10 14:20:01 +02:00
18 changed files with 46 additions and 44 deletions

View File

@ -26,7 +26,7 @@ sd-%:
goseq doc/sequence-diagram/$*.seq > doc/sequence-diagram/$*.svg
doc:
@echo "open your browser to http://localhost:6060/pkg/forge.cadoles.com/wpetit/go-http-peering to see the documentation"
@echo "open your browser to http://localhost:6060/pkg/forge.cadoles.com/Cadoles/go-http-peering to see the documentation"
godoc -http=:6060
bin/keygen:

View File

@ -2,7 +2,7 @@
Librairie implémentant un protocole d'authentification par "appairage" d'un serveur et client HTTP basé sur [JWT](https://jwt.io/).
[Documentation](https://godoc.org/forge.cadoles.com/wpetit/go-http-peering)
[Documentation](https://godoc.org/forge.cadoles.com/Cadoles/go-http-peering)
## Séquences

View File

@ -3,8 +3,8 @@ package chi
import (
"crypto/rsa"
peering "forge.cadoles.com/wpetit/go-http-peering"
"forge.cadoles.com/wpetit/go-http-peering/server"
peering "forge.cadoles.com/Cadoles/go-http-peering"
"forge.cadoles.com/Cadoles/go-http-peering/server"
"github.com/go-chi/chi"
)

View File

@ -3,9 +3,9 @@ package chi
import (
"testing"
peering "forge.cadoles.com/wpetit/go-http-peering"
peeringCrypto "forge.cadoles.com/wpetit/go-http-peering/crypto"
"forge.cadoles.com/wpetit/go-http-peering/memory"
peering "forge.cadoles.com/Cadoles/go-http-peering"
peeringCrypto "forge.cadoles.com/Cadoles/go-http-peering/crypto"
"forge.cadoles.com/Cadoles/go-http-peering/memory"
"github.com/go-chi/chi"
)

View File

@ -9,11 +9,11 @@ import (
"net/http"
"time"
"github.com/dgrijalva/jwt-go"
jwt "github.com/dgrijalva/jwt-go"
peering "forge.cadoles.com/wpetit/go-http-peering"
"forge.cadoles.com/wpetit/go-http-peering/crypto"
"forge.cadoles.com/wpetit/go-http-peering/server"
peering "forge.cadoles.com/Cadoles/go-http-peering"
"forge.cadoles.com/Cadoles/go-http-peering/crypto"
"forge.cadoles.com/Cadoles/go-http-peering/server"
)
var (
@ -153,8 +153,8 @@ func (c *Client) addClientToken(r *http.Request, body []byte) error {
token := jwt.NewWithClaims(jwt.SigningMethodRS256, peering.ClientTokenClaims{
StandardClaims: jwt.StandardClaims{
NotBefore: time.Now().Unix(),
ExpiresAt: time.Now().Add(time.Minute * 10).Unix(),
NotBefore: time.Now().Add(time.Minute * -1).Unix(),
ExpiresAt: time.Now().Add(time.Minute * 5).Unix(),
},
BodySum: bodySum,
})

View File

@ -5,9 +5,9 @@ import (
"crypto/rsa"
"testing"
peeringCrypto "forge.cadoles.com/wpetit/go-http-peering/crypto"
peeringCrypto "forge.cadoles.com/Cadoles/go-http-peering/crypto"
peering "forge.cadoles.com/wpetit/go-http-peering"
peering "forge.cadoles.com/Cadoles/go-http-peering"
)
func TestClientPeerID(t *testing.T) {

View File

@ -3,7 +3,7 @@ package main
import (
"fmt"
"forge.cadoles.com/wpetit/go-http-peering/crypto"
"forge.cadoles.com/Cadoles/go-http-peering/crypto"
)
func createKey() {

View File

@ -3,9 +3,9 @@ package main
import (
"fmt"
"forge.cadoles.com/wpetit/go-http-peering/crypto"
"forge.cadoles.com/Cadoles/go-http-peering/crypto"
peering "forge.cadoles.com/wpetit/go-http-peering"
peering "forge.cadoles.com/Cadoles/go-http-peering"
)
func createToken() {

View File

@ -3,7 +3,7 @@ package main
import (
"fmt"
"forge.cadoles.com/wpetit/go-http-peering/crypto"
"forge.cadoles.com/Cadoles/go-http-peering/crypto"
)
func getPublicKey() {

View File

@ -12,7 +12,7 @@ import (
"os"
"syscall"
"forge.cadoles.com/wpetit/go-http-peering/crypto"
"forge.cadoles.com/Cadoles/go-http-peering/crypto"
"golang.org/x/crypto/ssh/terminal"
)

View File

@ -5,7 +5,7 @@ import (
"crypto/rsa"
"time"
peering "forge.cadoles.com/wpetit/go-http-peering"
peering "forge.cadoles.com/Cadoles/go-http-peering"
jwt "github.com/dgrijalva/jwt-go"
)

4
go.mod
View File

@ -1,4 +1,4 @@
module forge.cadoles.com/wpetit/go-http-peering
module forge.cadoles.com/Cadoles/go-http-peering
require (
github.com/davecgh/go-spew v1.1.1
@ -8,3 +8,5 @@ require (
golang.org/x/crypto v0.0.0-20190219172222-a4c6cb3142f2
golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223 // indirect
)
go 1.13

View File

@ -4,7 +4,7 @@ import (
"sync"
"time"
peering "forge.cadoles.com/wpetit/go-http-peering"
peering "forge.cadoles.com/Cadoles/go-http-peering"
)
type Store struct {

View File

@ -7,8 +7,8 @@ import (
"net/http"
"time"
peering "forge.cadoles.com/wpetit/go-http-peering"
peeringCrypto "forge.cadoles.com/wpetit/go-http-peering/crypto"
peering "forge.cadoles.com/Cadoles/go-http-peering"
peeringCrypto "forge.cadoles.com/Cadoles/go-http-peering/crypto"
)
var (

View File

@ -10,9 +10,9 @@ import (
"io/ioutil"
"time"
peeringCrypto "forge.cadoles.com/wpetit/go-http-peering/crypto"
peeringCrypto "forge.cadoles.com/Cadoles/go-http-peering/crypto"
peering "forge.cadoles.com/wpetit/go-http-peering"
peering "forge.cadoles.com/Cadoles/go-http-peering"
jwt "github.com/dgrijalva/jwt-go"
"net/http"

View File

@ -5,13 +5,13 @@ import (
"testing"
"time"
"forge.cadoles.com/wpetit/go-http-peering/client"
peeringCrypto "forge.cadoles.com/wpetit/go-http-peering/crypto"
"forge.cadoles.com/wpetit/go-http-peering/memory"
"forge.cadoles.com/wpetit/go-http-peering/server"
"forge.cadoles.com/Cadoles/go-http-peering/client"
peeringCrypto "forge.cadoles.com/Cadoles/go-http-peering/crypto"
"forge.cadoles.com/Cadoles/go-http-peering/memory"
"forge.cadoles.com/Cadoles/go-http-peering/server"
peering "forge.cadoles.com/wpetit/go-http-peering"
"forge.cadoles.com/wpetit/go-http-peering/crypto"
peering "forge.cadoles.com/Cadoles/go-http-peering"
"forge.cadoles.com/Cadoles/go-http-peering/crypto"
)
func TestAdvertise(t *testing.T) {

View File

@ -3,11 +3,11 @@ package test
import (
"testing"
peering "forge.cadoles.com/wpetit/go-http-peering"
"forge.cadoles.com/wpetit/go-http-peering/client"
peeringCrypto "forge.cadoles.com/wpetit/go-http-peering/crypto"
"forge.cadoles.com/wpetit/go-http-peering/memory"
"forge.cadoles.com/wpetit/go-http-peering/server"
peering "forge.cadoles.com/Cadoles/go-http-peering"
"forge.cadoles.com/Cadoles/go-http-peering/client"
peeringCrypto "forge.cadoles.com/Cadoles/go-http-peering/crypto"
"forge.cadoles.com/Cadoles/go-http-peering/memory"
"forge.cadoles.com/Cadoles/go-http-peering/server"
)
func TestPing(t *testing.T) {

View File

@ -5,12 +5,12 @@ import (
"testing"
"time"
peering "forge.cadoles.com/wpetit/go-http-peering"
"forge.cadoles.com/wpetit/go-http-peering/client"
"forge.cadoles.com/wpetit/go-http-peering/crypto"
peeringCrypto "forge.cadoles.com/wpetit/go-http-peering/crypto"
"forge.cadoles.com/wpetit/go-http-peering/memory"
"forge.cadoles.com/wpetit/go-http-peering/server"
peering "forge.cadoles.com/Cadoles/go-http-peering"
"forge.cadoles.com/Cadoles/go-http-peering/client"
"forge.cadoles.com/Cadoles/go-http-peering/crypto"
peeringCrypto "forge.cadoles.com/Cadoles/go-http-peering/crypto"
"forge.cadoles.com/Cadoles/go-http-peering/memory"
"forge.cadoles.com/Cadoles/go-http-peering/server"
)
func TestUpdate(t *testing.T) {