|
|
@ -90,6 +90,10 @@ func (c *ChromiumPassword) Name() string { |
|
|
|
return "password" |
|
|
|
return "password" |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
func (c *ChromiumPassword) Length() int { |
|
|
|
|
|
|
|
return len(*c) |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
type YandexPassword []loginData |
|
|
|
type YandexPassword []loginData |
|
|
|
|
|
|
|
|
|
|
|
const ( |
|
|
|
const ( |
|
|
@ -154,6 +158,10 @@ func (c *YandexPassword) Name() string { |
|
|
|
return "password" |
|
|
|
return "password" |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
func (c *YandexPassword) Length() int { |
|
|
|
|
|
|
|
return len(*c) |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
type FirefoxPassword []loginData |
|
|
|
type FirefoxPassword []loginData |
|
|
|
|
|
|
|
|
|
|
|
const ( |
|
|
|
const ( |
|
|
@ -224,10 +232,6 @@ func (f *FirefoxPassword) Parse(masterKey []byte) error { |
|
|
|
return nil |
|
|
|
return nil |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
func (f *FirefoxPassword) Name() string { |
|
|
|
|
|
|
|
return "password" |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
func getFirefoxDecryptKey(key4file string) (item1, item2, a11, a102 []byte, err error) { |
|
|
|
func getFirefoxDecryptKey(key4file string) (item1, item2, a11, a102 []byte, err error) { |
|
|
|
var keyDB *sql.DB |
|
|
|
var keyDB *sql.DB |
|
|
|
keyDB, err = sql.Open("sqlite3", key4file) |
|
|
|
keyDB, err = sql.Open("sqlite3", key4file) |
|
|
@ -278,3 +282,11 @@ func getFirefoxLoginData(loginJson string) (l []loginData, err error) { |
|
|
|
} |
|
|
|
} |
|
|
|
return l, nil |
|
|
|
return l, nil |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
func (f *FirefoxPassword) Name() string { |
|
|
|
|
|
|
|
return "password" |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
func (f *FirefoxPassword) Length() int { |
|
|
|
|
|
|
|
return len(*f) |
|
|
|
|
|
|
|
} |
|
|
|