Các lượt nộp
    Danh sách bài
    Trang chủ
    Báo lỗi

    solution

    Đề bài: [An toàn thông tin] Sinh p, q cho RSA từ giá trị khởi tạo

    Sinh hai nguyên tố p, q cho RSA

    Quy trình sinh khóa RSA thường lấy hai số khởi tạo (seed) rồi tìm số nguyên tố kế tiếp của mỗi seed.

    Cho hai seed s1, s2:

    1. p = số nguyên tố nhỏ nhất lớn hơn s1.
    2. q = số nguyên tố nhỏ nhất lớn hơn s2.
    3. Nếu p == q, lấy tiếp số nguyên tố kế tiếp của q để đảm bảo p != q.

    In ra p, q và n = p*q, mỗi giá trị trên một dòng.

    Ví dụ

    Input:
    60 50
    Output:
    61
    53
    3233
    

    next_prime(60) = 61, next_prime(50) = 53, n = 3233.

    • Định dạng đầu vào:

      Một dòng chứa hai số nguyên s1 và s2.

    • Ràng buộc đầu vào:

      0 <= s1, s2 <= 10^15

    • Định dạng đầu ra:

      In ba dòng: p, q, n = p*q.

    Ví dụ:

    Đầu vào:

    60 50
    

    Đầu ra:

    61
    53
    3233

    Giải thích:

    next_prime(60)=61, next_prime(50)=53, tích là 3233.

    Đang tải editor...