เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบฅเบฐเบšเบปเบšเป„เบŸเบฅเปŒ

Hey Habr.

เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบขเบฒเบโ€‹เบˆเบฐโ€‹เบ™เปเบฒโ€‹เบชเบฐโ€‹เป€เบซเบ™เบตโ€‹เปƒเบซเป‰โ€‹เบ—เปˆเบฒเบ™โ€‹เป‚เบ„เบ‡โ€‹เบเบฒเบ™โ€‹เบ‚เบฐโ€‹เบซเบ™เบฒเบ”โ€‹เบ™เป‰เบญเบโ€‹เบเปˆเบฝเบงโ€‹เบเบฑเบšโ€‹เบเบฒเบ™โ€‹ เบชเบฐเบ–เบดเบ•เบด, เป€เบฎเบฑเบ”เปƒเบ™เป€เบงเบฅเบฒเบซเบงเปˆเบฒเบ‡เบ‚เบญเบ‡เบ‚เป‰เบญเบเบˆเบฒเบเบเบฒเบ™เบชเบถเบเบชเบฒ.

เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เบชเป‰เบฒเบ‡เป‚เบ„เบ‡เบเบฒเบ™เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเป€เบŠเบทเปˆเบญเบ‡เป„เบงเป‰เปƒเบ™เบฅเบฐเบšเบปเบšเป„เบŸเบฅเปŒ (เบ•เบทเปˆเบกเบญเบตเบ FS).
เบ™เบตเป‰เบชเบฒเบกเบฒเบ”เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป€เบžเบทเปˆเบญเบฅเบฑเบเบ‚เปเป‰เบกเบนเบ™เบฅเบฑเบšเป€เบžเบทเปˆเบญเบˆเบธเบ”เบ›เบฐเบชเบปเบ‡เบเบฒเบ™เบชเบถเบเบชเบฒ.

เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบฅเบฐเบšเบปเบšเป„เบŸเบฅเปŒ

Linux FS เป€เบเบปเปˆเบฒเบซเบผเบฒเบเบ–เบทเบเป€เบฅเบทเบญเบเป€เบ›เบฑเบ™เป€เบ„เบทเปˆเบญเบ‡เบ•เบปเป‰เบ™เปเบšเบš ext2.

ะ ะตะฐะปะธะทะฐั†ะธั

เบเบฒเบ™เบžเบดเบˆเบฒเบฅเบฐเบ™เบฒเบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบ›เบฐเบ•เบดเบšเบฑเบ”

เบ–เป‰เบฒเบกเบฑเบ™เบ”เบตเบ—เบตเปˆเบˆเบฐ "เบ–เบญเบ”เบ–เบญเบ™" เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™ ext2, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ›เปˆเบฝเบ™เปเบ—เบ™เบ—เบตเปˆเปƒเบ™ FS เบกเบตเบญเบฑเบ™เบ—เบตเปˆเป€เบญเบตเป‰เบ™เบงเปˆเบฒ. Superblocks, เป€เบŠเบดเปˆเบ‡เบชเบฐเบซเบ™เบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบžเบทเป‰เบ™เบ–เบฒเบ™เบเปˆเบฝเบงเบเบฑเบšเบฅเบฐเบšเบปเบš. เบซเบผเบฑเบ‡เบˆเบฒเบเบ—เบตเปˆเบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบžเบปเบšเป€เบซเบฑเบ™ เบšเบฅเบฑเบญเบ Bitmap ะธ เบ•เบฒเบ•เบฐเบฅเบฒเบ‡ Inode. เป€เบเบทเบญเบšเบ—เบฑเบ™เบ—เบต, เบ„เบงเบฒเบกเบ„เบดเบ”เบ‚เบญเบ‡เบเบฒเบ™เบšเบฑเบ™เบ—เบถเบเบ‚เปเป‰เบกเบนเบ™เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบ•เบฑเบ™ FS เบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒเปƒเบ™เบ›เบฐเบˆเบธเบšเบฑเบ™เป„เบ”เป‰เป€เบเบตเบ”เบกเบฒ. เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบกเบฑเบ™เบ„เบธเป‰เบกเบ„เปˆเบฒเบ—เบตเปˆเบˆเบฐเบ„เบดเบ”เบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบ›เบปเบเบ›เป‰เบญเบ‡เบˆเบฒเบเบ™เบฑเบเบ‚เบฝเบ™เป‚เบ›เบฅเปเบเบฅเบกเบ›เบฐเบเบญเบšเบญเบฒเบงเบธเบ” เบšเบฑเบ™เบ™เบฒเบ—เบดเบเบฒเบ™ hex.

เบ–เป‰เบฒเบ—เปˆเบฒเบ™เป€เบเบฑเบšเบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเป€เบŠเบทเปˆเบญเบ‡เป„เบงเป‰เป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™เป€เบ‚เบปเป‰เบฒเบฅเบฐเบซเบฑเบ”, เป€เบ–เบดเบ‡เบงเปˆเบฒเบˆเบฐเบกเบตเบ„เบงเบฒเบกเบกเบปเบงเปƒเบ™ FS, เบกเบฑเบ™เบเบฑเบ‡เบ„เบปเบ‡เบกเบตเบ„เบงเบฒเบกเบŠเบฑเบ”เป€เบˆเบ™เป€เบเบตเบ™เป„เบ›, เป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐเบ–เป‰เบฒเบ™เบฑเบเบ‚เบฝเบ™เป‚เบ›เบฅเปเบเบฅเบกเบฎเบนเป‰เบงเปˆเบฒเบˆเบฐเบŠเบญเบเบซเบฒเบซเบเบฑเบ‡. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบกเบฑเบ™เป„เบ”เป‰เบ–เบทเบเบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเป€เบ‚เบปเป‰เบฒเบฅเบฐเบซเบฑเบ”เบšเบฅเบฑเบญเบเบ—เบฑเบ‡เบซเบกเบปเบ”เบ‚เบญเบ‡เป„เบŸเบฅเปŒเปเบซเบผเปˆเบ‡. เบ‚เป‰เบญเบเป€เบฅเบทเบญเบ block cipher AES, เปเบ•เปˆเบ•เบฒเบกเบ—เบตเปˆเบ—เปˆเบฒเบ™เป€เบ‚เบปเป‰เบฒเปƒเบˆ, เบ™เบตเป‰เบšเปเปˆเบชเปเบฒเบ„เบฑเบ™.

เป€เบžเบทเปˆเบญเปเบเบเบ—เปˆเบญเบ™เป„เบกเป‰เบ—เบตเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบˆเบฒเบเบชเบดเปˆเบ‡เบญเบทเปˆเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เปƒเบ™เป€เบงเบฅเบฒเบญเปˆเบฒเบ™, เบกเบฑเบ™เป„เบ”เป‰เบ–เบทเบเบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเบ—เบตเปˆเบˆเบฐเป€เบžเบตเปˆเบกเป€เบ„เบทเปˆเบญเบ‡เบซเบกเบฒเบเบžเบดเป€เบชเบ”เปƒเบชเปˆเปเบ•เปˆเบฅเบฐเบ•เบฑเบ™เปƒเบ™เบ•เบญเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ‚เบญเบ‡เบ•เบฑเบ™. เป‚เบ—เป€เบ„เบฑเบ™เบ™เบตเป‰เบ–เบทเบเป€เบ‚เบปเป‰เบฒเบฅเบฐเบซเบฑเบ”เป‚เบ”เบเบ‚เบถเป‰เบ™เบเบฑเบšเปเบฒเบเป€เบฅเบเบšเบฅเบฑเบญเบเปƒเบ™เป„เบŸเบฅเปŒเบ•เบปเป‰เบ™เบชเบฐเบšเบฑเบš. trick เบ™เบตเป‰เบ—เบฑเบ™เบ—เบตเป€เบฎเบฑเบ”เปƒเบซเป‰เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบšเปเปˆเบžเบฝเบ‡เปเบ•เปˆเป€เบžเบทเปˆเบญเบŠเบญเบเบซเบฒเบ•เบฑเบ™เบ—เบตเปˆเบˆเปเบฒเป€เบ›เบฑเบ™, เปเบ•เปˆเบเบฑเบ‡เบฎเบฑเบšเบฎเบนเป‰เบ„เปเบฒเบชเบฑเปˆเบ‡เบ—เบตเปˆเบ–เบทเบเบ•เป‰เบญเบ‡เบ‚เบญเบ‡เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒ.

เบซเบผเบฑเบเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ—เบปเปˆเบงเป„เบ›เบ‚เบญเบ‡เบฅเบฐเบšเบปเบš.

เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบฅเบฐเบšเบปเบšเป„เบŸเบฅเปŒ

เบ‚เบฑเป‰เบ™เบ•เบญเบ™เบเบฒเบ™เบšเบฑเบ™เบ—เบถเบ

เบˆเบธเบ”เบ—เบตเปˆ:

  • เบ—เปเบฒเบญเบดเบ”เบ‚เบฝเบ™เบ‚เปเป‰เบกเบนเบ™เบšเบฒเบ‡เบขเปˆเบฒเบ‡เปƒเบซเป‰เบเบฑเบšเบฅเบฐเบšเบปเบšเป„เบŸเบฅเปŒเปเบซเบผเปˆเบ‡;
  • เบฅเบถเบšเบ‚เปเป‰เบกเบนเบ™เบ™เบตเป‰ (เบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”);
  • เป„เบŸเบฅเปŒเบ—เบตเปˆเบˆเบฐเป€เบŠเบทเปˆเบญเบ‡เป„เบงเป‰เปเบกเปˆเบ™เปเบšเปˆเบ‡เบญเบญเบเป€เบ›เบฑเบ™เบ—เปˆเบญเบ™เป„เบกเป‰เบ—เบตเปˆเบกเบตเบ„เบงเบฒเบกเบเบฒเบงเป€เบ—เบปเปˆเบฒเบ—เบฝเบกเบเบฑเบ™, เป€เบžเบตเปˆเบกเป€เบ„เบทเปˆเบญเบ‡เบซเบกเบฒเบ;
  • เป€เบ‚เบปเป‰เบฒเบฅเบฐเบซเบฑเบ”เบ•เบฑเบ™เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰;
  • เบงเบฒเบ‡เบšเบฅเบฑเบญเบเบ—เบตเปˆเบ–เบทเบเป€เบ‚เบปเป‰เบฒเบฅเบฐเบซเบฑเบ”เป„เบงเป‰เปƒเบ™เบšเบฅเบฑเบญเบ FS เบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒ.

เบชเปเบฒเบฅเบฑเบšเบ„เบปเบ™เบฎเบฑเบเปเบœเบ™เบงเบฒเบ”เบ•เบฑเบ™

เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰เปเบกเปˆเบ™เปเบœเบ™เบงเบฒเบ”เบšเบฅเบฑเบญเบเบ‚เบญเบ‡เบฅเบฐเบšเบปเบšเบเบฒเบ™เบšเบฑเบ™เบ—เบถเบ. เบชเบนเบ”เบเบฒเบ™เบ„เบดเบ”เป„เบฅเปˆเป„เบ”เป‰เบฎเบฑเบšเบชเบตเปˆเป„เบŸเบฅเปŒเป€เบ›เบฑเบ™เบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™:
- เบฎเบนเบšเบžเบฒเบšเบ‚เบญเบ‡เบฅเบฐเบšเบปเบšเป„เบŸเบฅเปŒเบ—เบตเปˆเบชเบฒเบกเบฒเบ”เบ”เบฑเบ”เปเบ›เบ‡เป„เบ”เป‰;
-File เบ‚เบถเป‰เบ™โ€‹เบเบฑเบš steganographyโ€‹;
- เป„เบŸเบฅเปŒเบ—เบตเปˆเบกเบตเบฅเบฐเบซเบฑเบ”เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเบฅเบฐเบซเบฑเบ”เบชเปเบฒเบฅเบฑเบš AES;
- เป„เบŸเบฅโ€‹เปŒโ€‹เบ—เบตเปˆโ€‹เบกเบตโ€‹เป€เบ„เบทเปˆเบญเบ‡โ€‹เบซเบกเบฒเบโ€‹.
เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบฅเบฐเบšเบปเบšเป„เบŸเบฅเปŒ

เบกเบฑเบ™เป€เบ›เบฑเบ™เบกเบนเบ™เบ„เปˆเบฒเบ—เบตเปˆเบชเบฑเบ‡เป€เบเบ”เป€เบซเบฑเบ™เบ—เบฑเบ™เบ—เบตเบงเปˆเบฒ algorithm เบ™เบตเป‰เบกเบตเบˆเบธเบ”เบญเปˆเบญเบ™เบซเบ™เบถเปˆเบ‡: เบซเบผเบฑเบ‡เบˆเบฒเบเบเบฒเบ™เบ‚เบฝเบ™เป„เบŸเบฅเปŒเปƒเบชเปˆ FS, เบชเบฒเบกเบฒเบ”เบšเปเปˆเป„เบ”เป‰ เบ‚เบฝเบ™เบชเบดเปˆเบ‡เปƒเบซเบกเปˆเป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™ FS, เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒเบ‚เปเป‰เบกเบนเบ™เปƒเบซเบกเปˆเบชเบฒเบกเบฒเบ”เบชเบดเป‰เบ™เบชเบธเบ”เบขเบนเปˆเปƒเบ™เบšเบฅเบฑเบญเบเบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบˆเบฑเบ”เบชเบฑเบ™เปƒเบซเป‰เบเบฑเบšเป„เบŸเบฅเปŒ zip เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ, เป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒเบ™เบตเป‰เบเบฑเบ‡เป€เบ›เบตเบ”เบ„เบงเบฒเบกเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ‚เบญเบ‡ "เบเบงเบกเป€เบญเบปเบฒเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบขเปˆเบฒเบ‡เป„เบงเบงเบฒ."

เปเบ•เปˆเบกเบฑเบ™เป€เบซเบฑเบ™เป„เบ”เป‰เบŠเบฑเบ”เป€เบˆเบ™เบงเปˆเบฒเบงเบดเบ—เบตเบเบฒเบ™เบ™เบตเป‰เบชเบฒเบกเบฒเบ”เปเบเป‰เป„เบ‚เป„เบ”เป‰เปเบ™เบงเปƒเบ”: เบกเบฑเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ‚เบฝเบ™เปƒเบซเบกเปˆ algorithm เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ‚เบฝเบ™เบšเบฅเบฑเบญเบเปƒเบ™ FS. เบ™เบตเป‰เปเบกเปˆเบ™เบงเบฝเบเบ‡เบฒเบ™เบ—เบตเปˆเป€เบ‚เบปเป‰เบฒเปƒเบˆเป„เบ”เป‰, เปเบ•เปˆเปƒเบŠเป‰เป€เบงเบฅเบฒเบซเบผเบฒเบเบขเปˆเบฒเบ‡เบšเปเปˆเบซเบ™เป‰เบฒเป€เบŠเบทเปˆเบญ.
เบชเปเบฒเบฅเบฑเบšเบซเบผเบฑเบเบ–เบฒเบ™เบชเบฐเปเบ”เบ‡เบ‚เบญเบ‡ Consept เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบšเปเปˆเป„เบ”เป‰เบ›เบฐเบ•เบดเบšเบฑเบ”เบ™เบตเป‰.

เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ•เปเปˆเป„เบ›เบ™เบตเป‰เบˆเบฐเบ–เบทเบเป€เบฎเบฑเบ”เบเบฑเบš FS; เบ™เบตเป‰เปเบกเปˆเบ™เบชเบดเปˆเบ‡เบ—เบตเปˆ FS เป€เบšเบดเปˆเบ‡เบ„เบทเบงเปˆเบฒเบเปˆเบญเบ™ steganography (เป„เบŸเบฅเปŒเบชเบฝเบ‡เป„เบ”เป‰เบ–เบทเบเบšเบฑเบ™เบ—เบถเบเป„เบงเป‰เบเปˆเบญเบ™เบซเบ™เป‰เบฒเบ™เบตเป‰).
เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบฅเบฐเบšเบปเบšเป„เบŸเบฅเปŒ
เปเบฅเบฐเบ™เบตเป‰เปเบกเปˆเบ™เบชเบดเปˆเบ‡เบ—เบตเปˆ FS เป€เบšเบดเปˆเบ‡เบ„เบทเบงเปˆเบฒเบกเบตเบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบ–เบทเบ zip เปเบฅเป‰เบง.
เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบฅเบฐเบšเบปเบšเป„เบŸเบฅเปŒ

เบชเบนเบ”เบเบฒเบ™เบญเปˆเบฒเบ™

เบˆเบธเบ”เบ—เบตเปˆ:

  • เบ”เป‰เบงเบเบ„เบงเบฒเบกเบฎเบนเป‰เบเปˆเบฝเบงเบเบฑเบšเบ„เบตเปเบฅเบฐเบงเบดเบ—เบตเบเบฒเบ™เบชเป‰เบฒเบ‡เป€เบ„เบทเปˆเบญเบ‡เบซเบกเบฒเบ, เบ›เบฐเบเบญเบšเป€เบ„เบทเปˆเบญเบ‡เบซเบกเบฒเบ N เบ—เปเบฒเบญเบดเบ”, เบ”เป‰เบงเบเบเบฒเบ™เบฎเบฑเบšเบ›เบฐเบเบฑเบ™เบงเปˆเบฒ N เบ„เบนเบ™เบ”เป‰เบงเบเบ„เบงเบฒเบกเบเบฒเบงเบ‚เบญเบ‡เบšเบฅเบฑเบญเบเบฅเบฐเบšเบปเบšเป„เบŸเบฅเปŒเปเบกเปˆเบ™เปƒเบซเบเปˆเบเบงเปˆเบฒเบ„เบงเบฒเบกเบเบฒเบงเบ‚เบญเบ‡เป„เบŸเบฅเปŒ zipped;
  • เบ„เบปเป‰เบ™เบซเบฒเบšเบฅเบฑเบญเบเปƒเบ™ FS เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ”เป‰เบงเบเป€เบ„เบทเปˆเบญเบ‡เบซเบกเบฒเบ;
  • เบ–เบญเบ”เบฅเบฐเบซเบฑเบ”เบ—เปˆเบญเบ™เป„เบกเป‰เบ—เบตเปˆเป„เบ”เป‰เบฎเบฑเบšเปเบฅเบฐเปเบเบเป€เบ„เบทเปˆเบญเบ‡เบซเบกเบฒเบ;
  • เป€เบเบฑเบšเบเปเบฒเบ‚เปเป‰เบ•เบฑเบ™เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเปƒเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡เบ—เบตเปˆเบ–เบทเบเบ•เป‰เบญเบ‡เปเบฅเบฐเป„เบ”เป‰เบฎเบฑเบšเป„เบŸเบฅเปŒเปเบซเบผเปˆเบ‡.

เบชเปเบฒเบฅเบฑเบšเบ„เบปเบ™เบฎเบฑเบเปเบœเบ™เบงเบฒเบ”เบ•เบฑเบ™

เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰เปเบกเปˆเบ™เปเบœเบ™เบงเบฒเบ”เบšเบฅเบฑเบญเบเบ‚เบญเบ‡เบฅเบฐเบšเบปเบšเบเบฒเบ™เบšเบฑเบ™เบ—เบถเบ. เบชเบนเบ”เบเบฒเบ™เบ„เบดเบ”เป„เบฅเปˆเป„เบ”เป‰เบฎเบฑเบšเบชเบฒเบกเป„เบŸเบฅเปŒเป€เบ›เบฑเบ™เบเบฒเบ™เบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™:
- เบฎเบนเบšโ€‹เบžเบฒเบšโ€‹เบฅเบฐโ€‹เบšเบปเบšโ€‹เป„เบŸเบฅโ€‹เปŒโ€‹;
- เป„เบŸเบฅเปŒเบ—เบตเปˆเบกเบตเบฅเบฐเบซเบฑเบ”เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเบฅเบฐเบซเบฑเบ”เบชเปเบฒเบฅเบฑเบš AES;
- เป„เบŸเบฅโ€‹เปŒโ€‹เบ—เบตเปˆโ€‹เบกเบตโ€‹เป€เบ„เบทเปˆเบญเบ‡โ€‹เบซเบกเบฒเบโ€‹.
เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบฅเบฐเบšเบปเบšเป„เบŸเบฅเปŒ

เบซเบผเบฑเบ‡เบˆเบฒเบเป‚เบ„เบ‡เบเบฒเบ™เปเบฅเปˆเบ™, เป„เบŸเบฅเปŒ Read เบˆเบฐเบ›เบฒเบเบปเบ”, เป€เบŠเบดเปˆเบ‡เบˆเบฐเป€เบ›เบฑเบ™เป„เบŸเบฅเปŒเบ—เบตเปˆเบชเบฐเบเบฑเบ”เบˆเบฒเบเบฅเบฐเบšเบปเบšเป„เบŸเบฅเปŒ steganographed; เบ–เป‰เบฒเบฅเบฐเบซเบฑเบ”เบซเบผเบทเป€เบ„เบทเปˆเบญเบ‡เบซเบกเบฒเบเบ–เบทเบเบฅเบฐเบšเบธเบšเปเปˆเบ–เบทเบเบ•เป‰เบญเบ‡, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เป„เบŸเบฅเปŒ Read เบˆเบฐเบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒ.
(เบชเปเบฒเบฅเบฑเบšเบœเบนเป‰เบฎเบฑเบเบ„เบงเบฒเบกเบ‡เบฒเบก, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เปƒเบชเปˆเบšเปเปˆเบžเบฝเบ‡เปเบ•เปˆเป„เบŸเบฅเปŒ, เปเบ•เปˆ "header" เบ—เบตเปˆเบกเบตเบ‚เปเป‰เบกเบนเบ™ meta: เบŠเบทเปˆเป„เบŸเบฅเปŒ, เบชเบดเบ”, เป€เบงเบฅเบฒเบ”เบฑเบ”เปเบเป‰เบซเบผเป‰เบฒเบชเบธเบ”, เปเบฅเบฐเบญเบทเปˆเบ™เป†.)

เบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”

เป€เบžเบทเปˆเบญเบ„เบงเบฒเบกเบชเบฐเบ”เบงเบ, bash scripts เป„เบ”เป‰เบ–เบทเบเบ‚เบฝเบ™เป€เบžเบทเปˆเบญเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เบเบฒเบ™เป€เบ›เบตเบ”เบ•เบปเบงเปƒเบ™ Linux (เบ—เบปเบ”เบชเบญเบšเปƒเบ™ Ubuntu 16.04.3 LTS).
เปƒเบซเป‰เป€เบšเบดเปˆเบ‡เบขเบนเปˆเปƒเบ™เบ‚เบฑเป‰เบ™เบ•เบญเบ™เบเบฒเบ™เป€เบ›เบตเบ”เบ•เบปเบงเป‚เบ”เบเบ‚เบฑเป‰เบ™เบ•เบญเบ™.
เบšเบฑเบ™เบ—เบถเบ:

  1. sudo Copy_Flash.sh โ€œDEVICEโ€ - เป€เบญเบปเบฒเบฎเบนเบš FS เบˆเบฒเบ DEVICE (flash);
  2. ./write.sh โ€œFILEโ€ โ€œKEYโ€ โ€œMARKERโ€ โ€“ เบชเป‰เบฒเบ‡เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบชเบฐเป€เปเบทเบญเบ™, เบ”เบฒเบงเป‚เบซเบผเบ”เบซเป‰เบญเบ‡เบชเบฐเปเบธเบ”เบ—เบตเปˆเบˆเบณเป€เบ›เบฑเบ™ เปเบฅเบฐเปเบฅเปˆเบ™เบ‚เบฝเบ™เปœเบฑเบ‡เบชเบท;
  3. sudo ./Write_Flash.sh โ€œDEVICEโ€ โ€“ เบ‚เบฝเบ™ FS เบ—เบตเปˆเบ›เปˆเบฝเบ™เปเบฅเป‰เบงเปƒเบชเปˆ DEVICE.

เบเบฒเบ™เบญเปˆเบฒเบ™:

  1. sudo Copy_Flash.sh โ€œDEVICEโ€ - เป€เบญเบปเบฒเบฎเบนเบš FS เบˆเบฒเบ DEVICE (flash);
  2. ./Read.sh โ€œKEYโ€ 'MARKERโ€ - เบชเป‰เบฒเบ‡เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบก virtual, เบ”เบฒเบงเป‚เบซเบฅเบ”เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”เบ—เบตเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เปเบฅเบฐเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบ‚เป‰เบฒเบกเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบญเปˆเบฒเบ™;
  3. เปƒเบ™เป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบตเบ›เบฐเบˆเบธเบšเบฑเบ™, เป€เบ›เบตเบ”เป„เบŸเบฅเปŒเบญเปˆเบฒเบ™ - เบ™เบตเป‰เปเบกเปˆเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบ–เบทเบเบšเบตเบšเบญเบฑเบ”.

เบชเบฐเบซเบฅเบธเบš

เบงเบดเบ—เบตเบเบฒเบ™ steganography เบ™เบตเป‰เบญเบฒเบ”เบˆเบฐเบ•เป‰เบญเบ‡เบเบฒเบ™เบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡, เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเป€เบžเบตเปˆเบกเป€เบ•เบตเบกเปเบฅเบฐเบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเป„เบ›เบชเบนเปˆเบฅเบฐเบšเบปเบšเป„เบŸเบฅเปŒเบ—เบตเปˆเบ™เบดเบเบปเบกเบซเบฅเบฒเบเบ‚เบถเป‰เบ™, เป€เบŠเบฑเปˆเบ™: เป„เบ‚เบกเบฑเบ™ 32, NTFS ะธ ext4.
เปเบ•เปˆเบˆเบธเบ”เบ›เบฐเบชเบปเบ‡เบ‚เบญเบ‡เบงเบฝเบเบ‡เบฒเบ™เบ™เบตเป‰เปเบกเปˆเบ™เป€เบžเบทเปˆเบญเบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เบซเบผเบฑเบเบเบฒเบ™เบ—เบตเปˆเบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเป€เบŠเบทเปˆเบญเบ‡เป„เบงเป‰เปƒเบ™เบฅเบฐเบšเบปเบšเป„เบŸเบฅเปŒ.
เบ”เป‰เบงเบเบ„เบงเบฒเบกเบŠเปˆเบญเบเป€เบซเบฅเบทเบญเบ‚เบญเบ‡ algorithm เบ”เบฑเปˆเบ‡เบเปˆเบฒเบง, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเบ‚เปเป‰เบกเบนเบ™เป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™เบขเป‰เบฒเบ™เบเบปเบง, เปเบฅเบฐเบ–เป‰เบฒเบซเบฒเบเบงเปˆเบฒเบ—เปˆเบฒเบ™เบฎเบนเป‰เบˆเบฑเบเบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™, เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบตเปˆเบˆเบฐ hack เบฅเบฐเบšเบปเบšเบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบšเปเปˆเปเบกเปˆเบ™เป‚เบ”เบ brute force (เปเบ•เปˆเป‚เบ”เบ algorithm เบเบฒเบงเบซเบผเบฒเบ), เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™เบฎเบนเป‰เบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™, เบ™เบตเป‰. เบฅเบฐเบšเบปเบšเป€เบšเบดเปˆเบ‡เบ„เบทเบงเปˆเบฒเบ‚เป‰เบญเบเบกเบตเบ„เบงเบฒเบกเบซเบกเบฑเป‰เบ™เบ„เบปเบ‡เบขเปˆเบฒเบ‡เปเบ—เป‰เบˆเบดเบ‡, เบขเปˆเบฒเบ‡เปƒเบ”เบเปเบ•เบฒเบก, เบ™เบตเป‰เบญเบฒเบ”เบˆเบฐเป€เบ›เบฑเบ™เป€เบซเบ”เบœเบปเบ™เบชเปเบฒเบฅเบฑเบšเบšเบปเบ”เบ„เบงเบฒเบกเปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ.

เบฅเบฐโ€‹เบซเบฑเบ”โ€‹เบ—เบฑเบ‡โ€‹เบซเบกเบปเบ”โ€‹เปเบกเปˆเบ™โ€‹เบ›เบฐโ€‹เบ•เบดโ€‹เบšเบฑเบ”โ€‹เปƒเบ™ Python เป€เบงเบตโ€‹เบŠเบฑเบ™ 3.5.2. เบ•เบปเบงเบขเปˆเบฒเบ‡เบ‚เบญเบ‡เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบ เบ™เปเบฒเบชเบฐเป€เบซเบ™เบตเปƒเบ™เบŠเปˆเบญเบ‡ youtube เบ‚เบญเบ‡เบ‚เป‰เบญเบ. เบฅเบฐเบซเบฑเบ”เป€เบ•เบฑเบกเบ‚เบญเบ‡เป‚เบ„เบ‡เบเบฒเบ™เปเบกเปˆเบ™เป„เบ”เป‰เบฅเบปเบ‡เปƒเบ™ GitHub.
(เปเบกเปˆเบ™เปเบฅเป‰เบง, เปเบกเปˆเบ™เปเบฅเป‰เบง, เบ‚เป‰เบญเบเบฎเบนเป‰เบงเปˆเบฒเบชเปเบฒเบฅเบฑเบšเบชเบฐเบšเบฑเบšเบเบฒเบ™เบœเบฐเบฅเบดเบ”เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ‚เบฝเบ™เปƒเบ™เบšเบฒเบ‡เบชเบดเปˆเบ‡เบšเบฒเบ‡เบขเปˆเบฒเบ‡ "เป„เบง", เบ•เบปเบงเบขเปˆเบฒเบ‡ C ๐Ÿ˜‰)
เปƒเบ™เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ™เบตเป‰, เบ‚เบฐเบซเบ™เบฒเบ”เบ‚เบญเบ‡เป„เบŸเบฅเปŒเบ›เป‰เบญเบ™เบ‚เปเป‰เบกเบนเบ™เบชเปเบฒเบฅเบฑเบš steganography เบšเปเปˆเบ„เบงเบ™เป€เบเบตเบ™ 1000 kB.

เบ‚เป‰เบญเบเบ•เป‰เบญเบ‡เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบ„เบงเบฒเบกเบ‚เบญเบšเปƒเบˆเบเบฑเบšเบœเบนเป‰เปƒเบŠเป‰ PavelMSTU เบชเปเบฒเบฅเบฑเบšเบ„เปเบฒเปเบ™เบฐเบ™เปเบฒเบ—เบตเปˆเบกเบตเบ„เบธเบ™เบ„เปˆเบฒเปƒเบ™เบเบฒเบ™เบงเบฒเบ‡เปเบœเบ™เบเบฒเบ™เบชเบถเบเบชเบฒเปเบฅเบฐเบ„เปเบฒเปเบ™เบฐเบ™เปเบฒเบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบญเบญเบเปเบšเบšเบ‚เบญเบ‡เบšเบปเบ”เบ„เบงเบฒเบก.

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: www.habr.com

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™