|  | package encryption
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  | import (
 | 
						
						
						
							|  | 	"crypto/rand"
 | 
						
						
						
							|  | 	"fmt"
 | 
						
						
						
							|  | )
 | 
						
						
						
							|  | 
 | 
						
						
						
							|  | // Nonce generates a random 16 byte string to be used as a nonce
 | 
						
						
						
							|  | func Nonce() (nonce string, err error) {
 | 
						
						
						
							|  | 	b := make([]byte, 16)
 | 
						
						
						
							|  | 	_, err = rand.Read(b)
 | 
						
						
						
							|  | 	if err != nil {
 | 
						
						
						
							|  | 		return
 | 
						
						
						
							|  | 	}
 | 
						
						
						
							|  | 	nonce = fmt.Sprintf("%x", b)
 | 
						
						
						
							|  | 	return
 | 
						
						
						
							|  | }
 |