git.sophuwu.com > goauth   
              53
            
             package goauth

// SecurityLevelAccessible - Lower security level but easier to use
//
//	This will give 60 seconds for the user to write 6 digits. Its aim is to help
//	people with difficulties using a computer by allowing them more time to type.
//	The actual security implications are minimal.
const SecurityLevelAccessible = 0

// SecurityLevelDefault - Default security level used everywhere
//
//	This will give 30 seconds for the user to write 6 digits. This is the same as
//	the default for Google Authenticator.
const SecurityLevelDefault = 1

// SecurityLevelCozyHigh - Higher security but more time for the user
//
//	This will give 60 seconds for the user to write 10 digits. This offers a
//	slight security improvement. While remaining easier to use than other levels.
const SecurityLevelCozyHigh = 2

// SecurityLevelHigh - Same as default but with double the digits
//
//	With this you will get 30 seconds to write 12 digits. This is significantly
//	harder to brute force than the default level. This is the highest level
//	recommended for general use.
const SecurityLevelHigh = 3

// SecurityLevelRealTime - Extremely long password with very little time
//
//	Gives 5 seconds to write 15 digits. Intended for computers and application
//	interface use for automated task. May be useful for authentication of
//	unattended systems with less risk of being intercepted.
const SecurityLevelRealTime = 4

// securityLevel is a bitfield of the security levels
// each level is 8 bits long and contains another bitfield for the length
// of the password and the time allowed to enter it, allowing customisation
// ease of use and security
const securityLevel = uint64(uint64((15<<2)|0b00)<<(8*4) | uint64((12<<2)|0b01)<<(8*3) | uint64((10<<2)|0b10)<<(8*2) | uint64((6<<2)|0b01)<<8 | uint64((6<<2)|0b10))

func Error(text string) error {
	return &errorString{text}
}

// errorString is a trivial implementation of error.
type errorString struct {
	s string
}

func (e *errorString) Error() string {
	return e.s
}