Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

Steganography ตามภาพโดยใช้ Python Programming


ในบทความนี้ เราจะเรียนรู้เกี่ยวกับ Steganography แบบรูปภาพโดยใช้ Python การชวเลขเป็นวิธีการซ่อนข้อความหลังเสียง วิดีโอ และรูปภาพ ใช้เพื่อเพิ่มความปลอดภัยและป้องกันการเรียกร้องลิขสิทธิ์ที่เป็นเท็จ

เรากำลังบรรลุสิ่งนี้ด้วยความช่วยเหลือของคุณลักษณะการเข้ารหัสที่มีอยู่ใน stepic โมดูลที่มีอยู่ใน Python สำหรับวัตถุประสงค์ในการแสดงและการดู เราใช้ PIL (Python Imaging Library) มีอยู่ใน Python

Ide ที่ต้องการ − สมุดบันทึก Jupyter

การนำเข้าการอ้างอิงทั้งหมด -

>>> from PIL import Image


>>> import stepic

ในบทความนี้ เราจะทำการเข้ารหัสข้อความตามภาพด้านล่าง โปรดดาวน์โหลดภาพด้านล่างและบันทึกเป็น “logo.png ” ในโฟลเดอร์ localhost ของสมุดบันทึก jupyter

Steganography ตามภาพโดยใช้ Python Programming

คุณสามารถใช้ภาพใดก็ได้ที่คุณเลือก คุณเพียงแค่ต้องระบุเส้นทางของรูปภาพของคุณภายในเครื่องหมายคำพูดคู่

>>> img = Image.open('logo.png')
>>> img.show()

ในที่นี้ ฟังก์ชันรูปภาพช่วยให้เราสามารถเปิด "ภาพ" ที่จำเป็นต้องดำเนินการเกี่ยวกับภาพยนต์ .show() ทำให้เราเห็นภาพในรูปแบบป๊อปอัปดังที่แสดงด้านล่าง

Steganography ตามภาพโดยใช้ Python Programming

ขณะนี้ใช้โมดูล stepic เราเข้ารหัสข้อความเป็นข้อมูลไบนารี 8 บิตโดยใช้ค่า ASCII สำหรับการเข้ารหัส .encode() ใช้ฟังก์ชันที่ยอมรับสองพารามิเตอร์คือรูปภาพและข้อความ

เราใช้ .save() ฟังก์ชั่นบันทึกข้อความที่ซ่อนไว้ในภาพต้นฉบับของเรา

>>> img1 = stepic.encode(im, b'Tutorialspoint')
>>> img1.save('logo.png', 'PNG')

ตอนนี้เรามาแสดงเข้ารหัส ภาพ

>>> img1 = Image.open('logo.png')
>>> img1.show()

Steganography ตามภาพโดยใช้ Python Programming

ฉันคิดว่าคุณไม่สังเกตเห็นการเปลี่ยนแปลงในสองภาพ เนื่องจากข้อความนั้น ถูกซ่อน และไม่สามารถมองเห็นได้โดยตรง

หากต้องการตรวจสอบว่าคุณเข้ารหัสข้อความสำเร็จแล้ว โปรดใช้รหัสด้านล่าง

>>> im2 = Image.open('logo.png')
>>> message_hidden = stepic.decode(im2)
>>> print(message_hidden)


'Tutorialspoint'

ข้อความที่ซ่อน/เข้ารหัสนี้แสดงโดยตัวถอดรหัสในตัวของโมดูล stepic ที่มีอยู่ใน Python

บทสรุป

ในบทความนี้ เราได้เรียนรู้เกี่ยวกับ Steganography ตามภาพโดยใช้โมดูล stepic และ PIL ที่มีอยู่ใน Python 3.x หรือก่อนหน้านั้น