diff --git a/init.go b/init.go
index 54745d9..d143dde 100644
--- a/init.go
+++ b/init.go
@@ -5,7 +5,6 @@
 	"encoding/json"
 	"fmt"
 	"github.com/30x/apid"
-	"time"
 )
 
 const (
@@ -38,16 +37,18 @@
 }
 
 /*
- * generates a random uuid (mix of timestamp & crypto random string)
+ * generates a random uuid
  */
 func generate_uuid() string {
-	unix32bits := uint32(time.Now().UTC().Unix())
-	buff := make([]byte, 12)
+	buff := make([]byte, 16)
 	numRead, err := rand.Read(buff)
 	if numRead != len(buff) || err != nil {
 		panic(err)
 	}
-	return fmt.Sprintf("%x-%x-%x-%x-%x-%x", unix32bits, buff[0:2], buff[2:4], buff[4:6], buff[6:8], buff[8:])
+	/* uuid v4 spec */
+	buff[6] = (buff[6] | 0x40) & 0x4F
+	buff[8] = (buff[8] | 0x80) & 0xBF
+	return fmt.Sprintf("%x-%x-%x-%x-%x", buff[0:4], buff[4:6], buff[6:8], buff[8:10], buff[10:])
 }
 
 func init() {
