Skip to content

Instantly share code, notes, and snippets.

View czenon1's full-sized avatar
🛰️
Orbiting around

Christopher Zénon-Fall czenon1

🛰️
Orbiting around
View GitHub Profile
@georgelviv
georgelviv / st7735.py
Last active July 17, 2025 12:32
Python lib for ST7735 display 128x160 driven by SPI for RPI5
# Based on https://github.com/pimoroni/st7735-python/blob/main/st7735/__init__.py
import numbers
import time
from gpiozero import OutputDevice
import numpy as np
import spidev
ST7735_NOP = 0x00
ST7735_SWRESET = 0x01

MD5 Collision with CRC32 Preimage

Here's the scenario: We want to craft two different messages with the same MD5 hash, and a specific CRC32 checksum, simultaneously.

In other words, we want an MD5 collision attack and a CRC32 preimage attack.

This might seem like a contrived scenario, but it's exactly the one I faced while producing my PNG hashquine (Yes OK maybe that's also a contrived scenario, cut me some slack).

On its own, a CRC32 preimage attack is trivial. You can craft a 4-byte suffix that gives any message a specific checksum, calculated using a closed-form expression (which I am too lazy to derive, not even with assistance from Z3). It's not an attack per-se, since CRC32 was never meant to be cryptograpically secure in the first place.

@sekcompsci
sekcompsci / Comparison Espressif ESP MCUs.md
Last active October 26, 2025 11:39 — forked from fabianoriccardi/Comparison Espressif ESP MCUs.md
Comparison chips (SoCs) table for ESP8266/ESP32/ESP32-S2/ESP32-S3/ESP32-C3/ESP32-C6. Forked from @fabianoriccardi

Comparison chips (SoCs) table for ESP8266/ESP32/ESP32-S2/ESP32-S3/ESP32-C3/ESP32-C6

A minimal table to compare the Espressif's MCU families.

ESP8266 ESP32 ESP32-S2 ESP32-S3 ESP32-C3 ESP32-C6
Announcement Date 2014, August 2016, September 2019, September 2020, December
@mvaisakh
mvaisakh / Bringup.md
Last active November 25, 2025 06:47
An Android Device Tree Bringup Guide

A small Device Tree Bringup Guide

Introduction

So, you guys might be wondering, how do these "Developers" get your favourite Custom roms, such as LineageOS, Paranoid Android etc., to their own devices. Well I'm here to Guide you on how to do it, specifically on how to bringup or make your own device tree from scratch or adapting.

Gist of this Guide: This is for people with genuine interest in Android OS porting/development. After going through this guide, you should be able to do a total device tree bringup on your own.

Prerequisite: Certain requirements are to be met before you start with this amazing journey.

@shaposhnikoff
shaposhnikoff / 1801 OpenGD CSV LPD and PMR freq.csv
Created April 7, 2021 09:29
1801 OpenGD CSV LPD and PMR freq
We can make this file beautiful and searchable if this error is corrected: It looks like row 2 should actually have 35 columns, instead of 36 in line 1.
Data type,Name,Channel Type,Rx Frequency,Tx Frequency,Color Code,Timeslot,Contact,Contact Type, Contact Id,Rx Group,Scanlist,Zone,RX CTCSS,TX CTCSS,Power,Bandwidth,Rx Only,Squelch,Tx Admit,TOT,TOT Rekey,Tx Signaling,Rx Signaling,Privacy Group,Emergency System,Flags1,Flags2,Flags3,Flags4,RssiThreshold,VoiceEmphasis,TxSignaling,UnmuteRule,RxSignaling
CH_DATA,PMR01,Analog,446.00625,446.00625,1,2,N/A,0,N/A,GroupList1,SCAN V,None,None,None,1W,12.5,No,Master,0,0,3,0,0,1,1,0,64,0,129,-80,0,0,0,0,22
CH_DATA,PMR02,Analog,446.01875,446.01875,1,2,N/A,0,N/A,GroupList1,SCAN V,None,None,None,1W,12.5,No,Master,0,0,3,0,0,1,1,0,64,0,129,-80,0,0,0,0,22
CH_DATA,PMR03,Analog,446.03125,446.03125,1,2,N/A,0,N/A,GroupList1,SCAN V,None,None,None,1W,12.5,No,Master,0,0,3,0,0,1,1,0,64,0,129,-80,0,0,0,0,22
CH_DATA,PMR04,Analog,446.04375,446.04375,1,2,N/A,0,N/A,GroupList1,SCAN V,None,None,None,1W,12.5,No,Master,0,0,3,0,0,1,1,0,64,0,129,-80,0,0,0,0,22
CH_DATA,PMR05,Analog,446.05625,446.05625,1,2,N/A,0,N/A,GroupList1,SCAN V,None,None,None,1
@MrHallows
MrHallows / fastboot_help.md
Last active December 10, 2025 10:38
fastboot commands

Command:

$ fastboot help

Output:

usage: fastboot [OPTION...] COMMAND...

flashing:
@vyach-vasiliev
vyach-vasiliev / Extract3D_from_PDF__ReadMe.md
Created August 13, 2020 13:53
Extract 3D objects from PDFs

This instruction is about how to get a 3D model out of a PDF file.

We need:

  • Python version not lower than 2.7
  • Any version OS (Windows, Linux, Mac)

Extract

Download the Pythong PDF Parser: https://blog.didierstevens.com/programs/pdf-tools/

  1. Search for the 3D object:
@johnfedoruk
johnfedoruk / clamd-setup.md
Last active November 16, 2025 12:59
Setting up ClamAV

ClamAV Setup Notes

Context

ClamAV can be used in a few different ways. Most importantly, it provides the ability to scan files in realtime (on-access) or to scan the file system periodically.

I tried configuring ClamAV to both perform on-access virus scanning and to perform nightly full filesystem scanning. Using the on-access option did not prove to be very useful, however a scheduled full system scan seems to be of value.

Here is my story.

@GautamBose
GautamBose / readme.md
Last active July 2, 2025 23:18 — forked from bchanudet/readme.md
Framebuffer on ST7735r (1.8inch TFT LCD SPI Display)

Enable modules in Kernel

In raspi-config

Enable SPI under "Interfacing options"

Add modules

$ sudo nano /etc/modules
@nstarke
nstarke / microcontroller-find.sh
Last active March 13, 2025 21:27
Analyze Unknown Microcontroller Firmware Binary and Determine File Offset and Instruction Set Architecture
#!/bin/sh
#
# A Small Shell script to check a binary for different microcontroller cpu architectures.
#
# This works by importing the binary into a project in Ghidra
# And then iteratively attempting to analyze chunks of the binary firmare
# all while timing the analysis.
#
# The theory is Ghidra should take noticeably longer to analyze a valid