Craxk is a SINGLE AND NON-REPLICABLE Hash that uses data from the hardware where it is executed to form a hash that can only be reproduced by a single machine.

Related tags

MiscellaneousCraxk
Overview

Craxk

What is Craxk ?

Craxk is a UNIQUE AND NON-REPLICABLE Hash that uses data from the hardware where it is executed to form a hash that can only be reproduced by a single machine. That is, each Craxk hash is totally UNIQUE and impossible to break through a Reverse from a machine other than the host.

How is Craxk formed ?

The hash is formed using as part of the Shake and Blake working together. In addition, each hash uses unique and altered information from the hardware as mutants of the final hash.

Crack allows you to work with different amounts of bits:

  • Craxk 128
  • Craxk 256
  • Craxk 512

Install

pip install craxkhash

Usage

Class

Craxk is organized in classes. These classes work to define what kind of hash you want to use.

Classes are:

  • craxk_128
  • craxk_128_datemutation
  • craxk_128_seedmutation
  • craxk_256
  • craxk_256_datemutation
  • craxk_256_seedmutation
  • craxk_512
  • craxk_512_datemutation
  • craxk_512_seedmutation

From here all the arguments that are used could be explicit in bytes, string, or int.

craxk_128(data)

This is the class belonging to the 128-bit main hash, which uses only non-repeatable hardware information as a mutation.

craxk_128_datemutation(data)

This is the class belonging to the 128-bit hash in which you add the date mutation. What this means is that the hash will be mutated with non-replicable information from the hardware and also with the data of the current system date. The great utility of datemutation is to be able to create a hash that can only be replicated by the same hardware and on the same date.

For example: The hash of the string Hello World on machine 1 on 06/16/2021 will not be the same as the hash of the same string on 06/17/2021.

Without a doubt, datemutation opens a range of possibilities

craxk_128_seedmutation(data, seed=)

This is the class belonging to the 128-bit hash in which you add the mutation of a seed. What this means is that the hash will be mutated with non-replicable hardware information and also with the seed that you enter

seedmutation offers the possibility that the hash can only be obtained again by generating it from the same machine and with the specified seed.

The seed must not be a white space and can also be bytes, string, int or float

Functions

hash.update(data)

Update the hash object. Repeated calls are equivalent to a single call with the concatenation of all the arguments: m.update(a); m.update(b) is equivalent to m.update(a+b). In the case of seedmutation, only the data is updated, the seed will remain the same as before.

hash.replace()

Similary to update() only this function replaces the data and does not concatenate it like update() would. In the case of seedmutation, here you will need to specify the seed again using the seed= argument.

hash.digest()

Return the digest of the data. This is a bytes object of size digest_size which may contain bytes in the whole range from 0 to 255.

For example, to obtain the digest of the byte string b'Nobody inspects the spammish repetition':

Input

import craxkhash
x = craxkhash.craxk_128()
x.update(b'Nobody inspects')
x.update(b' the spammish repetition')
x.digest()

Output

> b'R\xda\xbe \x9a-\xb0&p\x07\x8e\xb2\xdb\x8b\x02N'

hash.hexdigest() It is the same as digest (), only the digest is returned as a double-length string object that only contains hexadecimal digits.

For example, to obtain the hexdigest of the byte string b'Nobody inspects the spammish repetition':

import craxkhash
x = craxkhash.craxk_128()
x.update(b'Nobody inspects')
x.update(b' the spammish repetition')
x.hexdigest()

Output

> 52dabe209a2db02670078eb2db8b024e

hash.digest_size

The size of the resulting hash in bytes.

hash.block_size

The internal block size of the hash algorithm in bytes.

Other information

Crack works in Python versions 2.7 onwards.

Currently only native Python libraries are used.

Those libraries are:

  • os
  • hashlib
  • subprocess
  • uuid
  • time
  • base64

It is very important to emphasize that this project is created by a programming enthusiast, in addition to the fact that the project is in continuous development

Created By ZaikoARG 🦇

This is a Python program I wrote to simulate the solar system with 79 lines of code.

Solar System With Python This is a Python program I wrote to simulate the solar system with 79 lines of code. Required modules tkinter, math, time Why

Mehmet Aydoğmuş 1 Oct 26, 2021
A cookiecutter to start a Python package with flawless practices and a magical workflow 🧙🏼‍♂️

PyPackage Cookiecutter This repository is a cookiecutter to quickly start a Python package. It contains a ton of very useful features 🐳 : Package man

Daniel Leal 16 Dec 13, 2021
Final project for ENGG 5402 Advanced Robotics in CUHK

Final project Final project Update Foundations Ubuntu virtual machine Ubuntu How to use Github to keep tracking the change of code version? Docker Set

Junjia Liu 8 Aug 01, 2022
Contains a Jupyter Notebook for calculating remaining plants required based on field/lathhouse data.

Davis-Sunflowers-Su21 Project goals: Plants influence their reproduction and mating system in many ways. Various factors such as time of flowering, ab

1 Feb 10, 2022
Interpreting-compiling programming language.

HoneyASM The programming language written on Python, which can be as interpreted as compiled. HoneyASM is easy for use very optimized PL, which can so

TalismanChet 1 Dec 25, 2021
Penelope Shell Handler

penelope Penelope is an advanced shell handler. Its main aim is to replace netcat as shell catcher during exploiting RCE vulnerabilities. It works on

293 Dec 30, 2022
Wagtail + Lottie is a Wagtail package for playing Adobe After Effects animations exported as json with Bodymovin.

Wagtail Lottie Wagtail + Lottie is a Wagtail package for playing Adobe After Effects animations exported as json with Bodymovin. Usage Export your ani

Alexis Le Baron 7 Aug 18, 2022
NFT-Image-Generator - Utility to generate a large collection of unique images

NFT-Image-Generator Utility for creating a generative art collection from suppli

Sem Moolenschot 60 Dec 15, 2022
Wannier & vASP Postprocessing module

WASPP module Wannier90 & vASP Postprocessing module with functionalities I needed during my PhD. Being updated Version: 0.5 Main functions: Wannier90

Irián Sánchez Ramírez 4 Dec 27, 2022
Find functions without canary check (or similar)

Ghidra Check Protector Which non-trivial functions don't reference the stack canary checker (or other, user-defined function)? Place your cursor to th

buherator 3 Jan 17, 2022
Hello, Welcome to this repo. don't forget to read guidelines in readme.md

Hacktoberfest_2021 If you looking for your first contribution, we are here to help. Just create a simple program using any language you like in our fo

Wafa Rifqi Anafin 117 Dec 14, 2022
Simple script to match riders with drivers.

theBestPooler Simple script to match riders with drivers. It's a greedy, unoptimised search, so no guarantees that it works. It just seems to work (ve

Devansh 1 Nov 22, 2021
Create VSCode Extensions with python

About Create vscode extensions with python. Installation Stable version: pip install vscode-ext Why use this? Why should you use this for building VSc

Swas.py 134 Jan 07, 2023
Sudoku solver using backtracking

Sudoku solver Sudoku solver using backtracking Basically in sudoku, we want to be able to solve a sudoku puzzle given an input like this, which repres

Kylie 99 Jan 07, 2023
Backup dc registry - A simple POC that abuses Backup Operator privileges to remote dump SAM, SYSTEM, and SECURITY

Backup Operator Registry Backup to Domain Compromise A simple POC that abuses Ba

Horizon 3 AI Inc 57 Dec 18, 2022
📙 Super lightweight function registries for your library

catalogue: Super lightweight function registries for your library catalogue is a tiny, zero-dependencies library that makes it easy to add function (o

Explosion 139 Jan 02, 2023
Fetch PRs from GitHub and analyze which ones are unmergeable

Set up token Generate a personal access token on GitHub. Add repo permissions. export GH_TOKEN="abcdefg" Pull PR data make Usually, GitHub doesn't h

Stefan van der Walt 1 Nov 05, 2021
A lightweight Python module to interact with the Mitre Att&ck Enterprise dataset.

enterpriseattack - Mitre's Enterprise Att&ck A lightweight Python module to interact with the Mitre Att&ck Enterprise dataset. Built to be used in pro

xakepnz 7 Jan 01, 2023
String Spy is a project aimed at improving MacOS defenses.

String Spy is a project aimed at improving MacOS defenses. It allows users to constantly monitor all running processes for user-defined strings, and if it detects a process with such a string it will

10 Dec 13, 2022
A Pythonic Data Catalog powered by Ray that brings exabyte-level scalability and fast, ACID-compliant, change-data-capture to your big data workloads.

DeltaCAT DeltaCAT is a Pythonic Data Catalog powered by Ray. Its data storage model allows you to define and manage fast, scalable, ACID-compliant dat

45 Oct 15, 2022