Initial QSfera import
This commit is contained in:
+57
@@ -0,0 +1,57 @@
|
||||
package match
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
)
|
||||
|
||||
type Match struct {
|
||||
Pattern string `json:"pattern"`
|
||||
I int `json:"i"`
|
||||
J int `json:"j"`
|
||||
Token string `json:"token"`
|
||||
|
||||
// Dictionary
|
||||
Reversed bool `json:"reversed,omitempty"`
|
||||
UppercaseVariations float64 `json:"uppercase_variations,omitempty"`
|
||||
L33tVariations float64 `json:"l33t_variations,omitempty"`
|
||||
MatchedWord string `json:"matched_word,omitempty"`
|
||||
Rank int `json:"rank,omitempty"`
|
||||
DictionaryName string `json:"dictionary_name,omitempty"`
|
||||
L33t bool `json:"l33t,omitempty"`
|
||||
Sub map[string]string `json:"sub,omitempty"`
|
||||
|
||||
// Sequence
|
||||
Graph string `json:"graph,omitempty"`
|
||||
SequenceName string `json:"sequence_name,omitempty"`
|
||||
SequenceSpace int `json:"sequence_space,omitempty"`
|
||||
Ascending bool `json:"ascending,omitempty"`
|
||||
Turns int `json:"turns,omitempty"`
|
||||
ShiftedCount int `json:"shifted_count,omitempty"`
|
||||
|
||||
// Repeat
|
||||
BaseToken string `json:"base_token,omitempty"`
|
||||
BaseGuesses float64 `json:"base_guesses,omitempty"`
|
||||
BaseMatches []*Match `json:"base_matches,omitempty"`
|
||||
RepeatCount int `json:"repeat_count,omitempty"`
|
||||
|
||||
// Regexp
|
||||
RegexName string `json:"regex_name,omitempty"`
|
||||
|
||||
// Date
|
||||
Year int `json:"year,omitempty"`
|
||||
Month int `json:"month,omitempty"`
|
||||
Day int `json:"day,omitempty"`
|
||||
Separator string `json:"separator,omitempty"`
|
||||
Entropy float64 `json:"entropy,omitempty"`
|
||||
Guesses float64 `json:"guesses,omitempty"`
|
||||
}
|
||||
|
||||
type Matcher interface {
|
||||
Matches(password string) []*Match
|
||||
}
|
||||
|
||||
// ToString returns a string representation of a sequence of matches
|
||||
func ToString(matches []*Match) string {
|
||||
b, _ := json.Marshal(matches)
|
||||
return string(b)
|
||||
}
|
||||
Reference in New Issue
Block a user