近期更新概览

普通文章(1)

WriteUp(6):不在主页展示,集中放在 WriteUp tag

January 20, 2026

年度总结 - 2025(置顶)

自从接触到工作,记忆节点似乎就由工作为 key,其余为 value,所以本篇 blog 的时间线基本都是由工作发散的
Read more
December 16, 2024

ARM Release

yafu 大数分解 / https://github.com/bbuhrow/yafu/issues/12 / yafu 调用了其作者自己写的 ytools.h, 这个库有很多 Linux/Windows platform 基础工具的宏实现, 无法运行在 macOS 上, 于是暂且搁置, 需要用就 docker run / docker run -it ssst0n3/yafu:2.10 其实有 ARM 的非官方实现: https://github.com/keens312/yafu_arm
Read more
December 16, 2024

SageMath 和 gmpy2 精度的探究

起因 正规子群的群友发了一道二分, 如下, 让转为 SageMath Code / import math from gmpy2 import next_prime, sin, cos, mpz left = 2**63 right = 2**64 n = mpz( 13226258685595630160447827442153267599814292160977306459359416297020102688049793771120158029953432640539514974565723831126909317859357612109049397896863392224521508922404189962829783829182814282953169 ) while left <= right: k = (left + right) // 2 p = ( 2023 * k**5 + 2022 * k**4 - 2023 * k**3 - 2021 * k**2 + 2020 * k + 2019 + int(k**3 * sin(k + 2023)) - int(k**3 * cos(k**2 - 2023)) + int(math.e ** (23) * k) ) q = ( 2023 * k**5 - 2022 * k**4 + 2023 * k**3 - 2021 * k**2 + 2020 * k - 2019 - int(k**2 * sin(k * 2023)) + int(k**2 * cos(k**2 * 2023)) + int(math.e ** (23) * k**2) ) p = next_prime(p) q = next_prime(q) if p * q < n: left = k + 1 elif p * q > n: right = k - 1 else: # time < 0.1s print("k =", k) # k = 17821511070084697841 break 简单替换导入函数后发现并不符合预期
Read more
December 15, 2024

18届 全国大学生信息安全竞赛&长城杯 部分WriteUp

Crypto rasnd Part1 关键代码为 / x1=randint(0,2**11) y1=randint(0,2**114) x2=randint(0,2**11) y2=randint(0,2**514) hint1=x1*p+y1*q-0x114 hint2=x2*p+y2*q-0x514 首先给等式两边加上没有意义的恶臭数字 / 变为以下两个线性方程: / [公式] 其中: / $p$ 和 $q$ 是待求的素数. $x_1, x_2$ 是随机整数, 范围在 $[0, 2^{11}]$. $y_1, y_2$ 是随机整数, 范围分别在 $[0, 2^{114}]$ 和 $[0, 2^{514}]$. $h_1$ 和 $h_2$ 是已知的提示值. 目标是根据已知的 $h_1$ 和 $h_2$, 求解出素数 $p$ 和 $q$.
Read more
December 14, 2024

正规子群史册

2024 11 正规子群第一次比赛就夺得金融密码杯挑战赛道二等奖 / 在那期间,鹏程杯无人上线导致约等于爆0 / 2024 12 niteCTF 2024 明明是一只密码小队,却由三极管拿下 niteCTF 2024 misc4 三血,有🍞的身影 / Solves Challenge Category Value Time Quadrillion Matrices Cryptography 334 December 14th, 8:57:06 PM La Casa de Papel Cryptography 50 December 14th, 3:48:47 PM Mumbo Dumbo Artificial Intelligence 50 December 14th, 2:12:03 AM und3rC0VEr Miscellaneous 264 December 14th, 1:49:22 AM R Stands Alone Cryptography 77 December 14th, 12:45:39 AM RSAabc Cryptography 50 December 13th, 11:27:56 PM Warmup Miscellaneous 10 December 13th, 11:05:37 PM 同时还有一位 AK 了密码的歪果仁, 在比赛后也加入了我们~
Read more
December 13, 2024

我改名了

December 13, 2024

fplll 重载虚函数,导致 clang make 出错的解决方案

事发 OS: macOS 14.7 / 在 sage 之外编译 flatter / brew install cmake mpfr libomp gmp fplll 接着 mkdir build && cd build && cmake .. / 错误记录(macOS) user@host ~/D/C/t/flatter> mkdir build && cd build main user@host ~/D/C/t/f/build> cmake -DCMAKE_CXX_FLAGS="-Wno-overloaded-virtual" .. main -- The CXX compiler identification is Clang 19.1.5 -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Check for working CXX compiler: /opt/homebrew/opt/llvm/bin/clang++ - skipped -- Detecting CXX compile features -- Detecting CXX compile features - done -- Found OpenMP_CXX: -fopenmp=libomp (found version "5.1") -- Found OpenMP: TRUE (found version "5.1") -- Found GMP: /opt/homebrew/include -- Looking for sgemm_ -- Looking for sgemm_ - not found -- Performing Test CMAKE_HAVE_LIBC_PTHREAD -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success -- Found Threads: TRUE -- Looking for dgemm_ -- Looking for dgemm_ - found -- Found BLAS: /Library/Developer/CommandLineTools/SDKs/MacOSX15.0.sdk/System/Library/Frameworks/Accelerate.framework -- Looking for cheev_ -- Looking for cheev_ - found -- Found LAPACK: /Library/Developer/CommandLineTools/SDKs/MacOSX15.0.sdk/System/Library/Frameworks/Accelerate.framework;-lm;-ldl -- Found MPFR: /opt/homebrew/include (Required is at least version "1.0.0") -- Found FPLLL: /opt/homebrew/include (found suitable version "5.5.0", minimum required is "5.1.0") -- Configuring done (2.1s) -- Generating done (0.0s) -- Build files have been written to: /Users/user/Documents/Code/tools/flatter/build user@host ~/D/C/t/f/build> make main? [ 1%] Building CXX object src/CMakeFiles/flatter.dir/math/matrix_tools.cpp.o [ 2%] Building CXX object src/CMakeFiles/flatter.dir/math/mpfr_blas.cpp.o [ 3%] Building CXX object src/CMakeFiles/flatter.dir/math/mpfr_lapack.cpp.o [ 5%] Building CXX object src/CMakeFiles/flatter.dir/problems/problem.cpp.o [ 6%] Building CXX object src/CMakeFiles/flatter.dir/problems/fused_qr_sizered/fused_qr_size_reduction.cpp.o [ 7%] Building CXX object src/CMakeFiles/flatter.dir/problems/fused_qr_sizered/base.cpp.o [ 9%] Building CXX object src/CMakeFiles/flatter.dir/problems/fused_qr_sizered/columnwise.cpp.o [ 10%] Building CXX object src/CMakeFiles/flatter.dir/problems/fused_qr_sizered/columnwise_double.cpp.o [ 11%] Building CXX object src/CMakeFiles/flatter.dir/problems/fused_qr_sizered/iterated.cpp.o [ 12%] Building CXX object src/CMakeFiles/flatter.dir/problems/fused_qr_sizered/lazy_refine.cpp.o [ 14%] Building CXX object src/CMakeFiles/flatter.dir/problems/fused_qr_sizered/params.cpp.o [ 15%] Building CXX object src/CMakeFiles/flatter.dir/problems/fused_qr_sizered/seysen_refine.cpp.o [ 16%] Building CXX object src/CMakeFiles/flatter.dir/problems/matrix_multiplication/matrix_multiplication.cpp.o [ 18%] Building CXX object src/CMakeFiles/flatter.dir/problems/matrix_multiplication/base.cpp.o [ 19%] Building CXX object src/CMakeFiles/flatter.dir/problems/matrix_multiplication/aliased.cpp.o [ 20%] Building CXX object src/CMakeFiles/flatter.dir/problems/matrix_multiplication/elementary_mpfr.cpp.o [ 22%] Building CXX object src/CMakeFiles/flatter.dir/problems/matrix_multiplication/elementary_mpz.cpp.o [ 23%] Building CXX object src/CMakeFiles/flatter.dir/problems/matrix_multiplication/elementary_native.cpp.o [ 24%] Building CXX object src/CMakeFiles/flatter.dir/problems/matrix_multiplication/elementary_RRZ.cpp.o [ 25%] Building CXX object src/CMakeFiles/flatter.dir/problems/matrix_multiplication/elementary_RRl.cpp.o [ 27%] Building CXX object src/CMakeFiles/flatter.dir/problems/matrix_multiplication/elementary_ZZl.cpp.o [ 28%] Building CXX object src/CMakeFiles/flatter.dir/problems/matrix_multiplication/strassen.cpp.o [ 29%] Building CXX object src/CMakeFiles/flatter.dir/problems/matrix_multiplication/threaded.cpp.o [ 31%] Building CXX object src/CMakeFiles/flatter.dir/problems/matrix_multiplication/tri_matmul.cpp.o [ 32%] Building CXX object src/CMakeFiles/flatter.dir/problems/qr_factorization/base.cpp.o [ 33%] Building CXX object src/CMakeFiles/flatter.dir/problems/qr_factorization/blocked.cpp.o [ 35%] Building CXX object src/CMakeFiles/flatter.dir/problems/qr_factorization/householder_mpfr.cpp.o [ 36%] Building CXX object src/CMakeFiles/flatter.dir/problems/qr_factorization/eigen_impl.cpp.o [ 37%] Building CXX object src/CMakeFiles/flatter.dir/problems/qr_factorization/qr_factorization.cpp.o [ 38%] Building CXX object src/CMakeFiles/flatter.dir/problems/qr_factorization/threaded.cpp.o [ 40%] Building CXX object src/CMakeFiles/flatter.dir/problems/lattice_reduction/base.cpp.o [ 41%] Building CXX object src/CMakeFiles/flatter.dir/problems/lattice_reduction/fplll_impl.cpp.o In file included from /Users/user/Documents/Code/tools/flatter/src/problems/lattice_reduction/fplll_impl.cpp:1: In file included from /Users/user/Documents/Code/tools/flatter/src/problems/lattice_reduction/fplll_impl.h:3: In file included from /opt/homebrew/include/fplll/fplll.h:25: In file included from /opt/homebrew/include/fplll/bkz.h:21: In file included from /opt/homebrew/include/fplll/bkz_param.h:24: In file included from /opt/homebrew/include/fplll/pruner/pruner.h:21: In file included from /opt/homebrew/include/fplll/pruner/../lll.h:21: /opt/homebrew/include/fplll/pruner/../gso.h:221:16: error: 'fplll::MatGSO<fplll::Z_NR<>, fplll::FP_NR<>>::babai' hides overloaded virtual functions [-Werror,-Woverloaded-virtual] 221 | void virtual babai(vector<ZT> &v, int start = 0, int dimension = -1, bool gso = false); | ^ /Users/user/Documents/Code/tools/flatter/src/problems/lattice_reduction/fplll_impl.cpp:144:65: note: in instantiation of template class 'fplll::MatGSO<fplll::Z_NR<>, fplll::FP_NR<>>' requested here 144 | fplll::MatGSO<fplll::Z_NR<mpz_t>, fplll::FP_NR<mpfr_t>> m_gso(this->A, fplll_U, u_inv, gso_flags); | ^ /opt/homebrew/include/fplll/pruner/../gso_interface.h:469:16: note: hidden overloaded virtual function 'fplll::MatGSOInterface<fplll::Z_NR<>, fplll::FP_NR<>>::babai' declared here: different number of parameters (3 vs 4) 469 | void virtual babai(vector<ZT> &v, int start = 0, int dimension = -1); | ^ /opt/homebrew/include/fplll/pruner/../gso_interface.h:480:16: note: hidden overloaded virtual function 'fplll::MatGSOInterface<fplll::Z_NR<>, fplll::FP_NR<>>::babai' declared here: type mismatch at 2nd parameter ('const vector<FP_NR<__mpfr_struct[1]>> &' vs 'int') 480 | void virtual babai(vector<ZT> &w, const vector<FT> &v, int start = 0, int dimension = 1); | ^ In file included from /Users/user/Documents/Code/tools/flatter/src/problems/lattice_reduction/fplll_impl.cpp:1: In file included from /Users/user/Documents/Code/tools/flatter/src/problems/lattice_reduction/fplll_impl.h:3: In file included from /opt/homebrew/include/fplll/fplll.h:25: In file included from /opt/homebrew/include/fplll/bkz.h:21: In file included from /opt/homebrew/include/fplll/bkz_param.h:24: In file included from /opt/homebrew/include/fplll/pruner/pruner.h:21: In file included from /opt/homebrew/include/fplll/pruner/../lll.h:21: /opt/homebrew/include/fplll/pruner/../gso.h:233:16: error: 'fplll::MatGSO<fplll::Z_NR<>, fplll::FP_NR<>>::babai' hides overloaded virtual functions [-Werror,-Woverloaded-virtual] 233 | void virtual babai(vector<ZT> &w, const vector<FT> &v, int start = 0, int dimension = -1, | ^ /opt/homebrew/include/fplll/pruner/../gso_interface.h:469:16: note: hidden overloaded virtual function 'fplll::MatGSOInterface<fplll::Z_NR<>, fplll::FP_NR<>>::babai' declared here: different number of parameters (3 vs 5) 469 | void virtual babai(vector<ZT> &v, int start = 0, int dimension = -1); | ^ /opt/homebrew/include/fplll/pruner/../gso_interface.h:480:16: note: hidden overloaded virtual function 'fplll::MatGSOInterface<fplll::Z_NR<>, fplll::FP_NR<>>::babai' declared here: different number of parameters (4 vs 5) 480 | void virtual babai(vector<ZT> &w, const vector<FT> &v, int start = 0, int dimension = 1); | ^ 2 errors generated. make[2]: *** [src/CMakeFiles/flatter.dir/build.make:513: src/CMakeFiles/flatter.dir/problems/lattice_reduction/fplll_impl.cpp.o] Error 1 make[1]: *** [CMakeFiles/Makefile2:373: src/CMakeFiles/flatter.dir/all] Error 2 make: *** [Makefile:136: all] Error 2 user@host ~/D/C/t/f/build> 2 main? 解决方案 询问 CPP 大师: M1saka
Read more
December 11, 2024

金融密码杯 团队 WriteUp

WriteUp是假的,也许过几天会更新,咕咕咕,报差旅就是用来旅游和面基的
October 16, 2024

Android 14 因 Magisk 模块导致无法开机的解决方案

Flash back to the original boot.img of the flash package / Enable adb sideload under TWRP’s advanced options / adb sideload kernel.zip flash Kernel SU / Reboot to system / install Kernel-SU-maneger.apk / Grant file manager permissions in KernelSU Manager / Switch to /data/adb/modules (Time sorting) / Delete folders on demand (Optional backup) / Open magisk, patch the original boot.img, and restart to bootloader. / Example: / fastboot flash boot magisk_patched-27001_1OnaR.img fastboot reboot / resurrection!
Read more
September 27, 2024

在 macOS 上实现等效 MiFlash

arm macOS 的平行桌面无法安装 9008 驱动的解决方案:不用平行桌面,用 brew 安装安卓调试桥工具后,找到刷机包或 MiFlash 目录中的 flash*.bat,将其修改为 bash 语法,具体修改后的脚本如下。
Read more
September 10, 2024

十四天挑战 MIT 6.s081

Lab util: Unix utilities [1/2] What’s in this part? [???] 本章会涉及到 LEC 1 (rtm): Introduction and examples (handouts: xv6 book) / 简介和示例 (讲义: xv6 书籍) / Preparation: Read chapter 1 (for your amusement: Unix) / 准备: 阅读第 1 章 (供您娱乐: Unix)
Read more