Added Version 1 signature, Drone CI, bumped to 1.18-rc
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
This commit is contained in:
parent
cad8112629
commit
08d4c6a35b
12
.drone.yml
Normal file
12
.drone.yml
Normal file
|
@ -0,0 +1,12 @@
|
|||
---
|
||||
kind: pipeline
|
||||
type: docker
|
||||
name: default
|
||||
|
||||
steps:
|
||||
- name: backend
|
||||
image: golang:1.18-rc-bullseye
|
||||
commands:
|
||||
- go build -o fcmm .
|
||||
|
||||
...
|
|
@ -1,4 +1,4 @@
|
|||
FROM golang:1.17-bullseye
|
||||
FROM golang:1.18-rc-bullseye
|
||||
|
||||
COPY . /src
|
||||
|
||||
|
|
|
@ -189,11 +189,17 @@ func (s *ContentMessage) encodeMessage() []byte {
|
|||
n := binary.PutUvarint(buf, s.Version) //signature version
|
||||
_, _ = message.Write(buf[:n])
|
||||
|
||||
if s.Version == 0 {
|
||||
if s.Version == 0 || s.Version == 1 {
|
||||
_, _ = message.Write(s.PublicKey)
|
||||
n = binary.PutVarint(buf, s.IssueTime) //time
|
||||
_, _ = message.Write(buf[:n])
|
||||
|
||||
if s.Version == 1 {
|
||||
_, _ = message.Write(s.Identifier.Hash())
|
||||
} else {
|
||||
_, _ = s.Identifier.WriteBytes(message)
|
||||
}
|
||||
|
||||
_, _ = s.Identifier.WriteBytes(message)
|
||||
|
||||
return message.Bytes()
|
||||
|
@ -229,7 +235,7 @@ func DecodeContentMessage(signatureBytes []byte) *ContentMessage {
|
|||
return nil
|
||||
}
|
||||
|
||||
if message.Version == 0 {
|
||||
if message.Version == 0 || message.Version == 1 {
|
||||
message.PublicKey = make([]byte, ed25519.PublicKeySize)
|
||||
_, err := buffer.Read(message.PublicKey)
|
||||
if err != nil {
|
||||
|
@ -244,11 +250,22 @@ func DecodeContentMessage(signatureBytes []byte) *ContentMessage {
|
|||
return nil
|
||||
}
|
||||
|
||||
_, message.Identifier, err = cid.CidFromReader(buffer)
|
||||
if err != nil {
|
||||
log.Print(message.String())
|
||||
log.Print(err)
|
||||
return nil
|
||||
if message.Version == 1 {
|
||||
read, mh, err := multihash.MHFromBytes(buffer.Bytes())
|
||||
if err != nil {
|
||||
log.Print(message.String())
|
||||
log.Print(err)
|
||||
return nil
|
||||
}
|
||||
buffer.Next(read)
|
||||
message.Identifier = cid.NewCidV1(cid.Raw, mh)
|
||||
} else {
|
||||
_, message.Identifier, err = cid.CidFromReader(buffer)
|
||||
if err != nil {
|
||||
log.Print(message.String())
|
||||
log.Print(err)
|
||||
return nil
|
||||
}
|
||||
}
|
||||
|
||||
message.Signature = make([]byte, ed25519.SignatureSize)
|
||||
|
@ -420,7 +437,7 @@ func handle(w http.ResponseWriter, r *http.Request) {
|
|||
|
||||
//TODO: signing cache
|
||||
message := &ContentMessage{
|
||||
Version: 0,
|
||||
Version: 1,
|
||||
IssueTime: time.Now().UTC().Unix(),
|
||||
Identifier: identifier,
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue