Featured image of post Báo cáo thí nghiệm 3 về nguyên lý bảo mật mạng - Thực hiện chữ ký RSA - j88 online

Báo cáo thí nghiệm 3 về nguyên lý bảo mật mạng - Thực hiện chữ ký RSA - j88 online

Trải nghiệm cá cược trực tuyến tuyệt vời với J88 Online Mô tả: Khám phá thế giới cá cược trực tuyến tuyệt vời với J88 Online - nơi bạn có thể tham gia các trò chơi phong phú và hấp dẫn online.

RSA là một thuật toán mã hóa bất đối xứng, cho phép giải mã mà không cần truyền trực tiếp khóa. Điều này đảm bảo tính bảo mật của thông tin và tránh được nguy cơ bị phá vỡ khi truyền khóa trực tiếp. Quá trình mã hóa và giải mã trong RSA sử dụng một cặp khóa gồm khóa công khai (public key) và khóa riêng tư (private key). Hai khóa này có mối liên hệ toán học với nhau và nguyên lý hoạt động của thuật toán dựa trên độ khó của việc phân tích thừa số của các số nguyên lớn.

Trong thực tế, khóa riêng tư thường được cá nhân lưu giữ, còn khóa công khai thì được chia sẻ rộng rãi (có thể nhiều người cùng sở hữu). Quy trình tạo chữ ký RSA diễn ra như sau:

(1) Người dùng A tạo ra một cặp khóa (khóa công khai và khóa riêng tư), trong đó khóa riêng tư được giữ kín và chỉ A mới có. Khóa công khai thì được công bố rộng rãi, bất kỳ ai cũng có thể truy cập.

(2) A sử dụng khóa riêng tư để tạo chữ ký cho thông điệp, sau đó gửi cả thông điệp gốc và thông điệp đã được ký đến B.

(3) Khi nhận được thông điệp, B sẽ sử dụng khóa công khai của A để xác minh chữ ký. Nếu nội dung sau khi xác minh khớp với thông điệp gốc, điều này chứng tỏ rằng thông điệp thực sự j88 casino được gửi từ A.

Trong suốt quá trình này, chỉ có hai lần truyền tải: lần đầu tiên là khi A gửi thông điệp đã ký và thông điệp gốc đến B, và lần j88 tặng 50k thứ hai là khi B lấy khóa công khai của A. Ngay cả khi tất cả các lần truyền đều bị kẻ tấn công chặn lại, vẫn không gây nguy hiểm vì chỉ có khóa riêng tư của A mới có thể tạo ra chữ ký hợp lệ. Dù kẻ tấn công biết nội dung thông điệp, chúng cũng không thể giả mạo được thông điệp đã ký gửi đến B, từ đó ngăn chặn được việc thay đổi nội dung thông điệp.

Mã nguồn

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
def func(m, e, n):  
    temp = 1  
    while e > 0:  
        while temp < n and e >= 1:  
            temp = temp * m  
            e = e - 1  
        temp = temp % n  
    return temp  

def main(): n = 55 d = 3 # d là khóa công khai, tương ứng với khóa riêng j88 online tư là 13 e = 27 # e là khóa riêng tư m = int(input("Vui lòng nhập thông điệp cần ký:\n")) # Chuyển đổi đầu vào thành số nguyên ms = func(m, e, n) print("Thông điệp đã ký:", ms) vms = func(ms, d, n) print("Kết quả kiểm tra chữ ký:", vms) if vms == m: print("Xác minh chữ ký thành công!")  
    return 0  

if __name__ == "__main__":  
    main()
Built with Hugo
Theme Stack thiết kế bởi Jimmy