Skip to content

Instantly share code, notes, and snippets.

Writeup message.sign

Description:

I just launched my brand new signature service called "message.sign".
The domain is still missing but you can beta-test it if you want.
Hopefully you are not finding any bugs, let me know if you do :)

Writeup Fact!Or?

Description:

RSA is the safest cryptographic primitive that we know.
That is FACT! Or is it?

In this challenge, the user is given the following file and a output that contains the encrypted flag.

Writeup

Sophie-Germain-Primes are prime numbers of the form q = 2p + 1 where p is also a prime. In this challenge, sophie-germain-primes are used as prime numbers for RSA. The problem is, that the primes q, r and s can be computed from p which makes this usage insecure.

Since we know that $$q=2p+1$$, $$r=2q+1=4p+3$$ and $$s=2r+1=2*(4p+3)=8p+7$$, we know that $$N = p*q*r*s = 64*p^4 + 136*p^3 + 94*p^2 + 21*p$$

This can be solved for p, and with that we can compute q, r, s and with these values we are able to compute $$\phi(N) = (p-1)*(q-1)*(r-1)*(s-1)$$

@MarkusOstermayer
MarkusOstermayer / JRSA_Writeup.md
Last active April 20, 2026 17:00
Writeup für JRSA vom KaindorfCTF 2024

Writeup

Description

Its just RSA. I even used padding. Nothing can go wrong right?

Quellcode

import random
def heapsort(data: list) -> list:
data = heapify_array(data)
for i in range(len(data) - 1, -1, -1):
data[i], data[0] = data[0], data[i]
data[:i] = heapify(data[:i], 0)
#include <mpi.h>
#include <stdio.h>
#define ROOT 0
#define COMM_TAG 1
int main(int argc, char *argv[])
{
int communicator_size, process_rank;
import csv
import os
def main():
'''Main Methode of the analysis-tool'''
data_path = "data/sensors"
for sensor in os.listdir(data_path):
#!/usr/bin/python3
# -*- coding: utf-8 -*-
"""
A tool to create Markdowntables from Turingcode
"""
import sys
import re
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using newMV;