مخفی کردن اطلاعات پشت آهنگ با پایتون (روش LSB) (۱) :: Mr Python | مستر پایتون

مخفی کردن اطلاعات پشت آهنگ با پایتون (روش LSB) (۱)

  • ۳۲۶

مخفی کردن اطلاعات پشت آهنگ با پایتون (روش LSB) (۱)

درود به همه !

اگه درست یادم باشه یه بار تو یه پستی قبلا یاد گرفتیم چطوری میشه اطلاعات رو پشت آهنگ مخفی کرد . کاری که میکردیم این بود که اطلاعات رو پشت کاور آهنگ مخفی میکردیم (مخفی کردن اطلاعات پشت عکس) و سپس اون کاور رو باز دوباره روی آهنگ ست میکردیم . امروز دیگه از اون روش استفاده نمیکنیم امروز از یه روش خیلی معروفی میخوایم بهره بگیریم به اسم LSB که اطلاعاتمون رو مستقیما با دستکاری کردن اطلاعات باینری آهنگ پشت اون مخفی میکنیم . این ویدیو رو از دست ندید ...

 

 

سورس کد نوشته شده در ویدیو : 

import wave
import sys

def getBytes(char):
    code = ord(char)
    code = bin(code).lstrip("0b").rjust(8,"0")
    return code

cover = input("Cover : ")
cover = wave.open(cover , mode = "rb")

data = input("data : ")
bits = []

print("covert data to binary ...")
for char in data:
    for bit in getBytes(char):
        bits.append(int(bit))
print("ok")
print()

frames = cover.readframes(cover.getnframes())
frames = bytearray(frames)

if len(frames) < len(bits):
    print("error !")
    sys.exit(0)

print("appending 0")
while len(frames) != len(bits):
    bits.append(0)
print("ok")

print("wait ...")
for i , bit in enumerate(bits):
    frames[i] = frames[i] & 254
    frames[i] = frames[i] | bit
print("ok")

output_name = input("output name : ")
output = wave.open(output_name , mode="wb")
output.setparams(cover.getparams())
output.writeframes(bytes(frames))
output.close()

print("Finish !")
input()

 

 

یا حق !

Telegram Channel : @mrpythonblog

[منبع تصویر پست :‌ https://www.globaltechoutlook.com/]

  • این اسم LSB از کجا میاد؟ مخفف روشی هست؟

    پاسخ:
    داخل ویدیو گفته شده . مخفف Least Significant Bit یا کم ارزش ترین بیت هست . چون همیشه تو این روش کم ارزش ترین بیت رو جایگزین میکنیم با داده مورد نظر بهش میگن LSB .
ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی