joo mä oon php noobie ja en tietä
1. Mitä kirjautumis juttua kannattaisi käytää
2. Miten pistän salauksen tietoihin mieluiten (murtamaton)
3. ja mun pitäisi pystyä lataa sen mb:nettiin
1. Miten tiedätkö mistä löydän esimerkin.
2. ?md5? miten käytän mistä löydän esimerkin.
3. tyhmä kysymys.
4. Entä miten pistän sen silee, että vain jos olet kirjautunut sisään voit katsella kuvia.
makeuu kirjoitti:
3. Kotisivumuokkain
Minä kylläkin käytän win_ftp LE:tä (meniköhän nimi oikein) ja teen tiedostot omalla koneella ja ftp:tän ne kyseisellä ohjelmalla mbnettiin.
1. Lue putkan php opas ja tarkista if lauseella onko salasana oikea
2.
<?php $teksti = "salattava teksti"; $teksti = md5($teksti); ?>
4.Suojaa kuvat htaccessilla. Php skriptihän pääsee niihin edelleen käsiksi.
1. Miten koodaan ton siis oikosulku
4.Miten käytän tota
Yritäs nyt itekin lukea oppaita ennen ku alat kyselemään siitä.
kiitti en tajunnut tota itse
Md5 ei vaan ole murtamaton, tsekkaa Salausopas
Ehkä kuitenkin riittävä sinun tarpeisiisi.
1.
lomake.php
<h1>Kirjaudu sisään</h1> <form method="post" action="login.php"> <input type="text" name="tunnus"> <input type="password" name="salasana"> <input type="submit" value="Kirjaudu sisään!"> </form><p> <h1>Kirjaudu sisään</h1> <form method="post" method="logout.php"> <input type="submit" value="Kirjaudu ulos!"> </form>
login.php
<?php $tunnus = $_POST['tunnus']; $salasana = $_POST['salasana']; session_start(); $_SESSION["tunnus"] = "$tunnus"; $_SESSION["salasana"] = "$salasana"; ?>
logout.php
<?php session_start(); //poistetaan istuntomuuttujat unset($_SESSION["tunnus"]); unset($_SESSION["salasana"]); ?>
salaisetsivut.php
<?php session_start(); $tunnus = $_SESSION["tunnus"]; $salasana = $_SESSION["salasana"]; if($salasana == jotainsalaista && $tunnus == mina){ //Tähän tulee sisältö } else { header("Location: logout.php"); } ?>
Salasana kannattaa tietenkin salata esim. md5:llä. Koodi on heitetty hatusta, mutta järkeni mukaan sen pitäisi toimia.
Edit: Oli yksi sulku unohtunut. Ei pitäisi kiireisenä koodailla...
Ja on todettu toimivaksi.
4. Haku on keksitty! https://www.ohjelmointiputka.net/keskustelu/6216-session-kanssa-loggaus-tiedostot
Hyvä esimerkki, vaikkakaan en ole tuota kokeillut.
Tuosta tuli kysymys mieleeni, että jos tekee tuollaisen sessio kirjautumisen, niin miten se sessio pysyy muistissa.
Eli kirjautuminen sivulle, jos siirryn toiselle sivulle, niin pitääkö sessio tarkistus tehdä vai seuraako sessio automaattisesti perässä, eli serveri muistaa kirjautumiseni niin kauan, kunnes olen klikannut logout.
Tyyliin joka sivun ylälaidassa olisi tieto oletko jo kirjautunut sisään vai et. Miten tuo tarkistus tehtäisiin?
Sessio on muistissa siihen asti kunnes se erikseen poistetaan.
Tuo sessien tarkistus pitää tehdä erikseen jokaiselle sivulle, tosin itselläni on vain yksi tiedosto joka includettaa käyttäjän haluaman sivun, jotka on suojattu htaccessilla.
Tuossa yllä neivoin jo sen tarkistuksen. Tosin sen voisi tehdä myös näin:
<?php session_start(); $tunnus = $_SESSION["tunnus"]; $salasana = $_SESSION["salasana"]; if($salasana != jotainsalaista || $tunnus != mina){ header("Location: logout.php"); } else { ?> Olet sisällä! <?php } ?>
Ja itse suosittelen käyttämään sessioita, ettei käyttäjä pääse tutkimaan niiden tietoja.
Lähinnä hain vastaukseksi. missä muistissa se sessio pysyy. Oman koneen muistissa? Cookiessa? Serveri pitää muistissa? Joku muu?
Servulla filussa.
Käyttäjän koneella on yleensä eväste, jossa on istunnon tunnus. Palvelimella on sitten tätä tunnusta vastaava tiedosto, joka sisältää kaikki istuntomuuttujat. Voit lukea lisää PHP-oppaasta.
Kauan kestää murtaa md5 ja onko se kovinkin vaikeata haluisin vain tietää siitä se, että onko se erittäin helppo murtaa?
Tuolla asiasta (laillista) lisätietoa:
http://www.antsight.com/zsl/rainbowcrack/
Kelpaa mulle elikkä siis pitää olla kunnon hax0ri sen rikkomiseksi.
Tuli vain mieleen miten pystyy tekemään suojauksen sileen, että niitä ei pysty katoo jos vain laittaa vaikka kuvan url:lin siihen.
Miten pystyy salaaamaan kuvan niin, että sitä ei näy ellei ole kirjautunut sisään vaikka tietäisi kuvan url:n.
Akseli F kirjoitti:
4. Haku on keksitty! https://www.ohjelmointiputka.net/keskustelu/6216-session-kanssa-loggaus-tiedostot
Tuolta se viimeinen viesti ja vähän sovellusta:
***kuva.php <? session_start(); $tunnus = $_SESSION["tunnus"]; $salasana = $_SESSION["salasana"]; header("Content-type: text/jpg"); if($salasana != jotainsalaista || $tunnus != mina){ header("Content-Disposition: attachment; filename=LOL.jpg"); readfile('suojattu_htaccess_hakemisto/LOL.jpg'); }else{ header("Content-Disposition: attachment; filename=error.jpg"); readfile('sinulla_ei_oikeuksia.jpg'); } ?>
Kummiskin kysyt, että miten toi toimii, niin tällä lailla:
<img src="kuva.php" />
Ja jos nyt kirjoittaa osoiteriville tuon suoran osoitteen kuva.php:n ja ei ole kirjautunut, niin näytetään vain tuo error-kuva.
Siitä sitten vaan soveltamaan niin, että kaikki kuvat "aukeavat" tuon kuva.php:n kautta.
Entä miten pystyy määrittämään rekistöröityneen oikeudet.
Olisko, joku oieudet 1-2.
ajv: Mutta skriptisihän näyttää LOL.jpg:n jos salasana tai käyttäjätunnus on väärin. Korvatkaa if lauseen != merkit == merkeillä niin sitten toimii.
thekoodaaja: Selventäisitkö kysymystäsi?
thekoodaaja kirjoitti:
Kauan kestää murtaa md5 ja onko se kovinkin vaikeata haluisin vain tietää siitä se, että onko se erittäin helppo murtaa?
Lyhyet alle viisi merkkiä pitkät md5:llä salatut merkkijonot ratkeavat perus kotikoneella alle sekunnissa bruteforcen avustuksella. :) Seitsemään merkkiin taitaakin bruteforcea joutua pyörittelemään jo useamman päivän... Kannattanee siis käyttää pitkiä salasanoja, mikäli haluaa että tuosta md5:stä on mitään iloa.
Akseli F kirjoitti:
ajv: Mutta skriptisihän näyttää LOL.jpg:n jos salasana tai käyttäjätunnus on väärin. Korvatkaa if lauseen != merkit == merkeillä niin sitten toimii.
Niipäs näyttääkin. Hutasin ton esimerkin pikasesti hatusta sen enempää ajattelematta :) Mutta idea siitä varmaan selviää.
Aihe on jo aika vanha, joten et voi enää vastata siihen.