Cho số nguyên dương , xuất ra cặp khóa RSA (cả khóa riêng và khóa chung) có độ dài khóa là bit.
Thuật toán tạo khóa RSA như sau:
- Chọn một bán kết -bit . Đặt các thừa số nguyên tố của là và .
- Tính .
- Chọn một số nguyên sao cho và .
- Tính toán .
Khóa công khai bao gồm và . Khóa riêng là .
Quy tắc
- Bạn có thể giả định rằng có tồn tại ít nhất một số nửa nguyên tố với chiều dài bit .
- Đầu ra có thể ở bất kỳ định dạng nhất quán và rõ ràng.
- và phải được chọn từ các phân phối thống nhất rời rạc.
- Bạn có thể giả sử rằng nhỏ hơn hoặc bằng số bit tối đa cho số nguyên có thể biểu thị trong ngôn ngữ của bạn, nếu ngôn ngữ của bạn có hạn chế như vậy.
Hộp cát
—
Mego
Tôi có được phép sử dụng các tiện ích RSA hiện có trong bản bash không?
—
Pavel
Vì vậy, bạn đặc biệt muốn phân phối thống nhất trên tất cả các bán kết N-bit?
—
Misha Lavrov
Có thực sự có một giải pháp cho ? Tôi nghĩ rằng chúng ta có trong trường hợp đó, điều này khiến cho không thể chọn .
—
Arnauld
Hơn nữa, tôi đặc biệt khuyên bạn nên liên kết với ngăn xếp tiền điện tử để giải thích về các số nguyên tố N-bit trong bối cảnh RSA hoặc giải thích rõ hơn về khái niệm trong câu hỏi, vì nó không phải là một điều hiển nhiên.