Random Images

Print

ReszveteliDemokraciaRendszerFejlesztes

Magának a rendszernek a továbbfejlesztése, kényelmesebbé tétele. "Self-hosting", vagyis magát a rendszert is felhasználjuk a továbbfejlesztése során.

 

A szakmai fákat meg kell csináljuk pseudonym alapúra. Ez azt jelenti, hogy a manipuláláshoz (megvesztegetéshez, fenyegetéshez, stb...) nem áll rendelkezésre a fizikai személyazonosság. A szereplõknek kizárólag az információk alapján kell pontozniuk.

  • A ReszveteliDemokraciaTarsadalmiFa -ba belépéskor valamelyik jegyzõnk ellenõrzi, hogy az illetõ "nem kutya" **. Vagyis, hogy létezõ ember, aki személyazonosságát igazolja. (mert egyébként ** "az interneten senki sem tudja, hogy valójában kutya vagy").
  • a regisztráltak kapnak tokeneket, amikkel a különbözõ szakmai fákba tudnak majd csatlakozni
  • a tokeneket kriptográfiai "blinding" vakítás technikával kell átváltani: lásd wikipedia "anonymous currency"
    • erre kész technikai megoldás is van (asszem ez: https://opencoin.org/ ), David Chaum féle pénz (ami igazságos pénzrendszer kialakításához nem elég, de szavazásokhoz a kétszeres szavazás vagy kétszeres regisztráció elkerülésére pontosan megfelel).
  •  A vakított anonym tokennel csatlakozhat valaki szakmai fához. Ez megakadályozza, hogy valaki manipulációs céllal több száz vagy ezer felhasználót hozzon létre.
  • A pseudonym technika miatt lényegében technikailag elkerülhetetlen, hogy másodlagos kereskedelme alakuljon ki a tokeneknek. Ez kiderülhet egyébként, ha vételi ajánlatot teszünk és arra eladási ajánlatot kapunk.
  • Valószínûleg érdemes mindenkinek ingyen lehetõvé tenni 2-3 szakmai fához való csatlakozást. Az a kevés idõmilliomos, aki ennél több fához kíván csatlakozni (és nem pontmanipulálás céllal), kibír egy szolíd díjat. Ha akármennyi szakmai fához csatlakozhatna, akkor nagyon sok felesleges token lenne, ami egyeseket csábítana a másodlagos piac létrehozására.

Ahhoz, hogy a pseudonym-ek tényleg védve legyenek a kriptográfián alapuló (digitális aláírás, titkosítás), be kell vetni bizonyos technológiákat

  • Tor
  • remailer network
    • remailer pinger

Ezek lehetõvé teszik, hogy ne csak a leadott információ, de akár még a kapcsolatfelvétel ténye is láthatatlan maradjon passzív vagy aktív globális támadó számára.

 


Tesztelés - többkörös

 

  • fejlesztők
  • kemény mag
  • beta tesztelők FOLYAMATBAN jó lenne kb. 20-30 ember, pl.
    • a tiki-ben regisztráltakat kérjük meg
    • a Magyarok Szövetsége gazdasági tagozat és több más tagozat http://www.karpathaza.net/tagozatok is várja, hogy használhassa.
    • egyéb helyeken hirdetni ?
  • első pár száz felhasználó
  • széles körben

Tesztelés megjegyzések

A javaslatokat a ReszveteliDemokraciaFelhasznaloiEsetek helyett ide kérjük !

 


Javaslatok (PHP program szinten)

  • A register_globals használata erősen ellenjavallt úgy kompatibilitási, mint biztonsági szempontból. ( http://hu2.php.net/register_globals http://weblabor.hu/forumok/temak/1807 )
  • A GET, POST és a SESSION változókat szigorúan a tömbjükön keresztül kell elérni. A GET és POST adatait mindig szigorúan kell ellenőrizni. pl:
    • $par_uid = (int) @$_GET['uid']; // ha nem integer, akkor 0 lesz belőle -> if ($par_uid > 0) ...
    • $par_loginname = stripmagic(@$_POST['loginname']);
    • function stripmagic($text)
      {
        return (string) (get_magic_quotes_gpc() ? stripslashes($text) : $text);
      }
  • A fenti pont biztosítja, hogy minden "kintről" jövő változó ellenőrizve legyen. Mégis mielőtt SQL-be kerülnek a string-eket escape-elni kell:
    • $sql_loginname = mysql_real_escape_string($par_loginname);
    • $sql = "SELECT * FROM users WHERE loginname = '$sql_loginname'";
  • Az oldal kódolása jelenleg WIN1250/ISO-8859-2/latin2. Ráadásul az adatbázis latin1-el van létrehozva. Ez egyrészt inkonzisztens, másrészt ha később nyelvesíteni kell a rendszert, akkor komoly nehézségeket fog okozni. (Egyszer megéltem egy 23GB-os adatbázis konverzióját latin1-ről utf8-ra úgy, hogy valójában nem latin1, hanem latin2 kódolás volt benne. Szar volt. Oka, hogy egyszer csak 5 nyelven kellett támogatni az oldalt és az utf8 volt az egyedüli értelmes választás.) A javaslatom, hogy az oldal legyen teljesen utf8 alapú, az adatbázis szintén (a 4.1-es MySQL már támogatja). A tábladefiníciókban így kell megadni: loginname CHAR(12) NOT NULL CHARACTER SET utf8 COLLATION utf8_hungarian_ci és érdemes a tábladefiníció végére tenni: DEFAULT CHARACTER SET utf8 DEFAULT COLLATION utf8_hungarian_ci továbbá az adatbázis létrehozáshoz is: CREATE DATABASE xxx DEFAULT CHARACTER SET=utf8 DEFAULT COLLATE=utf8_hungarian_ci; A weblap esetében kell a HEAD-be: <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> továbbá hogy biztosra menjünk érdemes még PHP-ben a: header('Content-Type: text/html; charset=utf-8'); (És ezentúl a nyelvi szövegeket utf8-as kódolást lehetővé tevő szövegszerkesztővel kell írni, pl: SciTE). Az adatbázis kapcsolat létrehozása után adjuk ki a következő parancsot: mysql_query("SET NAMES UTF8");
  • Egy esettanulmány kapcsán szeretnék pár tanácsot adni a kódoláshoz. A fa.php 30. sora körül van:
    • $i=0;
      while($oHanyadik=mysql_fetch_object($rHanyadik))
      {
        $i++;
        $uid=$oHanyadik->userid;
        if($uid==$_userid)
          $sorszamom=$i;
      }
    • Itt illene a ciklus előtt inicializálni a $sorszamom változót valamire, mert később vizsgálat nélkül, mindenképpen fel lesz használva.
    • Aztán a $oHanyadik->userid értékét átmeneti változóba tölteni itt felesleges, mert az olvashatóságot nem növeli, ellenben minden egyes iterációban változóírást okoz. Ha több esetben lenne felhasználva, az persze más lenne.
    • Továbbá ha már megtaláltam a keresett sorszámot, akkor ki kellene lépnem a ciklusból: if ($oHanyadik->userid == $_userid) { $sorszamom = $i; break; }
    • Végül a ciklus után illene kiadni a mysql_free_result($rHanyadik); hívást.

Elsőre ennyi. Remélem segítettem.

 


Hibák

  • A kktt pontozást a tesztelõ a fa megadása nélkül indította el. Ez nem jó: kelljen megadni.
  • A felhasználók (preferenciális) pontozása hiányzik.

Javaslatok

Regisztrációkor:

  • "megtanulom a rovásírást" helyett "megtanulom a rovásírást vagy megismerem a magyar nép által a latin betûket megelõzõen használt írásformát"

Sikeres csatlakozás a következő fához !

  • Mehet => Rendben
  • Új pontozás => új indítvány
  • Fák megtekintése részben a standard példa-fa képét meg kell mutatni (késõbb majd kirajzoljuk a konkrétat)
  • Fák megtekintése részben a fa bármelyik csomópontjához tartozó pontozást (indítványt !) mutassa
  • Pontozás eredménye "készül" => "fejlesztés alatt"
    • persze az 1.3 verzióban úgyis benne lesz

Felhívás pontozásra (elindítás):

  • jó a legördülõ kiválasztó egyelõre, de amikor több, mint 200 pontozás lesz, ki kell majd találni valami "böngészést a pontozások között", és oda tenni egy, a kiválasztott pontozás hozzáadása adott fához (fából jóval kevesebb lesz, ott jó lesz a legördülõ)

Elindított pontozások megtekintése. NAGYON SZÉP MUNKA !!!

  • annyit, hogy a + jelre kattintva sajnos nem gördül le (ez kicsit zavaró), csak ha a pontozás szövegére kattintunk

A pontozás eredménye

  • "Készül" ;-)

 

Legfontosabb, hogy leírásokat kell készítenünk, és ppt diát, hogy video-prezentációt lehessen belõle csinálni.

 

 


Linkajánló


Jó lenne-e nekünk a demokrácia?
http://www.4dzona.hu/szabadegyetem/szem_vilag/szem_vilag_jatszmak/demokracia1_2.htm
 



Created by: cell. Last Modification: 2009-03-06 (Fri) 10:31:36 CET by tati.