AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Steganographie

Ein Thema von schokoschnecke · begonnen am 11. Feb 2011 · letzter Beitrag vom 12. Feb 2011
 
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.316 Beiträge
 
Delphi 12 Athens
 
#5

AW: Steganographie

  Alt 12. Feb 2011, 10:42
Ach ja, wie hast du denn geprüft, ob sich was verändert?
Eine Farbänderung von 1 ist mit blosem Auge nicht unbedingt erkennbar.

Und wenn man sich nochmal diesen Code vornimmt.
Delphi-Quellcode:
if (r mod 2) <> (strtoint(memo2.lines.text[letter])) then
begin
  if r mod 2 = 1 then
    r := r-1
  else
    r := r+1;
end;
PS: um eine größere/sichtbarere Änderung zu erziehlen
Delphi-Quellcode:
if (r mod 2) <> (strtoint(memo2.lines.text[letter])) then
begin
  if (r div 32) mod 2 = 1 then
    r := r - 32
  else
    r := r + 32;
end;
(oder 64, bzw. 128)

und nochmal verkürtzt (mit 1);
Delphi-Quellcode:
if (r mod 2) <> (strtoint(memo2.lines.text[letter])) then
begin
  if r mod 2 = 1 then
    r := r-1
  else
    r := r+1;
end;

// inneres IF rausgekürzt
if (r mod 2) <> strtoint(memo2.lines.text[letter]) then
begin
  r := r xor 1;
end;

// nun das äußere IF
r := (r and not 1) or (strtoint(memo2.lines.text[letter]) and 1);

// und da in Memo2 eh nur 0 oder 1 drinsteht
r := (r and not 1) or strtoint(memo2.lines.text[letter]);
PS:
das mathematische "r mod 2" entspricht dem binären "r and 1"
Da es sich hier um Bitmanipilationen handelt, ist es eigentlich passender, wenn man auch Bitoperationen verwendet, anstatt von Mathematischen.

"r xor 1", "r and 1" oder "r or 1" verändern nur das letzte Bit

"r and NOT 1" verändert alle Bits, bzw. läßt nur das letzte Bit übrig und löscht den Rest

Aktuell fragt ihr ab ob sich das letzte Bit enes Farbwertes von dem gewünschten Bit unterscheidet, wenn ja, dann wird nochmal nachgesehn, ob das Bit an oder aus ist und wird dann umgeschaltet ... kürzer geht es, wenn man einfach direkt das letzte Bit auf den gewünschten Wert setzt.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:41 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz