From ef22318d5ccb4200f613a14ec08bff3d6d516902 Mon Sep 17 00:00:00 2001 From: anik-ghosh-au7 Date: Sun, 24 Jul 2022 10:40:37 +0530 Subject: [PATCH] feat: add generate_otp util --- server/utils/generate_otp.go | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 server/utils/generate_otp.go diff --git a/server/utils/generate_otp.go b/server/utils/generate_otp.go new file mode 100644 index 0000000..eb26e97 --- /dev/null +++ b/server/utils/generate_otp.go @@ -0,0 +1,24 @@ +package utils + +import ( + "math/rand" + "time" +) + +func GenerateOTP() string { + code := "" + codeLength := 6 + charSet := "ABCDEFGHJKLMNPQRSTUVWXYZ123456789" + charSetLength := int32(len(charSet)) + for i := 0; i < codeLength; i++ { + index := randomNumber(0, charSetLength) + code += string(charSet[index]) + } + + return code +} + +func randomNumber(min, max int32) int32 { + rand.Seed(time.Now().UnixNano()) + return min + int32(rand.Intn(int(max-min))) +}