Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]zmienna bit po bicie
pawel.b
post
Post #1





Grupa: Zarejestrowani
Postów: 25
Pomógł: 2
Dołączył: 5.02.2009
Skąd: Kraków

Ostrzeżenie: (0%)
-----


witam

czy ktoś wie jak pobierać w php z dowolnej zmiennej wartość bit po bicie (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)

z góry dzięki za pomoc
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
pawel.b
post
Post #2





Grupa: Zarejestrowani
Postów: 25
Pomógł: 2
Dołączył: 5.02.2009
Skąd: Kraków

Ostrzeżenie: (0%)
-----


ok napiszę konkretny przykład , chce zaszyfrować i odzyfrować jakiś text operacją bitową xor.
np:
  1. <?php
  2. $text = 'asdefgho';
  3. $klucz_szyfruj&#261;cy = 'szyfr';
  4.  
  5. //szyfrowanie
  6. $zaszyfrowany_text ='';
  7. for($i = 0;$i<strlen($text);$i++)
  8. {
  9. $zaszyfrowany_text += $text{$i} ^ $klucz_szyfrujacy{$i % strlen($szyfr)}
  10. }
  11. //odszyfrowanie
  12. $text ='';
  13.  for($i = 0;$i<strlen($zaszyfrowany_text);$i++)
  14.  {
  15.  $text += $zaszyfrowany_text{$i} ^ $klucz_szyfrujacy{$i % strlen($szyfr)}
  16.  }
  17. ?>


jesli nie zrobiłem byka bo pisze z głowy powinno wszystko działać.
problem pojawia gdy mamy do czynienia z dwu bajtowymi znakami w utf np : ó

gdy zrobimy
  1. <?php
  2. $z = 'ó' ^ 'a';
  3. $z2 = $z ^ 'a';
  4. ?>

teoretycznie $z2 powinno mieć wartość "ó" ale nie ma dlatego że ó ma dwa bajty a "a" jeden (w utf-8). Rozwiązaniem byłoby gdyby pętla szła bit po bicie a nie znak po znaku. Prosze was o pomoc w zaimplemetowaniu takiej pętli.

Ten post edytował pawel.b 10.02.2009, 18:16:37
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 14.10.2025 - 14:56