code: func GenerateSerialNumber() (*big.Int, error) {
  	l := new(big.Int).Lsh(big.NewInt(1), 128)
  	s, err := rand.Int(rand.Reader, l)
  	if err != nil {
  		return nil, err
  	}
  	return s, nil
  }
docs: // GenerateSerialNumber returns random bigint generated with crypto/rand