Tein omat encode ja decode funktiot PHP:llä ja haluaisin testata onko tuosta mihinkään. Eli jos joku ratkaisee mitä tämä teksti on dekoodattuna niin eipä taida kovin tehokas suojaus olla. :D
#632!#200!#16!=40!#56!#8!#16!=48!#40!#48!=88!#56!#40!=8!=72!=80!
Mitä kyseinen merkkijono on dekoodattuna? Kerron jos joku ratkaisee sen ja näyttää miten se on saatu ratkaistua, että oliko oikea vastaus.
saaks tähä pastee vastauksii?
Saa.
en kyl tiiä näist mitää mut yritetää nyt jotai... :D
edit: onko viesti selväjärkinen? eli se ei oo mitää: "gajl531g3&&RWEg" ?
Selväjärkinen on. Ja hyvin arvattavissakin, mutta jos joku sen vastauksen oikein arvaa eikä selitä miten sen on saanut niin sitten se on "väärin". :)
kumminki siin lukee jotai: "ohjelmointiputka" :D
hitto ei tommosta voi ratkasta... siellähän voi olla vaikka mitä yhteen ja plus laskuja välissä joiden avulla kirjaimet sekottuu vaikka miten päin :P
Joka kirjain erottuu !-merkillä. Ei toi oikeastaan ole mikään turvallinen suojaus. :P
Suomalaiset aakkoset (ISOLLA) enkoodattuna:
#520!#8!#8!#8!#8!#8!#8!#8!#8!#8!#8!#8!#8!#8!#8!#8!#8!#8!#8!#8!#8!#8!#8!#8!#8!#8!#856!=8!#144!
Oho.. huomasin juuri että ehkä se sittenkin on ihan ok suojaus. Esim.
Ohjelmointiputka:
#632!#200!#16!=40!#56!#8!#16!=48!#40!#48!=88!#56!#40!=8!=72!=80!
Eli T.M. veikkasit oikein sen. Mutta sitten sana:
Moi:
#616!#272!=48!
ioM:
#840!#48!=272!
Kirjaimia ei pysty päättelemään jonkun toisen sanan perusteella vaikka niissä olisi kaikki samoja kirjaimia.
en tajua ton toimintaa :D
edit: ota ne erottimet pois, tulee "vaikeempi" koodi
Voisin vaikkapa pistää ton koodivinkiksi.. pitää nyt vielä katsoa jos joku selvittää ton toiminnan.
Laitan sen 3 päivän päästä sitten vinkkeihin niin pääsee pällistelemään. On muuten hemmetin yksinkertanen toi enkoodaus ja dekoodaus.
Edit: Joo vois ottaa ne pois.
lisääkse jotenki edellisen merkin ascii arvon aina seuraavaan merkkiin tai vastaavaa? :P
ASCII arvoilla tässä pelataan. "#" = plus lasku ja "=" = miinus lasku.
heh... mutta millä perustella ne miinukset ja plussat siihen menee?
No näytän koodin.. ei tämä vinkin arvoinen ole :D
<?php function GetNum ($data) { for ($i = 0; $i < StrLen($data); $i++) { if (Is_Numeric($data{$i})) $num .= $data{$i}; else break; } return $num + 0; } function Encode ($string) { for ($i = 0, $n = 0; $i < StrLen($string); $i++) { if ($n > Ord($string{$i})) { $t = $n - Ord($string{$i}); $t <<= 3; $a = "=$t"; $t >>= 3; $n -= $t; } else { $t = Ord($string{$i}) - $n; $t <<= 3; $a = "#$t"; $t >>= 3; $n += $t; } $e .= $a; } return $e; } function Decode ($string) { for ($i = 0; $i < StrLen($string); $i++) { Switch ($string{$i}) { Case "#": $d .= Chr($c >> 3); $c += GetNum(SubStr($string, ++$i, StrLen($string) - 1)); Break; Case "=": $d .= Chr($c >> 3); $c -= GetNum(SubStr($string, ++$i, StrLen($string) - 1)); Break; } } $d .= Chr($c >> 3); return $d; } ?>
Siinä se koko roska nyt sitten on. :D
Niin joo unohdin mainita että poistin noi erottimet just.. tossa versiossa niitä ei enään ole.
hmm... en jaksa tajuta tota :D
pitää tehä joku oma koodausjuttu ja sit kehitellä siit vaik mite monimutkase ;)
Ajattelin just alkaa kehitellä vähän parempaa.. semmosta, joka ei tee noin pitkiä enkoodauksia..
Aihe on jo aika vanha, joten et voi enää vastata siihen.