gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[gnunet-go] 01/02: Removed obsolete files.


From: gnunet
Subject: [gnunet-go] 01/02: Removed obsolete files.
Date: Fri, 20 Dec 2019 21:06:47 +0100

This is an automated email from the git hooks/post-receive script.

bernd-fix pushed a commit to branch master
in repository gnunet-go.

commit 45e698414fa2010fd6aa083e942f6b302897e23d
Author: Bernd Fix <address@hidden>
AuthorDate: Fri Dec 20 18:18:03 2019 +0100

    Removed obsolete files.
---
 README.md                             |   2 -
 src/gnunet/enums/block.go             |  22 ---
 src/gnunet/service/gns/crypto.go      |  34 -----
 src/gnunet/service/gns/crypto_test.go | 150 ------------------
 src/gnunet/service/gns/gns.go         | 279 ----------------------------------
 src/gnunet/service/gns/record.go      | 124 ---------------
 src/gnunet/util/msg_queue.go          |   3 -
 7 files changed, 614 deletions(-)

diff --git a/README.md b/README.md
index 37b1cb8..e721a94 100644
--- a/README.md
+++ b/README.md
@@ -80,8 +80,6 @@ and GNS).
 
 ## Documentation
 
-* papers: 3rd party papers on GNUnet and crypto (mostly academic)
 * raw: raw ASCII protocol definition
-* reports: findings in the GNUnet source code
 * specification: texinfo protocol definition
 
diff --git a/src/gnunet/enums/block.go b/src/gnunet/enums/block.go
deleted file mode 100644
index 2d179a3..0000000
--- a/src/gnunet/enums/block.go
+++ /dev/null
@@ -1,22 +0,0 @@
-package enums
-
-var (
-       BLOCK_TYPE_ANY            = 0  // Any type of block, used as a wildcard 
when searching.
-       BLOCK_TYPE_FS_DBLOCK      = 1  // Data block (leaf) in the CHK tree.
-       BLOCK_TYPE_FS_IBLOCK      = 2  // Inner block in the CHK tree.
-       BLOCK_TYPE_FS_KBLOCK      = 3  // Legacy type, no longer in use.
-       BLOCK_TYPE_FS_SBLOCK      = 4  // Legacy type, no longer in use.
-       BLOCK_TYPE_FS_NBLOCK      = 5  // Legacy type, no longer in use.
-       BLOCK_TYPE_FS_ONDEMAND    = 6  // Type of a block representing a block 
to be encoded on demand from disk.
-       BLOCK_TYPE_DHT_HELLO      = 7  // Type of a block that contains a HELLO 
for a peer
-       BLOCK_TYPE_TEST           = 8  // Block for testing.
-       BLOCK_TYPE_FS_UBLOCK      = 9  // Type of a block representing any type 
of search result (universal).
-       BLOCK_TYPE_DNS            = 10 // Block for storing DNS exit service 
advertisements.
-       BLOCK_TYPE_GNS_NAMERECORD = 11 // Block for storing record data
-       BLOCK_TYPE_REVOCATION     = 12 // Block type for a revocation message 
by which a key is revoked.
-
-       BLOCK_TYPE_REGEX             = 22 // Block to store a cadet regex state
-       BLOCK_TYPE_REGEX_ACCEPT      = 23 // Block to store a cadet regex 
accepting state
-       BLOCK_TYPE_SET_TEST          = 24 // Block for testing set/consensus.
-       BLOCK_TYPE_CONSENSUS_ELEMENT = 25 // Block type for consensus elements.
-)
diff --git a/src/gnunet/service/gns/crypto.go b/src/gnunet/service/gns/crypto.go
deleted file mode 100644
index 38f25fb..0000000
--- a/src/gnunet/service/gns/crypto.go
+++ /dev/null
@@ -1,34 +0,0 @@
-package gns
-
-import (
-       "crypto/sha256"
-       "crypto/sha512"
-
-       "github.com/bfix/gospel/crypto/ed25519"
-       "gnunet/crypto"
-       "golang.org/x/crypto/hkdf"
-)
-
-// DeriveBlockKey returns a symmetric key to decipher a GNS block
-func DeriveBlockKey(label string, pub *ed25519.PublicKey) (iv 
*crypto.SymmetricIV, skey *crypto.SymmetricKey) {
-       // generate symmetric key
-       prk := hkdf.Extract(sha512.New, []byte(label), pub.Bytes())
-       rdr := hkdf.Expand(sha256.New, prk, []byte("gns-aes-ctx-key"))
-       skey = crypto.NewSymmetricKey()
-       rdr.Read(skey.AESKey)
-       rdr.Read(skey.TwofishKey)
-       // generate initialization vector
-       rdr = hkdf.Expand(sha256.New, prk, []byte("gns-aes-ctx-iv"))
-       iv = crypto.NewSymmetricIV()
-       rdr.Read(iv.AESIv)
-       rdr.Read(iv.TwofishIv)
-       return
-}
-
-// DecryptBlock for a given zone and label.
-func DecryptBlock(data []byte, zoneKey *ed25519.PublicKey, label string) (out 
[]byte, err error) {
-       // derive key material for decryption
-       iv, skey := DeriveBlockKey(label, zoneKey)
-       // perform decryption
-       return crypto.SymmetricDecrypt(data, skey, iv)
-}
diff --git a/src/gnunet/service/gns/crypto_test.go 
b/src/gnunet/service/gns/crypto_test.go
deleted file mode 100644
index 2abfb99..0000000
--- a/src/gnunet/service/gns/crypto_test.go
+++ /dev/null
@@ -1,150 +0,0 @@
-package gns
-
-import (
-       "bytes"
-       "encoding/hex"
-       "testing"
-
-       "github.com/bfix/gospel/crypto/ed25519"
-)
-
-var (
-       PUB = []byte{
-               0x93, 0x34, 0x71, 0xF6, 0x99, 0x19, 0x0C, 0x62,
-               0x85, 0xC7, 0x9B, 0x83, 0x9D, 0xCA, 0x83, 0x91,
-               0x38, 0xFA, 0x87, 0xFB, 0xB8, 0xD4, 0xF6, 0xF0,
-               0xF0, 0x4B, 0x7F, 0x0A, 0x48, 0xBF, 0x95, 0xF7,
-       }
-       LABEL = "home"
-)
-
-func TestDeriveBlockKey(t *testing.T) {
-       var (
-               SKEY = []byte{
-                       0x1D, 0x86, 0x8E, 0xF7, 0x30, 0x96, 0x3B, 0x39,
-                       0x66, 0xE6, 0x49, 0xD8, 0xF1, 0x13, 0x18, 0x39,
-                       0x8A, 0x7A, 0xB0, 0xF3, 0xDC, 0xF6, 0xE7, 0x2A,
-                       0xF6, 0x65, 0xDE, 0x86, 0x47, 0x7B, 0x20, 0x1B,
-
-                       0x21, 0xA6, 0xFA, 0x55, 0x7C, 0x29, 0xF5, 0x94,
-                       0x8E, 0x9A, 0x80, 0xB0, 0xB6, 0xD5, 0x4D, 0x38,
-                       0x0E, 0x6A, 0x0F, 0x42, 0x4B, 0x27, 0xBB, 0x6A,
-                       0x1E, 0xD1, 0x33, 0x08, 0xD6, 0x2E, 0x21, 0x8C,
-               }
-               IV = []byte{
-                       0xAC, 0x18, 0x03, 0xB7, 0x8B, 0x1E, 0x09, 0xA9,
-                       0xD0, 0x20, 0x47, 0x2B, 0x1B, 0x23, 0xE8, 0x24,
-
-                       0xC9, 0x23, 0x9E, 0x61, 0x3A, 0x8D, 0x95, 0xA9,
-                       0x3F, 0x6C, 0x1C, 0xC8, 0xCB, 0xD1, 0xBD, 0x6B,
-               }
-       )
-
-       iv, skey := deriveBlockKey(LABEL, ed25519.NewPublicKeyFromBytes(PUB))
-
-       if bytes.Compare(IV[:16], iv.AESIv) != 0 {
-               t.Logf("AES_IV(computed) = %s\n", hex.EncodeToString(iv.AESIv))
-               t.Logf("AES_IV(expected) = %s\n", hex.EncodeToString(IV[:16]))
-               t.Fatal("AES IV mismatch")
-       }
-       if bytes.Compare(IV[16:], iv.TwofishIv) != 0 {
-               t.Logf("Twofish_IV(computed) = %s\n", 
hex.EncodeToString(iv.TwofishIv))
-               t.Logf("Twofish_IV(expected) = %s\n", 
hex.EncodeToString(IV[16:]))
-               t.Fatal("Twofish IV mismatch")
-       }
-
-       if bytes.Compare(SKEY[:32], skey.AESKey) != 0 {
-               t.Logf("AES_KEY(computed) = %s\n", 
hex.EncodeToString(skey.AESKey))
-               t.Logf("AES_KEY(expected) = %s\n", 
hex.EncodeToString(SKEY[:32]))
-               t.Fatal("AES KEY mismatch")
-       }
-       if bytes.Compare(SKEY[32:], skey.TwofishKey) != 0 {
-               t.Logf("Twofish_KEY(computed) = %s\n", 
hex.EncodeToString(skey.TwofishKey))
-               t.Logf("Twofish_KEY(expected) = %s\n", 
hex.EncodeToString(SKEY[32:]))
-               t.Fatal("Twofish KEY mismatch")
-       }
-}
-
-func TestDecryptBlock(t *testing.T) {
-       var (
-               DATA = []byte{
-                       0xAC, 0xA5, 0x3C, 0x55, 0x63, 0x21, 0x31, 0x1F,
-                       0x11, 0x6E, 0xEF, 0x48, 0xED, 0x53, 0x46, 0x31,
-                       0x7C, 0x50, 0xFB, 0x6B, 0xA6, 0xC8, 0x6C, 0x46,
-                       0x1E, 0xE3, 0xCA, 0x45, 0xCD, 0x5B, 0xD6, 0x86,
-                       0x42, 0x87, 0xEF, 0x18, 0xCE, 0x8E, 0x83, 0x21,
-                       0x04, 0xCB, 0xCF, 0x40, 0x7E, 0x0F, 0x51, 0x54,
-                       0xE2, 0x3C, 0xDE, 0xE9, 0x22, 0x00, 0xFF, 0x40,
-                       0xBB, 0x53, 0xE3, 0x69, 0x99, 0x92, 0x47, 0x97,
-                       0xF0, 0x4E, 0x3B, 0x70,
-               }
-               OUT = []byte{
-                       0x00, 0x00, 0x00, 0x01, 0x00, 0x05, 0xAD, 0x0E,
-                       0x60, 0x28, 0xFE, 0x80, 0x00, 0x00, 0x00, 0x10,
-                       0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00,
-                       0x0A, 0x68, 0x6F, 0x69, 0x2D, 0x70, 0x6F, 0x6C,
-                       0x6C, 0x6F, 0x69, 0x03, 0x6F, 0x72, 0x67, 0x00,
-                       0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-                       0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-                       0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-                       0x00, 0x00, 0x00, 0x00,
-               }
-       )
-
-       out, err := DecryptBlock(DATA, ed25519.NewPublicKeyFromBytes(PUB), 
LABEL)
-       if err != nil {
-               t.Fatal(err)
-       }
-       if bytes.Compare(out, OUT) != 0 {
-               t.Logf("Decrypt(computed) = %s\n", hex.EncodeToString(out))
-               t.Logf("Decrypt(expected) = %s\n", hex.EncodeToString(OUT))
-               t.Fatal("Decryptions failed")
-       }
-}
-
-func TestVerifyBlock(t *testing.T) {
-       var (
-               SIGNED = []byte{
-                       0x00, 0x00, 0x00, 0x54, 0x00, 0x00, 0x00, 0x0f,
-                       0x00, 0x05, 0xad, 0x0e, 0x60, 0x28, 0xfe, 0x80,
-                       0xac, 0xa5, 0x3c, 0x55, 0x63, 0x21, 0x31, 0x1f,
-                       0x11, 0x6e, 0xef, 0x48, 0xed, 0x53, 0x46, 0x31,
-                       0x7c, 0x50, 0xfb, 0x6b, 0xa6, 0xc8, 0x6c, 0x46,
-                       0x1e, 0xe3, 0xca, 0x45, 0xcd, 0x5b, 0xd6, 0x86,
-                       0x42, 0x87, 0xef, 0x18, 0xce, 0x8e, 0x83, 0x21,
-                       0x04, 0xcb, 0xcf, 0x40, 0x7e, 0x0f, 0x51, 0x54,
-                       0xe2, 0x3c, 0xde, 0xe9, 0x22, 0x00, 0xff, 0x40,
-                       0xbb, 0x53, 0xe3, 0x69, 0x99, 0x92, 0x47, 0x97,
-                       0xf0, 0x4e, 0x3b, 0x70,
-               }
-               SIG = []byte{
-                       0x09, 0xc9, 0x6a, 0xda, 0x69, 0xce, 0x7c, 0x91,
-                       0xbd, 0xa4, 0x59, 0xdc, 0xc9, 0x76, 0xf4, 0x6c,
-                       0x62, 0xb7, 0x79, 0x3f, 0x94, 0xb2, 0xf6, 0xf0,
-                       0x90, 0x17, 0x4e, 0x2f, 0x68, 0x49, 0xf8, 0xcc,
-
-                       0x0b, 0x77, 0x32, 0x32, 0x28, 0x77, 0x2d, 0x2a,
-                       0x31, 0x31, 0xc1, 0x2c, 0x44, 0x18, 0xf2, 0x5f,
-                       0x1a, 0xe9, 0x8b, 0x2e, 0x65, 0xca, 0x1d, 0xe8,
-                       0x22, 0x82, 0x6a, 0x06, 0xe0, 0x6a, 0x5a, 0xe5,
-               }
-               PUB = []byte{
-                       0x26, 0x84, 0x1b, 0x24, 0x35, 0xa4, 0x63, 0xe9,
-                       0xf0, 0x48, 0xae, 0x3e, 0xf7, 0xe8, 0x1b, 0xca,
-                       0x55, 0x9f, 0x4c, 0x1e, 0x16, 0x18, 0xa6, 0xd3,
-                       0x5b, 0x91, 0x0d, 0x54, 0x31, 0x6e, 0xbf, 0x97,
-               }
-       )
-       sig, err := ed25519.NewEcSignatureFromBytes(SIG)
-       if err != nil {
-               t.Fatal(err)
-       }
-       dkey := ed25519.NewPublicKeyFromBytes(PUB)
-       ok, err := dkey.EcVerify(SIGNED, sig)
-       if err != nil {
-               t.Fatal(err)
-       }
-       if !ok {
-               t.Fatal("EcDSA verify failed")
-       }
-}
diff --git a/src/gnunet/service/gns/gns.go b/src/gnunet/service/gns/gns.go
deleted file mode 100644
index b95a9e1..0000000
--- a/src/gnunet/service/gns/gns.go
+++ /dev/null
@@ -1,279 +0,0 @@
-package gns
-
-import (
-       "encoding/hex"
-       "io"
-
-       "github.com/bfix/gospel/crypto/ed25519"
-       "github.com/bfix/gospel/data"
-       "github.com/bfix/gospel/logger"
-       "gnunet/config"
-       "gnunet/crypto"
-       "gnunet/enums"
-       "gnunet/message"
-       "gnunet/service"
-       "gnunet/transport"
-       "gnunet/util"
-)
-
-//----------------------------------------------------------------------
-// "GNUnet Name System" service implementation
-//----------------------------------------------------------------------
-
-// GNSService
-type GNSService struct {
-}
-
-// NewGNSService
-func NewGNSService() service.Service {
-       return &GNSService{}
-}
-
-// Start the GNS service
-func (s *GNSService) Start(spec string) error {
-       return nil
-}
-
-// Stop the GNS service
-func (s *GNSService) Stop() error {
-       return nil
-}
-
-// Serve a client channel.
-func (s *GNSService) ServeClient(mc *transport.MsgChannel) {
-       for {
-               // receive next message from client
-               msg, err := mc.Receive()
-               if err != nil {
-                       if err == io.EOF {
-                               logger.Println(logger.INFO, "[gns] Client 
channel closed.")
-                       } else {
-                               logger.Printf(logger.ERROR, "[gns] 
Message-receive failed: %s\n", err.Error())
-                       }
-                       break
-               }
-               logger.Printf(logger.INFO, "[gns] Received msg: %v\n", msg)
-
-               // perform lookup
-               var resp message.Message
-               switch m := msg.(type) {
-               case *message.GNSLookupMsg:
-                       
//----------------------------------------------------------
-                       // GNS_LOOKUP
-                       
//----------------------------------------------------------
-                       logger.Println(logger.INFO, "[gns] Lookup request 
received.")
-                       respX := message.NewGNSLookupResultMsg(m.Id)
-                       resp = respX
-
-                       // perform lookup on block (either from Namecache or 
DHT)
-                       // TODO: run code in a go routine concurrently (would 
need
-                       //       access to the message channel to send 
responses)
-                       block, err := s.Lookup(m)
-                       if err != nil {
-                               logger.Printf(logger.ERROR, "[gns] Failed to 
lookup block: %s\n", err.Error())
-                               break
-                       }
-                       // handle block
-                       if block != nil {
-                               logger.Printf(logger.DBG, "[gns] Received block 
data: %s\n", hex.EncodeToString(block.Block.data))
-
-                               // get records from block
-                               records, err := block.Records()
-                               if err != nil {
-                                       logger.Printf(logger.ERROR, "[gns] 
Failed to extract records: %s\n", err.Error())
-                                       break
-                               }
-                               if len(records) == 0 {
-                                       logger.Println(logger.WARN, "[gns] No 
records in block")
-                                       break
-                               }
-                               // process records
-                               for i, rec := range records {
-                                       logger.Printf(logger.DBG, "[gns] Record 
#%d: %v\n", i, rec)
-
-                                       // is this the record type we are 
looking for?
-                                       if rec.Type == m.Type || int(m.Type) == 
enums.GNS_TYPE_ANY {
-                                               // add it to the response 
message
-                                               respX.AddRecord(rec)
-                                       }
-                               }
-                       }
-
-               default:
-                       
//----------------------------------------------------------
-                       // UNKNOWN message type received
-                       
//----------------------------------------------------------
-                       logger.Printf(logger.ERROR, "[gns] Unhandled message of 
type (%d)\n", msg.Header().MsgType)
-                       continue
-               }
-
-               // send response
-               if err := mc.Send(resp); err != nil {
-                       logger.Printf(logger.ERROR, "[gns] Failed to send 
response: %s\n", err.Error())
-               }
-
-       }
-       // close client connection
-       mc.Close()
-}
-
-// Lookup handles GNU_LOOKUP messages
-func (s *GNSService) Lookup(m *message.GNSLookupMsg) (block *GNSBlock, err 
error) {
-       // create DHT/NAMECACHE query
-       pkey := ed25519.NewPublicKeyFromBytes(m.Zone)
-       label := m.GetName()
-       query := QueryFromPublickeyDerive(pkey, label)
-
-       // try namecache lookup first
-       if block, err = s.LookupNamecache(query, pkey, label); err != nil {
-               logger.Printf(logger.ERROR, "[gns] Lookup(Namecache): %s\n", 
err.Error())
-               block = nil
-               return
-       }
-       if block == nil {
-               logger.Println(logger.DBG, "[gns] Lookup(Namecache): no block 
found")
-               if int(m.Options) == enums.GNS_LO_DEFAULT {
-                       // get the block from the DHT
-                       if block, err = s.LookupDHT(query, pkey, label); err != 
nil || block == nil {
-                               if err != nil {
-                                       logger.Printf(logger.ERROR, "[gns] 
Lookup(DHT): %s\n", err.Error())
-                                       block = nil
-                               } else {
-                                       logger.Println(logger.DBG, "[gns] 
Lookup(DHT): no block found")
-                               }
-                               // lookup fails completely -- no result
-                       }
-               }
-       }
-       return
-}
-
-// LookupNamecache
-func (s *GNSService) LookupNamecache(query *crypto.HashCode, zoneKey 
*ed25519.PublicKey, label string) (block *GNSBlock, err error) {
-       logger.Printf(logger.DBG, "[gns] LookupNamecache(%s)...\n", 
hex.EncodeToString(query.Bits))
-
-       // assemble Namecache request
-       req := message.NewNamecacheLookupMsg(query)
-       req.Id = uint32(util.NextID())
-       block = nil
-
-       // get response from Namecache service
-       var resp message.Message
-       if resp, err = service.ServiceRequestResponse("gns", "Namecache", 
config.Cfg.Namecache.Endpoint, req); err != nil {
-               return
-       }
-
-       // handle message depending on its type
-       logger.Println(logger.DBG, "[gns] Handling response from Namecache 
service")
-       switch m := resp.(type) {
-       case *message.NamecacheLookupResultMsg:
-               // check for matching IDs
-               if m.Id != req.Id {
-                       logger.Println(logger.ERROR, "[gns] Got response for 
unknown ID")
-                       break
-               }
-               // check if block was found
-               if len(m.EncData) == 0 {
-                       logger.Println(logger.DBG, "[gns] block not found in 
namecache")
-                       break
-               }
-               // check if record has expired
-               if m.Expire.Expired() {
-                       logger.Printf(logger.ERROR, "[gns] block expired at 
%s\n", m.Expire)
-                       break
-               }
-
-               // assemble GNSBlock from message
-               block = new(GNSBlock)
-               block.Signature = m.Signature
-               block.DerivedKey = m.DerivedKey
-               sb := new(SignedBlockData)
-               sb.Purpose = new(crypto.SignaturePurpose)
-               sb.Purpose.Purpose = enums.SIG_GNS_RECORD_SIGN
-               sb.Purpose.Size = uint32(16 + len(m.EncData))
-               sb.Expire = m.Expire
-               sb.EncData = m.EncData
-               block.Block = sb
-
-               // verify and decrypt block
-               if err = block.Verify(zoneKey, label); err != nil {
-                       break
-               }
-               if err = block.Decrypt(zoneKey, label); err != nil {
-                       break
-               }
-       }
-       return
-}
-
-// StoreNamecache
-func (s *GNSService) StoreNamecache(query *crypto.HashCode, block *GNSBlock) 
error {
-       logger.Println(logger.WARN, "[gns] StoreNamecache() not implemented 
yet!")
-       return nil
-}
-
-// LookupDHT
-func (s *GNSService) LookupDHT(query *crypto.HashCode, zoneKey 
*ed25519.PublicKey, label string) (block *GNSBlock, err error) {
-       logger.Printf(logger.DBG, "[gns] LookupDHT(%s)...\n", 
hex.EncodeToString(query.Bits))
-
-       // assemble DHT request
-       req := message.NewDHTClientGetMsg(query)
-       req.Id = uint64(util.NextID())
-       req.ReplLevel = uint32(enums.DHT_GNS_REPLICATION_LEVEL)
-       req.Type = uint32(enums.BLOCK_TYPE_GNS_NAMERECORD)
-       req.Options = uint32(enums.DHT_RO_DEMULTIPLEX_EVERYWHERE)
-       block = nil
-
-       // get response from DHT service
-       var resp message.Message
-       if resp, err = service.ServiceRequestResponse("gns", "DHT", 
config.Cfg.DHT.Endpoint, req); err != nil {
-               return
-       }
-
-       // handle message depending on its type
-       logger.Println(logger.DBG, "[gns] Handling response from DHT service")
-       switch m := resp.(type) {
-       case *message.DHTClientResultMsg:
-               // check for matching IDs
-               if m.Id != req.Id {
-                       logger.Println(logger.ERROR, "[gns] Got response for 
unknown ID")
-                       break
-               }
-               // check if block was found
-               if len(m.Data) == 0 {
-                       logger.Println(logger.DBG, "[gns] block not found in 
DHT")
-                       break
-               }
-               // check if record has expired
-               if m.Expire.Expired() {
-                       logger.Printf(logger.ERROR, "[gns] block expired at 
%s\n", m.Expire)
-                       break
-               }
-               // check if result is of requested type
-               if int(m.Type) != enums.BLOCK_TYPE_GNS_NAMERECORD {
-                       logger.Println(logger.ERROR, "[gns] DHT response has 
wrong type")
-                       break
-               }
-
-               // get GNSBlock from message
-               block = NewGNSBlock()
-               if err = data.Unmarshal(block, m.Data); err != nil {
-                       logger.Printf(logger.ERROR, "[gns] can't read GNS 
block: %s\n", err.Error())
-                       break
-               }
-               // verify and decrypt block
-               if err = block.Verify(zoneKey, label); err != nil {
-                       break
-               }
-               if err = block.Decrypt(zoneKey, label); err != nil {
-                       break
-               }
-
-               // we got a result from DHT that was not in the namecache,
-               // so store it there now.
-               if err = s.StoreNamecache(query, block); err != nil {
-                       logger.Printf(logger.ERROR, "[gns] can't store block in 
Namecache: %s\n", err.Error())
-               }
-       }
-       return
-}
diff --git a/src/gnunet/service/gns/record.go b/src/gnunet/service/gns/record.go
deleted file mode 100644
index 68ce4a6..0000000
--- a/src/gnunet/service/gns/record.go
+++ /dev/null
@@ -1,124 +0,0 @@
-package gns
-
-import (
-       "fmt"
-
-       "github.com/bfix/gospel/crypto/ed25519"
-       "github.com/bfix/gospel/data"
-       "gnunet/crypto"
-       "gnunet/message"
-       "gnunet/util"
-)
-
-var (
-       ErrBlockNotDecrypted = fmt.Errorf("GNS block not decrypted")
-)
-
-type GNSRecordSet struct {
-       Count   uint32                       `order:"big"`  // number of 
resource records
-       Records []*message.GNSResourceRecord `size:"Count"` // list of resource 
records
-       Padding []byte                       `size:"*"`     // padding
-}
-
-func NewGNSRecordSet() *GNSRecordSet {
-       return &GNSRecordSet{
-               Count:   0,
-               Records: make([]*message.GNSResourceRecord, 0),
-               Padding: make([]byte, 0),
-       }
-}
-
-func (rs *GNSRecordSet) AddRecord(rec *message.GNSResourceRecord) {
-       rs.Count++
-       rs.Records = append(rs.Records, rec)
-}
-
-type SignedBlockData struct {
-       Purpose *crypto.SignaturePurpose // Size and purpose of signature (8 
bytes)
-       Expire  util.AbsoluteTime        // Expiration time of the block.
-       EncData []byte                   `size:"*"` // encrypted GNSRecordSet
-
-       // transient data (not serialized)
-       data []byte // unencrypted GNSRecord set
-}
-
-type GNSBlock struct {
-       Signature  []byte `size:"64"` // Signature of the block.
-       DerivedKey []byte `size:"32"` // Derived key used for signing
-       Block      *SignedBlockData
-
-       // transient data (not serialized)
-       checked   bool // block integrity checked
-       verified  bool // block signature verified (internal)
-       decrypted bool // block data decrypted (internal)
-}
-
-func (b *GNSBlock) String() string {
-       return fmt.Sprintf("GNSBlock{Verified=%v,Decrypted=%v,data=[%d]}",
-               b.verified, b.decrypted, len(b.Block.EncData))
-}
-
-func (b *GNSBlock) Records() ([]*message.GNSResourceRecord, error) {
-       // check if block is decrypted
-       if !b.decrypted {
-               return nil, ErrBlockNotDecrypted
-       }
-       // parse block data into record set
-       rs := NewGNSRecordSet()
-       if err := data.Unmarshal(rs, b.Block.data); err != nil {
-               return nil, err
-       }
-       return rs.Records, nil
-}
-
-func (b *GNSBlock) Verify(zoneKey *ed25519.PublicKey, label string) (err 
error) {
-       // Integrity check performed
-       b.checked = true
-
-       // verify derived key
-       dkey := ed25519.NewPublicKeyFromBytes(b.DerivedKey)
-       dkey2 := crypto.DerivePublicKey(zoneKey, label, "gns")
-       if !dkey.Q.Equals(dkey2.Q) {
-               return fmt.Errorf("Invalid signature key for GNS Block")
-       }
-       // verify signature
-       var (
-               sig *ed25519.EcSignature
-               buf []byte
-               ok  bool
-       )
-       if sig, err = ed25519.NewEcSignatureFromBytes(b.Signature); err != nil {
-               return
-       }
-       if buf, err = data.Marshal(b.Block); err != nil {
-               return
-       }
-       if ok, err = dkey.EcVerify(buf, sig); err == nil && !ok {
-               err = fmt.Errorf("Signature verification failed for GNS block")
-       }
-       b.verified = true
-       return
-}
-
-func (b *GNSBlock) Decrypt(zoneKey *ed25519.PublicKey, label string) (err 
error) {
-       // decrypt payload
-       b.Block.data, err = DecryptBlock(b.Block.EncData, zoneKey, label)
-       b.decrypted = true
-       return
-}
-
-func NewGNSBlock() *GNSBlock {
-       return &GNSBlock{
-               Signature:  make([]byte, 64),
-               DerivedKey: make([]byte, 32),
-               Block: &SignedBlockData{
-                       Purpose: new(crypto.SignaturePurpose),
-                       Expire:  *new(util.AbsoluteTime),
-                       EncData: nil,
-                       data:    nil,
-               },
-               checked:   false,
-               verified:  false,
-               decrypted: false,
-       }
-}
diff --git a/src/gnunet/util/msg_queue.go b/src/gnunet/util/msg_queue.go
deleted file mode 100644
index a4fb2eb..0000000
--- a/src/gnunet/util/msg_queue.go
+++ /dev/null
@@ -1,3 +0,0 @@
-package util
-
-import ()

-- 
To stop receiving notification emails like this one, please contact
address@hidden.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]