Kỹ thuật tấn công Common Modulus trong mật mã học RSA

Trong các thử thách về mật mã học (Cryptography) tại các cuộc thi CTF, dạng bài tập sử dụng cùng một modulo $n$ với các số mũ công khai $e$ khác nhau là một kịch bản kinh điển. Đây là lỗ hổng bảo mật được gọi là RSA Common Modulus Attack. Dưới đây là phân tích chi tiết về kỹ thuật này thông qua bài toán thực tế. Phân tích mã nguồn bài toán Giả ...

Đăng vào ngày 2 tháng 8 lúc 04:37

Bảo mật cấu hình cơ sở dữ liệu trong Spring Boot bằng mã hóa RSA

Để bảo vệ thông tin nhạy cảm như URL, tên người dùng và mật khẩu cơ sở dữ liệu trong ứng dụng Spring Boot, việc mã hóa các giá trị cấu hình là một thực hành an toàn thiết yếu. Giải pháp dưới đây sử dụng thuật toán RSA để mã hóa tại thời điểm triển khai và giải mã động khi khởi tạo kết nối. 1. Thêm thư viện hỗ trợ Sử dụng commons-io để ghi/đọc ...

Đăng vào ngày 10 tháng 7 lúc 23:19

Giải Đáp Các Bài Toán Bảo Mật và Đảo Ngược trong Cuộc Thi CTF 0xGame 2021 – Tuần Đầu

Đây là tổng hợp lời giải chi tiết cho các bài tập thuộc nhiều thể loại (Crypto, Misc, Pwn, RE, Web) trong tuần đầu tiên của cuộc thi CTF 0xGame 2021. Nội dung được trình bày lại một cách kỹ thuật, rõ ràng và độc lập — không phụ thuộc vào kinh nghiệm cá nhân hay phong cách viết blog. Mã Hóa & Giải Mã RSA Cơ Bản Bài ABC Of RSA cung cấp hai số ng ...

Đăng vào ngày 29 tháng 6 lúc 05:34

Bài viết giải đề thi MTCTF lần thứ 4 (Mã hóa) - Schen

Bài viết giải đề thi MTCTF lần thứ 4 (Mã hóa) Giới thiệu Trong cuộc thi, mình đã giải 2 bài mã hóa, 1 bài Misc, đồng đội giải 2 bài Pwn và 1 bài RE. Tổng cộng có 241 đội đạt điểm, cuối cùng mình xếp hạng 36, còn cách vòng chung kết khá xa. Dưới đây là tổng hợp 2 bài mã hóa mà mình đã làm. Ký hiệu đặc biệt Bài này kiểm tra kiến thức về ký hiệu t ...

Đăng vào ngày 22 tháng 6 lúc 06:48

Phân tích giao thức mã hóa xác thực Geetest

Quy trình tham khảo Tuyên bố miễn trừ trách nhiệm Bài viết này chỉ nhằm mục đích học tập và trao đổi kỹ thuật. Tác giả không chịu bất kỳ trách nhiệm pháp lý nào phát sinh từ việc lạm dụng thông tin được cung cấp. Nếu có vi phạm bản quyền, vui lòng liên hệ để gỡ bỏ. Phân tích yêu cầu và tham số mã hóa Yêu cầu register để lấy challenge và gt # ...

Đăng vào ngày 19 tháng 6 lúc 23:04

Mã hóa và giải mã RSA trong Java

Trong các hệ thống thực tế, thông tin nhạy cảm như mật khẩu thường không được lưu trữ dưới dạng văn bản thuần túy trong cơ sở dữ liệu. Thay vào đó, chúng cần được mã hóa trước khi lưu trữ. Bài viết này cung cấp một công cụ hỗ trợ mã hóa/giải mã RSA. Thêm thư viện phụ thuộc <dependency> <groupId>commons-io</groupId> &l ...

Đăng vào ngày 18 tháng 6 lúc 17:59

WriteUp Cuộc thi West Lake Sword 2022 Vòng sơ loại

Crypto MyErrorLearn def XennyOracle(): r = getPrime(512) d = invert(secret+r, p) - getPrime(246) print('> r =', r) print('> d =', d) def task(): for _ in range(3): op = int(input()) if op == 1: XennyOracle() elif op == 2: ss = int(input()) if ss == secret: ...

Đăng vào ngày 16 tháng 6 lúc 01:21

Cấu hình SSH Key cho GitLab

SSH (Secure Shell) là phương pháp xác thực an toàn và tiện lợi để tương tác với GitLab. Khi cấu hình xong, bạn có thể đẩy/méo mã mà không cần nhập mật khẩu, đồng thời đảm bảo kết nối được mã hóa đầu cuối. Hướng dẫn này bao gồm đầy đủ quy trình từ tạo khóa, thiết lập commit có chữ ký, hỗ trợ nhiều tài khoản đến xử lý sự cố thường gặp. > **Áp dụ ...

Đăng vào ngày 12 tháng 6 lúc 18:47

Mã hóa bất đối xứng trong PHP

Các loại mã hóa: Trong thiết kế và phát triển hàng ngày, để đảm bảo an toàn cho việc truyền tải và lưu trữ dữ liệu, có thể sử dụng các thuật toán cụ thể để mã hóa dữ liệu gốc thành văn bản mã phức tạp. Hiện tại, các phương pháp mã hóa chính có thể được chia thành mã hóa một chiều và mã hóa hai chiều. Mã hóa một chiều: Tính toán tóm tắt dữ l ...

Đăng vào ngày 1 tháng 6 lúc 01:24

Phân tích và Giải pháp Kỹ thuật cho Các Bài toán Crypto, Misc và Reverse Engineering

1. Phân tích bài toán lũy thừa modulo (Crypto Warmup) Bài toán yêu cầu khôi phục giá trị ban đầu dựa trên tính chất phân phối của phép lũy thừa modulo. Cụ thể, ta có công thức $(5m)^e \pmod n \equiv (5^e \pmod n) \cdot (m^e \pmod n) \pmod n$. Biết rằng $c \equiv m^e \pmod n$, ta chỉ cần tính toán tích của $5^e \pmod n$ và $c$, sau đó lấy phần d ...

Đăng vào ngày 21 tháng 5 lúc 18:21