--- /dev/null
+// Package common contains various helper functions.
+package common
+
+import (
+ "encoding/binary"
+ "encoding/hex"
+)
+
+func FromHex(s string) []byte {
+ if len(s) > 1 {
+ if s[0:2] == "0x" {
+ s = s[2:]
+ }
+ if len(s)%2 == 1 {
+ s = "0" + s
+ }
+ return Hex2Bytes(s)
+ }
+ return nil
+}
+
+func Bytes2Hex(d []byte) string {
+ return hex.EncodeToString(d)
+}
+
+func Hex2Bytes(str string) []byte {
+ h, _ := hex.DecodeString(str)
+ return h
+}
+
+func Unit64ToBytes(n uint64) []byte {
+ buf := make([]byte, 8)
+ binary.LittleEndian.PutUint64(buf, n)
+ return buf
+}
+
+func BytesToUnit64(b []byte) uint64 {
+ return binary.LittleEndian.Uint64(b)
+}