Skip to content
/ gonss3 Public

Subset of Mozilla NSS enough to decrypt firefox passwords

License

Notifications You must be signed in to change notification settings

rusq/gonss3

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

gonss3

Package documentation: https://godoc.org/github.com/rusq/gonss3

Package gonss implements the subset of Mozilla NSS3 library. It implements just enough to decrypt the firefox profile passwords.

I take no credit, implementation is entirely based on this project which is based on Dr Stephen Henson research for "Netscape Key Databases".

Supports only key4.db (sqlite).

This library is created for educational purposes and licenced under LGPL 3.0.

Usage

package main
import "github.com/rusq/gonss3"

func main() {
  profile, err := gonss3.New("/path/to/profile", []byte("masterpass"))
  // handle err

  userCt, passCt := // fetch some data from logins.json

  user,err := profile.DecryptField(userCt)
  // handle err
  pass,err := profile.DecryptField(passCt)
  // handle err

  fmt.Println(user, pass)
}

TODO

[ ] TESTS

Useful links