Modular personalized dictionary generator.

Overview

Narthex

Narthex logo

Narthex (Greek: Νάρθηξ, νάρθηκας) is a modular & minimal dictionary generator for Unix and Unix-like operating system written in C and Shell. It contains autonomous Unix-style programs for the creation of personalised dictionaries that can be used for password recovery & security assessment. The programs make use of Unix text streams for the collaboration with each other, according to the Unix philosophy. It is licensed under the GPL v3.0. Currently under development!

I made a video to explain the usage of Narthex to non-Unix people: https://www.youtube.com/watch?v=U0UmCeLJSkk&t=938s (the timestamp is intentional)

The tools

  • nchance - A capitalization tool that appends the results to the bottom of the dictionary.
  • ninc - A incrementation tool that multiplies alphabetical lines and appends an n++ at the end of each line.
  • ncom - A combination tool that creates different combinations between the existing lines of the dictionary.
  • nrev - A reversing tool, that appends the reserved versions of the lines at the end of the dictionary.
  • nleet - A leetifier. Replaces characters with Leet equivalents, such as @ instead of a, or 3 instead of e.
  • nclean - A tool for removing passwords that don't meet your criteria (too short, no special characters etc.)
  • napp - A tool that appends characters or words before or after the lines of the dictionary.
  • nwiz - A wizard that asks for the infromation and combines the tools together to create a final dictionary.

Screenshots

Narthex logo Narthex logo

Install

In order to install, execute the following commands:

$ git clone https://github.com/MichaelDim02/Narthex.git && cd Narthex
$ sudo make install

Usage

For easy use, there is a wizard program, nwiz, that you can use. Just run

$ nwiz

And it will ask you for the target's information & generate the dictionary for you.

Advanced usage

If you want to make full use of Narthex, you can read the manpages of each tool. What they all do, really, is enhance small dictionaries. They are really minimal, and use Unix text streams to read and output data. For example, save a couple keywords into a textfile words.txt in a different line each, and run the following

$ cat words.txt | nhance -f | ncom | nrev | nleet | ninc 1 30 > dictionary.txt

and you'll see the results for yourself.

Issues
  • nleet to be more flexible

    nleet to be more flexible

    nleet only has a standard hardcoded set of replacements. It would be better if the user could specify what to replace with what from command-line arguments, and nleet to default to the predetermined changes only if the user doesn't do so.

    opened by MichaelDim02 1
Releases(v1.2)
Owner
Michael Constantine Dimopoulos
I like computers
Michael Constantine Dimopoulos
Minipops alternative firmware for Music Thing Modular Radio Music

RMoxy Minipops drummer alternative firmware for Music Thing Modular Radio Music module The repository for the Radio Music module by Tom Whitwell Kits

Johan Berglund 6 Apr 6, 2022
Modular status bar for dwm written in c.

dwmblocks Modular status bar for dwm written in c. usage To use dwmblocks first run 'make' and then install it with 'sudo make install'. After that yo

C0de 1 Oct 12, 2021
A CPU implemented in an analog modular synthesizer

A CPU implemented in an analog modular synthesizer This runs in the VCV Rack eurorack simulator. I wrote a thread explaining the CPU on twitter and a

Katherine 257 Jun 21, 2022
Mars_lib - MaRS: A Modular and Robust Sensor-Fusion Framework

Introduction The Modular and Robust State-Estimation Framework, or short, MaRS, is a recursive filtering framework that allows for truly modular multi

Control of Networked Systems - University of Klagenfurt 124 Jun 19, 2022
C++ Multiplatform Modular Toolkit Template

C++ Multiplatform Modular Toolkit Template Nativium Philosophy: Write Once And Compile Anywhere About Write a single code in C++ and compile for any p

Nativium 6 Jun 23, 2022
The whole design is modular, parametric (cost and others), field repairable, and super extensible

Easy-Transceiver The whole design is modular, parametric (cost and others), field repairable, and super extensible. It is almost trivial to add suppor

Dhiru Kholia 2 Apr 22, 2022
A Modular 4-Channel ESP-32 EStim

SW-32 - A modular ESP-32 e-stim device About The SW-32 is a modular e-stim unit, with the ESP-32 microcontroller at the core. It supports a max of 4 c

null 1 Mar 8, 2022
WirePlumber is a modular session / policy manager for PipeWire

WirePlumber WirePlumber is a modular session / policy manager for PipeWire and a GObject-based high-level library that wraps PipeWire's API, providing

Pop!_OS 3 May 15, 2022
Single-header, ranges-compatible generator type built on C++20 coroutines

generator Single-header, ranges-compatible generator type built with C++20 coroutines. A generator allows implementing sequence producers which are te

Sy Brand 26 Apr 26, 2022
Run-time program generator embedded in C++

Run-time program generator embedded in C++

Z Guan 24 Apr 29, 2022
GPU 3D signed distance field generator, written with DirectX 11 compute shader

GPU SDF Generator GPU 3D signed distance field generator, written with DirectX 11 compute shader Building git clone --recursive https://github.com/Air

Z Guan 23 May 20, 2022
C# bindings for Sokol using Sokol's binding generator

C# bindings for Sokol using Sokol's binding generator

Michal Strehovský 25 Mar 22, 2022
CMSGen, a fast uniform-like sample generator

CMSGen a fast uniform-like sampler This system provides CMSGen, a fast uniform-like sampler. While we give no guarntees that the sampling is uniform,

Meel Group 4 Feb 20, 2022
A code generator for C++ projects.

Cmple A code preprocessor/generator for C++ cross-platform projects. This utility transforms simplified C++ source code files into fully-functional co

Anton Dospekhov 23 Jan 24, 2022
Photon OS DPDK and Packet Generator, RT Test, TF2 docker image.

photongen Photon OS DPDK and packet generator , cyclictest , TF2 with CUDA docker image. DPKD libs The build proccess builds and installs all shared l

spyroot 4 Feb 7, 2022
Python wrapper for DMLab maze generator

dmlab-maze-generator Python wrapper for DMLab C++ maze generator. Usage !pip install dmlab-maze-generator from dmlab_maze_generator import create_ran

null 1 Oct 29, 2021
Modern C++ 20 compile time OpenAPI parser and code generator implementation

OpenApi++ : openapipp This is a proof of concept, currently under active work to become the best OpenAPI implementation for C++. It allows compile tim

tipi.build 5 Apr 8, 2022
2nd Semester C Language Project-Cricket Score Generator

Semester-2-Project 2nd Semester C Language Project-Cricket Score Generator TITLE: Cricket Score Generator Objectives: To generate the score card for a

null 1 Jan 9, 2022
usb to 5 din midi converter-filter-router, sound generator

multi What is multi? It's a PCB (shield/hat) hosting a seeeduino Xiao. It has 6 potentiometers, 2 pushbuttons and a 1/8" audio out connected to the Xi

pangrus 18 Jun 17, 2022