(msg []byte)
| 67 | } |
| 68 | |
| 69 | func (st *CookieChecker) CheckMAC1(msg []byte) bool { |
| 70 | st.RLock() |
| 71 | defer st.RUnlock() |
| 72 | |
| 73 | size := len(msg) |
| 74 | smac2 := size - blake2s.Size128 |
| 75 | smac1 := smac2 - blake2s.Size128 |
| 76 | |
| 77 | var mac1 [blake2s.Size128]byte |
| 78 | |
| 79 | mac, _ := blake2s.New128(st.mac1.key[:]) |
| 80 | mac.Write(msg[:smac1]) |
| 81 | mac.Sum(mac1[:0]) |
| 82 | |
| 83 | return hmac.Equal(mac1[:], msg[smac1:smac2]) |
| 84 | } |
| 85 | |
| 86 | func (st *CookieChecker) CheckMAC2(msg, src []byte) bool { |
| 87 | st.RLock() |