• Tin tức
  • Network
    • Mạng cơ bản
    • Hyper-V
    • Linux
    • Windown Server 2012
  • Security
    • Basic Hacking
    • Deface
    • Kali Linux / Parrot
    • SQL Injection
  • Thủ thuật
    • Khóa Học Miễn Phí
    • Code
    • Mẹo Vặt Máy Tính
    • Facebook
    • Windows 7/8/10/11
    • Đồ Họa
    • Video
  • Software
    • Phần mềm máy tính
    • Phần mềm điện thoại
  • Tin học văn phòng
  • Kiến thức
  • MMO
    • Advertisers – Publishers
    • Affiliate Program
    • Kiếm tiền bằng điện thoại
    • Pay Per Click – PPC
AnonyViet
  • Tin tức
  • Network
    • Mạng cơ bản
    • Hyper-V
    • Linux
    • Windown Server 2012
  • Security
    • Basic Hacking
    • Deface
    • Kali Linux / Parrot
    • SQL Injection
  • Thủ thuật
    • Khóa Học Miễn Phí
    • Code
    • Mẹo Vặt Máy Tính
    • Facebook
    • Windows 7/8/10/11
    • Đồ Họa
    • Video
  • Software
    • Phần mềm máy tính
    • Phần mềm điện thoại
  • Tin học văn phòng
  • Kiến thức
  • MMO
    • Advertisers – Publishers
    • Affiliate Program
    • Kiếm tiền bằng điện thoại
    • Pay Per Click – PPC
No Result
View All Result
  • Tin tức
  • Network
    • Mạng cơ bản
    • Hyper-V
    • Linux
    • Windown Server 2012
  • Security
    • Basic Hacking
    • Deface
    • Kali Linux / Parrot
    • SQL Injection
  • Thủ thuật
    • Khóa Học Miễn Phí
    • Code
    • Mẹo Vặt Máy Tính
    • Facebook
    • Windows 7/8/10/11
    • Đồ Họa
    • Video
  • Software
    • Phần mềm máy tính
    • Phần mềm điện thoại
  • Tin học văn phòng
  • Kiến thức
  • MMO
    • Advertisers – Publishers
    • Affiliate Program
    • Kiếm tiền bằng điện thoại
    • Pay Per Click – PPC
No Result
View All Result
AnonyViet
No Result
View All Result

Cách tạo tin nhắn bí mật trong ảnh bằng Python

Elyx13 by Elyx13
08/10/2020
in Code
Reading Time: 5 mins read
A A
0

Mục lục bài viết

  1. Yêu cầu
    1. Cài đặt
  2. Cách tin nhắn bí mật trong ảnh không cần Key
    1. Ưu điểm
    2. Nhược điểm
    3. Cú pháp
    4. Ví dụ
    5. Giải mã
      1. Cú pháp
      2. Ví dụ
  3. Cách ẩn văn bản trong hình ảnh bằng Secret Key
    1. Ưu điểm
    2. Nhược điểm
    3. Cú pháp
    4. Ví dụ
    5. Giải mã
      1. Cú pháp
      2. Ví dụ

Hôm nay, mình sẽ hướng dẫn các bạn cách áp dụng các kỹ năng mã hoá, bằng cách ẩn mật mã hay tin nhắn bí mật trong ảnh bằng Python. Steganography là kỹ thuật được sử dụng trong một thời gian khá dài. Kể từ Thế chiến II, nó được sử dụng nhiều để làm phương thức liên lạc giữa các đồng minh và ngăn chặn thông tin được kẻ thù nắm giữ bị tiết lộ. Mình sẽ hướng dẫn bạn cách thực hiện việc này bằng hai kỹ thuật khác nhau, một kỹ thuật liên quan đến secret key và cái còn lại thì không.

Cách tạo tin nhắn bí mật trong ảnh bằng Python 13

Các bài viết liên quan

Cách đóng gói code Python 14

Cách đóng gói code Python

25/04/2022
Sử dụng httpx như một trình duyệt Web của Python 15

Sử dụng httpx như một trình duyệt Web của Python

03/04/2022
hoc lap trinh game de khong

Học lập trình Game dễ không? Tiềm năng của ngành lập trình game?

09/03/2022
Nên chọn Flutter và React Native trong năm 2022? 16

Nên chọn Flutter và React Native trong năm 2022?

20/02/2022

Yêu cầu

Các bạn cài đặt Python và sau đó tiếp tục cài đặt 2 thư viện dưới đây.

  • Stegano
  • Steganocryptopy

Cài đặt

pip install steganocryptopy
pip install stegano

Lưu ý: Nếu các bạn dùng Linux thì thay pip thành pip3.

Cách tin nhắn bí mật trong ảnh không cần Key

Mình sẽ ẩn văn bản trong hình ảnh mà không cần bất kỳ khoá mã hoá nào, do đó người nhận hình ảnh có thể giải mã và lấy văn bản ẩn rất dễ.

Ưu điểm

Ưu điểm của việc này là nó rất đơn giản vì thế bạn sẽ không phải giải quyết vấn đề quá phiền phức nào.

Nhược điểm

Bất kỳ ai cũng có thể giải mã miễn là họ sử dụng cùng một thư viện mà bạn đã sử dụng trong quá trình mã hóa.

Cú pháp

from stegano import lsb
secret = lsb.hide(path_to_img, secret_msg)
secret.save(ecrypted_img_name)

Bạn phải có một hình ảnh mẫu trong thư mục dự án của mình để ẩn thông báo, tiếp theo chúng ta phải cung cấp đường dẫn đến hình ảnh đã chuẩn bị.

Ví dụ

>>> from stegano import lsb
>>> secret = lsb.hide("sample.png", "Python is dangerous be careful")
>>> secret.save("sample_secret.png")

Lưu ý: Do file sample.png ở cùng thư mục với file thực thi .py nên chỉ cần ghi tên file ảnh là đủ. Nếu file ảnh khác thư mục, bạn cần phải ghi đầy đủ đường dẫn mới được.

Bây giờ nếu bạn nhìn vào thư mục dự án, bạn sẽ nhận ra có một hình ảnh mới với tên sample_secret.png. Nhìn sơ qua hoặc nhìn kỹ thì bạn cũng chẳng biết có tin nhắn ẩn trong đấy đâu, đúng không?

Giải mã

Đảm bảo rằng hình ảnh có văn bản ẩn nằm trong thư mục dự án của bạn.

Cú pháp

>>> from stegano import lsb
>>>lsb.reveal(path_to_an_image)

Ví dụ

>>> from stegano import lsb
>>>lsb.reveal('sample_secret.png')
'Python is dangerous be careful'

Xong rồi đó, bây giờ chúng ta sẽ đi sâu vào cách ẩn văn bản trong hình ảnh bằng secret key.

Cách ẩn văn bản trong hình ảnh bằng Secret Key

Mình sẽ ẩn văn bản bí mật cùng với một khóa mã hóa để giải mã nó. Do đó, chỉ người có key mới có thể giải mã nó.

Ưu điểm

Nó rất an toàn vì chỉ những người có key mới có thể giải mã nó.

Nhược điểm

Khi key mã hóa bị mất, quá trình giải mã sẽ hơi phức tạp.

Cú pháp

>>>from steganocryptopy.steganography import Steganography
>>> Steganography.generate_key(path_to_key)
>>> encrypted = Steganography.encrypt(path_to_key, path_to_img, path_to_secretfile)
>>> encrypted.save(encrypted_imgname)

Ví dụ

Giả sử mình có một tệp chứa key có tên là key, một tệp chứa thông báo ẩn có tên là classified.us và hình ảnh có tên là sample.png.

>>>from steganocryptopy.steganography import Steganography
>>> Steganography.generate_key("key")
>>> encrypted = Steganography.encrypt("key","sample.png",  "classified.us")
>>> encrypted.save("Secret.png")

Bây giờ khi bạn chạy đoạn mã trên, bạn sẽ thấy một hình ảnh mới trên thư mục dự án của bạn có tên Secret.png.

Giải mã

Để giải mã hình ảnh, bạn sẽ cần tệp chứa key và hình ảnh được mã hóa của bạn.

Cú pháp

>>> from steganocryptopy.steganography import Steganography
>>> Steganography.decrypt(path_to_key, path_to_image)

Ví dụ

>>> from steganocryptopy.steganography import Steganography
>>> Steganography.decrypt("key", "Secret_img.png")
'Life is short you need Python\n'

Chúc mừng, bạn vừa học được cách ẩn tin nhắn bí mật trong hình ảnh, Bây giờ đừng ngại chia sẻ tin nhắn với bạn bè của mình nhá.

Tags: codemật mãpythontin nhắn
Previous Post

Kinh nghiệm học Công nghệ thông tin dành cho người mới bắt đầu

Next Post

Python chuẩn bị vượt mặt Java trong bảng xếp hạng ngôn ngữ lập trình phổ biến

Elyx13

Elyx13

Có người không dám bước vì sợ gãy chân, nhưng sợ gãy chân mà không dám bước đi thì khác nào chân đã gãy.

Related Posts

Cách đóng gói code Python 17
Code

Cách đóng gói code Python

25/04/2022
Có nên dùng Unity để lập trình game không? 18
Code

Có nên dùng Unity để lập trình game không?

07/04/2022
Sử dụng httpx như một trình duyệt Web của Python 19
Code

Sử dụng httpx như một trình duyệt Web của Python

03/04/2022
top 3 website hoc lap trinh web tot nhat
Code

Top 4 Website học lập trình Web miễn phí tốt nhất trong năm 2022

29/03/2022
tao website cuoi mien phi
Code

Hướng dẫn tạo Website thông báo đám cưới miễn phí

21/03/2022
godot lap trinh game
Godot

Có nên học Godot Engine để lập trình Game không?

15/03/2022 - Updated on 17/03/2022
Next Post
lập trình python

Python chuẩn bị vượt mặt Java trong bảng xếp hạng ngôn ngữ lập trình phổ biến

guest
guest

Website này sử dụng Akismet để hạn chế spam. Tìm hiểu bình luận của bạn được duyệt như thế nào.

0 Comments
Inline Feedbacks
View all comments

Liên hệ Quảng Cáo

Lien he AnonyViet

Đối tác —

Fshare

Các bài mới

5 Website giúp bạn tìm chủ tài khoản Email là ai 20

5 Website giúp bạn tìm chủ tài khoản Email là ai

24/05/2022
godeal24

Giá bản quyền Windows 10 chỉ 5.71$, miễn phí nâng cấp lên Windows 11

23/05/2022
Cách thiết lập Shadowsocks với Outline để tạo Proxy cho riêng bạn 21

Cách thiết lập Shadowsocks với Outline để tạo Proxy cho riêng bạn

23/05/2022
coupon dmca

Cách bảo vệ bản quyền Website với DMCA – Coupon nâng cấp Pro giảm 50%

23/05/2022
hosting azdigi

Đánh giá gói Turbo Business Hosting của AZDIGI

22/05/2022

Ads

Giới thiệu

AnonyViet

AnonyViet

Nơi chia sẻ những kiến thức mà bạn chưa từng được học trên ghế nhà trường!

Chúng tôi sẵn sàng đón những ý kiến đóng góp, cũng như bài viết của các bạn gửi đến AnonyViet.

Hãy cùng AnonyViet xây dựng một cộng đồng CNTT lớn mạnh nhất!

Giới thiệu

AnonyViet là Website chia sẻ miễn phí tất cả các kiến thức về công nghệ thông tin. AnonyViet cung cấp mọi giải pháp về mạng máy tính, phần mềm, đồ họa và MMO.

Liên hệ

Email: anonyviet.com[@]gmail.com

1409 Hill Street #01-01A
Old Hill Street Police Station
Singapore 179369

 

Bản quyền: DMCA.com Protection Status

Bài viết mới

  • 5 Website giúp bạn tìm chủ tài khoản Email là ai
  • Giá bản quyền Windows 10 chỉ 5.71$, miễn phí nâng cấp lên Windows 11
  • Cách thiết lập Shadowsocks với Outline để tạo Proxy cho riêng bạn
  • Cách bảo vệ bản quyền Website với DMCA – Coupon nâng cấp Pro giảm 50%
  • Đánh giá gói Turbo Business Hosting của AZDIGI
  • 5 vụ lừa đảo nguy hiểm nhất trên không gian mạng

©2022 AnonyViet - Chúng tôi mang đến cho bạn những kiến thức bổ ích về Công nghệ. Google iwin888 Bing tải game iwin Github tải iwin apk Github tải win456 Youtube ku fun wikipedia 88vin reddit twin 567LIVE MMLive SP666 92lottery sun86 stackoverflow

No Result
View All Result
  • Tin tức
  • Network
    • Mạng cơ bản
    • Hyper-V
    • Linux
    • Windown Server 2012
  • Security
    • Basic Hacking
    • Deface
    • Kali Linux / Parrot
    • SQL Injection
  • Thủ thuật
    • Khóa Học Miễn Phí
    • Code
    • Mẹo Vặt Máy Tính
    • Facebook
    • Windows 7/8/10/11
    • Đồ Họa
    • Video
  • Software
    • Phần mềm máy tính
    • Phần mềm điện thoại
  • Tin học văn phòng
  • Kiến thức
  • MMO
    • Advertisers – Publishers
    • Affiliate Program
    • Kiếm tiền bằng điện thoại
    • Pay Per Click – PPC

©2022 AnonyViet - Chúng tôi mang đến cho bạn những kiến thức bổ ích về Công nghệ. Google iwin888 Bing tải game iwin Github tải iwin apk Github tải win456 Youtube ku fun wikipedia 88vin reddit twin 567LIVE MMLive SP666 92lottery sun86 stackoverflow

wpDiscuz
pixel