key.go 472 B

123456789101112131415161718192021222324252627282930
  1. package mfw
  2. import (
  3. "crypto/rand"
  4. "encoding/hex"
  5. // "encoding/hex"
  6. //"fmt"
  7. mr "math/rand"
  8. )
  9. const (
  10. KEY = "()*+-_=~`!@#$%^&*{}[]|',.<>?abcdefghhijklmnopqrstuvwxyz0123456789ABCDEFJHIJKLMNOPQRSTUVWXYZ"
  11. )
  12. //
  13. func UUID(length int) string {
  14. tmp := make([]byte, length>>1)
  15. rand.Read(tmp)
  16. return hex.EncodeToString(tmp)
  17. }
  18. //
  19. func OldUUID(length int) string {
  20. ret := ""
  21. for i := 0; i < length; i++ {
  22. pos := mr.Intn(90)
  23. ret += KEY[pos : pos+1]
  24. }
  25. return ret
  26. }