+++ /dev/null
-/*
-GoCheese -- Python private package repository and caching proxy
-Copyright (C) 2019 Elena Balakhonova <balakhonova_e@riseup.net>
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, version 3 of the License.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/
-
-package main
-
-import (
- "crypto/sha256"
- "crypto/subtle"
- "encoding/hex"
- "fmt"
-)
-
-type SHA256AuthData []byte
-
-func (expectedPasword SHA256AuthData) Auth(password string) bool {
- hash := sha256.Sum256([]byte(password))
- return subtle.ConstantTimeCompare(hash[:], []byte(expectedPasword)) == 1
-}
-
-func parseSHA256(params string) (Auther, error) {
- if len(params) != 64 {
- return nil, fmt.Errorf("sha256 parameters %q have wrong format", params)
- }
- hash, err := hex.DecodeString(params)
- return SHA256AuthData(hash), err
-}