hotp.go
func NewHOTP(key []byte, counter uint64, digits int) *HOTP {
	otp := &HOTP{
		Key:    key,
		Digits: digits,
	}
	otp.counter = new([ctrSize]byte)
	binary.BigEndian.PutUint64(otp.counter[:], counter)

	return otp
}
func NewHOTP(key []byte, counter uint64, digits int) *HOTP {
	otp := &HOTP{
		Key:    key,
		Digits: digits,
	}
	otp.counter = new([ctrSize]byte)
	binary.BigEndian.PutUint64(otp.counter[:], counter)

	return otp
}
func NewHOTP ( key [ ] byte , counter uint64 , digits int ) * HOTP { otp := & HOTP { Key : key , Digits : digits , } otp . counter = new ( [ ctrSize ] byte ) binary . BigEndian . PutUint64 ( otp . counter [ : ] , counter ) return otp }
// NewHOTP intialises a new HOTP instance with the key and counter
// values. No check is done on the digits, but typical values are 6
// and 8.
NewHOTP intialises a new HOTP instance with the key and counter values . No check is done on the digits but typical values are 6 and 8 .