Hướng dẫn rsa python library - thư viện python rsa
Mật mã khóa công cộng thường chỉ được sử dụng cho một lượng nhỏ dữ liệu. Nó là chậm, và có thể khó sử dụng đúng. Thực tiễn thông thường là sử dụng các phương pháp khác để giảm vấn đề không đối xứng xuống một trong đó bảo mật được cung cấp bởi khóa chung, sau đó sử dụng mật mã khóa công cộng để bảo vệ khóa chia sẻ đó. Ví dụ:
Vì vậy, đây là một bản phác thảo về cách mã hóa có thể trông giống như (cảnh báo, mã chưa được kiểm tra, được nhập trực tiếp vào trình duyệt):
2 là một vectơ khởi tạo cho chế độ hoạt động CBC. Nó cần phải là duy nhất cho mỗi khóa cho mỗi tin nhắn. Thông thường, nó được gửi cùng với dữ liệu trong Cleartext. Ở đây, vì chìa khóa chỉ được sử dụng một lần, bạn có thể sử dụng IV đã biết.initialization vector for the CBC mode of operation. It needs to be unique per key per message. Normally, it's sent alongside the data in cleartext. Here, since the key is only ever used once, you can use a known IV.initialization vector for the CBC mode of operation. It needs to be unique per key per message. Normally, it's sent alongside the data in cleartext. Here, since the key is only ever used once, you can use a known IV.API của mật mã khối được mô tả trong PEP 272. Thật không may, nó chỉ hỗ trợ mã hóa tất cả tại một hoạt động. Đối với các tệp lớn, sẽ tốt hơn nếu mã hóa chunk bằng chunk; Bạn có thể mã hóa ít như một khối tại một thời điểm (16 byte cho AES), nhưng bạn cần một thư viện tiền điện tử tốt hơn cho điều đó. Lưu ý rằng nói chung, bạn không nên mã hóa dữ liệu trực tiếp với RSA. Mối quan tâm rõ ràng nhất là kẻ tấn công biết khóa công khai và do đó có thể cố gắng đoán bản rõ (nếu kẻ tấn công nghĩ rằng bản rõ có thể là 3, thì kẻ tấn công có thể mã hóa 3 với khóa công khai RSA và so sánh kết quả với đầu ra của mã hóa RSA). Một mối quan tâm khác sẽ phát sinh nếu bạn muốn gửi tệp cho nhiều người nhận là nếu bước mã hóa RSA là xác định, thì kẻ tấn công có thể nói rằng các bản rõ là như nhau vì các mã hóa là như nhau. Bảo vệ bình thường chống lại các vấn đề này là sử dụng sơ đồ đệm, bao gồm việc thêm một số dữ liệu bí mật ngẫu nhiên vào bản rõ; Dữ liệu này được gọi là đệm. Kẻ tấn công sau đó không thể đoán được dữ liệu ngẫu nhiên và nhìn thấy các kết quả khác nhau cho mỗi mã hóa vì cùng một bản rõ không bao giờ được mã hóa hai lần; Theo như người nhận hợp pháp có liên quan, phần đệm chỉ là dữ liệu có thể bị vứt đi.padding scheme, which consists of adding some random secret data to the plaintext; this data is called padding. The attacker then cannot guess the random data, and sees different outcomes for every encryption because the same plaintext is never encrypted twice; as far as the legitimate recipient is concerned, the padding is just data that can be thrown away.padding scheme, which consists of adding some random secret data to the plaintext; this data is called padding. The attacker then cannot guess the random data, and sees different outcomes for every encryption because the same plaintext is never encrypted twice; as far as the legitimate recipient is concerned, the padding is just data that can be thrown away.Ở đây, có vẻ như các mối quan tâm trên không áp dụng trong kịch bản này. Tuy nhiên, có những điểm yếu khác có thể phát sinh từ việc sử dụng RSA không được bảo vệ. Cụ thể, nếu số mũ công cộng rất nhỏ (không phải là trường hợp ở đây vì pycrypto sử dụng 65537) hoặc bạn mã hóa cùng một tài liệu cho nhiều người nhận khác nhau (một lần nữa, có lẽ không phải là trường hợp ở đây vì mỗi tin nhắn có khóa bí mật riêng), sau đó Tính toán toán học đơn giản sẽ cho phép kẻ tấn công phục hồi bản rõ RSA. Để tránh cuộc tấn công này, giá trị được mã hóa bằng RSA cần phải có đủ gần với mô đun RSA, do đó, hoạt động mã hóa thực sự thực hiện một số ít mô -đun. Phần đệm tôi đề xuất đảm bảo rằng bằng cách tạo byte bậc cao nhất phù hợp với 0xFF; Điều này được cho là an toàn, mặc dù trong thế giới thực, bạn nên sử dụng chế độ đệm được phê duyệt (OAEP). Hãy coi chừng bằng cách sử dụng Crypto !!! Nó là một thư viện tuyệt vời nhưng nó có vấn đề trong python3.8 'vì thời gian thư viện đã bị xóa đồng hồ thuộc tính (). Để khắc phục nó chỉ cần sửa đổi nguồn ở 2dòng 77 thay đổi 3int 4VietcomBank, BIDV, VietinBank, SacomBank, TechcomBank, Á Châu, TPbank, MBbank, AgriBank, VPbank, SHB, MaritimeBank, DongAbank, VIB, EximBank, HDbank, NCB, Việt Á, OceanBank, PGbank, BacAbank...VietcomBank, BIDV, VietinBank, SacomBank, TechcomBank, Á Châu, TPbank, MBbank, AgriBank, VPbank, SHB, MaritimeBank, DongAbank, VIB, EximBank, HDbank, NCB, Việt Á, OceanBank, PGbank, BacAbank... 0 hữu ích 0 bình luận chia sẻ Đăng nhập để trả lời câu hỏi Có thể bạn quan tâmVietcomBank, BIDV, VietinBank, SacomBank, TechcomBank, Á Châu, TPbank, MBbank, AgriBank, VPbank, SHB, MaritimeBank 0 hữu ích 0 bình luận chia sẻ Đăng nhập để trả lời câu hỏi Có thể bạn quan tâmVietcomBank, BIDV, VietinBank, SacomBank, TechcomBank, Á Châu, TPbank, MBbank, AgriBank, VPbank, SHB, MaritimeBank Có thể bạn quan tâm Bạn cần đăng nhập để tải code qua chức năng này! ĐĂNG NHẬP NGAY
Bất cứ ai có thể giúp tôi viết mã này để giải mã đọc bản mã từ tệp và sau đó sử dụng khóa để giải mã bản mã? 5 bình luận 193k xem chia sẻ 5 bình luận 193k xem chia sẻ answer 52 python
encryption 4 bình luận chia sẻ 4 bình luận chia sẻ answer 9
python
encryption 4 bình luận chia sẻ 0 bình luận chia sẻ answer 8 python
encryption 4 bình luận chia sẻ 2 bình luận chia sẻ answer 3 python 0encryption 4 bình luận chia sẻ 3 bình luận chia sẻ answer 1 python 1encryption 4 bình luận chia sẻ 0 bình luận chia sẻ answer 0 python encryption 4 bình luận chia sẻ 0 bình luận chia sẻ rsapycrypto 0 bình luận chia sẻ |